From: Greg Kroah-Hartman Date: Wed, 2 Jun 2010 00:10:50 +0000 (-0700) Subject: .32 patches X-Git-Tag: v2.6.31.14~47 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a196cbaa80e234127acfa315a4acb55229831c05;p=thirdparty%2Fkernel%2Fstable-queue.git .32 patches --- diff --git a/queue-2.6.32/acpi-video-fix-acpi_backlight-video.patch b/queue-2.6.32/acpi-video-fix-acpi_backlight-video.patch new file mode 100644 index 00000000000..1319eea966a --- /dev/null +++ b/queue-2.6.32/acpi-video-fix-acpi_backlight-video.patch @@ -0,0 +1,38 @@ +From eeb4bcb4771679d7b3446c0293334faee11b090a Mon Sep 17 00:00:00 2001 +From: Kamal Mostafa +Date: Sat, 1 May 2010 12:09:49 -0700 +Subject: ACPI: video: fix acpi_backlight=video + +From: Kamal Mostafa + +commit eeb4bcb4771679d7b3446c0293334faee11b090a upstream. + +Make "acpi_backlight=video" param enable ACPI_VIDEO_BACKLIGHT_FORCE_VIDEO +as intended, instead of incorrectly enabling video output switching. + +BugLink: http://bugs.launchpad.net/bugs/573120 + +Signed-off-by: Kamal Mostafa +Acked-by: Zhang Rui +Cc: Bjorn Helgaas +Cc: Jiri Kosina +Acked-by: Thomas Renninger +Signed-off-by: Andrew Morton +Signed-off-by: Len Brown +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/acpi/video_detect.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/acpi/video_detect.c ++++ b/drivers/acpi/video_detect.c +@@ -250,7 +250,7 @@ static int __init acpi_backlight(char *s + ACPI_VIDEO_BACKLIGHT_FORCE_VENDOR; + if (!strcmp("video", str)) + acpi_video_support |= +- ACPI_VIDEO_OUTPUT_SWITCHING_FORCE_VIDEO; ++ ACPI_VIDEO_BACKLIGHT_FORCE_VIDEO; + } + return 1; + } diff --git a/queue-2.6.32/alsa-hda-fix-model-quirk-for-dell-m1730.patch b/queue-2.6.32/alsa-hda-fix-model-quirk-for-dell-m1730.patch new file mode 100644 index 00000000000..ec722f6a29b --- /dev/null +++ b/queue-2.6.32/alsa-hda-fix-model-quirk-for-dell-m1730.patch @@ -0,0 +1,52 @@ +From 66668b6fb6861fad7f6bfef6646ac84693474c9a Mon Sep 17 00:00:00 2001 +From: Daniel T Chen +Date: Sun, 23 May 2010 20:47:45 -0400 +Subject: ALSA: hda: Fix model quirk for Dell M1730 + +From: Daniel T Chen + +commit 66668b6fb6861fad7f6bfef6646ac84693474c9a upstream. + +BugLink: https://launchpad.net/bugs/576160 + +Symptom: Currently (2.6.32.12) the Dell M1730 uses the 3stack model +quirk. Unfortunately this means that capture is not functional out- +of-the-box despite ensuring that capture settings are unmuted and +raised fully. + +Test case: boot from Ubuntu 10.04 LTS live cd; capture does not +work. + +Resolution: Correct the model quirk for Dell M1730 to rely on the +BIOS configuration. + +This patch also trivially sorts the quirk into the correct section +based on the comments. + +Reported-and-Tested-By: +Tested-By: Daren Hayward +Tested-By: Tobias Krais +Signed-off-by: Daniel T Chen +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/patch_sigmatel.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/sound/pci/hda/patch_sigmatel.c ++++ b/sound/pci/hda/patch_sigmatel.c +@@ -2059,12 +2059,12 @@ static struct snd_pci_quirk stac927x_cfg + SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_INTEL, 0xff00, 0x2000, + "Intel D965", STAC_D965_3ST), + /* Dell 3 stack systems */ +- SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01f7, "Dell XPS M1730", STAC_DELL_3ST), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01dd, "Dell Dimension E520", STAC_DELL_3ST), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01ed, "Dell ", STAC_DELL_3ST), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01f4, "Dell ", STAC_DELL_3ST), + /* Dell 3 stack systems with verb table in BIOS */ + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01f3, "Dell Inspiron 1420", STAC_DELL_BIOS), ++ SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01f7, "Dell XPS M1730", STAC_DELL_BIOS), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x0227, "Dell Vostro 1400 ", STAC_DELL_BIOS), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x022e, "Dell ", STAC_DELL_BIOS), + SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x022f, "Dell Inspiron 1525", STAC_DELL_BIOS), diff --git a/queue-2.6.32/alsa-hda-use-lpib-for-a-shuttle-device.patch b/queue-2.6.32/alsa-hda-use-lpib-for-a-shuttle-device.patch new file mode 100644 index 00000000000..4f1f7bca8b0 --- /dev/null +++ b/queue-2.6.32/alsa-hda-use-lpib-for-a-shuttle-device.patch @@ -0,0 +1,40 @@ +From 61bb42c37dfa9016dcacc86bcd41362ab2457d4a Mon Sep 17 00:00:00 2001 +From: Daniel T Chen +Date: Sat, 29 May 2010 11:04:11 -0400 +Subject: ALSA: hda: Use LPIB for a Shuttle device + +From: Daniel T Chen + +commit 61bb42c37dfa9016dcacc86bcd41362ab2457d4a upstream. + +BugLink: https://launchpad.net/bugs/551949 + +Symptom: On the reporter's Shuttle device, using PulseAudio in Ubuntu +10.04 LTS results in "popping clicking" audio with the PA crashing +shortly thereafter. + +Test case: Using Ubuntu 10.04 LTS (Linux 2.6.32.12), Linux 2.6.33, or +Linux 2.6.34, adjust the HDA device's volume with PulseAudio. + +Resolution: add SSID for this machine to the position_fix quirk table, +explicitly specifying the LPIB method. + +Reported-and-Tested-By: Christian Mehlis +Signed-off-by: Daniel T Chen +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/hda_intel.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/hda_intel.c ++++ b/sound/pci/hda/hda_intel.c +@@ -2235,6 +2235,7 @@ static struct snd_pci_quirk position_fix + SND_PCI_QUIRK(0x104d, 0x9069, "Sony VPCS11V9E", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1106, 0x3288, "ASUS M2V-MX SE", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1179, 0xff10, "Toshiba A100-259", POS_FIX_LPIB), ++ SND_PCI_QUIRK(0x1297, 0x3166, "Shuttle", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1458, 0xa022, "ga-ma770-ud3", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1462, 0x1002, "MSI Wind U115", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1565, 0x820f, "Biostar Microtech", POS_FIX_LPIB), diff --git a/queue-2.6.32/alsa-hda-use-lpib-for-acer-aspire-5110.patch b/queue-2.6.32/alsa-hda-use-lpib-for-acer-aspire-5110.patch new file mode 100644 index 00000000000..aaaeb442fa6 --- /dev/null +++ b/queue-2.6.32/alsa-hda-use-lpib-for-acer-aspire-5110.patch @@ -0,0 +1,44 @@ +From 7a68be94e22e7643038726ebc14360752a91800b Mon Sep 17 00:00:00 2001 +From: Daniel T Chen +Date: Sat, 22 May 2010 12:05:41 -0400 +Subject: ALSA: hda: Use LPIB for Acer Aspire 5110 + +From: Daniel T Chen + +commit 7a68be94e22e7643038726ebc14360752a91800b upstream. + +BugLink: https://launchpad.net/bugs/583983 + +Symptom: on a significant number of hardware, booting from a live cd +results in capture working correctly, but once the distribution is +installed, booting from the install results in capture not working. + +Test case: boot from Ubuntu 10.04 LTS live cd; capture works correctly. +Install to HD and reboot; capture does not work. Reproduced with 2.6.32 +mainline build (vanilla kernel.org compile). + +Resolution: add SSID for Acer Aspire 5110 to the position_fix quirk +table, explicitly specifying the LPIB method. + +I'll be sending additional patches for these SSIDs as bug reports are +confirmed. + +Reported-and-Tested-By: Leo +Signed-off-by: Daniel T Chen +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/hda_intel.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/hda_intel.c ++++ b/sound/pci/hda/hda_intel.c +@@ -2226,6 +2226,7 @@ static int azx_dev_free(struct snd_devic + * white/black-listing for position_fix + */ + static struct snd_pci_quirk position_fix_list[] __devinitdata = { ++ SND_PCI_QUIRK(0x1025, 0x009f, "Acer Aspire 5110", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1028, 0x01cc, "Dell D820", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1028, 0x01de, "Dell Precision 390", POS_FIX_LPIB), + SND_PCI_QUIRK(0x103c, 0x306d, "HP dv3", POS_FIX_LPIB), diff --git a/queue-2.6.32/alsa-hda-use-lpib-for-sony-vpcs11v9e.patch b/queue-2.6.32/alsa-hda-use-lpib-for-sony-vpcs11v9e.patch new file mode 100644 index 00000000000..e74db736fac --- /dev/null +++ b/queue-2.6.32/alsa-hda-use-lpib-for-sony-vpcs11v9e.patch @@ -0,0 +1,42 @@ +From e96d3127760a2fc509bca6bf7e61e8bc61497aeb Mon Sep 17 00:00:00 2001 +From: Daniel T Chen +Date: Thu, 27 May 2010 18:32:18 -0400 +Subject: ALSA: hda: Use LPIB for Sony VPCS11V9E + +From: Daniel T Chen + +commit e96d3127760a2fc509bca6bf7e61e8bc61497aeb upstream. + +BugLink: https://launchpad.net/bugs/586347 + +Symptom: On the Sony VPCS11V9E, using GStreamer-based applications with +PulseAudio in Ubuntu 10.04 LTS results in stuttering audio. It appears +to worsen with increased I/O. + +Test case: use Rhythmbox under increased I/O pressure. This symptom is +reproducible in the current daily stable alsa-driver snapshots (at least +up until 21 May 2010; later snapshots fail to build from source due to +missing preprocessor directives when compiled against 2.6.32). + +Resolution: add SSID for this machine to the position_fix quirk table, +explicitly specifying the LPIB method. + +Reported-and-Tested-By: Lauri Kainulainen +Signed-off-by: Daniel T Chen +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/hda_intel.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/sound/pci/hda/hda_intel.c ++++ b/sound/pci/hda/hda_intel.c +@@ -2232,6 +2232,7 @@ static struct snd_pci_quirk position_fix + SND_PCI_QUIRK(0x103c, 0x306d, "HP dv3", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1028, 0x01f6, "Dell Latitude 131L", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1043, 0x813d, "ASUS P5AD2", POS_FIX_LPIB), ++ SND_PCI_QUIRK(0x104d, 0x9069, "Sony VPCS11V9E", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1106, 0x3288, "ASUS M2V-MX SE", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1179, 0xff10, "Toshiba A100-259", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1458, 0xa022, "ga-ma770-ud3", POS_FIX_LPIB), diff --git a/queue-2.6.32/alsa-hda-use-lpib-for-toshiba-a100-259.patch b/queue-2.6.32/alsa-hda-use-lpib-for-toshiba-a100-259.patch new file mode 100644 index 00000000000..c40a54a2e1a --- /dev/null +++ b/queue-2.6.32/alsa-hda-use-lpib-for-toshiba-a100-259.patch @@ -0,0 +1,52 @@ +From 4e0938dba7fccf37a4aecba4d937da7f312b5d55 Mon Sep 17 00:00:00 2001 +From: Daniel T Chen +Date: Sat, 22 May 2010 13:12:22 -0400 +Subject: ALSA: hda: Use LPIB for Toshiba A100-259 + +From: Daniel T Chen + +commit 4e0938dba7fccf37a4aecba4d937da7f312b5d55 upstream. + +BugLink: https://launchpad.net/bugs/549560 + +Symptom: on a significant number of hardware, booting from a live cd +results in capture working correctly, but once the distribution is +installed, booting from the install results in capture not working. + +Test case: boot from Ubuntu 10.04 LTS live cd; capture works correctly. +Install to HD and reboot; capture does not work. Reproduced with 2.6.32 +mainline build (vanilla kernel.org compile) + +Resolution: add SSID for Toshiba A100-259 to the position_fix quirk +table, explicitly specifying the LPIB method. + +I'll be sending additional patches for these SSIDs as bug reports are +confirmed. + +This patch also trivially sorts the quirk table in ascending order by +subsystem vendor. + +Reported-and-Tested-by: +Signed-off-by: Daniel T Chen +Signed-off-by: Takashi Iwai +Signed-off-by: Greg Kroah-Hartman + +--- + sound/pci/hda/hda_intel.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- a/sound/pci/hda/hda_intel.c ++++ b/sound/pci/hda/hda_intel.c +@@ -2229,9 +2229,10 @@ static struct snd_pci_quirk position_fix + SND_PCI_QUIRK(0x1028, 0x01cc, "Dell D820", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1028, 0x01de, "Dell Precision 390", POS_FIX_LPIB), + SND_PCI_QUIRK(0x103c, 0x306d, "HP dv3", POS_FIX_LPIB), +- SND_PCI_QUIRK(0x1106, 0x3288, "ASUS M2V-MX SE", POS_FIX_LPIB), +- SND_PCI_QUIRK(0x1043, 0x813d, "ASUS P5AD2", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1028, 0x01f6, "Dell Latitude 131L", POS_FIX_LPIB), ++ SND_PCI_QUIRK(0x1043, 0x813d, "ASUS P5AD2", POS_FIX_LPIB), ++ SND_PCI_QUIRK(0x1106, 0x3288, "ASUS M2V-MX SE", POS_FIX_LPIB), ++ SND_PCI_QUIRK(0x1179, 0xff10, "Toshiba A100-259", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1458, 0xa022, "ga-ma770-ud3", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1462, 0x1002, "MSI Wind U115", POS_FIX_LPIB), + SND_PCI_QUIRK(0x1565, 0x820f, "Biostar Microtech", POS_FIX_LPIB), diff --git a/queue-2.6.32/arcnet-limit-com20020-pci-id-matches-for-sohard-cards.patch b/queue-2.6.32/arcnet-limit-com20020-pci-id-matches-for-sohard-cards.patch new file mode 100644 index 00000000000..77f9e4a2c6d --- /dev/null +++ b/queue-2.6.32/arcnet-limit-com20020-pci-id-matches-for-sohard-cards.patch @@ -0,0 +1,38 @@ +From e7971c80a8e0299f91272ad8e8ac4167623e1862 Mon Sep 17 00:00:00 2001 +From: Andreas Bombe +Date: Mon, 17 May 2010 23:12:46 -0700 +Subject: ARCNET: Limit com20020 PCI ID matches for SOHARD cards + +From: Andreas Bombe + +commit e7971c80a8e0299f91272ad8e8ac4167623e1862 upstream. + +The SH SOHARD ARCNET cards are implemented using generic PLX Technology +PCI<->IOBus bridges. Subvendor and subdevice IDs were not specified, +causing the driver to attach to any such bridge and likely crash the +system by attempting to initialize an unrelated device. + +Fix by specifying subvendor and subdevice according to the values found +in the PCI-ID Repository at http://pci-ids.ucw.cz/ . + +Signed-off-by: Andreas Bombe +Signed-off-by: David S. Miller +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/arcnet/com20020-pci.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/net/arcnet/com20020-pci.c ++++ b/drivers/net/arcnet/com20020-pci.c +@@ -165,8 +165,8 @@ static struct pci_device_id com20020pci_ + { 0x1571, 0xa204, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, + { 0x1571, 0xa205, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, + { 0x1571, 0xa206, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, +- { 0x10B5, 0x9030, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, +- { 0x10B5, 0x9050, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, ++ { 0x10B5, 0x9030, 0x10B5, 0x2978, 0, 0, ARC_CAN_10MBIT }, ++ { 0x10B5, 0x9050, 0x10B5, 0x2273, 0, 0, ARC_CAN_10MBIT }, + { 0x14BA, 0x6000, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, + { 0x10B5, 0x2200, PCI_ANY_ID, PCI_ANY_ID, 0, 0, ARC_CAN_10MBIT }, + {0,} diff --git a/queue-2.6.32/cpumask-fix-compat-getaffinity.patch b/queue-2.6.32/cpumask-fix-compat-getaffinity.patch new file mode 100644 index 00000000000..4553e46ed3c --- /dev/null +++ b/queue-2.6.32/cpumask-fix-compat-getaffinity.patch @@ -0,0 +1,90 @@ +From fa9dc265ace9774e62f0e31108e5f47911124bda Mon Sep 17 00:00:00 2001 +From: KOSAKI Motohiro +Date: Wed, 19 May 2010 09:37:41 +0900 +Subject: cpumask: fix compat getaffinity + +From: KOSAKI Motohiro + +commit fa9dc265ace9774e62f0e31108e5f47911124bda upstream. + +Commit a45185d2d "cpumask: convert kernel/compat.c" broke libnuma, which +abuses sched_getaffinity to find out NR_CPUS in order to parse +/sys/devices/system/node/node*/cpumap. + +On NUMA systems with less than 32 possibly CPUs, the current +compat_sys_sched_getaffinity now returns '4' instead of the actual +NR_CPUS/8, which makes libnuma bail out when parsing the cpumap. + +The libnuma call sched_getaffinity(0, bitmap, 4096) at first. It mean +the libnuma expect the return value of sched_getaffinity() is either len +argument or NR_CPUS. But it doesn't expect to return nr_cpu_ids. + +Strictly speaking, userland requirement are + +1) Glibc assume the return value mean the lengh of initialized + of mask argument. E.g. if sched_getaffinity(1024) return 128, + glibc make zero fill rest 896 byte. +2) Libnuma assume the return value can be used to guess NR_CPUS + in kernel. It assume len-arg +Acked-by: Rusty Russell +Acked-by: Arnd Bergmann +Reported-by: Ken Werner +Cc: Andi Kleen +Signed-off-by: Linus Torvalds +Signed-off-by: Greg Kroah-Hartman + +--- + kernel/compat.c | 25 +++++++++++-------------- + 1 file changed, 11 insertions(+), 14 deletions(-) + +--- a/kernel/compat.c ++++ b/kernel/compat.c +@@ -494,29 +494,26 @@ asmlinkage long compat_sys_sched_getaffi + { + int ret; + cpumask_var_t mask; +- unsigned long *k; +- unsigned int min_length = cpumask_size(); + +- if (nr_cpu_ids <= BITS_PER_COMPAT_LONG) +- min_length = sizeof(compat_ulong_t); +- +- if (len < min_length) ++ if ((len * BITS_PER_BYTE) < nr_cpu_ids) ++ return -EINVAL; ++ if (len & (sizeof(compat_ulong_t)-1)) + return -EINVAL; + + if (!alloc_cpumask_var(&mask, GFP_KERNEL)) + return -ENOMEM; + + ret = sched_getaffinity(pid, mask); +- if (ret < 0) +- goto out; ++ if (ret == 0) { ++ size_t retlen = min_t(size_t, len, cpumask_size()); + +- k = cpumask_bits(mask); +- ret = compat_put_bitmap(user_mask_ptr, k, min_length * 8); +- if (ret == 0) +- ret = min_length; +- +-out: ++ if (compat_put_bitmap(user_mask_ptr, cpumask_bits(mask), retlen * 8)) ++ ret = -EFAULT; ++ else ++ ret = retlen; ++ } + free_cpumask_var(mask); ++ + return ret; + } + diff --git a/queue-2.6.32/mutex-fix-optimistic-spinning-vs.-bkl.patch b/queue-2.6.32/mutex-fix-optimistic-spinning-vs.-bkl.patch new file mode 100644 index 00000000000..ce56eeeba8a --- /dev/null +++ b/queue-2.6.32/mutex-fix-optimistic-spinning-vs.-bkl.patch @@ -0,0 +1,60 @@ +From fd6be105b883244127a734ac9f14ae94a022dcc0 Mon Sep 17 00:00:00 2001 +From: Tony Breeds +Date: Wed, 19 May 2010 15:46:36 +1000 +Subject: mutex: Fix optimistic spinning vs. BKL + +From: Tony Breeds + +commit fd6be105b883244127a734ac9f14ae94a022dcc0 upstream. + +Currently, we can hit a nasty case with optimistic +spinning on mutexes: + + CPU A tries to take a mutex, while holding the BKL + + CPU B tried to take the BLK while holding the mutex + +This looks like a AB-BA scenario but in practice, is +allowed and happens due to the auto-release on +schedule() nature of the BKL. + +In that case, the optimistic spinning code can get us +into a situation where instead of going to sleep, A +will spin waiting for B who is spinning waiting for +A, and the only way out of that loop is the +need_resched() test in mutex_spin_on_owner(). + +This patch fixes it by completely disabling spinning +if we own the BKL. This adds one more detail to the +extensive list of reasons why it's a bad idea for +kernel code to be holding the BKL. + +Signed-off-by: Tony Breeds +Acked-by: Linus Torvalds +Acked-by: Peter Zijlstra +Cc: Benjamin Herrenschmidt +LKML-Reference: <20100519054636.GC12389@ozlabs.org> +[ added an unlikely() attribute to the branch ] +Signed-off-by: Ingo Molnar +Signed-off-by: Greg Kroah-Hartman + +--- + kernel/mutex.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +--- a/kernel/mutex.c ++++ b/kernel/mutex.c +@@ -172,6 +172,13 @@ __mutex_lock_common(struct mutex *lock, + struct thread_info *owner; + + /* ++ * If we own the BKL, then don't spin. The owner of ++ * the mutex might be waiting on us to release the BKL. ++ */ ++ if (unlikely(current->lock_depth >= 0)) ++ break; ++ ++ /* + * If there's an owner, wait for it to either + * release the lock or go to sleep. + */ diff --git a/queue-2.6.32/nfsd-don-t-report-compiled-out-versions-as-present.patch b/queue-2.6.32/nfsd-don-t-report-compiled-out-versions-as-present.patch new file mode 100644 index 00000000000..217682ba8e4 --- /dev/null +++ b/queue-2.6.32/nfsd-don-t-report-compiled-out-versions-as-present.patch @@ -0,0 +1,39 @@ +From 15ddb4aec54422ead137b03ea4e9b3f5db3f7cc2 Mon Sep 17 00:00:00 2001 +From: Pavel Emelyanov +Date: Fri, 14 May 2010 15:33:36 +0400 +Subject: NFSD: don't report compiled-out versions as present + +From: Pavel Emelyanov + +commit 15ddb4aec54422ead137b03ea4e9b3f5db3f7cc2 upstream. + +The /proc/fs/nfsd/versions file calls nfsd_vers() to check whether +the particular nfsd version is present/available. The problem is +that once I turn off e.g. NFSD-V4 this call returns -1 which is +true from the callers POV which is wrong. + +The proposal is to report false in that case. + +The bug has existed since 6658d3a7bbfd1768 "[PATCH] knfsd: remove +nfsd_versbits as intermediate storage for desired versions". + +Signed-off-by: Pavel Emelyanov +Acked-by: NeilBrown +Signed-off-by: J. Bruce Fields +Signed-off-by: Greg Kroah-Hartman + +--- + fs/nfsd/nfssvc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/fs/nfsd/nfssvc.c ++++ b/fs/nfsd/nfssvc.c +@@ -136,7 +136,7 @@ u32 nfsd_supported_minorversion; + int nfsd_vers(int vers, enum vers_op change) + { + if (vers < NFSD_MINVERS || vers >= NFSD_NRVERS) +- return -1; ++ return 0; + switch(change) { + case NFSD_SET: + nfsd_versions[vers] = nfsd_version[vers]; diff --git a/queue-2.6.32/rtl8180-fix-tx-status-reporting.patch b/queue-2.6.32/rtl8180-fix-tx-status-reporting.patch new file mode 100644 index 00000000000..0a52269d335 --- /dev/null +++ b/queue-2.6.32/rtl8180-fix-tx-status-reporting.patch @@ -0,0 +1,29 @@ +From d989ff7cf8d14f1b523f63ba0bf2ec1a9b7c25bc Mon Sep 17 00:00:00 2001 +From: John W. Linville +Date: Wed, 28 Apr 2010 19:14:42 -0400 +Subject: rtl8180: fix tx status reporting + +From: John W. Linville + +commit d989ff7cf8d14f1b523f63ba0bf2ec1a9b7c25bc upstream. + +When reporting Tx status, indicate that only one rate was used. +Otherwise, the rate is frozen at rate index 0 (i.e. 1Mb/s). + +Signed-off-by: John W. Linville +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/net/wireless/rtl818x/rtl8180_dev.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/net/wireless/rtl818x/rtl8180_dev.c ++++ b/drivers/net/wireless/rtl818x/rtl8180_dev.c +@@ -190,6 +190,7 @@ static void rtl8180_handle_tx(struct iee + info->flags |= IEEE80211_TX_STAT_ACK; + + info->status.rates[0].count = (flags & 0xFF) + 1; ++ info->status.rates[1].idx = -1; + + ieee80211_tx_status_irqsafe(dev, skb); + if (ring->entries - skb_queue_len(&ring->queue) == 2) diff --git a/queue-2.6.32/sata_nv-use-ata_pci_sff_activate_host-instead-of-ata_host_activate.patch b/queue-2.6.32/sata_nv-use-ata_pci_sff_activate_host-instead-of-ata_host_activate.patch new file mode 100644 index 00000000000..6cb3a03c16a --- /dev/null +++ b/queue-2.6.32/sata_nv-use-ata_pci_sff_activate_host-instead-of-ata_host_activate.patch @@ -0,0 +1,34 @@ +From 95cc2c70c139936a2142bcd583da8af6f9d88efb Mon Sep 17 00:00:00 2001 +From: Tejun Heo +Date: Fri, 14 May 2010 11:48:50 +0200 +Subject: sata_nv: use ata_pci_sff_activate_host() instead of ata_host_activate() + +From: Tejun Heo + +commit 95cc2c70c139936a2142bcd583da8af6f9d88efb upstream. + +sata_nv was incorrectly using ata_host_activate() instead of +ata_pci_sff_activate_host() leading to IRQ assignment failure in +legacy mode. Fix it. + +Signed-off-by: Tejun Heo +Cc: Robert Hancock +Signed-off-by: Jeff Garzik +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/ata/sata_nv.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +--- a/drivers/ata/sata_nv.c ++++ b/drivers/ata/sata_nv.c +@@ -2478,8 +2478,7 @@ static int nv_init_one(struct pci_dev *p + } + + pci_set_master(pdev); +- return ata_host_activate(host, pdev->irq, ipriv->irq_handler, +- IRQF_SHARED, ipriv->sht); ++ return ata_pci_sff_activate_host(host, ipriv->irq_handler, ipriv->sht); + } + + #ifdef CONFIG_PM diff --git a/queue-2.6.32/series b/queue-2.6.32/series index cd2b4b6ea74..4a83e72eb91 100644 --- a/queue-2.6.32/series +++ b/queue-2.6.32/series @@ -1,6 +1,20 @@ oprofile-x86-fix-uninitialized-counter-usage-during-cpu-hotplug.patch oprofile-remove-double-ring-buffering.patch +cpumask-fix-compat-getaffinity.patch +nfsd-don-t-report-compiled-out-versions-as-present.patch +sata_nv-use-ata_pci_sff_activate_host-instead-of-ata_host_activate.patch +arcnet-limit-com20020-pci-id-matches-for-sohard-cards.patch +rtl8180-fix-tx-status-reporting.patch +staging-add-add-sitecom-wl-349-to-rtl8192su.patch +staging-vt6655-fix-kernel-bug-on-driver-wpa-initialization.patch fix-racy-use-of-anon_inode_getfd-in-perf_event.c.patch posix_timer-fix-error-path-in-timer_create.patch libata-disable-atapi-an-by-default.patch libata-don-t-flush-dcache-on-slab-pages.patch +mutex-fix-optimistic-spinning-vs.-bkl.patch +alsa-hda-fix-model-quirk-for-dell-m1730.patch +alsa-hda-use-lpib-for-toshiba-a100-259.patch +alsa-hda-use-lpib-for-acer-aspire-5110.patch +alsa-hda-use-lpib-for-sony-vpcs11v9e.patch +alsa-hda-use-lpib-for-a-shuttle-device.patch +acpi-video-fix-acpi_backlight-video.patch diff --git a/queue-2.6.32/staging-add-add-sitecom-wl-349-to-rtl8192su.patch b/queue-2.6.32/staging-add-add-sitecom-wl-349-to-rtl8192su.patch new file mode 100644 index 00000000000..3fb7e649656 --- /dev/null +++ b/queue-2.6.32/staging-add-add-sitecom-wl-349-to-rtl8192su.patch @@ -0,0 +1,28 @@ +From 64a5a09218626464be35e0229d85b2ab0fcf03fd Mon Sep 17 00:00:00 2001 +From: Rodrigo Linfati +Date: Wed, 28 Apr 2010 22:32:13 +0200 +Subject: Staging: add Add Sitecom WL-349 to rtl8192su + +From: Rodrigo Linfati + +commit 64a5a09218626464be35e0229d85b2ab0fcf03fd upstream. + +Add usb id of Sitecom WL-349 to rtl8192su + +Signed-off-by: Rodrigo Linfati +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/staging/rtl8192su/r8192U_core.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/staging/rtl8192su/r8192U_core.c ++++ b/drivers/staging/rtl8192su/r8192U_core.c +@@ -120,6 +120,7 @@ static struct usb_device_id rtl8192_usb_ + {USB_DEVICE(0x050d, 0x805E)}, + /* Sitecom */ + {USB_DEVICE(0x0df6, 0x0031)}, ++ {USB_DEVICE(0x0df6, 0x004b)}, /* WL-349 */ + /* EnGenius */ + {USB_DEVICE(0x1740, 0x9201)}, + /* Dlink */ diff --git a/queue-2.6.32/staging-vt6655-fix-kernel-bug-on-driver-wpa-initialization.patch b/queue-2.6.32/staging-vt6655-fix-kernel-bug-on-driver-wpa-initialization.patch new file mode 100644 index 00000000000..34c544bb7f0 --- /dev/null +++ b/queue-2.6.32/staging-vt6655-fix-kernel-bug-on-driver-wpa-initialization.patch @@ -0,0 +1,39 @@ +From f65515275ea3e45fdcd0fb78455f542d6fdca086 Mon Sep 17 00:00:00 2001 +From: Larry Finger +Date: Sun, 9 May 2010 22:10:02 -0500 +Subject: staging: vt6655: Fix kernel BUG on driver wpa initialization + +From: Larry Finger + +commit f65515275ea3e45fdcd0fb78455f542d6fdca086 upstream. + +In http://bugzilla.novell.com/show_bug.cgi?id=597299, the vt6655 driver +generates a kernel BUG on a NULL pointer dereference at NULL. This problem +has been traced to a failure in the wpa_set_wpadev() routine. As the vt6656 +driver does not call this routine, the vt6655 code is similarly set to skip +the call. + +Signed-off-by: Larry Finger +Tested-by: Richard Meek +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/staging/vt6655/device_main.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/staging/vt6655/device_main.c ++++ b/drivers/staging/vt6655/device_main.c +@@ -1089,11 +1089,13 @@ device_found1(struct pci_dev *pcid, cons + } + //2008-07-21-01by MikeLiu + //register wpadev ++#if 0 + if(wpa_set_wpadev(pDevice, 1)!=0) { + printk("Fail to Register WPADEV?\n"); + unregister_netdev(pDevice->dev); + free_netdev(dev); + } ++#endif + device_print_info(pDevice); + pci_set_drvdata(pcid, pDevice); + return 0;