rpms/kernel/devel kernel.spec, 1.537, 1.538 linux-2.6-firewire-git-pending.patch, 1.22, 1.23
Jarod Wilson (jwilson)
fedora-extras-commits at redhat.com
Tue Mar 25 20:43:07 UTC 2008
- Previous message (by thread): rpms/kernel/F-8 kernel.spec, 1.401, 1.402 linux-2.6-firewire-git-pending.patch, 1.9, 1.10
- Next message (by thread): rpms/firefox/F-8 .cvsignore, 1.40, 1.41 firefox.spec, 1.212, 1.213 sources, 1.46, 1.47
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jwilson
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv22927
Modified Files:
kernel.spec linux-2.6-firewire-git-pending.patch
Log Message:
* Tue Mar 25 2008 Jarod Wilson <jwilson at redhat.com>
- Put %{_target_cpu} into kernel uname, and tack it onto assorted
files and directories. Makes it possible to do parallel installs
of say both i686 and x86_64 kernels of the same version on x86_64
x86_64 hardware (#197065).
- Plug DMA memory leak in firewire async receive handler
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.537
retrieving revision 1.538
diff -u -r1.537 -r1.538
--- kernel.spec 25 Mar 2008 18:42:30 -0000 1.537
+++ kernel.spec 25 Mar 2008 20:42:18 -0000 1.538
@@ -135,7 +135,7 @@
%define xen_target vmlinuz
%define xen_image vmlinuz
-%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}
+%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}.%{_target_cpu}
%define hdrarch %_target_cpu
%if 0%{!?nopatches:1}
@@ -1243,11 +1243,11 @@
# Pick the right config file for the kernel we're building
if [ -n "$Flavour" ] ; then
Config=kernel-%{version}-%{_target_cpu}-$Flavour.config
- DevelDir=/usr/src/kernels/%{KVERREL}-$Flavour-%{_target_cpu}
- DevelLink=/usr/src/kernels/%{KVERREL}$Flavour-%{_target_cpu}
+ DevelDir=/usr/src/kernels/%{KVERREL}-$Flavour
+ DevelLink=/usr/src/kernels/%{KVERREL}$Flavour
else
Config=kernel-%{version}-%{_target_cpu}.config
- DevelDir=/usr/src/kernels/%{KVERREL}-%{_target_cpu}
+ DevelDir=/usr/src/kernels/%{KVERREL}
DevelLink=
fi
@@ -1259,11 +1259,11 @@
CopyKernel=cp
fi
- KernelVer=%{version}-%{release}$Flavour
+ KernelVer=%{version}-%{release}.%{_target_cpu}$Flavour
echo BUILDING A KERNEL FOR $Flavour %{_target_cpu}...
# make sure EXTRAVERSION says what we want it to say
- perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?stablerev}-%{release}$Flavour/" Makefile
+ perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?stablerev}-%{release}.%{_target_cpu}$Flavour/" Makefile
# if pre-rc1 devel kernel, must fix up SUBLEVEL for our versioning scheme
%if !0%{?rcrev}
@@ -1585,7 +1585,7 @@
fi\
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ]\
then\
- (cd /usr/src/kernels/%{KVERREL}-%{?1:%{1}-}%{_target_cpu} &&\
+ (cd /usr/src/kernels/%{KVERREL}%{?1:-%{1}} &&\
/usr/bin/find . -type f | while read f; do\
hardlink -c /usr/src/kernels/*.fc*-*/$f $f\
done)\
@@ -1719,8 +1719,8 @@
%{?-e:%{-e*}}\
%{expand:%%files %{?2:%{2}-}devel}\
%defattr(-,root,root)\
-%verify(not mtime) /usr/src/kernels/%{KVERREL}%{?2:-%{2}}-%{_target_cpu}\
-/usr/src/kernels/%{KVERREL}%{?2}-%{_target_cpu}\
+%verify(not mtime) /usr/src/kernels/%{KVERREL}%{?2:-%{2}}\
+/usr/src/kernels/%{KVERREL}%{?2}\
%if %{with_debuginfo}\
%ifnarch noarch\
%if %{fancy_debuginfo}\
@@ -1734,7 +1734,7 @@
%{debuginfodir}/%{elf_image_install_path}/*-%{KVERREL}%{?2}.debug\
%endif\
%{debuginfodir}/lib/modules/%{KVERREL}%{?2}\
-%{debuginfodir}/usr/src/kernels/%{KVERREL}%{?2:-%{2}}-%{_target_cpu}\
+%{debuginfodir}/usr/src/kernels/%{KVERREL}%{?2:-%{2}}\
%endif\
%endif\
%endif\
@@ -1751,7 +1751,14 @@
%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL} -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf %{with_xen} xen
%changelog
-* Thu Mar 25 2008 John W. Linville <linville at redhat.com>
+* Tue Mar 25 2008 Jarod Wilson <jwilson at redhat.com>
+- Put %%{_target_cpu} into kernel uname, and tack it onto assorted
+ files and directories. Makes it possible to do parallel installs
+ of say both i686 and x86_64 kernels of the same version on x86_64
+ x86_64 hardware (#197065).
+- Plug DMA memory leak in firewire async receive handler
+
+* Tue Mar 25 2008 John W. Linville <linville at redhat.com>
- wavelan_cs arm fix
- arlan: fix warning when PROC_FS=n
- rt2x00: Add id for Corega CG-WLUSB2GPX
linux-2.6-firewire-git-pending.patch:
Index: linux-2.6-firewire-git-pending.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-firewire-git-pending.patch,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -r1.22 -r1.23
--- linux-2.6-firewire-git-pending.patch 24 Mar 2008 17:54:13 -0000 1.22
+++ linux-2.6-firewire-git-pending.patch 25 Mar 2008 20:42:18 -0000 1.23
@@ -784,3 +784,62 @@
http://arcgraph.de/sr/
+There's a minor memory leak in firewire-ohci's ar_context_tasklet(), in that
+we're not freeing up some of the memory we use for each ar_buffer, due to a
+moving pointer. The problem has been there for a while, but didn't start
+to be noticed until we were doing a coherent allocation for the ar_buffer --
+meaning we have a smaller pool of memory to work with now, so the problem
+crops up sooner. The manifestation of this comes after doing a bunch of I/O to
+a firewire disk, which eventually stalls, and this starts spewing to the
+console:
+
+PCI-DMA: Out of IOMMU space for 53248 bytes at device 0000:04:09.0
+
+The device there is one of my FireWire controllers trying to do I/O. The host
+is a fairly new rev. opteron.
+
+Just need to make sure we're freeing the correct memory range is pass through
+ar_context_tasklet to fix it. Probably something we ought to sneak into 2.6.25
+if its still doable...
+
+Signed-off-by: Jarod Wilson <jwilson at redhat.com>
+---
+
+ drivers/firewire/fw-ohci.c | 9 +++++----
+ 1 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/firewire/fw-ohci.c b/drivers/firewire/fw-ohci.c
+index 8ff9059..e1d50f7 100644
+--- a/drivers/firewire/fw-ohci.c
++++ b/drivers/firewire/fw-ohci.c
+@@ -579,7 +579,8 @@ static void ar_context_tasklet(unsigned long data)
+
+ if (d->res_count == 0) {
+ size_t size, rest, offset;
+- dma_addr_t buffer_bus;
++ dma_addr_t start_bus;
++ void *start;
+
+ /*
+ * This descriptor is finished and we may have a
+@@ -588,9 +589,9 @@ static void ar_context_tasklet(unsigned long data)
+ */
+
+ offset = offsetof(struct ar_buffer, data);
+- buffer_bus = le32_to_cpu(ab->descriptor.data_address) - offset;
++ start = buffer = ab;
++ start_bus = le32_to_cpu(ab->descriptor.data_address) - offset;
+
+- buffer = ab;
+ ab = ab->next;
+ d = &ab->descriptor;
+ size = buffer + PAGE_SIZE - ctx->pointer;
+@@ -605,7 +606,7 @@ static void ar_context_tasklet(unsigned long data)
+ buffer = handle_ar_packet(ctx, buffer);
+
+ dma_free_coherent(ohci->card.device, PAGE_SIZE,
+- buffer, buffer_bus);
++ start, start_bus);
+ ar_context_add_page(ctx);
+ } else {
+ buffer = ctx->pointer;
- Previous message (by thread): rpms/kernel/F-8 kernel.spec, 1.401, 1.402 linux-2.6-firewire-git-pending.patch, 1.9, 1.10
- Next message (by thread): rpms/firefox/F-8 .cvsignore, 1.40, 1.41 firefox.spec, 1.212, 1.213 sources, 1.46, 1.47
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list