Hello community, here is the log from the commit of package kernel-source for openSUSE:Factory checked in at Fri Mar 11 13:16:42 CET 2011. -------- --- kernel-source/kernel-debug.changes 2011-02-22 07:04:33.000000000 +0100 +++ /mounts/work_src_done/STABLE/kernel-source/kernel-debug.changes 2011-03-08 07:01:09.000000000 +0100 @@ -2 +2 @@ -Mon Feb 21 10:34:10 CET 2011 - tiwai@suse.de +Tue Mar 8 01:00:02 CET 2011 - jeffm@suse.de @@ -4,3 +4,4 @@ -- ALSA: caiaq - Fix possible string-buffer overflow (bnc#672499, - CVE-2011-0712). -- commit f6a72cc +- Update to 2.6.38-rc7. + - Refresh patches.xen/xen-x86-no-lapic. + - Refresh patches.xen/xen3-patch-2.6.19. +- commit 7eb9d30 @@ -9 +10 @@ -Sun Feb 20 11:36:45 CET 2011 - jslaby@suse.cz +Mon Mar 7 13:50:08 CET 2011 - mmarek@suse.cz @@ -11,2 +12,3 @@ -- Revert "tpm_tis: Use timeouts returned from TPM" (bnc#673619). -- commit d991856 +- rpm/kernel-binary.spec.in: Do not abort build because of + supported.conf inconsistency if %supported_modules_check == 0. +- commit 6cc2d2b @@ -15 +17 @@ -Fri Feb 18 22:57:09 CET 2011 - rjw@suse.de +Wed Mar 2 09:02:40 CET 2011 - jbeulich@novell.com @@ -17,2 +19,3 @@ -- ACPI / debugfs: Fix buffer overflows, double free (bnc#666095). -- commit da9d3a8 +- patches.arch/x86_64-unwind-annotations: Fix a fatal oversight in + yesterday's change. +- commit 098768b @@ -21 +24 @@ -Fri Feb 18 11:32:28 CET 2011 - jslaby@suse.cz +Mon Feb 28 15:34:35 CET 2011 - jbeulich@novell.com @@ -23,19 +26,3 @@ -- Update to 2.6.37.1: - - obsoletes: - - patches.arch/x86-mtrr-avoid-MTRR-reprogramming-on-BP-during-boot-on.patch - - patches.drivers/alsa-hda-0001-Fix-memory-leaks-in-conexant-jack-arrays - - patches.drivers/alsa-hda-0002-Fix-missing-CA-initialization-for-HDMI-DP - - patches.fixes/calibrate-jiffy-overflow - - patches.fixes/fix-ata-panic-with-ata_id - - patches.fixes/fix-prlimit64-for-suid-sgid-processes.patch - - patches.fixes/input-introduce-notimeout-blacklist-for-Dell-Vostro-.patch - - patches.fixes/sched-cgroup-use-exit-hook-to-avoid-use-after-free-crash - - patches.fixes/staging-rt2860-Fix-incorrect-netif_stop_queue-usage.patch -- Refresh patches.suse/SoN-08-mm-page_alloc-emerg.patch. -- Refresh patches.suse/SoN-16-netvm-reserve-inet.patch. -- Refresh patches.suse/dm-mpath-accept-failed-paths. -- Refresh patches.suse/sched-automated-per-session-task-groups. -- Refresh patches.xen/xen3-auto-common.diff. -- Refresh patches.xen/xen3-fixup-common. -- Refresh patches.xen/xen3-patch-2.6.37. -- commit a638bb4 +- patches.arch/x86_64-unwind-annotations: Add annotations to + lib/rwsem_64.S. +- commit 87944ac @@ -44 +31 @@ -Fri Feb 18 07:44:54 CET 2011 - sjayaraman@suse.de +Thu Feb 24 16:27:46 CET 2011 - tiwai@suse.de @@ -46,3 +33,3 @@ -- Refresh patches.suse/SoN-06-mm-kmem_estimate_pages.patch to accomodate - an upstream change. -- commit a4e281e +- ALSA: usb-audio: fix oops due to cleanup race when disconnecting + (bnc#674735). +- commit ed81f8c @@ -51 +38 @@ -Thu Feb 17 11:58:18 CET 2011 - rjw@suse.de +Wed Feb 23 23:03:41 CET 2011 - mmarek@suse.cz @@ -53,2 +40,2 @@ -- PNP / ACPI: Use DEVICE_ACPI_HANDLE() for device ACPI handle access (bnc#434742). -- commit a73834f +- rpm/kernel-binary.spec.in: Remove unused code. +- commit dacbc44 @@ -57 +44 @@ -Thu Feb 17 01:15:14 CET 2011 - gregkh@suse.de +Tue Feb 22 21:49:18 CET 2011 - jeffm@suse.com @@ -59,3 +46,3 @@ -- Update config files. - disable CONFIG_DRM_VMWGFX. (bnc#606458) -- commit 409d54e +- Update to 2.6.38-rc6. + - Eliminated 1 patch. +- commit 6cce7bb @@ -64 +51 @@ -Wed Feb 16 16:25:24 CET 2011 - jbeulich@novell.com +Tue Feb 22 10:00:42 CET 2011 - mmarek@suse.cz @@ -66,3 +53,9 @@ -- patches.arch/x86_64-unwind-annotations: Re-add change lost during - initial 2.6.37 merge. -- commit 7a5313d +- rpm/mkspec: Do not create kernel-syms.spec on vanilla-only branches +- commit eb17bba + +------------------------------------------------------------------- +Mon Feb 21 10:31:05 CET 2011 - tiwai@suse.de + +- ALSA: caiaq - Fix possible string-buffer overflow (bnc#672499, + CVE-2011-0712). +- commit 5ef002b @@ -71 +64 @@ -Wed Feb 16 14:31:03 CET 2011 - tiwai@suse.de +Fri Feb 18 23:13:58 CET 2011 - rjw@suse.de @@ -73,3 +66,2 @@ -- ALSA: HDA: Add Lenovo vendor quirk for Conexant 205xx - (bnc#670946). -- commit b3bc287 +- ACPI / debugfs: Fix buffer overflows, double free (bnc#666095). +- commit 41c6654 @@ -78 +70 @@ -Tue Feb 15 22:50:02 CET 2011 - jeffm@suse.com +Thu Feb 17 02:28:52 CET 2011 - jeffm@suse.de @@ -80,2 +72,2 @@ -- tty: add 'active' sysfs attribute to tty0 and console device. -- commit 7ae6e9a +- Update to 2.6.38-rc5. +- commit 8344657 @@ -84 +76 @@ -Tue Feb 15 17:14:14 CET 2011 - jslaby@suse.cz +Thu Feb 17 01:24:01 CET 2011 - gregkh@suse.de @@ -86,7 +78,4 @@ -- Revert "ath9k: Fix a DMA latency issue for Intel Pinetrail - platforms." (bnc#667793). -- Revert "ath9k: Remove pm_qos request after hw - unregister." (bnc#667793). -- Revert "ath9k: use per-device struct for pm_qos_* operations" - (bnc#667793). -- commit b2849f6 +- Update config files. + - disable CONFIG_DRM_VMWGFX (bnc#606458) + - update sparc configs to at least be able to run "make oldconfig" +- commit da75bd9 @@ -95 +84 @@ -Tue Feb 15 10:59:55 CET 2011 - jack@suse.cz +Wed Feb 16 16:14:52 CET 2011 - jbeulich@novell.com @@ -97,6 +86,3 @@ -- bridge: Replace mp->mglist hlist with a bool (bnc#653547). -- bridge: Fix timer typo that may render snooping less effective - (bnc#653547). -- bridge: Fix mglist corruption that leads to memory corruption - (bnc#653547). -- commit a70e5ca +- patches.arch/x86_64-unwind-annotations: Re-add change lost during + initial 2.6.37 merge. +- commit e493205 @@ -122 +108 @@ -- commit 3dd255b +- commit edc6d32 @@ -130 +116 @@ -- commit bd6fa48 +- commit 0a157b1 @@ -133 +119 @@ -Thu Feb 10 02:55:41 CET 2011 - jeffm@suse.com +Thu Feb 10 02:57:43 CET 2011 - jeffm@suse.com @@ -137 +123 @@ -- commit 2e98bfc +- commit 72bd3d0 @@ -140 +126 @@ -Wed Feb 9 22:52:29 CET 2011 - gregkh@suse.de +Wed Feb 9 22:55:13 CET 2011 - gregkh@suse.de @@ -144 +130 @@ -- commit c6d0dc9 +- commit 1eb5eaa @@ -152,8 +138 @@ -- commit 31e675a - -------------------------------------------------------------------- -Wed Feb 9 13:00:11 CET 2011 - tiwai@suse.de - -- ALSA: hda - Fix missing CA initialization for HDMI/DP - (bnc#670577). -- commit 474305e +- commit 8565452 @@ -166 +145 @@ -- commit e211a69 +- commit 9ba5ff0 @@ -173 +152 @@ -- commit d6a7494 +- commit 907f9cc @@ -176 +155 @@ -Tue Feb 8 17:24:22 CET 2011 - jslaby@suse.cz +Tue Feb 8 18:10:13 CET 2011 - jeffm@suse.com @@ -178,2 +157,3 @@ -- orinoco: allow IW_AUTH_MFP to pass through (bnc#661624). -- commit 442a3d7 +- Updated to 2.6.38-rc4. + - Eliminated 1 patch. +- commit c327e0a @@ -182 +162 @@ -Tue Feb 8 16:52:35 CET 2011 - jbeulich@novell.com +Tue Feb 8 16:48:28 CET 2011 - jbeulich@novell.com @@ -185 +165 @@ -- commit f82619b +- commit 027481c @@ -188 +168,6 @@ -Mon Feb 7 19:41:04 CET 2011 - jslaby@suse.cz +Tue Feb 8 14:31:56 CET 2011 - jbeulich@novell.com + +- Update Xen patches to 2.6.38-rc4 and c/s 1066. ++++ 143 more lines (skipped) ++++ between kernel-source/kernel-debug.changes ++++ and /mounts/work_src_done/STABLE/kernel-source/kernel-debug.changes kernel-default.changes: same change kernel-desktop.changes: same change kernel-docs.changes: same change kernel-ec2.changes: same change kernel-net.changes: same change kernel-pae.changes: same change kernel-ppc64.changes: same change kernel-ps3.changes: same change kernel-s390.changes: same change kernel-source.changes: same change kernel-syms.changes: same change kernel-trace.changes: same change kernel-vanilla.changes: same change kernel-vmi.changes: same change kernel-xen.changes: same change calling whatdependson for head-i586 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kernel-debug.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:40.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:40.000000000 +0100 @@ -18,7 +18,7 @@ # norootforbuild %define srcversion 2.6.37 -%define patchversion 2.6.37.1 +%define patchversion 2.6.38-rc7 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -55,7 +55,7 @@ Name: kernel-debug Summary: A Debug Version of the Kernel -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else @@ -338,7 +338,6 @@ cat > .kernel-binary.spec.buildenv <<EOF # Override the timestamp 'uname -v' reports with the build # timestamp. -export KBUILD_BUILD_VERSION="$(grep SHA1_ID %_sourcedir/source-timestamp | awk '{ print $2 }')" export KBUILD_BUILD_TIMESTAMP="$(head -n 1 %_sourcedir/source-timestamp)" # The following branch/timestamp will end up in Oopses. @@ -601,6 +600,9 @@ %_sourcedir/split-modules -d %buildroot \ -o %my_builddir \ -b %kernel_build_dir/Module.base \ +%if ! %supported_modules_check + -i \ +%endif -s %kernel_build_dir/Module.supported %if ! %split_extra cat %my_builddir/unsupported-modules >>%my_builddir/main-modules kernel-default.spec: same change kernel-desktop.spec: same change ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:40.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:40.000000000 +0100 @@ -17,14 +17,14 @@ # norootforbuild -%define patchversion 2.6.37.1 +%define patchversion 2.6.38-rc7 %define variant %{nil} %include %_sourcedir/kernel-spec-macros Name: kernel-docs Summary: Kernel Documentation -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else ++++++ kernel-ec2.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:40.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:40.000000000 +0100 @@ -18,7 +18,7 @@ # norootforbuild %define srcversion 2.6.37 -%define patchversion 2.6.37.1 +%define patchversion 2.6.38-rc7 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -55,7 +55,7 @@ Name: kernel-ec2 Summary: The Amazon EC2 Xen Kernel -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else @@ -336,7 +336,6 @@ cat > .kernel-binary.spec.buildenv <<EOF # Override the timestamp 'uname -v' reports with the build # timestamp. -export KBUILD_BUILD_VERSION="$(grep SHA1_ID %_sourcedir/source-timestamp | awk '{ print $2 }')" export KBUILD_BUILD_TIMESTAMP="$(head -n 1 %_sourcedir/source-timestamp)" # The following branch/timestamp will end up in Oopses. @@ -599,6 +598,9 @@ %_sourcedir/split-modules -d %buildroot \ -o %my_builddir \ -b %kernel_build_dir/Module.base \ +%if ! %supported_modules_check + -i \ +%endif -s %kernel_build_dir/Module.supported %if ! %split_extra cat %my_builddir/unsupported-modules >>%my_builddir/main-modules kernel-net.spec: same change kernel-pae.spec: same change kernel-ppc64.spec: same change kernel-ps3.spec: same change kernel-s390.spec: same change ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:41.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:41.000000000 +0100 @@ -19,7 +19,7 @@ # icecream 0 %define srcversion 2.6.37 -%define patchversion 2.6.37.1 +%define patchversion 2.6.38-rc7 %define variant %{nil} %define vanilla_only 0 @@ -29,7 +29,7 @@ Name: kernel-source Summary: The Linux Kernel Sources -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else ++++++ kernel-syms.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:41.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:41.000000000 +0100 @@ -23,7 +23,7 @@ Name: kernel-syms Summary: Kernel Symbol Versions (modversions) -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else ++++++ kernel-trace.spec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:41.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:41.000000000 +0100 @@ -18,7 +18,7 @@ # norootforbuild %define srcversion 2.6.37 -%define patchversion 2.6.37.1 +%define patchversion 2.6.38-rc7 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -55,7 +55,7 @@ Name: kernel-trace Summary: The Standard Kernel with Tracing Features -Version: 2.6.37.1 +Version: 2.6.38 Release: 1 %if %using_buildservice %else @@ -345,7 +345,6 @@ cat > .kernel-binary.spec.buildenv <<EOF # Override the timestamp 'uname -v' reports with the build # timestamp. -export KBUILD_BUILD_VERSION="$(grep SHA1_ID %_sourcedir/source-timestamp | awk '{ print $2 }')" export KBUILD_BUILD_TIMESTAMP="$(head -n 1 %_sourcedir/source-timestamp)" # The following branch/timestamp will end up in Oopses. @@ -608,6 +607,9 @@ %_sourcedir/split-modules -d %buildroot \ -o %my_builddir \ -b %kernel_build_dir/Module.base \ +%if ! %supported_modules_check + -i \ +%endif -s %kernel_build_dir/Module.supported %if ! %split_extra cat %my_builddir/unsupported-modules >>%my_builddir/main-modules kernel-vanilla.spec: same change kernel-vmi.spec: same change kernel-xen.spec: same change ++++++ config.tar.bz2 ++++++ ++++ 23878 lines of diff (skipped) ++++++ kernel-binary.spec.in ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:41.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:41.000000000 +0100 @@ -264,7 +264,6 @@ cat > .kernel-binary.spec.buildenv <<EOF # Override the timestamp 'uname -v' reports with the build # timestamp. -export KBUILD_BUILD_VERSION="$(grep SHA1_ID %_sourcedir/source-timestamp | awk '{ print $2 }')" export KBUILD_BUILD_TIMESTAMP="$(head -n 1 %_sourcedir/source-timestamp)" # The following branch/timestamp will end up in Oopses. @@ -529,6 +528,9 @@ %_sourcedir/split-modules -d %buildroot \ -o %my_builddir \ -b %kernel_build_dir/Module.base \ +%if ! %supported_modules_check + -i \ +%endif -s %kernel_build_dir/Module.supported %if ! %split_extra cat %my_builddir/unsupported-modules >>%my_builddir/main-modules ++++++ minmem ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:43.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:43.000000000 +0100 @@ -1 +1 @@ -2096000 +1048576 ++++++ mkspec ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:43.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:43.000000000 +0100 @@ -117,9 +117,11 @@ $requires .= "%endif\n"; } chomp $requires; - do_spec('syms', "kernel-syms$variant.spec", %macros, - REQUIRES => $requires, - ARCHS => join(" ", sort(keys(%all_archs)))); + if (keys(%all_archs)) { + do_spec('syms', "kernel-syms$variant.spec", %macros, + REQUIRES => $requires, + ARCHS => join(" ", sort(keys(%all_archs)))); + } } exit 0; ++++++ needed_space_in_mb ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:43.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:43.000000000 +0100 @@ -1 +1 @@ -6000 +6144 ++++++ patches.arch.tar.bz2 ++++++ ++++ 1630 lines of diff (skipped) ++++++ patches.drivers.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/alsa-01-caiaq-Fix-possible-string-buffer-overflow new/patches.drivers/alsa-01-caiaq-Fix-possible-string-buffer-overflow --- old/patches.drivers/alsa-01-caiaq-Fix-possible-string-buffer-overflow 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/alsa-01-caiaq-Fix-possible-string-buffer-overflow 1970-01-01 01:00:00.000000000 +0100 @@ -1,50 +0,0 @@ -From eaae55dac6b64c0616046436b294e69fc5311581 Mon Sep 17 00:00:00 2001 -From: Takashi Iwai <tiwai@suse.de> -Date: Mon, 14 Feb 2011 22:45:59 +0100 -Subject: [PATCH] ALSA: caiaq - Fix possible string-buffer overflow -Git-commit: eaae55dac6b64c0616046436b294e69fc5311581 -Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git -Patch-mainline: 2.6.38-rc6 -References: bnc#672499, CVE-2011-0712 - -Use strlcpy() to assure not to overflow the string array sizes by -too long USB device name string. - -Reported-by: Rafa <rafa@mwrinfosecurity.com> -Cc: stable <stable@kernel.org> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - sound/usb/caiaq/audio.c | 2 +- - sound/usb/caiaq/midi.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/sound/usb/caiaq/audio.c b/sound/usb/caiaq/audio.c -index 68b9747..66eabaf 100644 ---- a/sound/usb/caiaq/audio.c -+++ b/sound/usb/caiaq/audio.c -@@ -785,7 +785,7 @@ int snd_usb_caiaq_audio_init(struct snd_usb_caiaqdev *dev) - } - - dev->pcm->private_data = dev; -- strcpy(dev->pcm->name, dev->product_name); -+ strlcpy(dev->pcm->name, dev->product_name, sizeof(dev->pcm->name)); - - memset(dev->sub_playback, 0, sizeof(dev->sub_playback)); - memset(dev->sub_capture, 0, sizeof(dev->sub_capture)); -diff --git a/sound/usb/caiaq/midi.c b/sound/usb/caiaq/midi.c -index 2f218c7..a1a4708 100644 ---- a/sound/usb/caiaq/midi.c -+++ b/sound/usb/caiaq/midi.c -@@ -136,7 +136,7 @@ int snd_usb_caiaq_midi_init(struct snd_usb_caiaqdev *device) - if (ret < 0) - return ret; - -- strcpy(rmidi->name, device->product_name); -+ strlcpy(rmidi->name, device->product_name, sizeof(rmidi->name)); - - rmidi->info_flags = SNDRV_RAWMIDI_INFO_DUPLEX; - rmidi->private_data = device; --- -1.7.3.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/alsa-hda-0003-Add-Lenovo-vendor-quirk-for-Conexant-205xx new/patches.drivers/alsa-hda-0003-Add-Lenovo-vendor-quirk-for-Conexant-205xx --- old/patches.drivers/alsa-hda-0003-Add-Lenovo-vendor-quirk-for-Conexant-205xx 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/alsa-hda-0003-Add-Lenovo-vendor-quirk-for-Conexant-205xx 1970-01-01 01:00:00.000000000 +0100 @@ -1,42 +0,0 @@ -From 22f21d51bb20e7aef1167b71c4c3c0ff0efa9bf6 Mon Sep 17 00:00:00 2001 -From: David Henningsson <david.henningsson@canonical.com> -Date: Fri, 7 Jan 2011 07:53:39 +0100 -Subject: [PATCH] ALSA: HDA: Add Lenovo vendor quirk for Conexant 205xx -Git-commit: 22f21d51bb20e7aef1167b71c4c3c0ff0efa9bf6 -Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6.git -Patch-mainline: 2.6.38-rc1 -References: bnc#670946 - -Buglink: http://bugs.launchpad.net/bugs/689036 - -Many new Lenovos need the ideapad quirk. Also, since the -auto parser for this chip is far from optimal, the regression -risk is low (although not zero). - -Signed-off-by: David Henningsson <david.henningsson@canonical.com> -Signed-off-by: Takashi Iwai <tiwai@suse.de> - ---- - sound/pci/hda/patch_conexant.c | 9 +-------- - 1 file changed, 1 insertion(+), 8 deletions(-) - ---- a/sound/pci/hda/patch_conexant.c -+++ b/sound/pci/hda/patch_conexant.c -@@ -3114,16 +3114,9 @@ - CXT5066_LAPTOP), - SND_PCI_QUIRK(0x152d, 0x0833, "OLPC XO-1.5", CXT5066_OLPC_XO_1_5), - SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo T400s", CXT5066_THINKPAD), -- SND_PCI_QUIRK(0x17aa, 0x21b2, "Thinkpad X100e", CXT5066_IDEAPAD), - SND_PCI_QUIRK(0x17aa, 0x21c5, "Thinkpad Edge 13", CXT5066_THINKPAD), -- SND_PCI_QUIRK(0x17aa, 0x21b3, "Thinkpad Edge 13 (197)", CXT5066_IDEAPAD), -- SND_PCI_QUIRK(0x17aa, 0x21b4, "Thinkpad Edge", CXT5066_IDEAPAD), -- SND_PCI_QUIRK(0x17aa, 0x21c8, "Thinkpad Edge 11", CXT5066_IDEAPAD), - SND_PCI_QUIRK(0x17aa, 0x215e, "Lenovo Thinkpad", CXT5066_THINKPAD), -- SND_PCI_QUIRK(0x17aa, 0x38af, "Lenovo G series", CXT5066_IDEAPAD), -- SND_PCI_QUIRK(0x17aa, 0x390a, "Lenovo S10-3t", CXT5066_IDEAPAD), -- SND_PCI_QUIRK(0x17aa, 0x3938, "Lenovo G series (AMD)", CXT5066_IDEAPAD), -- SND_PCI_QUIRK(0x17aa, 0x3a0d, "ideapad", CXT5066_IDEAPAD), -+ SND_PCI_QUIRK_VENDOR(0x17aa, "Lenovo", CXT5066_IDEAPAD), /* Fallback for Lenovos without dock mic */ - {} - }; - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/elousb.patch new/patches.drivers/elousb.patch --- old/patches.drivers/elousb.patch 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/elousb.patch 2011-02-09 22:55:13.000000000 +0100 @@ -18,10 +18,10 @@ --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c -@@ -1590,6 +1590,8 @@ static const struct hid_device_id hid_ig - { HID_USB_DEVICE(USB_VENDOR_ID_DEALEXTREAME, USB_DEVICE_ID_DEALEXTREAME_RADIO_SI4701) }, +@@ -1643,6 +1643,8 @@ static const struct hid_device_id hid_ig { HID_USB_DEVICE(USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EARTHMATE) }, { HID_USB_DEVICE(USB_VENDOR_ID_DELORME, USB_DEVICE_ID_DELORME_EM_LT20) }, + { HID_USB_DEVICE(USB_VENDOR_ID_DREAM_CHEEKY, 0x0004) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_4000U) }, + { HID_USB_DEVICE(USB_VENDOR_ID_ELO, USB_DEVICE_ID_ELO_4500U) }, { HID_USB_DEVICE(USB_VENDOR_ID_ESSENTIAL_REALITY, USB_DEVICE_ID_ESSENTIAL_REALITY_P5) }, @@ -29,19 +29,19 @@ { HID_USB_DEVICE(USB_VENDOR_ID_ETT, USB_DEVICE_ID_TC4UM) }, --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h -@@ -193,7 +193,9 @@ - #define USB_DEVICE_ID_ELECOM_BM084 0x0061 +@@ -216,7 +216,9 @@ + #define USB_VENDOR_ID_DREAM_CHEEKY 0x1d34 #define USB_VENDOR_ID_ELO 0x04E7 +#define USB_DEVICE_ID_ELO_4000U 0x0009 #define USB_DEVICE_ID_ELO_TS2700 0x0020 +#define USB_DEVICE_ID_ELO_4500U 0x0030 - #define USB_VENDOR_ID_ESSENTIAL_REALITY 0x0d7f - #define USB_DEVICE_ID_ESSENTIAL_REALITY_P5 0x0100 + #define USB_VENDOR_ID_EMS 0x2006 + #define USB_DEVICE_ID_EMS_TRIO_LINKER_PLUS_II 0x0118 --- a/drivers/input/touchscreen/Kconfig +++ b/drivers/input/touchscreen/Kconfig -@@ -202,6 +202,18 @@ config TOUCHSCREEN_ELO +@@ -214,6 +214,18 @@ config TOUCHSCREEN_ELO To compile this driver as a module, choose M here: the module will be called elo. @@ -62,7 +62,7 @@ select SERIO --- a/drivers/input/touchscreen/Makefile +++ b/drivers/input/touchscreen/Makefile -@@ -21,6 +21,7 @@ obj-$(CONFIG_TOUCHSCREEN_HAMPSHIRE) += h +@@ -22,6 +22,7 @@ obj-$(CONFIG_TOUCHSCREEN_HAMPSHIRE) += h obj-$(CONFIG_TOUCHSCREEN_GUNZE) += gunze.o obj-$(CONFIG_TOUCHSCREEN_EETI) += eeti_ts.o obj-$(CONFIG_TOUCHSCREEN_ELO) += elo.o diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/input-Add-LED-support-to-Synaptics-device new/patches.drivers/input-Add-LED-support-to-Synaptics-device --- old/patches.drivers/input-Add-LED-support-to-Synaptics-device 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/input-Add-LED-support-to-Synaptics-device 2011-02-09 22:55:13.000000000 +0100 @@ -47,12 +47,12 @@ + This will enable LED class driver to control the LED device. + config MOUSE_PS2_LIFEBOOK - bool "Fujitsu Lifebook PS/2 mouse protocol extension" if EMBEDDED + bool "Fujitsu Lifebook PS/2 mouse protocol extension" if EXPERT default y --- a/drivers/input/mouse/synaptics.c +++ b/drivers/input/mouse/synaptics.c @@ -28,6 +28,7 @@ - #include <linux/input.h> + #include <linux/input/mt.h> #include <linux/serio.h> #include <linux/libps2.h> +#include <linux/leds.h> @@ -209,9 +209,9 @@ /* Data read from the touchpad */ unsigned long int model_id; /* Model-ID */ @@ -110,6 +112,7 @@ struct synaptics_data { - int scroll; - struct serio *pt_port; /* Pass-through serio port */ + + struct synaptics_hw_state mt; /* current gesture packet */ + struct synaptics_led *led; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/ixgbe-entropy-source.patch new/patches.drivers/ixgbe-entropy-source.patch --- old/patches.drivers/ixgbe-entropy-source.patch 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/ixgbe-entropy-source.patch 2011-02-09 22:55:13.000000000 +0100 @@ -12,8 +12,8 @@ Signed-off-by: Brandon Philips <bphilips@suse.de> --- - drivers/net/ixgbe/ixgbe_main.c | 25 +++++++++++++++++++++---- - 1 file changed, 21 insertions(+), 4 deletions(-) + drivers/net/ixgbe/ixgbe_main.c | 22 +++++++++++++++++++--- + 1 file changed, 19 insertions(+), 3 deletions(-) --- a/drivers/net/ixgbe/ixgbe_main.c +++ b/drivers/net/ixgbe/ixgbe_main.c @@ -29,7 +29,7 @@ static const struct ixgbe_info *ixgbe_info_tbl[] = { [board_82598] = &ixgbe_82598_info, [board_82599] = &ixgbe_82599_info, -@@ -2121,6 +2126,7 @@ static int ixgbe_request_msix_irqs(struc +@@ -2317,6 +2322,7 @@ static int ixgbe_request_msix_irqs(struc irqreturn_t (*handler)(int, void *); int i, vector, q_vectors, err; int ri = 0, ti = 0; @@ -37,34 +37,36 @@ /* Decrement for Other and TCP Timer vectors */ q_vectors = adapter->num_msix_vectors - NON_Q_VECTORS; -@@ -2136,18 +2142,24 @@ static int ixgbe_request_msix_irqs(struc - for (vector = 0; vector < q_vectors; vector++) { - handler = SET_HANDLER(adapter->q_vector[vector]); +@@ -2334,22 +2340,27 @@ static int ixgbe_request_msix_irqs(struc + struct ixgbe_q_vector *q_vector = adapter->q_vector[vector]; + handler = SET_HANDLER(q_vector); + irq_flags = 0; if (handler == &ixgbe_msix_clean_rx) { - sprintf(adapter->name[vector], "%s-%s-%d", - netdev->name, "rx", ri++); + snprintf(q_vector->name, sizeof(q_vector->name) - 1, + "%s-%s-%d", netdev->name, "rx", ri++); + if (entropy) + irq_flags = IRQF_SAMPLE_RANDOM; } else if (handler == &ixgbe_msix_clean_tx) { - sprintf(adapter->name[vector], "%s-%s-%d", - netdev->name, "tx", ti++); -- } else -+ } else { - sprintf(adapter->name[vector], "%s-%s-%d", - netdev->name, "TxRx", vector); + snprintf(q_vector->name, sizeof(q_vector->name) - 1, + "%s-%s-%d", netdev->name, "tx", ti++); + } else if (handler == &ixgbe_msix_clean_many) { + snprintf(q_vector->name, sizeof(q_vector->name) - 1, + "%s-%s-%d", netdev->name, "TxRx", ri++); + if (entropy) + irq_flags = IRQF_SAMPLE_RANDOM; -+ } - + ti++; + } else { + /* skip this unused q_vector */ + continue; + } err = request_irq(adapter->msix_entries[vector].vector, -- handler, 0, adapter->name[vector], -+ handler, irq_flags, adapter->name[vector], - adapter->q_vector[vector]); +- handler, 0, q_vector->name, ++ handler, irq_flags, q_vector->name, + q_vector); if (err) { e_err(probe, "request_irq failed for MSIX interrupt " -@@ -2336,14 +2348,19 @@ static int ixgbe_request_irq(struct ixgb +@@ -2563,14 +2574,19 @@ static int ixgbe_request_irq(struct ixgb { struct net_device *netdev = adapter->netdev; int err; @@ -78,11 +80,11 @@ } else if (adapter->flags & IXGBE_FLAG_MSI_ENABLED) { - err = request_irq(adapter->pdev->irq, ixgbe_intr, 0, + err = request_irq(adapter->pdev->irq, ixgbe_intr, irq_flags, - netdev->name, netdev); + netdev->name, netdev); } else { - err = request_irq(adapter->pdev->irq, ixgbe_intr, IRQF_SHARED, + irq_flags |= IRQF_SHARED; + err = request_irq(adapter->pdev->irq, ixgbe_intr, irq_flags, - netdev->name, netdev); + netdev->name, netdev); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/tg3-entropy-source.patch new/patches.drivers/tg3-entropy-source.patch --- old/patches.drivers/tg3-entropy-source.patch 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/tg3-entropy-source.patch 2011-02-09 22:55:13.000000000 +0100 @@ -29,7 +29,7 @@ + #define DRV_MODULE_NAME "tg3" #define TG3_MAJ_NUM 3 - #define TG3_MIN_NUM 115 + #define TG3_MIN_NUM 116 @@ -8590,10 +8593,13 @@ restart_timer: static int tg3_request_irq(struct tg3 *tp, int irq_num) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.drivers/tty-add-active-sysfs-attribute-to-tty0-and-console-device new/patches.drivers/tty-add-active-sysfs-attribute-to-tty0-and-console-device --- old/patches.drivers/tty-add-active-sysfs-attribute-to-tty0-and-console-device 2011-02-21 10:34:10.000000000 +0100 +++ new/patches.drivers/tty-add-active-sysfs-attribute-to-tty0-and-console-device 1970-01-01 01:00:00.000000000 +0100 @@ -1,216 +0,0 @@ -From: Kay Sievers <kay.sievers@vrfy.org> -Date: Wed, 1 Dec 2010 18:51:05 +0100 -Subject: tty: add 'active' sysfs attribute to tty0 and console device -Patch-mainline: v2.6.38-rc1 -Git-commit: fbc92a3455577ab17615cbcb91826399061bd789 - -tty: add 'active' sysfs attribute to tty0 and console device - -Userspace can query the actual virtual console, and the configured -console devices behind /dev/tt0 and /dev/console. - -The last entry in the list of devices is the active device, analog -to the console= kernel command line option. - -The attribute supports poll(), which is raised when the virtual -console is changed or /dev/console is reconfigured. - -Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> -Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> - -index 0000000..b138b66 -Acked-by: Jeff Mahoney <jeffm@suse.com> ---- - Documentation/ABI/testing/sysfs-tty | 19 ++++++++++++++ - drivers/tty/tty_io.c | 47 ++++++++++++++++++++++++++++++++--- - drivers/tty/vt/vt.c | 23 ++++++++++++++++- - include/linux/console.h | 2 +- - kernel/printk.c | 2 + - 5 files changed, 87 insertions(+), 6 deletions(-) - -diff --git a/Documentation/ABI/testing/sysfs-tty b/Documentation/ABI/testing/sysfs-tty -new file mode 100644 -index 0000000..b138b66 ---- /dev/null -+++ b/Documentation/ABI/testing/sysfs-tty -@@ -0,0 +1,19 @@ -+What: /sys/class/tty/console/active -+Date: Nov 2010 -+Contact: Kay Sievers <kay.sievers@vrfy.org> -+Description: -+ Shows the list of currently configured -+ console devices, like 'tty1 ttyS0'. -+ The last entry in the file is the active -+ device connected to /dev/console. -+ The file supports poll() to detect virtual -+ console switches. -+ -+What: /sys/class/tty/tty0/active -+Date: Nov 2010 -+Contact: Kay Sievers <kay.sievers@vrfy.org> -+Description: -+ Shows the currently active virtual console -+ device, like 'tty1'. -+ The file supports poll() to detect virtual -+ console switches. -diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c -index c05c5af..be5ab4a 100644 ---- a/drivers/tty/tty_io.c -+++ b/drivers/tty/tty_io.c -@@ -3232,9 +3232,45 @@ static int __init tty_class_init(void) - postcore_initcall(tty_class_init); - - /* 3/2004 jmc: why do these devices exist? */ -- - static struct cdev tty_cdev, console_cdev; - -+static ssize_t show_cons_active(struct device *dev, -+ struct device_attribute *attr, char *buf) -+{ -+ struct console *cs[16]; -+ int i = 0; -+ struct console *c; -+ ssize_t count = 0; -+ -+ acquire_console_sem(); -+ for (c = console_drivers; c; c = c->next) { -+ if (!c->device) -+ continue; -+ if (!c->write) -+ continue; -+ if ((c->flags & CON_ENABLED) == 0) -+ continue; -+ cs[i++] = c; -+ if (i >= ARRAY_SIZE(cs)) -+ break; -+ } -+ while (i--) -+ count += sprintf(buf + count, "%s%d%c", -+ cs[i]->name, cs[i]->index, i ? ' ':'\n'); -+ release_console_sem(); -+ -+ return count; -+} -+static DEVICE_ATTR(active, S_IRUGO, show_cons_active, NULL); -+ -+static struct device *consdev; -+ -+void console_sysfs_notify(void) -+{ -+ if (consdev) -+ sysfs_notify(&consdev->kobj, NULL, "active"); -+} -+ - /* - * Ok, now we can initialize the rest of the tty devices and can count - * on memory allocations, interrupts etc.. -@@ -3245,15 +3281,18 @@ int __init tty_init(void) - if (cdev_add(&tty_cdev, MKDEV(TTYAUX_MAJOR, 0), 1) || - register_chrdev_region(MKDEV(TTYAUX_MAJOR, 0), 1, "/dev/tty") < 0) - panic("Couldn't register /dev/tty driver\n"); -- device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 0), NULL, -- "tty"); -+ device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 0), NULL, "tty"); - - cdev_init(&console_cdev, &console_fops); - if (cdev_add(&console_cdev, MKDEV(TTYAUX_MAJOR, 1), 1) || - register_chrdev_region(MKDEV(TTYAUX_MAJOR, 1), 1, "/dev/console") < 0) - panic("Couldn't register /dev/console driver\n"); -- device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 1), NULL, -+ consdev = device_create(tty_class, NULL, MKDEV(TTYAUX_MAJOR, 1), NULL, - "console"); -+ if (IS_ERR(consdev)) -+ consdev = NULL; -+ else -+ device_create_file(consdev, &dev_attr_active); - - #ifdef CONFIG_VT - vty_init(&console_fops); -diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c -index a8ec48e..76407ec 100644 ---- a/drivers/tty/vt/vt.c -+++ b/drivers/tty/vt/vt.c -@@ -236,6 +236,14 @@ enum { - }; - - /* -+ * /sys/class/tty/tty0/ -+ * -+ * the attribute 'active' contains the name of the current vc -+ * console and it supports poll() to detect vc switches -+ */ -+static struct device *tty0dev; -+ -+/* - * Notifier list for console events. - */ - static ATOMIC_NOTIFIER_HEAD(vt_notifier_list); -@@ -688,6 +696,8 @@ void redraw_screen(struct vc_data *vc, int is_switch) - save_screen(old_vc); - set_origin(old_vc); - } -+ if (tty0dev) -+ sysfs_notify(&tty0dev->kobj, NULL, "active"); - } else { - hide_cursor(vc); - redraw = 1; -@@ -2967,13 +2977,24 @@ static const struct tty_operations con_ops = { - - static struct cdev vc0_cdev; - -+static ssize_t show_tty_active(struct device *dev, -+ struct device_attribute *attr, char *buf) -+{ -+ return sprintf(buf, "tty%d\n", fg_console + 1); -+} -+static DEVICE_ATTR(active, S_IRUGO, show_tty_active, NULL); -+ - int __init vty_init(const struct file_operations *console_fops) - { - cdev_init(&vc0_cdev, console_fops); - if (cdev_add(&vc0_cdev, MKDEV(TTY_MAJOR, 0), 1) || - register_chrdev_region(MKDEV(TTY_MAJOR, 0), 1, "/dev/vc/0") < 0) - panic("Couldn't register /dev/tty0 driver\n"); -- device_create(tty_class, NULL, MKDEV(TTY_MAJOR, 0), NULL, "tty0"); -+ tty0dev = device_create(tty_class, NULL, MKDEV(TTY_MAJOR, 0), NULL, "tty0"); -+ if (IS_ERR(tty0dev)) -+ tty0dev = NULL; -+ else -+ device_create_file(tty0dev, &dev_attr_active); - - vcs_init(); - -diff --git a/include/linux/console.h b/include/linux/console.h -index 875cfb1..9774fe6 100644 ---- a/include/linux/console.h -+++ b/include/linux/console.h -@@ -151,7 +151,7 @@ extern int is_console_locked(void); - extern int braille_register_console(struct console *, int index, - char *console_options, char *braille_options); - extern int braille_unregister_console(struct console *); -- -+extern void console_sysfs_notify(void); - extern int console_suspend_enabled; - - /* Suspend and resume console messages over PM events */ -diff --git a/kernel/printk.c b/kernel/printk.c -index bf0420a..5417784 100644 ---- a/kernel/printk.c -+++ b/kernel/printk.c -@@ -1332,6 +1332,7 @@ void register_console(struct console *newcon) - spin_unlock_irqrestore(&logbuf_lock, flags); - } - release_console_sem(); -+ console_sysfs_notify(); - - /* - * By unregistering the bootconsoles after we enable the real console -@@ -1390,6 +1391,7 @@ int unregister_console(struct console *console) - console_drivers->flags |= CON_CONSDEV; - - release_console_sem(); -+ console_sysfs_notify(); - return res; - } - EXPORT_SYMBOL(unregister_console); - ++++++ patches.fixes.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0001-Revert-ath9k-use-per-device-struct-for-pm_qos_-opera.patch new/patches.fixes/0001-Revert-ath9k-use-per-device-struct-for-pm_qos_-opera.patch --- old/patches.fixes/0001-Revert-ath9k-use-per-device-struct-for-pm_qos_-opera.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/0001-Revert-ath9k-use-per-device-struct-for-pm_qos_-opera.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,117 +0,0 @@ -From 5eafc4fc9de8d364800c0421f283c212d4701b8d Mon Sep 17 00:00:00 2001 -From: Jiri Slaby <jslaby@suse.cz> -Date: Tue, 15 Feb 2011 17:07:21 +0100 -Subject: Revert "ath9k: use per-device struct for pm_qos_* operations" -Patch-mainline: not yet -References: bnc#667793 - -This reverts commit 98c316e348bedffa730e6f1e4baeb8a3c3e0f28b. - -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - drivers/net/wireless/ath/ath9k/ath9k.h | 4 +--- - drivers/net/wireless/ath/ath9k/init.c | 7 +++++-- - drivers/net/wireless/ath/ath9k/main.c | 5 +++-- - 3 files changed, 9 insertions(+), 7 deletions(-) - -diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h -index 0963071..7d7f308 100644 ---- a/drivers/net/wireless/ath/ath9k/ath9k.h -+++ b/drivers/net/wireless/ath/ath9k/ath9k.h -@@ -21,7 +21,6 @@ - #include <linux/device.h> - #include <linux/leds.h> - #include <linux/completion.h> --#include <linux/pm_qos_params.h> - - #include "debug.h" - #include "common.h" -@@ -647,8 +646,6 @@ struct ath_softc { - struct ath_descdma txsdma; - - struct ath_ant_comb ant_comb; -- -- struct pm_qos_request_list pm_qos_req; - }; - - struct ath_wiphy { -@@ -678,6 +675,7 @@ static inline void ath_read_cachesize(struct ath_common *common, int *csz) - } - - extern struct ieee80211_ops ath9k_ops; -+extern struct pm_qos_request_list ath9k_pm_qos_req; - extern int modparam_nohwcrypt; - extern int led_blink; - -diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c -index 14b8ab3..ba199fb 100644 ---- a/drivers/net/wireless/ath/ath9k/init.c -+++ b/drivers/net/wireless/ath/ath9k/init.c -@@ -15,6 +15,7 @@ - */ - - #include <linux/slab.h> -+#include <linux/pm_qos_params.h> - - #include "ath9k.h" - -@@ -179,6 +180,8 @@ static const struct ath_ops ath9k_common_ops = { - .write = ath9k_iowrite32, - }; - -+struct pm_qos_request_list ath9k_pm_qos_req; -+ - /**************************/ - /* Initialization */ - /**************************/ -@@ -758,7 +761,7 @@ int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid, - ath_init_leds(sc); - ath_start_rfkill_poll(sc); - -- pm_qos_add_request(&sc->pm_qos_req, PM_QOS_CPU_DMA_LATENCY, -+ pm_qos_add_request(&ath9k_pm_qos_req, PM_QOS_CPU_DMA_LATENCY, - PM_QOS_DEFAULT_VALUE); - - return 0; -@@ -829,7 +832,7 @@ void ath9k_deinit_device(struct ath_softc *sc) - } - - ieee80211_unregister_hw(hw); -- pm_qos_remove_request(&sc->pm_qos_req); -+ pm_qos_remove_request(&ath9k_pm_qos_req); - ath_rx_cleanup(sc); - ath_tx_cleanup(sc); - ath9k_deinit_softc(sc); -diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c -index c0c3464..ae6422b 100644 ---- a/drivers/net/wireless/ath/ath9k/main.c -+++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -15,6 +15,7 @@ - */ - - #include <linux/nl80211.h> -+#include <linux/pm_qos_params.h> - #include "ath9k.h" - #include "btcoex.h" - -@@ -1244,7 +1245,7 @@ static int ath9k_start(struct ieee80211_hw *hw) - ath9k_btcoex_timer_resume(sc); - } - -- pm_qos_update_request(&sc->pm_qos_req, 55); -+ pm_qos_update_request(&ath9k_pm_qos_req, 55); - - mutex_unlock: - mutex_unlock(&sc->mutex); -@@ -1423,7 +1424,7 @@ static void ath9k_stop(struct ieee80211_hw *hw) - - sc->sc_flags |= SC_OP_INVALID; - -- pm_qos_update_request(&sc->pm_qos_req, PM_QOS_DEFAULT_VALUE); -+ pm_qos_update_request(&ath9k_pm_qos_req, PM_QOS_DEFAULT_VALUE); - - mutex_unlock(&sc->mutex); - --- -1.7.3.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0002-Revert-ath9k-Remove-pm_qos-request-after-hw-unregist.patch new/patches.fixes/0002-Revert-ath9k-Remove-pm_qos-request-after-hw-unregist.patch --- old/patches.fixes/0002-Revert-ath9k-Remove-pm_qos-request-after-hw-unregist.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/0002-Revert-ath9k-Remove-pm_qos-request-after-hw-unregist.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,38 +0,0 @@ -From 8706f3f75ad0166d7e1e49dcb9ee22ff212ffd46 Mon Sep 17 00:00:00 2001 -From: Jiri Slaby <jslaby@suse.cz> -Date: Tue, 15 Feb 2011 17:07:26 +0100 -Subject: Revert "ath9k: Remove pm_qos request after hw unregister." -Patch-mainline: not yet -References: bnc#667793 - -This reverts commit e8364bb8d041c0fd92d69a17ff19f535e1d1c187. - -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - drivers/net/wireless/ath/ath9k/init.c | 3 ++- - 1 files changed, 2 insertions(+), 1 deletions(-) - -diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c -index ba199fb..d64a6bf 100644 ---- a/drivers/net/wireless/ath/ath9k/init.c -+++ b/drivers/net/wireless/ath/ath9k/init.c -@@ -819,6 +819,8 @@ void ath9k_deinit_device(struct ath_softc *sc) - - ath9k_ps_wakeup(sc); - -+ pm_qos_remove_request(&ath9k_pm_qos_req); -+ - wiphy_rfkill_stop_polling(sc->hw->wiphy); - ath_deinit_leds(sc); - -@@ -832,7 +834,6 @@ void ath9k_deinit_device(struct ath_softc *sc) - } - - ieee80211_unregister_hw(hw); -- pm_qos_remove_request(&ath9k_pm_qos_req); - ath_rx_cleanup(sc); - ath_tx_cleanup(sc); - ath9k_deinit_softc(sc); --- -1.7.3.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/0003-Revert-ath9k-Fix-a-DMA-latency-issue-for-Intel-Pinet.patch new/patches.fixes/0003-Revert-ath9k-Fix-a-DMA-latency-issue-for-Intel-Pinet.patch --- old/patches.fixes/0003-Revert-ath9k-Fix-a-DMA-latency-issue-for-Intel-Pinet.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/0003-Revert-ath9k-Fix-a-DMA-latency-issue-for-Intel-Pinet.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,101 +0,0 @@ -From ea74708f09b1c81d8ac1421b5281df77448a1f01 Mon Sep 17 00:00:00 2001 -From: Jiri Slaby <jslaby@suse.cz> -Date: Tue, 15 Feb 2011 17:07:31 +0100 -Subject: Revert "ath9k: Fix a DMA latency issue for Intel Pinetrail platforms." -Patch-mainline: not yet -References: bnc#667793 - -This reverts commit 10598c124ecabbbfd7522f74de19b8f7d52a1bee. - -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - drivers/net/wireless/ath/ath9k/ath9k.h | 1 - - drivers/net/wireless/ath/ath9k/init.c | 8 -------- - drivers/net/wireless/ath/ath9k/main.c | 5 ----- - 3 files changed, 0 insertions(+), 14 deletions(-) - -diff --git a/drivers/net/wireless/ath/ath9k/ath9k.h b/drivers/net/wireless/ath/ath9k/ath9k.h -index 7d7f308..3f24352 100644 ---- a/drivers/net/wireless/ath/ath9k/ath9k.h -+++ b/drivers/net/wireless/ath/ath9k/ath9k.h -@@ -675,7 +675,6 @@ static inline void ath_read_cachesize(struct ath_common *common, int *csz) - } - - extern struct ieee80211_ops ath9k_ops; --extern struct pm_qos_request_list ath9k_pm_qos_req; - extern int modparam_nohwcrypt; - extern int led_blink; - -diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c -index d64a6bf..91d9b2a 100644 ---- a/drivers/net/wireless/ath/ath9k/init.c -+++ b/drivers/net/wireless/ath/ath9k/init.c -@@ -15,7 +15,6 @@ - */ - - #include <linux/slab.h> --#include <linux/pm_qos_params.h> - - #include "ath9k.h" - -@@ -180,8 +179,6 @@ static const struct ath_ops ath9k_common_ops = { - .write = ath9k_iowrite32, - }; - --struct pm_qos_request_list ath9k_pm_qos_req; -- - /**************************/ - /* Initialization */ - /**************************/ -@@ -761,9 +758,6 @@ int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid, - ath_init_leds(sc); - ath_start_rfkill_poll(sc); - -- pm_qos_add_request(&ath9k_pm_qos_req, PM_QOS_CPU_DMA_LATENCY, -- PM_QOS_DEFAULT_VALUE); -- - return 0; - - error_world: -@@ -819,8 +813,6 @@ void ath9k_deinit_device(struct ath_softc *sc) - - ath9k_ps_wakeup(sc); - -- pm_qos_remove_request(&ath9k_pm_qos_req); -- - wiphy_rfkill_stop_polling(sc->hw->wiphy); - ath_deinit_leds(sc); - -diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c -index ae6422b..7d332e5 100644 ---- a/drivers/net/wireless/ath/ath9k/main.c -+++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -15,7 +15,6 @@ - */ - - #include <linux/nl80211.h> --#include <linux/pm_qos_params.h> - #include "ath9k.h" - #include "btcoex.h" - -@@ -1245,8 +1244,6 @@ static int ath9k_start(struct ieee80211_hw *hw) - ath9k_btcoex_timer_resume(sc); - } - -- pm_qos_update_request(&ath9k_pm_qos_req, 55); -- - mutex_unlock: - mutex_unlock(&sc->mutex); - -@@ -1424,8 +1421,6 @@ static void ath9k_stop(struct ieee80211_hw *hw) - - sc->sc_flags |= SC_OP_INVALID; - -- pm_qos_update_request(&ath9k_pm_qos_req, PM_QOS_DEFAULT_VALUE); -- - mutex_unlock(&sc->mutex); - - ath_print(common, ATH_DBG_CONFIG, "Driver halt\n"); --- -1.7.3.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/PNP-ACPI-Use-DEVICE_ACPI_HANDLE-for-device-ACPI-handle-access.patch new/patches.fixes/PNP-ACPI-Use-DEVICE_ACPI_HANDLE-for-device-ACPI-handle-access.patch --- old/patches.fixes/PNP-ACPI-Use-DEVICE_ACPI_HANDLE-for-device-ACPI-handle-access.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/PNP-ACPI-Use-DEVICE_ACPI_HANDLE-for-device-ACPI-handle-access.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,202 +0,0 @@ -From: Rafael J. Wysocki <rjw@sisk.pl> -Subject: PNP / ACPI: Use DEVICE_ACPI_HANDLE() for device ACPI handle access -Git-commit: cc8e7a355c1ec64b06a5b8126c47c5cb47f44fce -Patch-mainline: Yes -References: bnc#434742 - -The PNP ACPI driver squirrels the ACPI handles of PNP devices' ACPI -companions, but this isn't correct, because those handles should be -accessed using the DEVICE_ACPI_HANDLE() macro operating on struct -device objects. - -Using DEVICE_ACPI_HANDLE() in the PNP ACPI driver instead of the -driver's own copies of the ACPI handles allows us to avoid a problem -with docking stations where a machine docked before suspend to RAM -and undocked while suspended crashes during the subsequent resume (in -that case the ACPI companion of the PNP device in question doesn't -exist any more while the device is being resumed). It also allows us -to avoid the problem where suspend to RAM fails when the machine was -undocked while suspended before (again, the ACPI companion of the PNP -device is not present any more while it is being suspended). - -This change doesn't fix all of the the PNP ACPI driver's problems -with PNP devices in docking stations (generally speaking, the driver -has no idea that devices can come and go and doesn't even attempt to -handle such events), but at least it makes suspend work for the -users of docking stations who don't use the PNP devices located in -there. - -References: https://bugzilla.kernel.org/show_bug.cgi?id=15100 - -Reported-and-tested-by: Toralf Förster <toralf.foerster@gmx.de> -Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> -Acked-by: Bjorn Helgaas <bjorn.helgaas@hp.com> -Signed-off-by: Len Brown <len.brown@intel.com> -Signed-off-by: Rafael J. Wysocki <rjw@suse.de> ---- - drivers/pnp/driver.c | 7 ++- - drivers/pnp/pnpacpi/core.c | 93 ++++++++++++++++++++++++++++++++------------- - 2 files changed, 72 insertions(+), 28 deletions(-) - -Index: linux-2.6.37-openSUSE-11.4/drivers/pnp/pnpacpi/core.c -=================================================================== ---- linux-2.6.37-openSUSE-11.4.orig/drivers/pnp/pnpacpi/core.c -+++ linux-2.6.37-openSUSE-11.4/drivers/pnp/pnpacpi/core.c -@@ -81,12 +81,19 @@ static int pnpacpi_get_resources(struct - - static int pnpacpi_set_resources(struct pnp_dev *dev) - { -- struct acpi_device *acpi_dev = dev->data; -- acpi_handle handle = acpi_dev->handle; -+ struct acpi_device *acpi_dev; -+ acpi_handle handle; - struct acpi_buffer buffer; - int ret; - - pnp_dbg(&dev->dev, "set resources\n"); -+ -+ handle = DEVICE_ACPI_HANDLE(&dev->dev); -+ if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &acpi_dev))) { -+ dev_dbg(&dev->dev, "ACPI device not found in %s!\n", __func__); -+ return -ENODEV; -+ } -+ - ret = pnpacpi_build_resource_template(dev, &buffer); - if (ret) - return ret; -@@ -105,12 +112,18 @@ static int pnpacpi_set_resources(struct - - static int pnpacpi_disable_resources(struct pnp_dev *dev) - { -- struct acpi_device *acpi_dev = dev->data; -- acpi_handle handle = acpi_dev->handle; -+ struct acpi_device *acpi_dev; -+ acpi_handle handle; - int ret; - - dev_dbg(&dev->dev, "disable resources\n"); - -+ handle = DEVICE_ACPI_HANDLE(&dev->dev); -+ if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &acpi_dev))) { -+ dev_dbg(&dev->dev, "ACPI device not found in %s!\n", __func__); -+ return 0; -+ } -+ - /* acpi_unregister_gsi(pnp_irq(dev, 0)); */ - ret = 0; - if (acpi_bus_power_manageable(handle)) -@@ -124,46 +137,74 @@ static int pnpacpi_disable_resources(str - #ifdef CONFIG_ACPI_SLEEP - static bool pnpacpi_can_wakeup(struct pnp_dev *dev) - { -- struct acpi_device *acpi_dev = dev->data; -- acpi_handle handle = acpi_dev->handle; -+ struct acpi_device *acpi_dev; -+ acpi_handle handle; -+ -+ handle = DEVICE_ACPI_HANDLE(&dev->dev); -+ if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &acpi_dev))) { -+ dev_dbg(&dev->dev, "ACPI device not found in %s!\n", __func__); -+ return false; -+ } - - return acpi_bus_can_wakeup(handle); - } - - static int pnpacpi_suspend(struct pnp_dev *dev, pm_message_t state) - { -- struct acpi_device *acpi_dev = dev->data; -- acpi_handle handle = acpi_dev->handle; -- int power_state; -+ struct acpi_device *acpi_dev; -+ acpi_handle handle; -+ int error = 0; -+ -+ handle = DEVICE_ACPI_HANDLE(&dev->dev); -+ if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &acpi_dev))) { -+ dev_dbg(&dev->dev, "ACPI device not found in %s!\n", __func__); -+ return 0; -+ } - - if (device_can_wakeup(&dev->dev)) { -- int rc = acpi_pm_device_sleep_wake(&dev->dev, -+ error = acpi_pm_device_sleep_wake(&dev->dev, - device_may_wakeup(&dev->dev)); -+ if (error) -+ return error; -+ } -+ -+ if (acpi_bus_power_manageable(handle)) { -+ int power_state = acpi_pm_device_sleep_state(&dev->dev, NULL); - -- if (rc) -- return rc; -+ if (power_state < 0) -+ power_state = (state.event == PM_EVENT_ON) ? -+ ACPI_STATE_D0 : ACPI_STATE_D3; -+ -+ /* -+ * acpi_bus_set_power() often fails (keyboard port can't be -+ * powered-down?), and in any case, our return value is ignored -+ * by pnp_bus_suspend(). Hence we don't revert the wakeup -+ * setting if the set_power fails. -+ */ -+ error = acpi_bus_set_power(handle, power_state); - } -- power_state = acpi_pm_device_sleep_state(&dev->dev, NULL); -- if (power_state < 0) -- power_state = (state.event == PM_EVENT_ON) ? -- ACPI_STATE_D0 : ACPI_STATE_D3; -- -- /* acpi_bus_set_power() often fails (keyboard port can't be -- * powered-down?), and in any case, our return value is ignored -- * by pnp_bus_suspend(). Hence we don't revert the wakeup -- * setting if the set_power fails. -- */ -- return acpi_bus_set_power(handle, power_state); -+ -+ return error; - } - - static int pnpacpi_resume(struct pnp_dev *dev) - { -- struct acpi_device *acpi_dev = dev->data; -- acpi_handle handle = acpi_dev->handle; -+ struct acpi_device *acpi_dev; -+ acpi_handle handle = DEVICE_ACPI_HANDLE(&dev->dev); -+ int error = 0; -+ -+ if (!handle || ACPI_FAILURE(acpi_bus_get_device(handle, &acpi_dev))) { -+ dev_dbg(&dev->dev, "ACPI device not found in %s!\n", __func__); -+ return -ENODEV; -+ } - - if (device_may_wakeup(&dev->dev)) - acpi_pm_device_sleep_wake(&dev->dev, false); -- return acpi_bus_set_power(handle, ACPI_STATE_D0); -+ -+ if (acpi_bus_power_manageable(handle)) -+ error = acpi_bus_set_power(handle, ACPI_STATE_D0); -+ -+ return error; - } - #endif - -Index: linux-2.6.37-openSUSE-11.4/drivers/pnp/driver.c -=================================================================== ---- linux-2.6.37-openSUSE-11.4.orig/drivers/pnp/driver.c -+++ linux-2.6.37-openSUSE-11.4/drivers/pnp/driver.c -@@ -189,8 +189,11 @@ static int pnp_bus_resume(struct device - if (!pnp_drv) - return 0; - -- if (pnp_dev->protocol->resume) -- pnp_dev->protocol->resume(pnp_dev); -+ if (pnp_dev->protocol->resume) { -+ error = pnp_dev->protocol->resume(pnp_dev); -+ if (error) -+ return error; -+ } - - if (pnp_can_write(pnp_dev)) { - error = pnp_start_dev(pnp_dev); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/bridge-fix-hash-list-corruption.patch new/patches.fixes/bridge-fix-hash-list-corruption.patch --- old/patches.fixes/bridge-fix-hash-list-corruption.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/bridge-fix-hash-list-corruption.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,48 +0,0 @@ -From: Herbert Xu <herbert@gondor.apana.org.au> -Subject: bridge: Fix mglist corruption that leads to memory corruption -Patch-mainline: yes -Git-commit-id: 6b0d6a9b4296fa16a28d10d416db7a770fc03287 -References: bnc#653547 - -The list mp->mglist is used to indicate whether a multicast group -is active on the bridge interface itself as opposed to one of the -constituent interfaces in the bridge. - -Unfortunately the operation that adds the mp->mglist node to the -list neglected to check whether it has already been added. This -leads to list corruption in the form of nodes pointing to itself. - -Normally this would be quite obvious as it would cause an infinite -loop when walking the list. However, as this list is never actually -walked (which means that we don't really need it, I'll get rid of -it in a subsequent patch), this instead is hidden until we perform -a delete operation on the affected nodes. - -As the same node may now be pointed to by more than one node, the -delete operations can then cause modification of freed memory. - -This was observed in practice to cause corruption in 512-byte slabs, -most commonly leading to crashes in jbd2. - -Thanks to Josef Bacik for pointing me in the right direction. - -Reported-by: Ian Page Hands <ihands@redhat.com> -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> -Signed-off-by: David S. Miller <davem@davemloft.net> -Acked-by: Jan Kara <jack@suse.cz> ---- - -diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c -index f701a21..fdbd41c 100644 ---- a/net/bridge/br_multicast.c -+++ b/net/bridge/br_multicast.c -@@ -719,7 +719,8 @@ static int br_multicast_add_group(struct net_bridge *br, - goto err; - - if (!port) { -- hlist_add_head(&mp->mglist, &br->mglist); -+ if (hlist_unhashed(&mp->mglist)) -+ hlist_add_head(&mp->mglist, &br->mglist); - mod_timer(&mp->timer, now + br->multicast_membership_interval); - goto out; - } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/bridge-fix-timer-arming.patch new/patches.fixes/bridge-fix-timer-arming.patch --- old/patches.fixes/bridge-fix-timer-arming.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/bridge-fix-timer-arming.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,41 +0,0 @@ -From: Herbert Xu <herbert@gondor.apana.org.au> -Subject: bridge: Fix timer typo that may render snooping less effective -Patch-mainline: yes -Git-commit-id: 24f9cdcbd743fd6adb8fb83688d8d86dcccde662 -References: bnc#653547 - -In a couple of spots where we are supposed to modify the port -group timer (p->timer) we instead modify the bridge interface -group timer (mp->timer). - -The effect of this is mostly harmless. However, it can cause -port subscriptions to be longer than they should be, thus making -snooping less effective. - -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> -Signed-off-by: David S. Miller <davem@davemloft.net> -Acked-by: Jan Kara <jack@suse.cz> ---- - -diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c -index fdbd41c..c558274 100644 ---- a/net/bridge/br_multicast.c -+++ b/net/bridge/br_multicast.c -@@ -1178,7 +1178,7 @@ static int br_ip4_multicast_query(struct net_bridge *br, - if (timer_pending(&p->timer) ? - time_after(p->timer.expires, now + max_delay) : - try_to_del_timer_sync(&p->timer) >= 0) -- mod_timer(&mp->timer, now + max_delay); -+ mod_timer(&p->timer, now + max_delay); - } - - out: -@@ -1249,7 +1249,7 @@ static int br_ip6_multicast_query(struct net_bridge *br, - if (timer_pending(&p->timer) ? - time_after(p->timer.expires, now + max_delay) : - try_to_del_timer_sync(&p->timer) >= 0) -- mod_timer(&mp->timer, now + max_delay); -+ mod_timer(&p->timer, now + max_delay); - } - - out: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/bridge-remove-hash-list.patch new/patches.fixes/bridge-remove-hash-list.patch --- old/patches.fixes/bridge-remove-hash-list.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/bridge-remove-hash-list.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,129 +0,0 @@ -From: Herbert Xu <herbert@gondor.apana.org.au> -Subject: bridge: Replace mp->mglist hlist with a bool -Patch-mainline: Yes -Git-commit-id: 8a870178c0ad1bae9994c99bd01eb10c9903e616 -References: bnc#653547 - -As it turns out we never need to walk through the list of multicast -groups subscribed by the bridge interface itself (the only time we'd -want to do that is when we shut down the bridge, in which case we -simply walk through all multicast groups), we don't really need to -keep an hlist for mp->mglist. - -This means that we can replace it with just a single bit to indicate -whether the bridge interface is subscribed to a group. - -Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> -Signed-off-by: David S. Miller <davem@davemloft.net> -Acked-by: Jan Kara <jack@suse.cz> ---- - -Index: linux-2.6.37-openSUSE-11.4/net/bridge/br_input.c -=================================================================== ---- linux-2.6.37-openSUSE-11.4.orig/net/bridge/br_input.c -+++ linux-2.6.37-openSUSE-11.4/net/bridge/br_input.c -@@ -76,7 +76,7 @@ int br_handle_frame_finish(struct sk_buf - if (is_multicast_ether_addr(dest)) { - mdst = br_mdb_get(br, skb); - if (mdst || BR_INPUT_SKB_CB_MROUTERS_ONLY(skb)) { -- if ((mdst && !hlist_unhashed(&mdst->mglist)) || -+ if ((mdst && mdst->mglist) || - br_multicast_is_router(br)) - skb2 = skb; - br_multicast_forward(mdst, skb, skb2); -Index: linux-2.6.37-openSUSE-11.4/net/bridge/br_multicast.c -=================================================================== ---- linux-2.6.37-openSUSE-11.4.orig/net/bridge/br_multicast.c -+++ linux-2.6.37-openSUSE-11.4/net/bridge/br_multicast.c -@@ -229,8 +229,7 @@ static void br_multicast_group_expired(u - if (!netif_running(br->dev) || timer_pending(&mp->timer)) - goto out; - -- if (!hlist_unhashed(&mp->mglist)) -- hlist_del_init(&mp->mglist); -+ mp->mglist = false; - - if (mp->ports) - goto out; -@@ -268,7 +267,7 @@ static void br_multicast_del_pg(struct n - del_timer(&p->query_timer); - call_rcu_bh(&p->rcu, br_multicast_free_pg); - -- if (!mp->ports && hlist_unhashed(&mp->mglist) && -+ if (!mp->ports && !mp->mglist && - netif_running(br->dev)) - mod_timer(&mp->timer, jiffies); - -@@ -520,7 +519,7 @@ static void br_multicast_group_query_exp - struct net_bridge *br = mp->br; - - spin_lock(&br->multicast_lock); -- if (!netif_running(br->dev) || hlist_unhashed(&mp->mglist) || -+ if (!netif_running(br->dev) || !mp->mglist || - mp->queries_sent >= br->multicast_last_member_count) - goto out; - -@@ -707,8 +706,7 @@ static int br_multicast_add_group(struct - goto err; - - if (!port) { -- if (hlist_unhashed(&mp->mglist)) -- hlist_add_head(&mp->mglist, &br->mglist); -+ mp->mglist = true; - mod_timer(&mp->timer, now + br->multicast_membership_interval); - goto out; - } -@@ -1152,7 +1150,7 @@ static int br_ip4_multicast_query(struct - - max_delay *= br->multicast_last_member_count; - -- if (!hlist_unhashed(&mp->mglist) && -+ if (mp->mglist && - (timer_pending(&mp->timer) ? - time_after(mp->timer.expires, now + max_delay) : - try_to_del_timer_sync(&mp->timer) >= 0)) -@@ -1220,7 +1218,7 @@ static int br_ip6_multicast_query(struct - goto out; - - max_delay *= br->multicast_last_member_count; -- if (!hlist_unhashed(&mp->mglist) && -+ if (mp->mglist && - (timer_pending(&mp->timer) ? - time_after(mp->timer.expires, now + max_delay) : - try_to_del_timer_sync(&mp->timer) >= 0)) -@@ -1265,7 +1263,7 @@ static void br_multicast_leave_group(str - br->multicast_last_member_interval; - - if (!port) { -- if (!hlist_unhashed(&mp->mglist) && -+ if (mp->mglist && - (timer_pending(&mp->timer) ? - time_after(mp->timer.expires, time) : - try_to_del_timer_sync(&mp->timer) >= 0)) { -Index: linux-2.6.37-openSUSE-11.4/net/bridge/br_private.h -=================================================================== ---- linux-2.6.37-openSUSE-11.4.orig/net/bridge/br_private.h -+++ linux-2.6.37-openSUSE-11.4/net/bridge/br_private.h -@@ -84,13 +84,13 @@ struct net_bridge_port_group { - struct net_bridge_mdb_entry - { - struct hlist_node hlist[2]; -- struct hlist_node mglist; - struct net_bridge *br; - struct net_bridge_port_group *ports; - struct rcu_head rcu; - struct timer_list timer; - struct timer_list query_timer; - struct br_ip addr; -+ bool mglist; - u32 queries_sent; - }; - -@@ -229,7 +229,6 @@ struct net_bridge - spinlock_t multicast_lock; - struct net_bridge_mdb_htable *mdb; - struct hlist_head router_list; -- struct hlist_head mglist; - - struct timer_list multicast_router_timer; - struct timer_list multicast_querier_timer; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/dm-table-switch-to-readonly new/patches.fixes/dm-table-switch-to-readonly --- old/patches.fixes/dm-table-switch-to-readonly 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/dm-table-switch-to-readonly 2011-02-10 02:57:43.000000000 +0100 @@ -40,13 +40,12 @@ atomic_set(&dd->count, 0); --- a/drivers/md/dm.c +++ b/drivers/md/dm.c -@@ -343,17 +343,26 @@ int dm_deleting_md(struct mapped_device +@@ -343,16 +343,25 @@ int dm_deleting_md(struct mapped_device static int dm_blk_open(struct block_device *bdev, fmode_t mode) { struct mapped_device *md; + int retval = 0; - mutex_lock(&dm_mutex); spin_lock(&_minor_lock); md = bdev->bd_disk->private_data; @@ -69,8 +68,8 @@ } @@ -364,7 +373,7 @@ out: + out: spin_unlock(&_minor_lock); - mutex_unlock(&dm_mutex); - return md ? 0 : -ENXIO; + return retval; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/hfs-avoid-crash-in-hfs_bnode_create new/patches.fixes/hfs-avoid-crash-in-hfs_bnode_create --- old/patches.fixes/hfs-avoid-crash-in-hfs_bnode_create 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.fixes/hfs-avoid-crash-in-hfs_bnode_create 2011-02-10 02:57:43.000000000 +0100 @@ -0,0 +1,30 @@ +From: Jeff Mahoney <jeffm@suse.com> +Subject: hfs: avoid crash in hfs_bnode_create +Patch-mainline: not yet +References: bnc#552250 + + Commit 634725a92938b0f282b17cec0b007dca77adebd2 removed the BUG_ON + in hfs_bnode_create in hfsplus. This patch removes it from the hfs + version and avoids an fsfuzzer crash. + +Signed-off-by: Jeff Mahoney <jeffm@suse.com> +Acked-by: Jeff Mahoney <jeffm@suse.com> +--- + fs/hfs/bnode.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/fs/hfs/bnode.c ++++ b/fs/hfs/bnode.c +@@ -413,7 +413,11 @@ struct hfs_bnode *hfs_bnode_create(struc + spin_lock(&tree->hash_lock); + node = hfs_bnode_findhash(tree, num); + spin_unlock(&tree->hash_lock); +- BUG_ON(node); ++ if (node) { ++ printk(KERN_CRIT "new node %u already hashed?\n", num); ++ WARN_ON(1); ++ return node; ++ } + node = __hfs_bnode_create(tree, num); + if (!node) + return ERR_PTR(-ENOMEM); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/ipv6-revert-dont-flush-routes-when-setting-loopback-down.patch new/patches.fixes/ipv6-revert-dont-flush-routes-when-setting-loopback-down.patch --- old/patches.fixes/ipv6-revert-dont-flush-routes-when-setting-loopback-down.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/ipv6-revert-dont-flush-routes-when-setting-loopback-down.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,28 +0,0 @@ -From: Jiri Bohac <jbohac@suse.cz> -Subject: REVERT: ipv6: don't flush routes when setting loopback down -Patch-mainline: no, temporary fix - -Revert upstream commit 29ba5fed1bbd09c2cba890798c8f9eaab251401d. -It causes IPv6 connections to hang instead of returning an error when -IPv6 is disabled. - -See ongoing discussion at http://www.spinics.net/lists/netdev/msg153093.html -seeking for a proper fix. - -Signed-off-by: Jiri Bohac <jbohac@suse.cz> - -diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c -index 93b7a93..848b355 100644 ---- a/net/ipv6/addrconf.c -+++ b/net/ipv6/addrconf.c -@@ -2669,9 +2669,7 @@ static int addrconf_ifdown(struct net_device *dev, int how) - - ASSERT_RTNL(); - -+ rt6_ifdown(net, dev); -- /* Flush routes if device is being removed or it is not loopback */ -- if (how || !(dev->flags & IFF_LOOPBACK)) -- rt6_ifdown(net, dev); - neigh_ifdown(&nd_tbl, dev); - - idev = __in6_dev_get(dev); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/kvm-macos.patch new/patches.fixes/kvm-macos.patch --- old/patches.fixes/kvm-macos.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/kvm-macos.patch 2011-02-10 02:57:43.000000000 +0100 @@ -41,9 +41,9 @@ - [SVM_EXIT_MWAIT] = invalid_op_interception, + [SVM_EXIT_MONITOR] = monitor_interception, + [SVM_EXIT_MWAIT] = mwait_interception, + [SVM_EXIT_XSETBV] = xsetbv_interception, [SVM_EXIT_NPF] = pf_interception, }; - --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -1254,6 +1254,7 @@ int kvm_set_msr_common(struct kvm_vcpu * diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch new/patches.fixes/loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch --- old/patches.fixes/loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,67 +0,0 @@ -From: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> -Subject: block: loop queue_lock null pointer derefence in blk_throtl_exit v3 -Patch-mainline: not yet -References: bnc#666598 - -Performing -$ sudo mount -o loop -o umask=0 /dev/sdb1 /mnt/ -mount: wrong fs type, bad option, bad superblock on /dev/loop0, - missing codepage or helper program, or other error - In some cases useful info is found in syslog - try - dmesg | tail or so - -$ sudo modprobe -r loop - -results in oops: - - BUG: unable to handle kernel NULL pointer dereference at 0000000000000004 - IP: [<ffffffff812479d4>] do_raw_spin_lock+0x14/0x122 - Process modprobe (pid: 6189, threadinfo ffff88009a898000, task - ffff880154a88000) - Call Trace: - [<ffffffff81486788>] _raw_spin_lock_irq+0x4a/0x51 - [<ffffffff8123404b>] ? blk_throtl_exit+0x3b/0xa0 - [<ffffffff8105b120>] ? cancel_delayed_work_sync+0xd/0xf - [<ffffffff8123404b>] blk_throtl_exit+0x3b/0xa0 - [<ffffffff81229bc8>] blk_release_queue+0x21/0x65 - [<ffffffff8123bb06>] kobject_release+0x51/0x66 - [<ffffffff8123bab5>] ? kobject_release+0x0/0x66 - [<ffffffff8123ce1e>] kref_put+0x43/0x4d - [<ffffffff8123ba27>] kobject_put+0x47/0x4b - [<ffffffff8122717c>] blk_cleanup_queue+0x56/0x5b - [<ffffffffa01c3824>] loop_exit+0x68/0x844 [loop] - [<ffffffff8107cccc>] sys_delete_module+0x1e8/0x25b - [<ffffffff814864c9>] ? trace_hardirqs_on_thunk+0x3a/0x3f - [<ffffffff81002112>] system_call_fastpath+0x16/0x1b - -because of an attempt to acquire NULL queue_lock. Added the same lines as -in blk_queue_make_request - `fall back to embedded per-queue lock' - when -call blk_release_queue on allocated but not initialized queue. - -Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> -Cc: Vivek Goyal <vgoyal@redhat.com> -Cc: Jens Axboe <jaxboe@fusionio.com> -Signed-off-by: Andrew Morton <akpm@linux-foundation.org> -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - - block/blk-sysfs.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff -puN block/blk-sysfs.c~loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3 block/blk-sysfs.c ---- a/block/blk-sysfs.c~loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3 -+++ a/block/blk-sysfs.c -@@ -471,6 +471,12 @@ static void blk_release_queue(struct kob - - blk_sync_queue(q); - -+ /* It's possible that blk_release_queue will be called on allocated -+ * but never initilalized queue. Fall back to our embedded per-queue -+ * locks in this case. */ -+ if (!q->queue_lock) -+ q->queue_lock = &q->__queue_lock; -+ - blk_throtl_exit(q); - - if (rl->rq_pool) -_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/nfs-slot-table-alloc new/patches.fixes/nfs-slot-table-alloc --- old/patches.fixes/nfs-slot-table-alloc 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/nfs-slot-table-alloc 2011-02-10 02:57:43.000000000 +0100 @@ -21,7 +21,7 @@ --- a/net/sunrpc/xprt.c +++ b/net/sunrpc/xprt.c @@ -2266,7 +2266,7 @@ static struct rpc_xprt *xs_setup_xprt(st - goto out; + kref_init(&xprt->kref); xprt->max_reqs = max_req; - xprt->slot = kcalloc(max_req, sizeof(struct rpc_rqst), GFP_KERNEL); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/oom-warning new/patches.fixes/oom-warning --- old/patches.fixes/oom-warning 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/oom-warning 2011-02-10 02:57:43.000000000 +0100 @@ -26,5 +26,5 @@ + } + printk(KERN_INFO "%s: page allocation failure." " order:%d, mode:0x%x\n", - p->comm, order, gfp_mask); + current->comm, order, gfp_mask); dump_stack(); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/orinoco-allow-IW_AUTH_MFP-to-pass-through.patch new/patches.fixes/orinoco-allow-IW_AUTH_MFP-to-pass-through.patch --- old/patches.fixes/orinoco-allow-IW_AUTH_MFP-to-pass-through.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/orinoco-allow-IW_AUTH_MFP-to-pass-through.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,53 +0,0 @@ -From 329b32fedc94fd9158f1635ac64f4ae6a00d374c Mon Sep 17 00:00:00 2001 -From: David Kilroy <kilroyd@googlemail.com> -Date: Thu, 2 Dec 2010 18:19:21 +0000 -Subject: orinoco: allow IW_AUTH_MFP to pass through -Git-commit: 329b32fedc94fd9158f1635ac64f4ae6a00d374c -Patch-mainline: yes -References: bnc#661624 - -The card doesn't support MFP, so silently accept DISABLED and OPTIONAL -settings. - -This avoids the following failure in wpa_supplicant logs: - -State: SCANNING -> ASSOCIATING -wpa_driver_wext_set_operstate: operstate 0->0 (DORMANT) -netlink: Operstate: linkmode=-1, operstate=5 -wpa_driver_wext_associate -wpa_driver_wext_set_drop_unencrypted -wpa_driver_wext_set_psk -wpa_driver_wext_associate: assoc failed because set_auth_param(IW_AUTH_MFP) failed -Association request to the driver failed - -Signed-off by: David Kilroy <kilroyd@googlemail.com> -Reported by: Giacomo Comes <comes@naic.edu> - -Signed-off-by: John W. Linville <linville@tuxdriver.com> -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - drivers/net/wireless/orinoco/wext.c | 8 ++++++++ - 1 files changed, 8 insertions(+), 0 deletions(-) - -diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c -index 93505f9..8e65ffc 100644 ---- a/drivers/net/wireless/orinoco/wext.c -+++ b/drivers/net/wireless/orinoco/wext.c -@@ -893,6 +893,14 @@ static int orinoco_ioctl_set_auth(struct net_device *dev, - */ - break; - -+ case IW_AUTH_MFP: -+ /* Management Frame Protection not supported. -+ * Only fail if set to required. -+ */ -+ if (param->value == IW_AUTH_MFP_REQUIRED) -+ ret = -EINVAL; -+ break; -+ - case IW_AUTH_KEY_MGMT: - /* wl_lkm implies value 2 == PSK for Hermes I - * which ties in with WEXT --- -1.7.3.4 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/reiserfs-xattr-crash-fix new/patches.fixes/reiserfs-xattr-crash-fix --- old/patches.fixes/reiserfs-xattr-crash-fix 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/reiserfs-xattr-crash-fix 2011-02-10 02:57:43.000000000 +0100 @@ -27,16 +27,16 @@ Signed-off-by: Jeff Mahoney <jeffm@suse.com> --- - fs/dcache.c | 3 ++- - fs/reiserfs/super.c | 41 ++++++++++++++++++++++++++++------------- - fs/reiserfs/xattr.c | 21 +++++++++++++++++++++ - include/linux/dcache.h | 1 + - include/linux/reiserfs_xattr.h | 1 + - 5 files changed, 53 insertions(+), 14 deletions(-) + fs/dcache.c | 3 +- + fs/reiserfs/super.c | 22 ++------------------ + fs/reiserfs/xattr.c | 43 +++++++++++++++++++++++++++++++++++++++-- + include/linux/dcache.h | 1 + include/linux/reiserfs_xattr.h | 1 + 5 files changed, 48 insertions(+), 22 deletions(-) --- a/fs/dcache.c +++ b/fs/dcache.c -@@ -637,7 +637,7 @@ EXPORT_SYMBOL(shrink_dcache_sb); +@@ -885,7 +885,7 @@ EXPORT_SYMBOL(shrink_dcache_sb); * - see the comments on shrink_dcache_for_umount() for a description of the * locking */ @@ -45,7 +45,7 @@ { struct dentry *parent; unsigned detached = 0; -@@ -725,6 +725,7 @@ static void shrink_dcache_for_umount_sub +@@ -978,6 +978,7 @@ static void shrink_dcache_for_umount_sub struct dentry, d_u.d_child); } } @@ -55,20 +55,12 @@ * destroy the dentries attached to a superblock on unmounting --- a/fs/reiserfs/super.c +++ b/fs/reiserfs/super.c -@@ -450,21 +450,34 @@ int remove_save_link(struct inode *inode +@@ -450,29 +450,13 @@ int remove_save_link(struct inode *inode return journal_end(&th, inode->i_sb, JOURNAL_PER_BALANCE_CNT); } -static void reiserfs_kill_sb(struct super_block *s) -+/* -+ * Detach the priv root from the root. Technically this becomes anonymous -+ * but we don't want it added to the anon list. This is necessary to -+ * work around shrink_dcache_for_umount BUG'ing on the xattr dentries if -+ * we don't clean them up before the call and Oopsing on cleaning up -+ * xattrs during inode deletion if we do. -+ */ -+static void detach_privroot(struct super_block *s) - { +-{ - if (REISERFS_SB(s)) { - if (REISERFS_SB(s)->xattr_root) { - d_invalidate(REISERFS_SB(s)->xattr_root); @@ -81,29 +73,12 @@ - REISERFS_SB(s)->priv_root = NULL; - } - } -+ struct dentry *root; -+ if (!REISERFS_SB(s)) -+ return; -+ -+ root = REISERFS_SB(s)->priv_root; -+ if (!root) -+ return; -+ -+ d_drop(root); -+ dput(root->d_parent); -+ spin_lock(&dcache_lock); -+ list_del_init(&root->d_u.d_child); -+ root->d_parent = root; -+ spin_unlock(&dcache_lock); -+} - -+static void reiserfs_kill_sb(struct super_block *s) -+{ -+ detach_privroot(s); - kill_block_super(s); - } - -@@ -473,6 +486,8 @@ static void reiserfs_put_super(struct su +- +- kill_block_super(s); +-} +- + static void reiserfs_put_super(struct super_block *s) + { struct reiserfs_transaction_handle th; th.t_trans_id = 0; @@ -112,9 +87,57 @@ dquot_disable(s, -1, DQUOT_USAGE_ENABLED | DQUOT_LIMITS_ENABLED); reiserfs_write_lock(s); +@@ -2259,7 +2243,7 @@ struct file_system_type reiserfs_fs_type + .owner = THIS_MODULE, + .name = "reiserfs", + .mount = get_super_block, +- .kill_sb = reiserfs_kill_sb, ++ .kill_sb = kill_block_super, + .fs_flags = FS_REQUIRES_DEV, + }; + --- a/fs/reiserfs/xattr.c +++ b/fs/reiserfs/xattr.c -@@ -1047,3 +1047,24 @@ error: +@@ -989,18 +989,36 @@ static const struct dentry_operations xa + + int reiserfs_lookup_privroot(struct super_block *s) + { ++ struct qstr fake_name = { ++ .name = ".priv_root", ++ .len = strlen(".priv_root"), ++ }; ++ struct dentry *fake_root = d_alloc_pseudo(s, &fake_name); + struct dentry *dentry; + int err = 0; + ++ if (!fake_root) { ++ reiserfs_warning(s, "", "Couldn't initalize fake root for " ++ "extended attributes."); ++ return -ENOMEM; ++ } ++ + /* If we don't have the privroot located yet - go find it */ + reiserfs_mutex_lock_safe(&s->s_root->d_inode->i_mutex, s); + dentry = lookup_one_len(PRIVROOT_NAME, s->s_root, + strlen(PRIVROOT_NAME)); + if (!IS_ERR(dentry)) { +- REISERFS_SB(s)->priv_root = dentry; ++ REISERFS_SB(s)->priv_root = fake_root; + d_set_d_op(dentry, &xattr_lookup_poison_ops); +- if (dentry->d_inode) ++ if (dentry->d_inode) { + dentry->d_inode->i_flags |= S_PRIVATE; ++ ++ /* This is disconnected from the root */ ++ ihold(dentry->d_inode); ++ d_add(fake_root, dentry->d_inode); ++ } ++ d_delete(dentry); ++ dput(dentry); + } else + err = PTR_ERR(dentry); + mutex_unlock(&s->s_root->d_inode->i_mutex); +@@ -1055,3 +1073,24 @@ error: return err; } @@ -141,7 +164,7 @@ +} --- a/include/linux/dcache.h +++ b/include/linux/dcache.h -@@ -245,6 +245,7 @@ extern struct dentry * d_obtain_alias(st +@@ -246,6 +246,7 @@ extern struct dentry * d_obtain_alias(st extern void shrink_dcache_sb(struct super_block *); extern void shrink_dcache_parent(struct dentry *); extern void shrink_dcache_for_umount(struct super_block *); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/revert-tpm_tis-Use-timeouts-returned-from-TPM.patch new/patches.fixes/revert-tpm_tis-Use-timeouts-returned-from-TPM.patch --- old/patches.fixes/revert-tpm_tis-Use-timeouts-returned-from-TPM.patch 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/revert-tpm_tis-Use-timeouts-returned-from-TPM.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,93 +0,0 @@ -From 8e19b87782d08de1c384f40846e10294c4d04a3f Mon Sep 17 00:00:00 2001 -From: Jiri Slaby <jslaby@suse.cz> -Date: Sun, 20 Feb 2011 11:06:35 +0100 -Subject: Revert "tpm_tis: Use timeouts returned from TPM" -References: bnc#673619 -Patch-mainline: no (probably a fix instead of revert will be) - -This reverts commit 44489516c52b3b76d9b2a0e670a26b6e64938ddf. - -It breaks hibernation. - -Signed-off-by: Jiri Slaby <jslaby@suse.cz> ---- - drivers/char/tpm/tpm.c | 18 ++---------------- - drivers/char/tpm/tpm.h | 2 -- - drivers/char/tpm/tpm_tis.c | 4 +--- - 3 files changed, 3 insertions(+), 21 deletions(-) - -diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c -index 55d0466..d5284bc 100644 ---- a/drivers/char/tpm/tpm.c -+++ b/drivers/char/tpm/tpm.c -@@ -577,11 +577,9 @@ duration: - if (rc) - return; - -- if (be32_to_cpu(tpm_cmd.header.out.return_code) != 0 || -- be32_to_cpu(tpm_cmd.header.out.length) -- != sizeof(tpm_cmd.header.out) + sizeof(u32) + 3 * sizeof(u32)) -+ if (be32_to_cpu(tpm_cmd.header.out.return_code) -+ != 3 * sizeof(u32)) - return; -- - duration_cap = &tpm_cmd.params.getcap_out.cap.duration; - chip->vendor.duration[TPM_SHORT] = - usecs_to_jiffies(be32_to_cpu(duration_cap->tpm_short)); -@@ -925,18 +923,6 @@ ssize_t tpm_show_caps_1_2(struct device * dev, - } - EXPORT_SYMBOL_GPL(tpm_show_caps_1_2); - --ssize_t tpm_show_timeouts(struct device *dev, struct device_attribute *attr, -- char *buf) --{ -- struct tpm_chip *chip = dev_get_drvdata(dev); -- -- return sprintf(buf, "%d %d %d\n", -- jiffies_to_usecs(chip->vendor.duration[TPM_SHORT]), -- jiffies_to_usecs(chip->vendor.duration[TPM_MEDIUM]), -- jiffies_to_usecs(chip->vendor.duration[TPM_LONG])); --} --EXPORT_SYMBOL_GPL(tpm_show_timeouts); -- - ssize_t tpm_store_cancel(struct device *dev, struct device_attribute *attr, - const char *buf, size_t count) - { -diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h -index ba1779c..792868d 100644 ---- a/drivers/char/tpm/tpm.h -+++ b/drivers/char/tpm/tpm.h -@@ -56,8 +56,6 @@ extern ssize_t tpm_show_owned(struct device *, struct device_attribute *attr, - char *); - extern ssize_t tpm_show_temp_deactivated(struct device *, - struct device_attribute *attr, char *); --extern ssize_t tpm_show_timeouts(struct device *, -- struct device_attribute *attr, char *); - - struct tpm_chip; - -diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c -index 0d1d38e..dd21df5 100644 ---- a/drivers/char/tpm/tpm_tis.c -+++ b/drivers/char/tpm/tpm_tis.c -@@ -376,7 +376,6 @@ static DEVICE_ATTR(temp_deactivated, S_IRUGO, tpm_show_temp_deactivated, - NULL); - static DEVICE_ATTR(caps, S_IRUGO, tpm_show_caps_1_2, NULL); - static DEVICE_ATTR(cancel, S_IWUSR | S_IWGRP, NULL, tpm_store_cancel); --static DEVICE_ATTR(timeouts, S_IRUGO, tpm_show_timeouts, NULL); - - static struct attribute *tis_attrs[] = { - &dev_attr_pubek.attr, -@@ -386,8 +385,7 @@ static struct attribute *tis_attrs[] = { - &dev_attr_owned.attr, - &dev_attr_temp_deactivated.attr, - &dev_attr_caps.attr, -- &dev_attr_cancel.attr, -- &dev_attr_timeouts.attr, NULL, -+ &dev_attr_cancel.attr, NULL, - }; - - static struct attribute_group tis_attr_grp = { --- -1.7.3.2 - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/scsi-dh-queuedata-accessors new/patches.fixes/scsi-dh-queuedata-accessors --- old/patches.fixes/scsi-dh-queuedata-accessors 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/scsi-dh-queuedata-accessors 2011-02-10 02:57:43.000000000 +0100 @@ -29,7 +29,7 @@ + sdev = scsi_device_from_queue(q); if (sdev && sdev->scsi_dh_data) scsi_dh = sdev->scsi_dh_data->scsi_dh; - if (!scsi_dh || !get_device(&sdev->sdev_gendev)) + if (!scsi_dh || !get_device(&sdev->sdev_gendev) || @@ -501,7 +501,7 @@ int scsi_dh_handler_exist(const char *na EXPORT_SYMBOL_GPL(scsi_dh_handler_exist); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/taskstats-better-ifdef new/patches.fixes/taskstats-better-ifdef --- old/patches.fixes/taskstats-better-ifdef 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/taskstats-better-ifdef 1970-01-01 01:00:00.000000000 +0100 @@ -1,39 +0,0 @@ -From: Jeff Mahoney <jeffm@suse.com> -Subject: taskstats: Use better ifdef for alignment -References: bko#24272 -Patch-mainline: 2.6.38-rc1 -Git-commit: 9ab020cf07e457a8b425bf5af17e704f90f86d8b - - Commit 4be2c95d added a null field to align the taskstats structure but - the discussion centered around ia64. The issue exists on other platforms - with inefficient unaligned access and adding them piecemeal would be - an unmaintainable mess. - - This patch uses Dave Miller's suggestion of using a combination of - CONFIG_64BIT && !CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS to determine - whether alignment is needed. - - Note that this will cause breakage on those platforms with applications - like iotop which had hard-coded offsets into the packet to access the - taskstats structure. - - The message seen on systems without the alignment fixes looks like: - kernel unaligned access to 0xe000023879dca9bc, ip=0xa000000100133d10 - -Reported-by: David S. Miller <davem@davemloft.net> -Signed-off-by: Jeff Mahoney <jeffm@suse.com> ---- - kernel/taskstats.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/kernel/taskstats.c -+++ b/kernel/taskstats.c -@@ -349,7 +349,7 @@ static int parse(struct nlattr *na, stru - return ret; - } - --#ifdef CONFIG_IA64 -+#if defined(CONFIG_64BIT) && !defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) - #define TASKSTATS_NEEDS_PADDING 1 - #endif - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.fixes/tiocgdev new/patches.fixes/tiocgdev --- old/patches.fixes/tiocgdev 2011-02-20 11:37:13.000000000 +0100 +++ new/patches.fixes/tiocgdev 1970-01-01 01:00:00.000000000 +0100 @@ -1,114 +0,0 @@ -Subject: tiocgdev ioctl -Patch-mainline: never, lkml guys don't like it -From: kraxel@suse.de - -add tty ioctl to figure physical device of the console. - - arch/alpha/include/asm/ioctls.h | 1 + - arch/arm/include/asm/ioctls.h | 1 + - arch/ia64/include/asm/ioctls.h | 1 + - arch/m68k/include/asm/ioctls.h | 1 + - arch/mips/include/asm/ioctls.h | 1 + - arch/powerpc/include/asm/ioctls.h | 1 + - arch/s390/include/asm/ioctls.h | 1 + - arch/sh/include/asm/ioctls.h | 1 + - arch/sparc/include/asm/ioctls.h | 1 + - drivers/char/tty_io.c | 15 +++++++++++++++ - fs/compat_ioctl.c | 1 + - include/asm-generic/ioctls.h | 1 + - 12 files changed, 26 insertions(+) - ---- a/arch/alpha/include/asm/ioctls.h -+++ b/arch/alpha/include/asm/ioctls.h -@@ -93,6 +93,7 @@ - #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ - #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ - #define TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */ -+#define TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no below /dev/console */ - - #define TIOCSERCONFIG 0x5453 - #define TIOCSERGWILD 0x5454 ---- a/arch/mips/include/asm/ioctls.h -+++ b/arch/mips/include/asm/ioctls.h -@@ -84,6 +84,7 @@ - #define TIOCGPTN _IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ - #define TIOCSPTLCK _IOW('T', 0x31, int) /* Lock/unlock Pty */ - #define TIOCSIG _IOW('T', 0x36, int) /* Generate signal on Pty slave */ -+#define TIOCGDEV _IOR('T', 0x32, unsigned int) /* Get real dev no below /dev/console */ - - /* I hope the range from 0x5480 on is free ... */ - #define TIOCSCTTY 0x5480 /* become controlling tty */ ---- a/arch/powerpc/include/asm/ioctls.h -+++ b/arch/powerpc/include/asm/ioctls.h -@@ -95,6 +95,7 @@ - #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ - #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ - #define TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */ -+#define TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no below /dev/console */ - - #define TIOCSERCONFIG 0x5453 - #define TIOCSERGWILD 0x5454 ---- a/arch/sh/include/asm/ioctls.h -+++ b/arch/sh/include/asm/ioctls.h -@@ -86,6 +86,7 @@ - #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ - #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ - #define TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */ -+#define TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no below /dev/console */ - - #define TIOCSERCONFIG _IO('T', 83) /* 0x5453 */ - #define TIOCSERGWILD _IOR('T', 84, int) /* 0x5454 */ ---- a/arch/sparc/include/asm/ioctls.h -+++ b/arch/sparc/include/asm/ioctls.h -@@ -19,6 +19,7 @@ - #define TCSETS2 _IOW('T', 13, struct termios2) - #define TCSETSW2 _IOW('T', 14, struct termios2) - #define TCSETSF2 _IOW('T', 15, struct termios2) -+#define TIOCGDEV _IOR('T',0x32, unsigned int) /* Get real dev no below /dev/console */ - - /* Note that all the ioctls that are not available in Linux have a - * double underscore on the front to: a) avoid some programs to ---- a/drivers/char/tty_io.c -+++ b/drivers/tty/tty_io.c -@@ -2561,6 +2561,21 @@ long tty_ioctl(struct file *file, unsign - case TIOCSETD: - return tiocsetd(tty, p); - /* -+ * Without the real device to which /dev/console is connected, -+ * blogd can not work. -+ * blogd spawns a pty/tty pair, -+ * set /dev/console to the tty of that pair (ioctl TIOCCONS), -+ * then reads in all input from the current /dev/console, -+ * buffer or write the readed data to /var/log/boot.msg -+ * _and_ to the original real device. -+ */ -+ case TIOCGDEV: -+ { -+ unsigned int ret = new_encode_dev(tty_devnum(real_tty)); -+ return put_user(ret, (unsigned int __user *)p); -+ } -+ -+ /* - * Break handling - */ - case TIOCSBRK: /* Turn break on, unconditionally */ ---- a/fs/compat_ioctl.c -+++ b/fs/compat_ioctl.c -@@ -920,6 +920,7 @@ COMPATIBLE_IOCTL(TCSETSW) - COMPATIBLE_IOCTL(TCSETSF) - COMPATIBLE_IOCTL(TIOCLINUX) - COMPATIBLE_IOCTL(TIOCSBRK) -+COMPATIBLE_IOCTL(TIOCGDEV) - COMPATIBLE_IOCTL(TIOCCBRK) - COMPATIBLE_IOCTL(TIOCGSID) - COMPATIBLE_IOCTL(TIOCGICOUNT) ---- a/include/asm-generic/ioctls.h -+++ b/include/asm-generic/ioctls.h -@@ -65,6 +65,7 @@ - #endif - #define TIOCGPTN _IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ - #define TIOCSPTLCK _IOW('T', 0x31, int) /* Lock/unlock Pty */ -+#define TIOCGDEV _IOR('T', 0x32, unsigned int) /* Get real dev no below /dev/console */ - #define TCGETX 0x5432 /* SYS5 TCGETX compatibility */ - #define TCSETX 0x5433 - #define TCSETXF 0x5434 ++++++ patches.kernel.org.tar.bz2 ++++++ kernel-source/patches.kernel.org.tar.bz2 /mounts/work_src_done/STABLE/kernel-source/patches.kernel.org.tar.bz2 differ: char 11, line 1 ++++++ patches.rpmify.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/cloneconfig.diff new/patches.rpmify/cloneconfig.diff --- old/patches.rpmify/cloneconfig.diff 2011-01-31 23:00:46.000000000 +0100 +++ new/patches.rpmify/cloneconfig.diff 2011-03-08 01:00:02.000000000 +0100 @@ -1,12 +1,14 @@ From: Andreas Gruenbacher <agruen@suse.de> Subject: Add ``cloneconfig'' target -Patch-mainline: not yet +Patch-mainline: Submitted 24 Feb 2011 Cloneconfig takes the first configuration it finds which appears to belong to the running kernel, and configures the kernel sources to match this configuration as closely as possible. Signed-off-by: Andreas Gruenbacher <agruen@suse.de> +Signed-off-by: Jeff Mahoney <jeffm@suse.com> +--- scripts/kconfig/Makefile | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) @@ -32,7 +34,7 @@ + *) cat $(CLONECONFIG) > .config.running ;; \ + esac && \ + echo -e "Cloning configuration file $(CLONECONFIG)\n" -+ $(Q)$< --defconfig=.config.running arch/$(SRCARCH)/Kconfig ++ $(Q)$< -D .config.running arch/$(SRCARCH)/Kconfig + PHONY += listnewconfig oldnoconfig savedefconfig defconfig diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/easycap-fixes new/patches.rpmify/easycap-fixes --- old/patches.rpmify/easycap-fixes 2011-01-31 23:00:46.000000000 +0100 +++ new/patches.rpmify/easycap-fixes 1970-01-01 01:00:00.000000000 +0100 @@ -1,23 +0,0 @@ -From: Jeff Mahoney <jeffm@suse.com> -Subject: easycap: include linux/smp_lock.h for BKL -Patch-mainline: 2.6.38-rc1, fixed differently - - Commit 451a3c24b013 removed smp_lock.h from easycap.h because the BKL wasn't - used in that file. This patch re-adds it to easycap_main.c, where the BKL - is actually used. - -Signed-off-by: Jeff Mahoney <jeffm@suse.com> ---- - drivers/staging/easycap/easycap_main.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/drivers/staging/easycap/easycap_main.c -+++ b/drivers/staging/easycap/easycap_main.c -@@ -28,6 +28,7 @@ - */ - /*****************************************************************************/ - -+#include <linux/smp_lock.h> - #include "easycap.h" - #include "easycap_standard.h" - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/ia64-mca-fix-cast-from-integer-to-pointer-warning new/patches.rpmify/ia64-mca-fix-cast-from-integer-to-pointer-warning --- old/patches.rpmify/ia64-mca-fix-cast-from-integer-to-pointer-warning 2011-01-31 23:00:46.000000000 +0100 +++ new/patches.rpmify/ia64-mca-fix-cast-from-integer-to-pointer-warning 2011-03-08 01:00:02.000000000 +0100 @@ -1,10 +1,20 @@ From: Jeff Mahoney <jeffm@suse.com> Subject: ia64/mca: Fix cast from integer to pointer warning -Patch-mainline: not yet +Patch-mainline: Submitted 24 Feb 2011 - __get_free_pages() returns an unsigned long that is the address of the - pages returned. ia64_mca_cpu_init wants to use it as a data pointer, so - we cast it as void *. + ia64_mca_cpu_init has a void *data local variable that is assigned + the value from either __get_free_pages() or mca_bootmem(). The problem + is that __get_free_pages returns an unsigned long and mca_bootmem, via + alloc_bootmem(), returns a void *. format_mca_init_stack takes the void *, + and it's also used with __pa(), but that casts it to long anyway. + + This results in the following build warning: + + arch/ia64/kernel/mca.c:1898: warning: assignment makes pointer from + integer without a cast + + This patch casts the return of __get_free_pages to a void * to avoid + the warning. Signed-off-by: Jeff Mahoney <jeffm@suse.com> --- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/tioca-fix-assignment-from-incompatible-pointer-warnings new/patches.rpmify/tioca-fix-assignment-from-incompatible-pointer-warnings --- old/patches.rpmify/tioca-fix-assignment-from-incompatible-pointer-warnings 2011-01-31 23:00:46.000000000 +0100 +++ new/patches.rpmify/tioca-fix-assignment-from-incompatible-pointer-warnings 2011-03-08 01:00:02.000000000 +0100 @@ -1,6 +1,6 @@ From: Jeff Mahoney <jeffm@suse.com> Subject: tioca: Fix assignment from incompatible pointer warnings -Patch-mainline: not yet +Patch-mainline: Submitted 24 Feb 2011 The prototype for sn_pci_provider->{dma_map,dma_map_consistent} expects an unsigned long instead of a u64. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/winbond-needs-msleep new/patches.rpmify/winbond-needs-msleep --- old/patches.rpmify/winbond-needs-msleep 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.rpmify/winbond-needs-msleep 2011-03-08 01:00:02.000000000 +0100 @@ -0,0 +1,23 @@ +From: Jeff Mahoney <jeffm@suse.com> +Subject: winbond: needs <linux/delay.h> for msleep and friends +Patch-mainline: Submitted 22 Jan 2011 + + linux/delay.h is pulled in somehow on x86 but not on ia64 or powerpc. + + This fixes a build failure on those arches since they use [mu]delay. + +Signed-off-by: Jeff Mahoney <jeffm@suse.com> +--- + drivers/staging/winbond/core.h | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/staging/winbond/core.h ++++ b/drivers/staging/winbond/core.h +@@ -3,6 +3,7 @@ + + #include <linux/wireless.h> + #include <linux/types.h> ++#include <linux/delay.h> + + #include "wbhal.h" + #include "mto.h" ++++++ patches.suse.tar.bz2 ++++++ ++++ 3036 lines of diff (skipped) ++++++ patches.xen.tar.bz2 ++++++ ++++ 74860 lines of diff (skipped) ++++++ series.conf ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:45.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:45.000000000 +0100 @@ -27,7 +27,13 @@ # DO NOT MODIFY THEM! # Send separate patches upstream if you find a problem... ######################################################## - patches.kernel.org/patch-2.6.37.1 + patches.kernel.org/patch-2.6.38-rc1 + patches.kernel.org/patch-2.6.38-rc1-rc2 + patches.kernel.org/patch-2.6.38-rc2-rc3 + patches.kernel.org/patch-2.6.38-rc3-rc4 + patches.kernel.org/patch-2.6.38-rc4-rc5 + patches.kernel.org/patch-2.6.38-rc5-rc6 + patches.kernel.org/patch-2.6.38-rc6-rc7 ######################################################## # Build fixes that apply to the vanilla kernel too. @@ -37,7 +43,7 @@ patches.rpmify/tioca-fix-assignment-from-incompatible-pointer-warnings patches.rpmify/ia64-mca-fix-cast-from-integer-to-pointer-warning patches.rpmify/qla4xx-missing-readq-definition - patches.rpmify/easycap-fixes + patches.rpmify/winbond-needs-msleep ######################################################## # kABI consistency patches @@ -72,7 +78,6 @@ ######################################################## patches.suse/export-release_open_intent patches.suse/export-security_inode_permission - patches.fixes/reiserfs-xattr-crash-fix ######################################################## # Bug workarounds for binutils @@ -86,15 +91,6 @@ patches.suse/hung_task_timeout-configurable-default +needs_update-33 patches.suse/sched-revert-latency-defaults - patches.suse/sched-automated-per-session-task-groups - patches.fixes/taskstats-better-ifdef - - # This is not the correct fix. The check can be done at - # cgroup exit instead with less of an impact on performance. - # Once that patch is released, then this one should go away. - # I'm accepting it for now because it fixes the crashes that - # many of us have been seeing with 2.6.37-rcX. -jeffm - ######################################################## # Architecture-specific patches. These used to be all # at the end of series.conf, but since we don't do @@ -130,10 +126,10 @@ patches.arch/x86-mcp51-no-dac - patches.arch/kvm-split-paravirt-ops-by-functionality - patches.arch/kvm-only-export-selected-pv-ops-feature-structs - patches.arch/kvm-split-the-KVM-pv-ops-support-by-feature - patches.arch/kvm-replace-kvm-io-delay-pv-ops-with-linux-magic ++needs_update patches.arch/kvm-split-paravirt-ops-by-functionality ++needs_update patches.arch/kvm-only-export-selected-pv-ops-feature-structs ++needs_update patches.arch/kvm-split-the-KVM-pv-ops-support-by-feature ++needs_update patches.arch/kvm-replace-kvm-io-delay-pv-ops-with-linux-magic patches.suse/x86-mark_rodata_rw.patch @@ -263,11 +259,6 @@ # Queued for 2.6.36 -> just revert after some time patches.fixes/acpi_ec_sys_access_user_space_with_get_user.patch - patches.arch/acpi_fix_global_lock_acquisition.patch - patches.arch/acpi_init_global_lock.patch - - patches.fixes/PNP-ACPI-Use-DEVICE_ACPI_HANDLE-for-device-ACPI-handle-access.patch - patches.arch/acpi-debugfs-fix-buffer-overflows-double-free.patch ######################################################## @@ -287,12 +278,6 @@ patches.fixes/cpufreq_ondemand_performance_optimise_default_settings.patch ## cpuidle perf events cleanups and related - patches.arch/cpuidle_rename_c0_to_poll_state.patch - patches.arch/cpuidle_event_fix_export.patch - patches.arch/cpuidle_introduce_cpuidle_events.patch - patches.arch/perf_adjust_timechart_to_new_cpuidle_events.patch - patches.arch/cpuidle_fix_double_events.patch - patches.arch/perf_timechart_fix_idle_boxes.patch patches.arch/perf_timechart_fix_zero_timestamps.patch ######################################################## @@ -304,7 +289,6 @@ # Suse specific stuff ######################################################## # TIOCGDEV - suse special - patches.fixes/tiocgdev +still_needed? patches.suse/mm-increase-dirty-limits.patch +needs_to_die-33 patches.suse/panic-on-io-nmi-SLE11-user-space-api.patch @@ -347,6 +331,7 @@ ######################################################## patches.suse/reiserfs-barrier-default patches.fixes/reiserfs-remove-2-tb-file-size-limit + patches.fixes/reiserfs-xattr-crash-fix patches.suse/reiser4-dependencies ######################################################## @@ -390,6 +375,7 @@ patches.fixes/novfs-unlink-oops patches.suse/novfs-2.6.37-api-changes patches.fixes/novfs-fragment-size-fix.patch + patches.suse/novfs-build-fix ######################################################## # other filesystem stuff: richacls @@ -410,6 +396,12 @@ patches.suse/0014-richacl-xattr-mapping-functions.patch patches.suse/0015-ext4-Use-IS_POSIXACL-to-check-for-POSIX-ACL-support.patch patches.suse/0016-ext4-Implement-richacl-support-in-ext4.patch + patches.suse/richacl-fix + + ######################################################## + # other filesystem stuff + ######################################################## + patches.fixes/hfs-avoid-crash-in-hfs_bnode_create ######################################################## # Swap-over-NFS @@ -447,8 +439,9 @@ patches.suse/SoN-31-fix-null-pointer-dereference patches.suse/SoN-32-fix-kernel-bug-with-multiple-swapfiles - # don't want to rediff SoN until this gets more testing + # don't want to rediff SoN until this gets more testing patches.suse/slab-handle-memoryless-nodes-v2a.patch + patches.suse/SoN-fix ######################################################## # Netfilter @@ -465,7 +458,6 @@ ######################################################## patches.drivers/disable-catas_reset-by-default-to-avoid-problems-with-eeh.patch - patches.fixes/revert-tpm_tis-Use-timeouts-returned-from-TPM.patch ######################################################## # Storage @@ -501,7 +493,6 @@ patches.fixes/sd_liberal_28_sense_invalid.diff patches.fixes/scsi-ibmvscsi-module_alias.patch - patches.fixes/loop-queue_lock-null-pointer-derefence-in-blk_throtl_exit-v3.patch ######################################################## # DRM/Video @@ -529,21 +520,14 @@ patches.drivers/tg3-entropy-source.patch patches.drivers/tg3-5785-and-57780-asic-revs-not-working.patch - patches.fixes/ipv6-revert-dont-flush-routes-when-setting-loopback-down.patch - patches.fixes/bridge-fix-hash-list-corruption.patch - patches.fixes/bridge-fix-timer-arming.patch - patches.fixes/bridge-remove-hash-list.patch + ######################################################## # Wireless Networking ######################################################## patches.suse/wireless-no-aes-select patches.suse/b43-missing-firmware-info.patch - patches.fixes/iwlwifi-fix-tx-power-configuration-on-3945-and-4965-devices - patches.fixes/orinoco-allow-IW_AUTH_MFP-to-pass-through.patch - patches.fixes/0001-Revert-ath9k-use-per-device-struct-for-pm_qos_-opera.patch - patches.fixes/0002-Revert-ath9k-Remove-pm_qos-request-after-hw-unregist.patch - patches.fixes/0003-Revert-ath9k-Fix-a-DMA-latency-issue-for-Intel-Pinet.patch ++needs_update patches.fixes/iwlwifi-fix-tx-power-configuration-on-3945-and-4965-devices ######################################################## # ISDN @@ -582,13 +566,10 @@ patches.suse/elousb-2.6.35-api-changes patches.fixes/input-add-acer-aspire-5710-to-nomux.patch patches.drivers/input-Add-LED-support-to-Synaptics-device - patches.drivers/tty-add-active-sysfs-attribute-to-tty0-and-console-device ########################################################## # Sound ########################################################## - patches.drivers/alsa-hda-0003-Add-Lenovo-vendor-quirk-for-Conexant-205xx - patches.drivers/alsa-01-caiaq-Fix-possible-string-buffer-overflow ######################################################## # Other driver fixes @@ -620,14 +601,15 @@ patches.suse/dm-raid45-api-update-no-barriers patches.fixes/dm-mpath-reattach-dh patches.suse/dm-mpath-leastpending-path-update - patches.suse/dm-mpath-accept-failed-paths - patches.suse/dm-mpath-detach-existing-hardware-handler ++needs_update patches.suse/dm-mpath-accept-failed-paths ++needs_update patches.suse/dm-mpath-detach-existing-hardware-handler patches.suse/dm-mpath-null-pgs patches.fixes/dm-table-switch-to-readonly patches.suse/dm-mpath-evaluate-request-result-and-sense patches.fixes/dm-release-map_lock-before-set_disk_ro patches.suse/dm-mpath-no-activate-for-offlined-paths patches.suse/dm-mpath-no-partitions-feature + patches.suse/mpath-fix ######################################################## # md @@ -757,6 +739,10 @@ patches.xen/ipv6-no-autoconf patches.xen/pci-guestdev patches.xen/pci-reserve ++needs_update-33 patches.xen/sfc-driverlink ++needs_update-33 patches.xen/sfc-resource-driver ++needs_update-33 patches.xen/sfc-driverlink-conditional ++needs_update-33 patches.xen/sfc-external-sram patches.xen/tmem # bulk stuff, new files for xen @@ -776,6 +762,9 @@ # fixups due to upstream Xen parts patches.xen/xen3-fixup-xen ++needs_update-33 patches.xen/sfc-set-arch ++needs_update-33 patches.xen/sfc-endianness + # newer changeset backports # changes outside arch/{i386,x86_64}/xen @@ -804,6 +793,7 @@ patches.xen/xen3-patch-2.6.35 patches.xen/xen3-patch-2.6.36 patches.xen/xen3-patch-2.6.37 + patches.xen/xen3-patch-2.6.38-rc4 patches.xen/xen3-seccomp-disable-tsc-option patches.xen/xen3-x86-mcp51-no-dac patches.xen/xen3-x86-mark_rodata_rw.patch @@ -847,7 +837,6 @@ patches.xen/xen-watchdog patches.xen/xen-x86-panic-no-reboot patches.xen/xen-x86-dcr-fallback - patches.xen/xen-x86-consistent-nmi patches.xen/xen-x86-no-lapic patches.xen/xen-x86-pmd-handling patches.xen/xen-x86-bigmem ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:45.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:45.000000000 +0100 @@ -1,3 +1,3 @@ -2011-02-21 10:34:10 +0100 -GIT Revision: f6a72cca01b25188702a071aa4450fc442b8b47a -GIT Branch: openSUSE-11.4 +2011-03-08 01:01:25 +0100 +GIT Revision: 6b07a84c31051d87a55d072b4d87f79c8cadb6c9 +GIT Branch: master ++++++ supported.conf ++++++ --- /var/tmp/diff_new_pack.7wWFpp/_old 2011-03-11 13:15:45.000000000 +0100 +++ /var/tmp/diff_new_pack.7wWFpp/_new 2011-03-11 13:15:45.000000000 +0100 @@ -973,6 +973,7 @@ +isa kernel/drivers/media/radio/radio-trust +isa kernel/drivers/media/radio/radio-typhoon +isa kernel/drivers/media/radio/radio-zoltrix + kernel/drivers/media/rc/rc_core kernel/drivers/media/video/adv7170 # Analog Devices ADV7170 video encoder driver kernel/drivers/media/video/adv7175 # Analog Devices ADV7175 video encoder driver - kernel/drivers/media/video/au0828/au0828 # depends on dvb-core ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org