commit 2bfdd79eaa0043346e773ba5f6cfd811ea31b73d Merge: bb1e9b8 9ea5ca7 Author: Linus Torvalds Date: Mon Jun 29 09:46:12 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: sound: OSS: mpu401, fix deadlock ALSA: hda - Add missing initializations for ALC268 and ALC269 ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug ALSA: hda - Line In for Acer Inspire 6530G model sound: oxygen: make mic volume control mono MAINTAINERS: Add entry for twl4030 series soc codec driver ALSA: lx6464es - configure ethersound io channels sound: Use PCI_VDEVICE for CREATIVE and ECTIVA sound: Use PCI_VDEVICE ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G ALSA: hda - Fix acer-aspire-6530g model quirk ALSA: hda - Add pin-sense trigger when needed for Realtek codecs ALSA: hda - Fix support for Samsung P50 with AD1986A codec ALSA: hda - Generalize the pin-detect quirk for Lenovo N100 ALSA: hda - Simplify AD1986A mixer definitions commit bb1e9b844b989fc9a4dfffbf7a064703cda2a6a6 Merge: e717f33 94e5d71 Author: Linus Torvalds Date: Mon Jun 29 09:44:44 2009 -0700 Merge branch 'bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: integrity: add ima_counts_put (updated) integrity: ima audit hash_exists fix integrity: ima mq_open imbalance msg fix commit e717f33e989dbe6446547d7ca97489a980056f3c Merge: 1bfd4d5 ff8a4ba Author: Linus Torvalds Date: Mon Jun 29 09:42:01 2009 -0700 Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: Revert "x86: cap iomem_resource to addressable physical memory" commit 1bfd4d586057e7f608501de62bacdc82974c7cfa Merge: 44b3615 1d469c6 Author: Linus Torvalds Date: Mon Jun 29 09:41:12 2009 -0700 Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight * 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight: backlight: Fix tdo24m crash on kmalloc commit 44b3615b8cb3b016a49eb7ef4236e77a77793cec Author: Ingo Molnar Date: Mon Jun 29 10:07:54 2009 +0200 eeepc-laptop: Fix build failure with HOTPLUG_PCI && !SYSFS FYI, there's a post-rc1 build regression with certain configs: drivers/built-in.o: In function `pci_hp_deregister': (.text+0xb166): undefined reference to `pci_hp_remove_module_link' drivers/built-in.o: In function `pci_hp_deregister': (.text+0xb19f): undefined reference to `pci_destroy_slot' drivers/built-in.o: In function `__pci_hp_register': (.text+0xb583): undefined reference to `pci_create_slot' drivers/built-in.o: In function `__pci_hp_register': (.text+0xb5b1): undefined reference to `pci_hp_create_module_link' make: *** [.tmp_vmlinux1] Error 1 Caused by: | 2b121bc262fa03c94e653b2d44356c2f86c1bcdc is first bad commit | commit 2b121bc262fa03c94e653b2d44356c2f86c1bcdc | Date: Thu Jun 25 13:25:36 2009 +0200 | | eeepc-laptop: Register as a pci-hotplug device which changed the driver to use the PCI hotplug infrastructure, but didn't do a good job on the Kconfig rules. Signed-off-by: Ingo Molnar Acked-by: Randy Dunlap Acked-by: Len Brown Signed-off-by: Linus Torvalds commit aef29bc2603014cb28dfe39bab8d888546fe18e7 Author: Alan Cox Date: Mon Jun 29 15:21:47 2009 +0100 tty: Fix the leak in tty_ldisc_release Currently we reinit the ldisc on final tty close which is what the old code did to ensure that if the device retained its termios settings then it had the right ldisc. tty_ldisc_reinit does that but also leaves us with the reset ldisc reference which is then leaked. At this point we know the port will be recycled so we can kill the ldisc off completely rather than try and add another ldisc free up when the kref count hits zero. At this point it is safe to keep the ldisc closed as tty_ldisc waiting methods are only used from the user side, and as the final close we are the last such reference. Interrupt/driver side methods will always use the non wait version and get back a NULL. Found with kmemleak and investigated/identified by Catalin Marinas. Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 9ea5ca75a2aebb7172094a7d77acf6ff7600cc56 Author: Jiri Slaby Date: Mon Jun 29 18:03:34 2009 +0200 sound: OSS: mpu401, fix deadlock mpu401_chk_version is called with a spin lock already held. Don't take it again. Signed-off-by: Jiri Slaby Signed-off-by: Takashi Iwai commit 580c9d373ce7ccfbc5227e985fca761f8f039af3 Merge: e2cb0d9 0d7392e Author: Takashi Iwai Date: Mon Jun 29 18:05:09 2009 +0200 Merge branch 'fix/pci-vdevice' into for-linus * fix/pci-vdevice: sound: Use PCI_VDEVICE for CREATIVE and ECTIVA sound: Use PCI_VDEVICE commit e2cb0d95ba9fbd4603375032d37e9c0e288897b8 Merge: 7d489c4 14744d7 Author: Takashi Iwai Date: Mon Jun 29 18:05:07 2009 +0200 Merge branch 'fix/oxygen' into for-linus * fix/oxygen: sound: oxygen: make mic volume control mono commit 7d489c460ee798be16ca135276fe23262baf038c Merge: 0baddbc c2a30d7 Author: Takashi Iwai Date: Mon Jun 29 18:05:06 2009 +0200 Merge branch 'fix/misc' into for-linus * fix/misc: ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug commit 0baddbc895a8646b8ce28473897cfb7bb212d4ef Merge: cdae219 7e895cf Author: Takashi Iwai Date: Mon Jun 29 18:05:05 2009 +0200 Merge branch 'fix/lx6464es' into for-linus * fix/lx6464es: ALSA: lx6464es - configure ethersound io channels commit cdae219cec501ae4fba60e92c7a2a3aad1625b8d Merge: ae77b4e c912e7a Author: Takashi Iwai Date: Mon Jun 29 18:05:04 2009 +0200 Merge branch 'fix/hda-samsung-p50' into for-linus * fix/hda-samsung-p50: ALSA: hda - Fix support for Samsung P50 with AD1986A codec ALSA: hda - Generalize the pin-detect quirk for Lenovo N100 ALSA: hda - Simplify AD1986A mixer definitions commit ae77b4ed4fd11e67f8b02ca7ee882a636ee20a97 Merge: 10121a1 1d955eb Author: Takashi Iwai Date: Mon Jun 29 18:05:02 2009 +0200 Merge branch 'fix/hda' into for-linus * fix/hda: ALSA: hda - Add missing initializations for ALC268 and ALC269 ALSA: hda - Line In for Acer Inspire 6530G model ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G ALSA: hda - Fix acer-aspire-6530g model quirk ALSA: hda - Add pin-sense trigger when needed for Realtek codecs commit 1d955ebd4db7961dc4e772a23288b3d5c6f191be Author: Takashi Iwai Date: Mon Jun 29 11:33:53 2009 +0200 ALSA: hda - Add missing initializations for ALC268 and ALC269 During the changes to clean up / fix the realtek codec initialization routines in commit 4a79ba34cada6a5a4ee86ed53aa8a73ba1e6fc51, I forgot to add the check for ALC268 and ALC269. This resulted in the missing EAPD and COEF setup for these codecs. This patch adds the missing checks for these codecs. Reference: bko#13633 http://bugzilla.kernel.org/show_bug.cgi?id=13633 Signed-off-by: Takashi Iwai commit c2a30d711852e4f39c8a79135b3caa701f7a8e02 Author: Ondrej Zary Date: Sat Jun 27 16:17:08 2009 +0200 ALSA: cmi8330: fix MPU-401 PnP init copy&paste bug Fix copy&paste bug in PnP MPU-401 initialization. Signed-off-by: Ondrej Zary Cc: Signed-off-by: Takashi Iwai commit 684a88429c5ab04d8b1894de9a1ef62de6f601b7 Author: Tony Vroon Date: Fri Jun 26 09:27:50 2009 +0100 ALSA: hda - Line In for Acer Inspire 6530G model The Line In connector is set up as PIN_IN by default, using VREF_HIZ. It is connected to both ADCs, so add it to both input selectors. Also add the ability to use the input mix (on a SoundBlaster one would call this "What You Hear"). Signed-off-by: Tony Vroon Signed-off-by: Takashi Iwai commit 52989765629e7d182b4f146050ebba0abf2cb0b7 Merge: 9a8fb9e bd46cb6 Author: Linus Torvalds Date: Sun Jun 28 19:57:31 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: be2net: Fix to avoid a crash seen on PPC with LRO and Jumbo frames. gro: Flush GRO packets in napi_disable_pending path inet: Call skb_orphan before tproxy activates mac80211: Use rcu_barrier() on unload. sunrpc: Use rcu_barrier() on unload. bridge: Use rcu_barrier() instead of syncronize_net() on unload. ipv6: Use rcu_barrier() on module unload. decnet: Use rcu_barrier() on module unload. sky2: Fix checksum endianness mdio add missing GPL flag sh_eth: remove redundant test on unsigned fsl_pq_mdio: Fix fsl_pq_mdio to work with modules ipv6: avoid wraparound for expired preferred lifetime tcp: missing check ACK flag of received segment in FIN-WAIT-2 state atl1*: add device_set_wakeup_enable to atl1*_set_wol Phonet: generate Netlink RTM_DELADDR when destroying a device Phonet: publicize the Netlink notification function Revert "veth: prevent oops caused by netdev destructor" cpmac: fix compilation failure introduced with netdev_ops conversion ipsec: Fix name of CAST algorithm commit bd46cb6cf11867130a41ea9546dd65688b71f3c2 Author: Ajit Khaparde Date: Fri Jun 26 02:51:07 2009 +0000 be2net: Fix to avoid a crash seen on PPC with LRO and Jumbo frames. While testing the driver on PPC, we ran into a crash with LRO, Jumbo frames. With CONFIG_PPC_64K_PAGES configured (a default in PPC), MAX_SKB_FRAGS drops to 3 and we were crossing the array limits on skb_shinfo(skb)->frags[]. Now we coalesce the frags from the same physical page into one slot in skb_shinfo(skb)->frags[] and go to the next index when the frag is from different physical page. This patch is against the net-2.6 tree. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 94e5d714f604d4cb4cb13163f01ede278e69258b Author: Mimi Zohar Date: Fri Jun 26 14:05:27 2009 -0400 integrity: add ima_counts_put (updated) This patch fixes an imbalance message as reported by J.R. Okajima. The IMA file counters are incremented in ima_path_check. If the actual open fails, such as ETXTBSY, decrement the counters to prevent unnecessary imbalance messages. Reported-by: J.R. Okajima Signed-off-by: Mimi Zohar Signed-off-by: James Morris commit 79b854c549c62c54fa27f87e04465c01db889f8d Author: Mimi Zohar Date: Fri Jun 26 11:25:00 2009 -0400 integrity: ima audit hash_exists fix Audit the file name, not the template name. Signed-off-by: Mimi Zohar Signed-off-by: James Morris commit 46690f3718d95e9bb712b6f2b5c869f8494521de Author: Mimi Zohar Date: Fri Jun 26 11:24:05 2009 -0400 integrity: ima mq_open imbalance msg fix This patch fixes an imbalance message as reported by Sanchin Sant. As we don't need to measure the message queue, just increment the counters. Reported-by: Sanchin Sant Signed-off-by: Mimi Zohar Acked-by: Serge Hallyn Signed-off-by: James Morris commit 9a8fb9ee7a80f5280388b98dc7636d537866fa72 Merge: 4142ac6 bde8922 Author: Linus Torvalds Date: Sun Jun 28 11:12:52 2009 -0700 Merge branch 'kvm-updates/2.6.31' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/2.6.31' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: shut up uninit compiler warning in paging_tmpl.h KVM: Ignore reads to K7 EVNTSEL MSRs KVM: VMX: Handle vmx instruction vmexits KVM: s390: Allow stfle instruction in the guest KVM: kvm/x86_emulate.c toggle_interruptibility() should be static KVM: ia64: fix ia64 build due to missing kallsyms_lookup() and double export KVM: protect concurrent make_all_cpus_request KVM: MMU: Allow 4K ptes with bit 7 (PAT) set KVM: Fix dirty bit tracking for slots with large pages commit 4142ac678a864972ce1dfad6d9cb22f075fee5de Merge: a679128 f0a71eb Author: Linus Torvalds Date: Sun Jun 28 11:08:09 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: fix fh_mutex locking in cifs_reopen_file commit a679128d30d0303bbf5cac839c8f6f45793ea775 Merge: 8326e28 7e25a24 Author: Linus Torvalds Date: Sun Jun 28 11:06:11 2009 -0700 Merge git://git.infradead.org/iommu-2.6 * git://git.infradead.org/iommu-2.6: intel-iommu: fix Identity Mapping to be arch independent commit 8326e284f8deb75eee3d32b973464dd96e120843 Merge: 187dd31 e888d7f Author: Linus Torvalds Date: Sun Jun 28 11:05:28 2009 -0700 Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, delay: tsc based udelay should have rdtsc_barrier x86, setup: correct include file in x86, setup: Fix typo "CONFIG_x86_64" in x86, mce: percpu mcheck_timer should be pinned x86: Add sysctl to allow panic on IOCK NMI error x86: Fix uv bau sending buffer initialization x86, mce: Fix mce resume on 32bit x86: Move init_gbpages() to setup_arch() x86: ensure percpu lpage doesn't consume too much vmalloc space x86: implement percpu_alloc kernel parameter x86: fix pageattr handling for lpage percpu allocator and re-enable it x86: reorganize cpa_process_alias() x86: prepare setup_pcpu_lpage() for pageattr fix x86: rename remap percpu first chunk allocator to lpage x86: fix duplicate free in setup_pcpu_remap() failure path percpu: fix too lazy vunmap cache flushing x86: Set cpu_llc_id on AMD CPUs commit 187dd317f0169142e4adf6263852f93c3b6f6a3c Merge: 9b71272 507e123 Author: Linus Torvalds Date: Sun Jun 28 11:05:16 2009 -0700 Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: timer stats: Optimize by adding quick check to avoid function calls timers: Fix timer_migration interface which accepts any number as input commit 9b71272b6ad4966481d73e6abf3ae4bbc3bdabd5 Merge: 61abfd2 0296e42 Author: Linus Torvalds Date: Sun Jun 28 11:05:04 2009 -0700 Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: ftrace: Fix the output of profile ring-buffer: Make it generally available ftrace: Remove duplicate newline tracing: Fix trace_buf_size boot option ftrace: Fix t_hash_start() ftrace: Don't manipulate @pos in t_start() ftrace: Don't increment @pos in g_start() tracing: Reset iterator in t_start() trace_stat: Don't increment @pos in seq start() tracing_bprintk: Don't increment @pos in t_start() tracing/events: Don't increment @pos in s_start() commit 61abfd2df8aa43a137ae58446dd0638a2385586e Merge: 4075ea8 a1dd8c6 Author: Linus Torvalds Date: Sun Jun 28 11:02:32 2009 -0700 Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds: leds: Futher document blink_set leds: Add options to have GPIO LEDs start on or keep their state leds: LED driver for National Semiconductor LP3944 Funlight Chip leds: pca9532 - Indent using tabs, not spaces. leds: Remove an orphan Kconfig entry leds: Further document parameters for blink_set() leds: alix-leds2 fixed for Award BIOS leds: leds-gpio - fix a section mismatch leds: add the sysfs interface into the leds-bd2802 driver for changing wave pattern and led current. leds: change the license information leds: fix led-bd2802 errors while resuming commit bde892232532ed522bb56b04576d07f91e59b3c7 Author: Jaswinder Singh Rajput Date: Wed May 20 09:59:35 2009 +0530 KVM: shut up uninit compiler warning in paging_tmpl.h Dixes compilation warning: CC arch/x86/kernel/io_delay.o arch/x86/kvm/paging_tmpl.h: In function ‘paging64_fetch’: arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function arch/x86/kvm/paging_tmpl.h: In function ‘paging32_fetch’: arch/x86/kvm/paging_tmpl.h:279: warning: ‘sptep’ may be used uninitialized in this function warning is bogus (always have a least one level), but need to shut the compiler up. Signed-off-by: Jaswinder Singh Rajput Signed-off-by: Avi Kivity commit 9e6996240afcbe61682eab8eeaeb65c34333164d Author: Amit Shah Date: Mon Jun 15 13:25:34 2009 +0530 KVM: Ignore reads to K7 EVNTSEL MSRs In commit 7fe29e0faacb650d31b9e9f538203a157bec821d we ignored the reads to the P6 EVNTSEL MSRs. That fixed crashes on Intel machines. Ignore the reads to K7 EVNTSEL MSRs as well to fix this on AMD hosts. This fixes Kaspersky antivirus crashing Windows guests on AMD hosts. Signed-off-by: Amit Shah Signed-off-by: Avi Kivity commit e3c7cb6ad7191e92ba89d00a7ae5f5dd1ca0c214 Author: Avi Kivity Date: Tue Jun 16 14:19:52 2009 +0300 KVM: VMX: Handle vmx instruction vmexits IF a guest tries to use vmx instructions, inject a #UD to let it know the instruction is not implemented, rather than crashing. This prevents guest userspace from crashing the guest kernel. Cc: stable@kernel.org Signed-off-by: Avi Kivity commit ef50f7ac7e234f9696555e41eab3de69c3d86166 Author: Christian Borntraeger Date: Tue Jun 23 17:24:07 2009 +0200 KVM: s390: Allow stfle instruction in the guest 2.6.31-rc introduced an architecture level set checker based on facility bits. e.g. if the kernel is compiled to run only on z9, several facility bits are checked very early and the kernel refuses to boot if a z9 specific facility is missing. Until now kvm on s390 did not implement the store facility extended (STFLE) instruction. A 2.6.31-rc kernel that was compiled for z9 or higher did not boot in kvm. This patch implements stfle. This patch should go in before 2.6.31. Signed-off-by: Christian Borntraeger Signed-off-by: Avi Kivity commit a3f9d3981cd82d65232b733eb792382237d686bd Author: Jaswinder Singh Rajput Date: Thu Jun 18 16:53:25 2009 +0530 KVM: kvm/x86_emulate.c toggle_interruptibility() should be static toggle_interruptibility() is used only by same file, it should be static. Fixed following sparse warning : arch/x86/kvm/x86_emulate.c:1364:6: warning: symbol 'toggle_interruptibility' was not declared. Should it be static? Signed-off-by: Jaswinder Singh Rajput Signed-off-by: Avi Kivity commit ffdfa071bd6fa8f5e5964569bef41e067540d424 Author: Jes Sorensen Date: Wed Jun 17 11:08:08 2009 +0200 KVM: ia64: fix ia64 build due to missing kallsyms_lookup() and double export Fix problem with double export of certain symbols from vsprintf.c which we do not wish to export from the kvm-intel.ko module. In addition, we do not have access to kallsyms_lookup() from the module, so make sure to #undef CONFIG_KALLSYMS Signed-off-by: Jes Sorensen Acked-by: Xiantao Zhang Signed-off-by: Avi Kivity commit 84261923d3dddb766736023bead6fa07b7e218d5 Author: Marcelo Tosatti Date: Wed Jun 17 10:53:47 2009 -0300 KVM: protect concurrent make_all_cpus_request make_all_cpus_request contains a race condition which can trigger false request completed status, as follows: CPU0 CPU1 if (test_and_set_bit(req,&vcpu->requests)) .... if (test_and_set_bit(req,&vcpu->requests)) .. return proceed to smp_call_function_many(wait=1) Use a spinlock to serialize concurrent CPUs. Cc: stable@kernel.org Signed-off-by: Andrea Arcangeli Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit 29a4b9333bf9ffef12b3dd7cbf2e3dbe01152968 Author: Avi Kivity Date: Tue May 19 13:29:27 2009 +0300 KVM: MMU: Allow 4K ptes with bit 7 (PAT) set Bit 7 is perfectly legal in the 4K page leve; it is used for the PAT. Signed-off-by: Avi Kivity commit e244584fe3a5c20deddeca246548ac86dbc6e1d1 Author: Izik Eidus Date: Wed Jun 10 19:23:24 2009 +0300 KVM: Fix dirty bit tracking for slots with large pages When slot is already allocated and being asked to be tracked we need to break the large pages. This code flush the mmu when someone ask a slot to start dirty bit tracking. Cc: stable@kernel.org Signed-off-by: Izik Eidus Signed-off-by: Avi Kivity commit ff8a4bae459a9b6455504127fcb78fdbc8e50e4c Author: H. Peter Anvin Date: Sat Jun 27 12:22:27 2009 -0700 Revert "x86: cap iomem_resource to addressable physical memory" This reverts commit 95ee14e4379c5e19c0897c872350570402014742. Mikael Petterson reported that at least one of his systems will not boot as a result. We have ruled out the detection algorithm malfunctioning, so it is not a matter of producing the incorrect bitmasks; rather, something in the application of them fails. Revert the commit until we can root cause and correct this problem. -stable team: this means the underlying commit should be rejected. Reported-and-isolated-by: Mikael Petterson Signed-off-by: H. Peter Anvin LKML-Reference: <200906261559.n5QFxJH8027336@pilspetsen.it.uu.se> Cc: stable@kernel.org Cc: Grant Grundler commit f0a71eb820596bd8f6abf64beb4cb181edaa2341 Author: Jeff Layton Date: Sat Jun 27 07:04:55 2009 -0400 cifs: fix fh_mutex locking in cifs_reopen_file Fixes a regression caused by commit a6ce4932fbdbcd8f8e8c6df76812014351c32892 When this lock was converted to a mutex, the locks were turned into unlocks and vice-versa. Signed-off-by: Jeff Layton Acked-by: Shirish Pargaonkar Cc: Stable Tree Signed-off-by: Steve French commit ff780cd8f2fa928b193554f593b36d1243554212 Author: Herbert Xu Date: Fri Jun 26 19:27:04 2009 -0700 gro: Flush GRO packets in napi_disable_pending path When NAPI is disabled while we're in net_rx_action, we end up calling __napi_complete without flushing GRO packets. This is a bug as it would cause the GRO packets to linger, of course it also literally BUGs to catch error like this :) This patch changes it to napi_complete, with the obligatory IRQ reenabling. This should be safe because we've only just disabled IRQs and it does not materially affect the test conditions in between. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 71f9dacd2e4d233029e9e956ca3f79531f411827 Author: Herbert Xu Date: Fri Jun 26 19:22:37 2009 -0700 inet: Call skb_orphan before tproxy activates As transparent proxying looks up the socket early and assigns it to the skb for later processing, we must drop any existing socket ownership prior to that in order to distinguish between the case where tproxy is active and where it is not. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 4a27096bbe2cad4c6e78802a0d9dfe0e598a1129 Author: Jesper Dangaard Brouer Date: Fri Jun 26 10:45:53 2009 +0000 mac80211: Use rcu_barrier() on unload. The mac80211 module uses rcu_call() thus it should use rcu_barrier() on module unload. The rcu_barrier() is placed in mech.c ieee80211_stop_mesh() which is invoked from ieee80211_stop() in case vif.type == NL80211_IFTYPE_MESH_POINT. Acked-by: Paul E. McKenney Acked-by: Johannes Berg Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 75de874f5c35f679c6370fccc2bf4930e638ef3b Author: Jesper Dangaard Brouer Date: Fri Jun 26 10:45:58 2009 +0000 sunrpc: Use rcu_barrier() on unload. The sunrpc module uses rcu_call() thus it should use rcu_barrier() on module unload. Have not verified that the possibility for new call_rcu() callbacks has been disabled. As a hint for checking, the functions calling call_rcu() (unx_destroy_cred and generic_destroy_cred) are registered as crdestroy function pointer in struct rpc_credops. Acked-by: Paul E. McKenney Acked-by: Trond Myklebust Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 473c22d759e73cbbe604f41105b497817cc2ee8e Author: Jesper Dangaard Brouer Date: Fri Jun 26 10:45:48 2009 +0000 bridge: Use rcu_barrier() instead of syncronize_net() on unload. When unloading modules that uses call_rcu() callbacks, then we must use rcu_barrier(). This module uses syncronize_net() which is not enough to be sure that all callback has been completed. Acked-by: Paul E. McKenney Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 1f2ccd00f224a4e2d6d26f590f3e6851f3deef99 Author: Jesper Dangaard Brouer Date: Fri Jun 26 10:46:03 2009 +0000 ipv6: Use rcu_barrier() on module unload. The ipv6 module uses rcu_call() thus it should use rcu_barrier() on module unload. Acked-by: Paul E. McKenney Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 10e85448019097e4fcfa535f612f51d0d31a34f4 Author: Jesper Dangaard Brouer Date: Fri Jun 26 10:46:08 2009 +0000 decnet: Use rcu_barrier() on module unload. The decnet module unloading as been disabled with a '#if 0' statement, because it have had issues. We add a rcu_barrier() anyhow for correctness. The maintainer (Chrissie Caulfield) will look into the unload issue when time permits. Acked-by: Paul E. McKenney Acked-by: Chrissie Caulfield Signed-off-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 4075ea8c54a7506844a69f674990241e7766357b Merge: 919a6d1 37da045 Author: Linus Torvalds Date: Fri Jun 26 09:39:40 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp: amd64_edac: misc small cleanups amd64_edac: fix ecc_enable_override handling amd64_edac: check only ECC bit in amd64_determine_edac_cap commit 919a6d10fdd9e256dfcd31937fb0b18d1c066be6 Merge: cf2acfb fd0cca7 Author: Linus Torvalds Date: Fri Jun 26 09:39:02 2009 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (29 commits) powerpc/rtas: Fix watchdog driver temperature read functionality powerpc/mm: Fix potential access to freed pages when using hugetlbfs powerpc/440: Fix warning early debug code powerpc/of: Fix usage of dev_set_name() in of_device_alloc() powerpc/pasemi: Use raw spinlock in SMP TB sync powerpc: Use one common impl. of RTAS timebase sync and use raw spinlock powerpc/rtas: Turn rtas lock into a raw spinlock powerpc: Add irqtrace support for 32-bit powerpc powerpc/BSR: Fix BSR to allow mmap of small BSR on 64k kernel powerpc/BSR: add 4096 byte BSR size powerpc: Map more memory early on 601 processors powerpc/pmac: Fix DMA ops for MacIO devices powerpc/mm: Make k(un)map_atomic out of line powerpc: Fix mpic alloc warning powerpc: Fix output from show_regs powerpc/pmac: Fix issues with PowerMac "PowerSurge" SMP powerpc/amigaone: Limit ISA I/O range to 4k in the device tree powerpc/warp: Platform fix for i2c change powerpc: Have git ignore generated files from dtc compile powerpc/mpic: Fix mapping of "DCR" based MPIC variants ... commit cf2acfb2051fc67804162eebc5ebc8f55d3b7e2c Merge: aada1bc 412af97 Author: Linus Torvalds Date: Fri Jun 26 09:37:52 2009 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI: video: prevent NULL deref in acpi_get_pci_dev() eeepc-laptop: add rfkill support for the 3G modem in Eee PC 901 Go eeepc-laptop: get the right value for CMSG eeepc-laptop: makes get_acpi() returns -ENODEV eeepc-laptop: right parent device eeepc-laptop: rfkill refactoring eeepc-laptop.c: use pr_fmt and pr_ eeepc-laptop: Register as a pci-hotplug device commit aada1bc92797434cdf31e76fc2c6ab29307a5f48 Merge: 7e0d8a8 71a394f Author: Linus Torvalds Date: Fri Jun 26 09:37:19 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] remove unknown mount option warning message [CIFS] remove bkl usage from umount begin cifs: Fix incorrect return code being printed in cFYI messages [CIFS] cleanup asn handling for ntlmssp [CIFS] Copy struct *after* setting the port, instead of before. cifs: remove rw/ro options cifs: fix problems with earlier patches cifs: have cifs parse scope_id out of IPv6 addresses and use it [CIFS] Do not send tree disconnect if session is already disconnected [CIFS] Fix build break cifs: display scopeid in /proc/mounts cifs: add new routine for converting AF_INET and AF_INET6 addrs cifs: have cifs_show_options show forceuid/forcegid options cifs: remove unneeded NULL checks from cifs_show_options commit b9389796fa4c87fbdff33816e317cdae5f36dd0b Author: Anton Vorontsov Date: Fri Jun 26 09:28:42 2009 -0700 sky2: Fix checksum endianness sky2 driver on PowerPC targets floods kernel log with following errors: eth1: hw csum failure. Call Trace: [ef84b8a0] [c00075e4] show_stack+0x50/0x160 (unreliable) [ef84b8d0] [c02fa178] netdev_rx_csum_fault+0x3c/0x5c [ef84b8f0] [c02f6920] __skb_checksum_complete_head+0x7c/0x84 [ef84b900] [c02f693c] __skb_checksum_complete+0x14/0x24 [ef84b910] [c0337e08] tcp_v4_rcv+0x4c8/0x6f8 [ef84b940] [c031a9c8] ip_local_deliver+0x98/0x210 [ef84b960] [c031a788] ip_rcv+0x38c/0x534 [ef84b990] [c0300338] netif_receive_skb+0x260/0x36c [ef84b9c0] [c025de00] sky2_poll+0x5dc/0xcf8 [ef84ba20] [c02fb7fc] net_rx_action+0xc0/0x144 The NIC is Yukon-2 EC chip revision 1. Converting checksum field from le16 to CPU byte order fixes the issue. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit 7e0d8a838834beb2cce9df48dacf67f4e8e699cb Merge: 987fed3 8944146 Author: Linus Torvalds Date: Fri Jun 26 08:48:42 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc32: Fix makefile not generating required files sparc32: Fix tftpboot.img Makefile sparc: fix tftpboot.img build sparc32: Fix obvious build issues for tftpboot.img build. sparc64: Fix build warnings in piggyback_64.c sparc64: Don't use alloc_bootmem() in init_IRQ() code paths. commit 37da045067b4e923190662e21029005ea53bfaa1 Author: Borislav Petkov Date: Wed Jun 10 17:36:57 2009 +0200 amd64_edac: misc small cleanups - cleanup debug calls - shorten function names - cleanup error exit paths Signed-off-by: Borislav Petkov commit 30c875cbc1836a03a1acc6c998fa8a04f29f8f73 Author: Borislav Petkov Date: Mon Jun 22 19:42:24 2009 +0200 amd64_edac: fix ecc_enable_override handling amd64_check_ecc_enabled() returns non-zero status when ECC checking/correcting is disabled and this fails further loading of the driver even when 'ecc_enable_override' boot param is used. Fix that by clearing return status in that case. Signed-off-by: Borislav Petkov commit 584fcff428bde3b9985ba21498764e9dba2fd3ce Author: Borislav Petkov Date: Wed Jun 10 18:29:54 2009 +0200 amd64_edac: check only ECC bit in amd64_determine_edac_cap Checking whether the machine is using ECC enabled DRAM is done through testing the DimmEccEn bit in the DRAM Cfg Low register (F2x[1,0]90). Do that instead of testing all bits from the DimmEccEn upwards. Also, remove mci->edac_cap assignment and use value returned from amd64_determine_edac_cap(). Signed-off-by: Borislav Petkov commit 7e25a2422987a37729706b18583d177966919d2a Author: Chris Wright Date: Thu Jun 25 18:52:05 2009 -0700 intel-iommu: fix Identity Mapping to be arch independent Drop the e820 scanning and use existing function for finding valid RAM regions to add to 1:1 mapping. Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit 0296e4254f3318e0dcad9706fa1daf8e5addc1e9 Author: Li Zefan Date: Fri Jun 26 11:15:37 2009 +0800 ftrace: Fix the output of profile The first entry of the ftrace profile was always skipped when reading trace_stat/functionX. Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A443D59.4080307@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit fd0cca754f3f6756bfdafe500e4f49b1b9e9723f Merge: 5ba762c 66c6b85 Author: Benjamin Herrenschmidt Date: Fri Jun 26 16:58:01 2009 +1000 Merge commit 'kumar/next' into merge commit 5ba762c9bb3ce2cc11e9e111cb3c476e84b91668 Author: Adrian Reber Date: Thu Mar 26 02:05:42 2009 +0000 powerpc/rtas: Fix watchdog driver temperature read functionality Using the RTAS watchdog driver to read out the temperature crashes on a PXCAB: Unable to handle kernel paging request for data at address 0xfe347b50 Faulting instruction address: 0xc00000000001af64 Oops: Kernel access of bad area, sig: 11 [#1] The wrong usage of "(void *)__pa(&temperature)" in rtas_call() is removed by using the function rtas_get_sensor() which does the right thing. Signed-off-by: Adrian Reber Acked-by: Utz Bacher Signed-off-by: Benjamin Herrenschmidt commit 6c16a74d423f584ed80815ee7b944f5b578dd37a Author: Benjamin Herrenschmidt Date: Mon Jun 15 16:53:43 2009 +0000 powerpc/mm: Fix potential access to freed pages when using hugetlbfs When using 64k page sizes, our PTE pages are split in two halves, the second half containing the "extension" used to keep track of individual 4k pages when not using HW 64k pages. However, our page tables used for hugetlb have a slightly different format and don't carry that "second half". Our code that batched PTEs to be invalidated unconditionally reads the "second half" (to put it into the batch), which means that when called to invalidate hugetlb PTEs, it will access unrelated memory. It breaks when CONFIG_DEBUG_PAGEALLOC is enabled. This fixes it by only accessing the second half when the _PAGE_COMBO bit is set in the first half, which indicates that we are dealing with a "combo" page which represents 16x4k subpages. Anything else shouldn't have this bit set and thus not require loading from the second half. Signed-off-by: Benjamin Herrenschmidt commit f694cda89250f38782a5fd0b2d32fe33a39dcf37 Author: Benjamin Herrenschmidt Date: Tue Jun 16 15:55:19 2009 +0000 powerpc/440: Fix warning early debug code The function udbg_44x_as1_flush() has the wrong prototype causing a warning when enabling 440 early debug. Signed-off-by: Benjamin Herrenschmidt commit 03c01aa740d4137ea2884328f2c29956c6084834 Author: Benjamin Herrenschmidt Date: Tue Jun 16 15:55:18 2009 +0000 powerpc/of: Fix usage of dev_set_name() in of_device_alloc() dev_set_name() takes a format string, so use it properly and avoid a warning with recent gcc's Signed-off-by: Benjamin Herrenschmidt commit 6893ce6c1cdcf489b7ca8e6b6596208aa971a083 Author: Benjamin Herrenschmidt Date: Tue Jun 16 16:42:51 2009 +0000 powerpc/pasemi: Use raw spinlock in SMP TB sync spin_lock() can hang if called while the timebase is frozen, so use a raw lock instead, also disable interrupts while at it. Signed-off-by: Benjamin Herrenschmidt commit c4007a2fbf5f82b7e694c22b5929c87e38415a56 Author: Benjamin Herrenschmidt Date: Tue Jun 16 16:42:50 2009 +0000 powerpc: Use one common impl. of RTAS timebase sync and use raw spinlock Several platforms use their own copy of what is essentially the same code, using RTAS to synchronize the timebases when bringing up new CPUs. This moves it all into a single common implementation and additionally turns the spinlock into a raw spinlock since the former can rely on the timebase not being frozen when spinlock debugging is enabled, and finally masks interrupts while the timebase is disabled. Signed-off-by: Benjamin Herrenschmidt commit f97bb36f705da0a86b3ea77bfeee3415fee0b025 Author: Benjamin Herrenschmidt Date: Tue Jun 16 16:42:49 2009 +0000 powerpc/rtas: Turn rtas lock into a raw spinlock RTAS currently uses a normal spinlock. However it can be called from contexts where this is not necessarily a good idea. For example, it can be called while syncing timebases, with the core timebase being frozen. Unfortunately, that will deadlock in case of lock contention when spinlock debugging is enabled as the spin lock debugging code will try to use __delay() which ... relies on the timebase being enabled. Also RTAS can be used in some low level IRQ handling code path so it may as well be a raw spinlock for -rt sake. Signed-off-by: Benjamin Herrenschmidt commit 5d38902c483881645ba16058cffaa478b81e5cfa Author: Benjamin Herrenschmidt Date: Wed Jun 17 17:43:59 2009 +0000 powerpc: Add irqtrace support for 32-bit powerpc Based on initial work from: Dale Farnsworth Add the low level irq tracing hooks for 32-bit powerpc needed to enable full lockdep functionality. The approach taken to deal with the code in entry_32.S is that we don't trace all the transitions of MSR:EE when we just turn it off to peek at TI_FLAGS without races. Only when we are calling into C code or returning from exceptions with a state that have changed from what lockdep thinks. There's a little bugger though: If we take an exception that keeps interrupts enabled (such as an alignment exception) while interrupts are enabled, we will call trace_hardirqs_on() on the way back spurriously. Not a big deal, but to get rid of it would require remembering in pt_regs that the exception was one of the type that kept interrupts enabled which we don't know at this stage. (Well, we could test all cases for regs->trap but that sucks too much). Signed-off-by: Benjamin Herrenschmidt Tested-by: Kumar Gala commit 04a85d1234d7e1682a612565e663e6b760918643 Author: Sonny Rao Date: Thu Jun 18 15:13:04 2009 +0000 powerpc/BSR: Fix BSR to allow mmap of small BSR on 64k kernel On Mon, Nov 17, 2008 at 01:26:13AM -0600, Sonny Rao wrote: > On Fri, Nov 07, 2008 at 04:28:29PM +1100, Paul Mackerras wrote: > > Sonny Rao writes: > > > > > Fix the BSR driver to allow small BSR devices, which are limited to a > > > single 4k space, on a 64k page kernel. Previously the driver would > > > reject the mmap since the size was smaller than PAGESIZE (or because > > > the size was greater than the size of the device). Now, we check for > > > this case use remap_4k_pfn(). Also, take out code to set vm_flags, > > > as the remap_pfn functions will do this for us. > > > > Thanks. > > > > Do we know that the BSR size will always be 4k if it's not a multiple > > of 64k? Is it possible that we could get 8k, 16k or 32k or BSRs? > > If it is possible, what does the user need to be able to do? Do they > > just want to map 4k, or might then want to map the whole thing? > > > Hi Paul, I took a look at changing the driver to reject a request for > mapping more than a single 4k page, however the only indication we get > of the requested size in the mmap function is the vma size, and this > is always one page at minimum. So, it's not possible to determine if > the user wants one 4k page or more. As I noted in my first response, > there is only one case where this is even possible and I don't think > it is a significant concern. > > I did notice that I left out the check to see if the user is trying to > map more than the device length, so I fixed that. Here's the revised > patch. Alright, I've reworked this now so that if we get one of these cases where there's a bsr that's > 4k and < 64k on a 64k kernel we'll only advertise that it is a 4k BSR to userspace. I think this is the best solution since user programs are only supposed to look at sysfs to determine how much can be mapped, and libbsr does this as well. Please consider for 2.6.31 as a fix, thanks. Signed-off-by: Benjamin Herrenschmidt commit e4031d52c57b17c76bbdb15fcf1a32a9f87d9756 Author: Sonny Rao Date: Thu Jun 18 15:14:36 2009 +0000 powerpc/BSR: add 4096 byte BSR size Add a 4096 byte BSR size which will be used on new machines. Also, remove the warning when we run into an unknown size, as this can spam the kernel log excessively. Signed-off-by: Sonny Rao Signed-off-by: Benjamin Herrenschmidt commit 4a5cbf17c49a6024a6d7baf03efdffb8ed252bb1 Author: Benjamin Herrenschmidt Date: Thu Jun 18 19:17:39 2009 +0000 powerpc: Map more memory early on 601 processors The 32-bit kernel relies on some memory being mapped covering the kernel text,data and bss at least, early during boot before the full MMU setup is done. On 32-bit "classic" processors, this is done using BAT registers. On 601, the size of BATs is limited to 8M and we use 2 of them for that initial mapping. This can become quite tight when enabling features like lockdep, so let's use a 3rd one to bump that mapping from 16M to 24M. We keep the 4th BAT free as it can be useful for debugging early boot code to map things like serial ports. Signed-off-by: Benjamin Herrenschmidt commit 3514141aedc16c7344117d5bd79ec1310edf8fb3 Author: Benjamin Herrenschmidt Date: Thu Jun 18 19:20:51 2009 +0000 powerpc/pmac: Fix DMA ops for MacIO devices The macio_dev's created to map devices inside the MacIO ASICs don't have proper dma_ops. This causes crashes on some machines since the SCSI code calls dma_map_* on our behalf using the device we hang from. This fixes it by copying the parent PCI device dma_ops into the macio_dev when creating it. Signed-off-by: Benjamin Herrenschmidt commit 850f6ac316cf84bba63fdb775c897834eccbfaa3 Author: Benjamin Herrenschmidt Date: Thu Jun 18 19:25:00 2009 +0000 powerpc/mm: Make k(un)map_atomic out of line Those functions are way too big to be inline, besides, kmap_atomic() wants to call debug_kmap_atomic() which isn't exported for modules and causes module link failures. Signed-off-by: Benjamin Herrenschmidt commit 85355bb272db31a3f2dd99d547eef794805e1319 Author: Kumar Gala Date: Thu Jun 18 22:01:20 2009 +0000 powerpc: Fix mpic alloc warning Since we can use kmalloc earlier we are getting the following since the mpic_alloc() code calls alloc_bootmem(). Move to using kzalloc() to remove the warning. ------------[ cut here ]------------ Badness at c0583248 [verbose debug info unavailable] NIP: c0583248 LR: c0583210 CTR: 00000004 REGS: c0741de0 TRAP: 0700 Not tainted (2.6.30-06736-g12a31df) MSR: 00021000 CR: 22024024 XER: 00000000 TASK = c070d3b8[0] 'swapper' THREAD: c0740000 CPU: 0 <6>GPR00: 00000001 c0741e90 c070d3b8 00000001 00000210 00000020 3fffffff 00000000 <6>GPR08: 00000000 c0c85700 c04f8c40 0000002d 22044022 1004a388 7ffd9400 00000000 <6>GPR16: 00000000 7ffcd100 7ffcd100 7ffcd100 c04f8c40 00000000 c059f62c c075a0c0 <6>GPR24: c059f648 00000000 0000000f 00000210 00000020 00000000 3fffffff 00000210 NIP [c0583248] alloc_arch_preferred_bootmem+0x50/0x80 LR [c0583210] alloc_arch_preferred_bootmem+0x18/0x80 Call Trace: [c0741e90] [c07343b0] devtree_lock+0x0/0x24 (unreliable) [c0741ea0] [c0583b14] ___alloc_bootmem_nopanic+0x54/0x108 [c0741ee0] [c0583e18] ___alloc_bootmem+0x18/0x50 [c0741ef0] [c057b9cc] mpic_alloc+0x48/0x710 [c0741f40] [c057ecf4] mpc85xx_ds_pic_init+0x190/0x1b8 [c0741f90] [c057633c] init_IRQ+0x24/0x34 [c0741fa0] [c05738b8] start_kernel+0x260/0x3dc [c0741ff0] [c00003c8] skpinv+0x2e0/0x31c Instruction dump: 409e001c 7c030378 80010014 83e1000c 38210010 7c0803a6 4e800020 3d20c0c8 39295700 80090004 7c000034 5400d97e <0f000000> 2f800000 409e001c 38800000 BenH: Changed to use GFP_KERNEL, the allocator will do the right thing Signed-off-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit a2367194183d6ab6b05e5d7d9b40db6ba48afc06 Author: Kumar Gala Date: Thu Jun 18 22:29:55 2009 +0000 powerpc: Fix output from show_regs For some reason we've had an explicit KERN_INFO for GPR dumps. With recent changes we get output like: <6>GPR00: 00000000 ef855eb0 ef858000 00000001 000000d0 f1000000 ffbc8000 ffffffff The KERN_INFO is causing the <6>. Don't see any reason to keep it around. Signed-off-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit 7ccbe504b5ee766d33211a507189a06f3079b29b Author: Benjamin Herrenschmidt Date: Thu Jun 18 23:30:07 2009 +0000 powerpc/pmac: Fix issues with PowerMac "PowerSurge" SMP The old PowerSurge SMP (ie, dual or quad 604 machines) code has numerous issues in modern world. One is cpu_possible_map is set too late (the device-tree is bogus) so we fail to allocate the interrupt stacks and crash. Another problem is the fact the timebase is frozen by the bringup of the second CPU so the delays in the generic code will hang, we need to move some of the calling procedure to inside the powermac code. This makes it boot again for me Signed-off-by: Benjamin Herrenschmidt commit 6bb2ae535f2eee0334802724a542701bd969d055 Author: Gerhard Pircher Date: Fri Jun 19 11:42:36 2009 +0000 powerpc/amigaone: Limit ISA I/O range to 4k in the device tree The kernel reserves the I/O address space from 0x0 to 0xfff for legacy ISA devices. Change the ranges property for the PCI2ISA bridge to match the kernels behavior, even if the ranges property isn't used for now. Signed-off-by: Gerhard Pircher Signed-off-by: Benjamin Herrenschmidt commit 3984114f056203d833251af85501721f7b00fd18 Author: Sean MacLennan Date: Fri Jun 19 19:43:59 2009 +0000 powerpc/warp: Platform fix for i2c change A change to the i2c subsystem breaks the warp platform code. The patch is cleaner anyway, the old way was a bit crufty. For those with keen eyes, the gratuitous change in the string from PIKA to Warp is just so the logs look a bit nicer. The following two lines tend to be printed one after another. Warp POST OK Warp DTM thread running. Yeah, this will be the third patch to warp.c submitted in this release.... Cheers, Sean The i2c_client struct changed, breaking the code that looked for the ad7414 chip. Use the new of_find_i2c_device_by_node function added in 2.6.29. Signed-off-by: Sean MacLennan Signed-off-by: Benjamin Herrenschmidt commit b810c6ec5c659c80b3641580b112db877a0f1f45 Author: Jon Smirl Date: Sun Jun 21 15:28:00 2009 +0000 powerpc: Have git ignore generated files from dtc compile Have git ignore generated files from dtc compile Signed-off-by: Jon Smirl Acked-by: David Gibson Acked-by: Sean MacLennan Signed-off-by: Benjamin Herrenschmidt commit 5a2642f620eb6e40792822fa0eafe23046fbb55e Author: Benjamin Herrenschmidt Date: Mon Jun 22 16:47:59 2009 +0000 powerpc/mpic: Fix mapping of "DCR" based MPIC variants Commit 31207dab7d2e63795eb15823947bd2f7025b08e2 "Fix incorrect allocation of interrupt rev-map" introduced a regression crashing on boot on machines using a "DCR" based MPIC, such as the Cell blades. The reason is that the irq host data structure is initialized much later as a result of that patch, causing our calls to mpic_map() do be done before we have a host setup. Unfortunately, this breaks _mpic_map_dcr() which uses the mpic->irqhost to get to the device node. This fixes it by, instead, passing the device node explicitely to mpic_map(). Signed-off-by: Benjamin Herrenschmidt Acked-by: Akira Tsukamoto commit 6f0b1c6094b3e8eeeb13f8f16c1b2ef452a6f519 Author: Michael Ellerman Date: Mon Jun 22 23:13:48 2009 +0000 powerpc: Swiotlb breaks pseries Turning on SWIOTLB selects or enables PPC_NEED_DMA_SYNC_OPS, which means we get the non empty versions of dma_sync_* in asm/dma-mapping.h On my pseries machine the dma_ops have no such routines and we die with a null pointer - this patch gets it booting, is there a more elegant way to do it? Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 412af97838828bc6d035a1902c8974f944663da6 Author: Troy Moure Date: Thu Jun 25 17:05:35 2009 -0600 ACPI: video: prevent NULL deref in acpi_get_pci_dev() ref: http://thread.gmane.org/gmane.linux.kernel/857228/focus=857468 When the ACPI video driver initializes, it does a namespace walk looking for for supported devices. When we find an appropriate handle, we walk up the ACPI tree looking for a PCI root bus, and then walk back down the PCI bus, assuming that every device inbetween is a P2P bridge. This assumption is not correct, and is reported broken on at least: Dell Latitude E6400 ThinkPad X61 Dell XPS M1330 Add a NULL deref check to prevent boot panics. Reported-by: Alessandro Suardi Signed-off-by: Troy Moure Signed-off-by: Alex Chiang Signed-off-by: Len Brown commit 3cd530b5aaffd27b231f9717730f2f6684c00bda Author: Corentin Chary Date: Thu Jun 25 13:25:42 2009 +0200 eeepc-laptop: add rfkill support for the 3G modem in Eee PC 901 Go Signed-off-by: Janne Grunau Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit dbfa3ba90dfe353a56e107cff5bce9fb7976f06f Author: Corentin Chary Date: Thu Jun 25 13:25:41 2009 +0200 eeepc-laptop: get the right value for CMSG CMSG is an ACPI method used to find features available on an Eee PC. But some features are never repported, even if present. If the getter of a feature is present, this patch will set the corresponding bit in cmsg. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit f36509e7248631671d02f48d1a88f56cdeb54ed8 Author: Corentin Chary Date: Thu Jun 25 13:25:40 2009 +0200 eeepc-laptop: makes get_acpi() returns -ENODEV If there is there is no getter defined, get_acpi() will return -ENODEV. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 1ddec2f9435e77b4d3f50eced68c4c942f2bcd4b Author: Corentin Chary Date: Thu Jun 25 13:25:39 2009 +0200 eeepc-laptop: right parent device Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 7de39389d8f61aa517ce2a8b4d925acc62696ae5 Author: Corentin Chary Date: Thu Jun 25 13:25:38 2009 +0200 eeepc-laptop: rfkill refactoring Refactor rfkill code, because we'll add another rfkill for wwan3g later. Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 19b532892834b7f1c04b2940ac73177dc566fed5 Author: Joe Perches Date: Thu Jun 25 13:25:37 2009 +0200 eeepc-laptop.c: use pr_fmt and pr_ Convert the unusual printk(EEEPC_ uses to the more standard pr_fmt and pr_(. Signed-off-by: Joe Perches Signed-off-by: Corentin Chary Signed-off-by: Len Brown commit 2b121bc262fa03c94e653b2d44356c2f86c1bcdc Author: Corentin Chary Date: Thu Jun 25 13:25:36 2009 +0200 eeepc-laptop: Register as a pci-hotplug device The eee contains a logically (but not physically) hotpluggable PCIe slot. Currently this is handled by adding or removing the PCI device in response to rfkill events, but if a user has forced pciehp to bind to it (with the force=1 argument) then both drivers will try to handle the event and hilarity (in the form of oopses) will ensue. This can be avoided by having eee-laptop register the slot as a hotplug slot. Only one of pciehp and eee-laptop will successfully register this, avoiding the problem. Signed-off-by: Matthew Garrett Signed-off-by: Corentin Chary Tested-by: Darren Salt Signed-off-by: Randy Dunlap Signed-off-by: Len Brown commit 71a394faaad07090af5de5c075ec2f5bca0fbb35 Author: Steve French Date: Fri Jun 26 04:07:18 2009 +0000 [CIFS] remove unknown mount option warning message Jeff's previous patch which removed the unneeded rw/ro parsing can cause a minor warning in dmesg (about the unknown rw or ro mount option) at mount time. This patch makes cifs ignore them in kernel to remove the warning (they are already handled in the mount helper and VFS). Signed-off-by: Steve French commit ad8034f19792736db5c259103c2eaaf72887bbb4 Author: Steve French Date: Fri Jun 26 03:25:49 2009 +0000 [CIFS] remove bkl usage from umount begin The lock_kernel call moved into the fs for umount_begin is not needed. This adds a check to make sure we don't call umount_begin twice on the same fs. umount_begin for cifs is probably not needed and may eventually be able to be removed, but in the meantime this smaller patch is safe and gets rid of the bkl from this path which provides some benefit. Acked-by: Jeff Layton Signed-off-by: Steve French commit 30767636e5896c650f33db5f7f0a9b0e82f3e8c4 Author: Nicolas Reinecke Date: Thu Jun 25 02:55:31 2009 +0000 mdio add missing GPL flag Add missing GPL flag and description. mdio: module license 'unspecified' taints kernel. Disabling lock debugging due to kernel taint Signed-off-by: Nicolas Reinecke das-labor.org> Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 37c8ae3acf39108b3b7866897f1e3e9f277efc50 Author: roel kluin Date: Mon Jun 22 07:38:00 2009 +0000 sh_eth: remove redundant test on unsigned Unsigned boguscnt cannot be less than 0. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit e2a61fa31382b1ac2b22f76f9c439892e5dc4b86 Author: Ionut Nicu Date: Wed Jun 24 22:23:39 2009 +0000 fsl_pq_mdio: Fix fsl_pq_mdio to work with modules This patch fixes the case when ucc_geth or gianfar are compiled as modules. Without this patch the call to phy_connect() fails. Signed-off-by: Ionut Nicu Acked-by: Andy Fleming Signed-off-by: David S. Miller commit a1faa69810b2af562b70b2a71c116c7d03575dd3 Author: Jens Rosenboom Date: Thu Jun 25 04:55:50 2009 +0000 ipv6: avoid wraparound for expired preferred lifetime Avoid showing wrong high values when the preferred lifetime of an address is expired. Signed-off-by: Jens Rosenboom Signed-off-by: David S. Miller commit 1ac530b3553e0b4dc1e18a32bed57cfa84cd57cb Author: Wei Yongjun Date: Wed Jun 24 22:29:31 2009 +0000 tcp: missing check ACK flag of received segment in FIN-WAIT-2 state RFC0793 defined that in FIN-WAIT-2 state if the ACK bit is off drop the segment and return[Page 72]. But this check is missing in function tcp_timewait_state_process(). This cause the segment with FIN flag but no ACK has two diffent action: Case 1: Node A Node B <------------- FIN,ACK (enter FIN-WAIT-1) ACK -------------> (enter FIN-WAIT-2) FIN -------------> discard (move sk to tw list) Case 2: Node A Node B <------------- FIN,ACK (enter FIN-WAIT-1) ACK -------------> (enter FIN-WAIT-2) (move sk to tw list) FIN -------------> <------------- ACK This patch fixed the problem. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 8944146daa2c38dd85bc489d1b84fb9abc108837 Author: Julian Calaby Date: Tue Jun 23 01:45:46 2009 +0000 sparc32: Fix makefile not generating required files The tftpboot build was failing with missing file errors. It turns out that $(obj)/image wasn't being generated which was causing the a.out conversion to be skipped and hence piggyback to be called with nonexistent files. Signed-off-by: Julian Calaby Signed-off-by: David S. Miller commit 3e05c5e2ce40066582dc34aa8335baa328815a09 Author: Julian Calaby Date: Sun Jun 21 16:45:01 2009 +0000 sparc32: Fix tftpboot.img Makefile Signed-off-by: Julian Calaby Signed-off-by: David S. Miller commit 52da82cfb569b44e26e15395a6727277758580fe Author: Sam Ravnborg Date: Sun Jun 21 16:46:10 2009 +0000 sparc: fix tftpboot.img build Kjetil Oftedal mentioned that piggyback_32 was failing when building a sparc image. I tracked this down to the fact that the kernel no longer provided an absolute symbol named "end". Commit 86ed40bd6fe511d26bb8f3fa65a84cb65c235366 ("sparc: unify sections.h") renamed end to _end but failed to update piggyback_32. Signed-off-by: Sam Ravnborg Cc: Kjetil Oftedal Cc: Robert Reif Signed-off-by: Julian Calaby Signed-off-by: David S. Miller commit 22b096a8907e5184f25fafd1b73f0b3633d52495 Author: Robert Reif Date: Sun Jun 21 16:45:44 2009 +0000 sparc32: Fix obvious build issues for tftpboot.img build. Signed-off-by: Robert Reif Signed-off-by: David S. Miller commit 413ee282a510afb2f18975a189501f39d279a906 Author: Julian Calaby Date: Sun Jun 21 16:44:13 2009 +0000 sparc64: Fix build warnings in piggyback_64.c This patch fixes the following build warnings: arch/sparc/boot/piggyback_64.c: In function 'main': arch/sparc/boot/piggyback_64.c:44: warning: 'end' may be used uninitialized in this function arch/sparc/boot/piggyback_64.c:44: warning: 'start' may be used uninitialized in this function Signed-off-by: Julian Calaby Signed-off-by: David S. Miller commit 14a2ff6ed28931f796d2c2c8a440227a5d90f441 Author: David S. Miller Date: Thu Jun 25 19:00:47 2009 -0700 sparc64: Don't use alloc_bootmem() in init_IRQ() code paths. The page allocator and SLAB are available at this point now, and if we still try to use bootmem allocations here the kernel spits out warnings. Signed-off-by: David S. Miller commit 987fed3bf6982f2627d4fa242caa9026ef61132a Merge: ed4fc72 8b169b5 Author: Linus Torvalds Date: Thu Jun 25 17:04:37 2009 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (28 commits) drm: remove unused #include 's drm/radeon: fix driver initialization order so radeon kms can be builtin drm: Fix shifts which were miscalculated when converting from bitfields. drm/radeon: Clear surface registers at initialization time. drm/radeon: Don't initialize acceleration related fields of struct fb_info. drm/radeon: fix radeon kms framebuffer device drm/i915: initialize fence registers to zero when loading GEM drm/i915: Fix HDMI regression introduced in new chipset support drm/i915: fix LFP data fetch drm/i915: set TV detection mode when tv is already connected drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. drm/i915: Fix size_t handling in off-by-default debug printfs drm/i915: Don't change the blank/sync width when calculating scaled modes drm/i915: Add support for changing LVDS panel fitting using an output property. drm/i915: correct suspend/resume ordering drm/i915: Add missing dependency on Intel AGP support. drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O. drm/i915: Clarify error returns from display port aux channel I/O drm/i915: Add CLKCFG register definition drm/i915: Split array of DAC limits into separate structures. ... commit e888d7facd1f1460a638151036d15b6cfb3ccc74 Author: Pallipadi, Venkatesh Date: Thu Jun 25 16:44:31 2009 -0700 x86, delay: tsc based udelay should have rdtsc_barrier delay_tsc needs rdtsc_barrier to provide proper delay. Output from a test driver using hpet to cross check delay provided by udelay(). Before: [ 86.794363] Expected delay 5us actual 4679ns [ 87.154362] Expected delay 5us actual 698ns [ 87.514162] Expected delay 5us actual 4539ns [ 88.653716] Expected delay 5us actual 4539ns [ 94.664106] Expected delay 10us actual 9638ns [ 95.049351] Expected delay 10us actual 10126ns [ 95.416110] Expected delay 10us actual 9568ns [ 95.799216] Expected delay 10us actual 9638ns [ 103.624104] Expected delay 10us actual 9707ns [ 104.020619] Expected delay 10us actual 768ns [ 104.419951] Expected delay 10us actual 9707ns After: [ 50.983320] Expected delay 5us actual 5587ns [ 51.261807] Expected delay 5us actual 5587ns [ 51.565715] Expected delay 5us actual 5657ns [ 51.861171] Expected delay 5us actual 5587ns [ 52.164704] Expected delay 5us actual 5726ns [ 52.487457] Expected delay 5us actual 5657ns [ 52.789338] Expected delay 5us actual 5726ns [ 57.119680] Expected delay 10us actual 10755ns [ 57.893997] Expected delay 10us actual 10615ns [ 58.261287] Expected delay 10us actual 10755ns [ 58.620505] Expected delay 10us actual 10825ns [ 58.941035] Expected delay 10us actual 10755ns [ 59.320903] Expected delay 10us actual 10615ns [ 61.306311] Expected delay 10us actual 10755ns [ 61.520542] Expected delay 10us actual 10615ns Signed-off-by: Venkatesh Pallipadi Signed-off-by: H. Peter Anvin commit 658dbfeb5e7ab35d440c665d643a6285e43fddcd Author: H. Peter Anvin Date: Thu Jun 25 15:16:06 2009 -0700 x86, setup: correct include file in needs , not in order to resolve PMD_SHIFT. Also, correct a +1 which really should be + THREAD_ORDER. This is a build error which was masked by a typoed #ifdef. Signed-off-by: H. Peter Anvin commit 22f4319d6bc0155e6c0ae560729baa6c09dc09e7 Author: Robert P. J. Day Date: Thu Jun 25 16:20:48 2009 -0400 x86, setup: Fix typo "CONFIG_x86_64" in CONFIG_X86_64 was misspelled (wrong case), which caused the x86-64 kernel to advertise itself as more relocatable than it really is. This could in theory cause boot failures once bootloaders start support the new relocation fields. Signed-off-by: Robert P. J. Day Signed-off-by: H. Peter Anvin commit 5be6066a7f8d917db347d94f1b359b9b70dcb572 Author: Hidetoshi Seto Date: Wed Jun 24 09:21:10 2009 +0900 x86, mce: percpu mcheck_timer should be pinned If CONFIG_NO_HZ + CONFIG_SMP, timer added via add_timer() might be migrated on other cpu. Use add_timer_on() instead. Avoids the following failure: Maciej Rutecki wrote: > > After normal boot I try: > > > > echo 1 > /sys/devices/system/machinecheck/machinecheck0/check_interval > > > > I found this in dmesg: > > > > [ 141.704025] ------------[ cut here ]------------ > > [ 141.704039] WARNING: at arch/x86/kernel/cpu/mcheck/mce.c:1102 > > mcheck_timer+0xf5/0x100() Reported-by: Maciej Rutecki Signed-off-by: Hidetoshi Seto Tested-by: Maciej Rutecki Acked-by: Andi Kleen Signed-off-by: H. Peter Anvin commit 5211a242d0cbdded372aee59da18f80552b0a80a Author: Kurt Garloff Date: Wed Jun 24 14:32:11 2009 -0700 x86: Add sysctl to allow panic on IOCK NMI error This patch introduces a new sysctl: /proc/sys/kernel/panic_on_io_nmi which defaults to 0 (off). When enabled, the kernel panics when the kernel receives an NMI caused by an IO error. The IO error triggered NMI indicates a serious system condition, which could result in IO data corruption. Rather than contiuing, panicing and dumping might be a better choice, so one can figure out what's causing the IO error. This could be especially important to companies running IO intensive applications where corruption must be avoided, e.g. a bank's databases. [ SuSE has been shipping it for a while, it was done at the request of a large database vendor, for their users. ] Signed-off-by: Kurt Garloff Signed-off-by: Roberto Angelino Signed-off-by: Greg Kroah-Hartman Cc: "Eric W. Biederman" LKML-Reference: <20090624213211.GA11291@kroah.com> Signed-off-by: Ingo Molnar commit 0f3bc09ee1b7fcadd5bfdc5ed2e1643f658fe23d Author: Suresh Jayaraman Date: Thu Jun 25 18:12:34 2009 +0530 cifs: Fix incorrect return code being printed in cFYI messages FreeXid() along with freeing Xid does add a cifsFYI debug message that prints rc (return code) as well. In some code paths where we set/return error code after calling FreeXid(), incorrect error code is being printed when cifsFYI is enabled. This could be misleading in few cases. For eg. In cifs_open() if cifs_fill_filedata() returns a valid pointer to cifsFileInfo, FreeXid() prints rc=-13 whereas 0 is actually being returned. Fix this by setting rc before calling FreeXid(). Basically convert FreeXid(xid); rc = -ERR; return -ERR; => FreeXid(xid); return rc; [Note that Christoph would like to replace the GetXid/FreeXid calls, which are primarily used for debugging. This seems like a good longer term goal, but although there is an alternative tracing facility, there are no examples yet available that I know of that we can use (yet) to convert this cifs function entry/exit logging, and for creating an identifier that we can use to correlate all dmesg log entries for a particular vfs operation (ie identify all log entries for a particular vfs request to cifs: e.g. a particular close or read or write or byte range lock call ... and just using the thread id is harder). Eventually when a replacement for this is available (e.g. when NFS switches over and various samples to look at in other file systems) we can remove the GetXid/FreeXid macro but in the meantime multiple people use this run time configurable logging all the time for debugging, and Suresh's patch fixes a problem which made it harder to notice some low memory problems in the log so it is worthwhile to fix this problem until a better logging approach is able to be used] Acked-by: Jeff Layton Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit ed4fc720e1912eb36ca654d03c88c48845ed39b2 Merge: f4fa446 aa71528 Author: Linus Torvalds Date: Thu Jun 25 11:25:00 2009 -0700 Merge branch 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: futex: request only one page from get_user_pages() commit f4fa446883959c1c5f314a043e750dbfe3728c55 Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:37 2009 +0100 usb_serial: Fix oops when unexisting usb serial device is opened. This commit 335f8514f200e63d689113d29cb7253a5c282967 has stopped properly checking if there is any usb serial associated with the tty in the close function. It happens the close function is called by releasing the terminal right after opening the device fails. As an example, open fails with a non-existing device, when probe has never been called, because the device has never been plugged. This is common in systems with static modules and no udev. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 922b13565b6a826a925f9f91f053dc9cb0d6210e Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:30 2009 +0100 acm: Fix oops when closing ACM tty device right after open has failed. This commit 10077d4a6674f535abdbe25cdecb1202af7948f1 has stopped checking if there was a valid acm device associated to the tty, which is not true right after open fails and tty subsystem tries to close the device. As an example, open fails with a non-existing device, when probe has never been called, because the device has never been plugged. This is common in systems with static modules and no udev. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 42dd2aa6496a2e87e496aac5494d2e1d6096c85b Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:24 2009 +0100 acm: Return ENODEV instead of EINVAL when trying to open ACM device. This is required, otherwise a user will get a EINVAL while opening a non-existing device, instead of ENODEV. This is what I get with this patch applied now instead of an "Invalid argument". cascardo@vespa:~$ cat /dev/ttyACM0 cat: /dev/ttyACM0: No such device cascardo@vespa:~$ Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit a37f6b84c4f3d3ca61634a7b36bf64c6ea452271 Merge: 9d73777 d7e2f36 Author: Linus Torvalds Date: Thu Jun 25 11:23:37 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6: ide cs5520: Initialize second port's interrupt number. ide: improve handling of Power Management requests ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[] ide: relax DMA info validity checking ide-cd: Improve "weird block size" error message ide-cd: Don't warn on bogus block size unless it actually matters. ide: fix handling of unexpected IRQs vs request_irq() commit 9d73777e500929b71dcfed16eec05f6760e345a6 Author: Peter Zijlstra Date: Thu Jun 25 11:58:55 2009 +0200 clarify get_user_pages() prototype Currently the 4th parameter of get_user_pages() is called len, but its in pages, not bytes. Rename the thing to nr_pages to avoid future confusion. Signed-off-by: Peter Zijlstra Signed-off-by: Linus Torvalds commit ab420e6d9c2511b862d753b70efb4e979faa0714 Author: Paul Menage Date: Thu Jun 25 00:17:15 2009 -0700 UML: Fix some apparent bitrot UML: Fix some apparent bitrot - migration of net_device methods into net_device_ops - dma_sync_single() changes Signed-off-by: Paul Menage Acked-by: Amerigo Wang -- This version is split from my earlier patch, including just the portions that ar required for Linus' tree. Fixes the following compile errors: include/linux/dma-mapping.h:113: error: redefinition of 'dma_sync_single' arch/um/include/asm/dma-mapping.h:84: error: previous definition of 'dma_sync_single' was here include/linux/dma-mapping.h: In function 'dma_sync_single': include/linux/dma-mapping.h:117: error: implicit declaration of function 'dma_sync_single_for_cpu' include/linux/dma-mapping.h: At top level: include/linux/dma-mapping.h:120: error: redefinition of 'dma_sync_sg' arch/um/include/asm/dma-mapping.h:91: error: previous definition of 'dma_sync_sg' was here include/linux/dma-mapping.h: In function 'dma_sync_sg': include/linux/dma-mapping.h:124: error: implicit declaration of function 'dma_sync_sg_for_cpu' arch/um/drivers/slirp_kern.c: In function 'slirp_init': arch/um/drivers/slirp_kern.c:35: error: 'struct net_device' has no member named 'init' Signed-off-by: Linus Torvalds commit 47749b14e55cd167632f9a27a4fc439e591e5268 Author: Ingo Molnar Date: Thu Jun 25 08:27:14 2009 +0200 i2c: fix build bug in i2c-designware.c This build error triggers on x86: drivers/built-in.o: In function `i2c_dw_init': i2c-designware.c:(.text+0x4e37ca): undefined reference to `clk_get_rate' drivers/built-in.o: In function `dw_i2c_probe': i2c-designware.c:(.devinit.text+0x51f5e): undefined reference to `clk_get' i2c-designware.c:(.devinit.text+0x51f76): undefined reference to `clk_enable' i2c-designware.c:(.devinit.text+0x520ff): undefined reference to `clk_disable' i2c-designware.c:(.devinit.text+0x52108): undefined reference to `clk_put' Because this new driver uses the clk_*() facilities which is an ARM-only thing currently. Signed-off-by: Ingo Molnar Acked-by: Baruch Siach Signed-off-by: Linus Torvalds commit 14744d7da2e6ab5c6d8e82c84dc280e3c0dd8552 Author: Clemens Ladisch Date: Thu Jun 25 14:28:49 2009 +0200 sound: oxygen: make mic volume control mono The microphone input and its volume register have only one channel, so we have to make the corresponding mixer control a mono control. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 10121a12e2380fb34b6e646a8e367add06d036c3 Merge: 28d0325 dd5e8e6 Author: Takashi Iwai Date: Thu Jun 25 15:28:14 2009 +0200 Merge branch 'for-2.6.31' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into fix/asoc Conflicts: MAINTAINERS commit dd5e8e6b1d4c218d2bafe002231ec460459ab5c4 Author: Peter Ujfalusi Date: Thu Jun 25 13:26:09 2009 +0300 MAINTAINERS: Add entry for twl4030 series soc codec driver New MAINTAINERS entry for twl4030 series soc codec driver with Peter Ujfalusi as maintainer. Signed-off-by: Peter Ujfalusi Signed-off-by: Mark Brown commit aa715284b4d28cabde6c25c568d769a6be712bc8 Author: Thomas Gleixner Date: Thu Jun 25 14:27:58 2009 +0200 futex: request only one page from get_user_pages() Yanmin noticed that fault_in_user_writeable() requests 4 pages instead of one. That's the result of blindly trusting Linus' proposal :) I even looked up the prototype to verify the correctness: the argument in question is confusingly enough named "len" while in reality it means number of pages. Pointed-out-by: Yanmin Zhang Signed-off-by: Thomas Gleixner commit d8146bb23ea045fb75c56b4e3b53f0964eed4076 Author: Brandon Philips Date: Wed Jun 24 14:09:14 2009 +0000 atl1*: add device_set_wakeup_enable to atl1*_set_wol Tell PCI core that atl1* device can wakeup the system when WOL is enabled by calling device_set_wakeup_enable. Joerg noted that his atl1e device WOL fine after enabling it with ethtool and changing /sys/class/net/eth0/device/power/wakeup to enabled Tested on atl1e: https://bugzilla.novell.com/show_bug.cgi?id=493214 Tested by: Joerg Reuter Signed-off-by: Brandon Philips Signed-off-by: David S. Miller commit 2be6fa4c7e5731375cc5e70843a3444293c27514 Author: Rémi Denis-Courmont Date: Wed Jun 24 01:07:45 2009 +0000 Phonet: generate Netlink RTM_DELADDR when destroying a device Netlink address deletion events were not sent when a network device vanished neither when Phonet was unloaded. Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit c7a1a4c80f873d5d6ecd173035bb80eba489f380 Author: Rémi Denis-Courmont Date: Wed Jun 24 01:07:44 2009 +0000 Phonet: publicize the Netlink notification function Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit 11687a1099583273a8a98ec42af62b5bb5a69e45 Author: David S. Miller Date: Thu Jun 25 02:45:42 2009 -0700 Revert "veth: prevent oops caused by netdev destructor" This reverts commit ae0e8e82205c903978a79ebf5e31c670b61fa5b4. This change had two problems: 1) Since it frees the stats in the drivers' close method, we can OOPS in the transmit routine. 2) stats are no longer remembered across ifdown/ifup which disagrees with how every other device operates. Thanks to analysis and test patch from Serge E. Hallyn and initial OOPS report by Sachin Sant. Signed-off-by: David S. Miller commit 1155de47cd66d0c496d5a6fb2223e980ef1285b2 Author: Paul Mundt Date: Thu Jun 25 14:30:12 2009 +0900 ring-buffer: Make it generally available In hunting down the cause for the hwlat_detector ring buffer spew in my failed -next builds it became obvious that folks are now treating ring_buffer as something that is generic independent of tracing and thus, suitable for public driver consumption. Given that there are only a few minor areas in ring_buffer that have any reliance on CONFIG_TRACING or CONFIG_FUNCTION_TRACER, provide stubs for those and make it generally available. Signed-off-by: Paul Mundt Cc: Jon Masters Cc: Steven Rostedt LKML-Reference: <20090625053012.GB19944@linux-sh.org> Signed-off-by: Ingo Molnar commit 00e54d087afb3867b0b461aef6c1ff433d0df564 Author: Li Zefan Date: Thu Jun 25 14:05:27 2009 +0800 ftrace: Remove duplicate newline Before: # echo 'sys_open:traceon:' > set_ftrace_filter # echo 'sys_close:traceoff:5' > set_ftrace_filter # cat set_ftrace_filter #### all functions enabled #### sys_open:traceon:unlimited sys_close:traceoff:count=0 After: # cat set_ftrace_filter #### all functions enabled #### sys_open:traceon:unlimited sys_close:traceoff:count=0 Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A4313A7.7030105@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit 7e895cfaad51c862932ea7db0c428761076412e5 Author: Tim Blechmann Date: Thu Jun 25 09:41:46 2009 +0200 ALSA: lx6464es - configure ethersound io channels as long as the io channel number is not set by the driver, the card is not visible from the ethersound network Signed-off-by: Tim Blechmann Signed-off-by: Takashi Iwai commit 0d7392e54435476243ce08ba57745ab52d639cbb Author: Joe Perches Date: Wed Jun 24 23:18:02 2009 -0700 sound: Use PCI_VDEVICE for CREATIVE and ECTIVA Here's a patch on top of the others to use CREATIVE and ECTIVA Signed-off-by: Joe Perches Signed-off-by: Takashi Iwai commit 28d27aae9432c300857722a917be4065c6d7abff Author: Joe Perches Date: Wed Jun 24 22:13:35 2009 -0700 sound: Use PCI_VDEVICE Signed-off-by: Joe Perches Signed-off-by: Takashi Iwai commit dde6535686aa4e78e8b85850d1f3fccd8a581622 Author: Takashi Iwai Date: Thu Jun 25 08:25:35 2009 +0200 ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G For Acer Aspire 6930G (1025:015e), acre-aspire-6530g model matches obviously better. Signed-off-by: Takashi Iwai commit 320d592001acbfd76bf856b5370319f144285489 Author: Emilio López Date: Thu Jun 25 08:18:44 2009 +0200 ALSA: hda - Fix acer-aspire-6530g model quirk Fix the following bugs of acer-aspire-6530g model with ALC888: - HP jack to mute all speaker outputs including LFE - Make digital built-in mic working Signed-off-by: Emilio López Signed-off-by: Takashi Iwai commit 261c2407401ca26fa17f05667ea68f51e12c5303 Author: Takashi Iwai Date: Thu Jun 25 08:13:40 2009 +0200 ALSA: hda - Add pin-sense trigger when needed for Realtek codecs Realtek codecs require the pin-sense trigger call before actually reading the pin-sense. Without this, the pin-detection might not be done accurately. This patch adds the pin-capability check and issues the trigger call if required. Signed-off-by: Takashi Iwai commit f46c7234e472ceee39afea4fb5a4365843e1850a Author: Steve French Date: Thu Jun 25 03:04:20 2009 +0000 [CIFS] cleanup asn handling for ntlmssp Also removes obsolete distinction between rawntlmssp and ntlmssp (in asn/SPNEGO) since as jra noted we can always send raw ntlmssp in session setup now. remove check for experimental runtime flag (/proc/fs/cifs/Experimental) in ntlmssp path. Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 6debdbc0ba6253ac519cd5a3d22e30f1f9f1dd12 Author: Simo Leone Date: Thu Jun 25 02:44:43 2009 +0000 [CIFS] Copy struct *after* setting the port, instead of before. Acked-by: Jeff Layton Signed-off-by: Simo Leone Signed-off-by: Steve French commit 6459340cfcc6f6d165b27c3dd955aeb55a1b73d3 Author: Jeff Layton Date: Thu Jun 25 00:56:55 2009 -0400 cifs: remove rw/ro options cifs: remove rw/ro options These options are handled at the VFS layer. They only ever set the option in the smb_vol struct. Nothing was ever done with them afterward anyway. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit b48a485884b5afb3e33b1871bcbd246b67491923 Author: Jeff Layton Date: Thu Jun 25 00:56:54 2009 -0400 cifs: fix problems with earlier patches cifs: fix problems with earlier patches cifs_show_address hasn't been introduced yet, and fix a typo that was silently fixed by a later patch in the series. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 681bf72e4893a187cf6b6b62c08fc193f81c8c2f Author: Jeff Layton Date: Thu Jun 11 10:27:31 2009 -0400 cifs: have cifs parse scope_id out of IPv6 addresses and use it This patch has CIFS look for a '%' in an IPv6 address. If one is present then it will try to treat that value as a numeric interface index suitable for stuffing into the sin6_scope_id field. This should allow people to mount servers on IPv6 link-local addresses. Signed-off-by: Jeff Layton Acked-by: David Holder Signed-off-by: Steve French commit 6a9b6546164fb380a019f92ca4d76443202fdc4f Author: Florian Fainelli Date: Wed Jun 24 16:32:33 2009 -0700 cpmac: fix compilation failure introduced with netdev_ops conversion This patch fixes and obvious typo in the netdev_ops initialization: ndo_so_ioctl should be ndo_do_ioctl. Signed-off-by: Florian Fainelli Signed-off-by: David S. Miller commit 245acb87729bc76ba65c7476665c01837e0cdccb Author: Herbert Xu Date: Wed Jun 24 03:55:41 2009 -0700 ipsec: Fix name of CAST algorithm Our CAST algorithm is called cast5, not cast128. Clearly nobody has ever used it :) Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 268875b9d1dd1bf0b523c59e736da9bc20c8ce1f Author: Steve French Date: Thu Jun 25 00:29:21 2009 +0000 [CIFS] Do not send tree disconnect if session is already disconnected Noticed this when tree connect timed out (due to Samba server crash) - we try to send a tree disconnect for a tid that does not exist since we don't have a valid tree id yet. This checks that the session is valid before sending the tree disconnect to handle this case. Signed-off-by: Steve French commit 9c26f52b900f7207135bafc8789e1a4f5d43e096 Author: Cliff Wickman Date: Wed Jun 24 09:41:59 2009 -0500 x86: Fix uv bau sending buffer initialization The initialization of the UV Broadcast Assist Unit's sending buffers was making an invalid assumption about the initialization of an MMR that defines its address. The BIOS will not be providing that MMR. So uv_activation_descriptor_init() should unconditionally set it. Tested on UV simulator. Signed-off-by: Cliff Wickman Cc: # for v2.6.30.x LKML-Reference: Signed-off-by: Ingo Molnar commit c912e7a58054304575fe88574c776be7e684098e Author: Takashi Iwai Date: Wed Jun 24 14:14:34 2009 +0200 ALSA: hda - Fix support for Samsung P50 with AD1986A codec Samsung P50 requires the HP auto-muting unlike other Samsung models. Added a new model=samsung-p50 to support this. Signed-off-by: Takashi Iwai commit 03c405ad314d3c4e049b8d04500e54e833d16747 Author: Takashi Iwai Date: Wed Jun 24 14:10:15 2009 +0200 ALSA: hda - Generalize the pin-detect quirk for Lenovo N100 Add a new flag to ad_spec struct so that the same hack can be used for any other models (if any). This also allows other models to reuse the auto-mute functions. Signed-off-by: Takashi Iwai commit 16d11a829ed197b719723f81d82e7f1a42f5c681 Author: Takashi Iwai Date: Wed Jun 24 14:07:53 2009 +0200 ALSA: hda - Simplify AD1986A mixer definitions Split mixer element arrays of AD1986A models to several pieces so that each model can share the same mixer arrays. This removes lots of duplicated data. Signed-off-by: Takashi Iwai commit 9d612beff5089b89a295a2331883a8ce3fff08c1 Author: Li Zefan Date: Wed Jun 24 17:33:15 2009 +0800 tracing: Fix trace_buf_size boot option We should be able to specify [KMG] when setting trace_buf_size boot option, as documented in kernel-parameters.txt Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A41F2DB.4020102@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit d7e2f36d9a92284754ed5254562766cb3d61c7ca Author: David S. Miller Date: Wed Jun 24 02:36:17 2009 -0700 ide cs5520: Initialize second port's interrupt number. In 86ccf37c6acd74cf7e4b7751ee045de19943c5a0 the driver was modified to deal with the removal of the pciirq argument to ide_pci_setup_ports(). But in the conversion only the first port's IRQ gets setup. Inspired by a patch by Bartlomiej Zolnierkiewicz., and with help from Alan Cox. Signed-off-by: David S. Miller commit 507e123151149e578c9aae33eb876c49824da5f8 Author: Heiko Carstens Date: Tue Jun 23 17:38:15 2009 +0200 timer stats: Optimize by adding quick check to avoid function calls When the kernel is configured with CONFIG_TIMER_STATS but timer stats are runtime disabled we still get calls to __timer_stats_timer_set_start_info which initializes some fields in the corresponding struct timer_list. So add some quick checks in the the timer stats setup functions to avoid function calls to __timer_stats_timer_set_start_info when timer stats are disabled. In an artificial workload that does nothing but playing ping pong with a single tcp packet via loopback this decreases cpu consumption by 1 - 1.5%. This is part of a modified function trace output on SLES11: perl-2497 [00] 28630647177732388 [+ 125]: sk_reset_timer <-tcp_v4_rcv perl-2497 [00] 28630647177732513 [+ 125]: mod_timer <-sk_reset_timer perl-2497 [00] 28630647177732638 [+ 125]: __timer_stats_timer_set_start_info <-mod_timer perl-2497 [00] 28630647177732763 [+ 125]: __mod_timer <-mod_timer perl-2497 [00] 28630647177732888 [+ 125]: __timer_stats_timer_set_start_info <-__mod_timer perl-2497 [00] 28630647177733013 [+ 93]: lock_timer_base <-__mod_timer Signed-off-by: Heiko Carstens Cc: Andrew Morton Cc: Martin Schwidefsky Cc: Mustafa Mesanovic Cc: Arjan van de Ven LKML-Reference: <20090623153811.GA4641@osiris.boeblingen.de.ibm.com> Signed-off-by: Ingo Molnar commit d82d62444f87e5993af2fa82ed636b2206e052ea Author: Li Zefan Date: Wed Jun 24 09:54:54 2009 +0800 ftrace: Fix t_hash_start() When the output of set_ftrace_filter is larger than PAGE_SIZE, t_hash_start() will be called the 2nd time, and then we start from the head of a hlist, which is wrong and causes some entries to be outputed twice. The worse is, if the hlist is large enough, reading set_ftrace_filter won't stop but in a dead loop. Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A41876E.2060407@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit 694ce0a544fba37a60025a6803ee6265be8a2a22 Author: Li Zefan Date: Wed Jun 24 09:54:19 2009 +0800 ftrace: Don't manipulate @pos in t_start() It's rather confusing that in t_start(), in some cases @pos is incremented, and in some cases it's decremented and then incremented. This patch rewrites t_start() in a much more general way. Thus we fix a bug that if ftrace_filtered == 1, functions have tracer hooks won't be printed, because the branch is always unreachable: static void *t_start(...) { ... if (!p) return t_hash_start(m, pos); return p; } Before: # echo 'sys_open' > /mnt/tracing/set_ftrace_filter # echo 'sys_write:traceon:4' >> /mnt/tracing/set_ftrace_filter sys_open After: # echo 'sys_open' > /mnt/tracing/set_ftrace_filter # echo 'sys_write:traceon:4' >> /mnt/tracing/set_ftrace_filter sys_open sys_write:traceon:count=4 Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A41874B.4090507@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit 85951842a1020669f0a9eb0f0d1853b41341f097 Author: Li Zefan Date: Wed Jun 24 09:54:00 2009 +0800 ftrace: Don't increment @pos in g_start() It's wrong to increment @pos in g_start(). It causes some entries lost when reading set_graph_function, if the output of the file is larger than PAGE_SIZE. Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A418738.7090401@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit f129e965bef40c6153e4fe505f1e408286213424 Author: Li Zefan Date: Wed Jun 24 09:53:44 2009 +0800 tracing: Reset iterator in t_start() The iterator is m->private, but it's not reset to trace_types in t_start(). If the output is larger than PAGE_SIZE and t_start() is called the 2nd time, things will go wrong. Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A418728.5020506@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit 2961bf345fd1b736c3db46cad0f69855f67fbe9c Author: Li Zefan Date: Wed Jun 24 09:53:26 2009 +0800 trace_stat: Don't increment @pos in seq start() It's wrong to increment @pos in stat_seq_start(). It causes some stat entries lost when reading stat file, if the output of the file is larger than PAGE_SIZE. Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A418716.90209@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit c8961ec6da22ea010bf4470a8e0fb3fdad0f11c4 Author: Li Zefan Date: Wed Jun 24 09:52:58 2009 +0800 tracing_bprintk: Don't increment @pos in t_start() It's wrong to increment @pos in t_start(), otherwise we'll lose some entries when reading printk_formats, if the output is larger than PAGE_SIZE. Reported-by: Lai Jiangshan Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A4186FA.1020106@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit e1c7e2a6e67fe9db19dd15e71614526a31b5fdb1 Author: Li Zefan Date: Wed Jun 24 09:52:29 2009 +0800 tracing/events: Don't increment @pos in s_start() While testing syscall tracepoints posted by Jason, I found 3 entries were missing when reading available_events. The output size of available_events is < 4 pages, which means we lost 1 entry per page. The cause is, it's wrong to increment @pos in s_start(). Actually there's another bug here -- reading avaiable_events/set_events can race with module unload: # cat available_events | s_start() | s_stop() | | # rmmod foo.ko s_start() | call = list_entry(m->private) | @call might be freed and accessing it will lead to crash. Reviewed-by: Liming Wang Signed-off-by: Li Zefan Cc: Steven Rostedt Cc: Frederic Weisbecker LKML-Reference: <4A4186DD.6090405@cn.fujitsu.com> Signed-off-by: Ingo Molnar commit a1317f714af7aed60ddc182d0122477cbe36ee9b Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 23:52:17 2009 -0700 ide: improve handling of Power Management requests Make hwif->rq point to PM request during PM sequence and do not allow any other types of requests to slip in (the old comment was never correct as there should be no such requests generated during PM sequence). Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit ba9413bd284e79ea43b0ae406a7a29526aaf82b3 Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 16:11:10 2009 -0700 ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[] Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit 346c17a6cf60375323adfaa4b8a9d841049f890e Author: Bartlomiej Zolnierkiewicz Date: Mon Jun 22 07:38:26 2009 +0000 ide: relax DMA info validity checking There are some broken devices that report multiple DMA xfer modes enabled at once (ATA spec doesn't allow it) but otherwise work fine with DMA so just delete ide_id_dma_bug(). [ As discovered by detective work by Frans and Bart, due to how handling of the ID block was handled before commit c419993 ("ide-iops: only clear DMA words on setting DMA mode") this check was always seeing zeros in the fields or other similar garbage. Therefore this check wasn't actually checking anything. Now that the tests actually check the real bits, all we see are devices that trigger the check yet work perfectly fine, therefore killing this useless check is the best thing to do. -DaveM ] Reported-by: Frans Pop Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit d9ae62433e46909fc9e7d97ce74202c2851667b8 Author: Frans Pop Date: Tue Jun 23 16:02:58 2009 -0700 ide-cd: Improve "weird block size" error message Currently the error gets repeated too frequently, for example each time HAL polls the device when a disc is present. Avoid that by using printk_once instead of printk. Also join the error and corrective action messages into a single line. Signed-off-by: Frans Pop Acked-by: Borislav Petkov Signed-off-by: David S. Miller commit af054ed0018f0a69f8ea6f7546cbf34385edf13b Author: David S. Miller Date: Tue Jun 23 16:01:06 2009 -0700 ide-cd: Don't warn on bogus block size unless it actually matters. Frans Pop reported that his CDROM drive reports a blocksize of 2352, and this causes new warnings due to commit e8e7b9eb11c34ee18bde8b7011af41938d1ad667 ("ide-cd: fix oops when using growisofs"). What we're trying to do is make sure that "blocklen >> SECTOR_BITS" is something the block layer won't choke on. And for Frans' case "2352 >> SECTOR_BITS" is equal to "2048 >> SECTOR_BITS", and thats "4". So warning in this case gives no real benefit. Reported-by: Frans Pop Tested-by: Frans Pop Signed-off-by: David S. Miller commit ffc36c7610731115c77700dcc53901920361c235 Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 03:43:00 2009 -0700 ide: fix handling of unexpected IRQs vs request_irq() Add ide_host_enable_irqs() helper and use it in ide_host_register() before registering ports. Then remove no longer needed IRQ unmasking from in init_irq(). This should fix the problem with "screaming" shared IRQ on the first port (after request_irq() call while we have the unexpected IRQ pending on the second port) which was uncovered by my rework of the serialized interfaces support. Reported-by: Frans Pop Tested-by: Frans Pop Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit 8b169b5f1f46da8ece1ce7304cda7155fffe3892 Author: Huang Weiyi Date: Wed Jun 24 16:31:50 2009 +1000 drm: remove unused #include 's Remove unused #include ('s) in drivers/gpu/drm/ttm/ttm_bo_util.c drivers/gpu/drm/ttm/ttm_bo_vm.c drivers/gpu/drm/ttm/ttm_tt.c Signed-off-by: Huang Weiyi Signed-off-by: Dave Airlie commit 5b6345be1b41db5e70f90c3559c3b40c8abcde8b Merge: 176f613 b5aa8a0 Author: Dave Airlie Date: Wed Jun 24 16:20:19 2009 +1000 Merge remote branch 'origin/drm-intel-next' of ../drm-intel into drm-fixes commit 176f613e60b63f2d77e6c69f036cfc754f3aaac6 Author: Jerome Glisse Date: Mon Jun 22 18:16:13 2009 +0200 drm/radeon: fix driver initialization order so radeon kms can be builtin TTM need to be initialized before radeon if KMS is enabled otherwise the kernel will crash hard. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit e14cbee401cd00779a5267128371506b22c77bc9 Author: Michel Dänzer Date: Tue Jun 23 12:36:32 2009 +0200 drm: Fix shifts which were miscalculated when converting from bitfields. Looks like I managed to mess up most shifts when converting from bitfields. :( The patch below works on my Thinkpad T500 (as well as on my PowerBook, where the previous change worked as well, maybe out of luck...). I'd appreciate more testing and eyes looking over it though. Signed-off-by: Michel Dänzer Tested-by: Michael Pyne Signed-off-by: Dave Airlie commit b1e3a6d1c4d0ac75ad8289bcfd69efcc9b1bc6e5 Author: Michel Dänzer Date: Tue Jun 23 16:12:54 2009 +0200 drm/radeon: Clear surface registers at initialization time. Some PowerMac firmwares set up a tiling surface at the beginning of VRAM which messes us up otherwise. Signed-off-by: Michel Dänzer Signed-off-by: Dave Airlie commit 696d4df1dbfe0b054e94c1990b49c1727ffc1ff0 Author: Michel Dänzer Date: Tue Jun 23 16:12:53 2009 +0200 drm/radeon: Don't initialize acceleration related fields of struct fb_info. Might lure userspace into trying silly things otherwise. Signed-off-by: Michel Dänzer Signed-off-by: Dave Airlie commit f92e93eb5f4d56d73215f089580d53597bacd468 Author: Jerome Glisse Date: Mon Jun 22 18:15:58 2009 +0200 drm/radeon: fix radeon kms framebuffer device smem.start is a physical address which kernel can remap to access video memory of the fb buffer. We now pin the fb buffer into vram by doing so we are loosing vram but fbdev need to be reworked to allow change in framebuffer address. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit 7262b6e4a4cc18d0f67df145d032c843e4bc382b Author: Hidetoshi Seto Date: Tue Jun 23 12:40:54 2009 +0900 x86, mce: Fix mce resume on 32bit Calling mcheck_init() on resume is required only with CONFIG_X86_OLD_MCE=y. Signed-off-by: Hidetoshi Seto Acked-by: Andi Kleen Signed-off-by: H. Peter Anvin commit 1d469c6c38c9deaa1836d2c1955330944719e4ef Author: Aviv Laufer Date: Tue Jun 23 16:28:36 2009 +0300 backlight: Fix tdo24m crash on kmalloc There is a crash in tdo24m module caused by a call to kmalloc with the second parameter sizeof(flag) instead of flag. Signed-off-by: Aviv Laufer Signed-off-by: Richard Purdie commit a1dd8c617217322614f0465ae347895c4b58e1ab Author: Richard Purdie Date: Mon Jun 22 14:54:13 2009 +0100 leds: Futher document blink_set Futher document blink_set function pointer Signed-off-by: Richard Purdie commit ed88bae6918fa990cbfe47316bd0f790121aaf00 Author: Trent Piepho Date: Tue May 12 15:33:12 2009 -0700 leds: Add options to have GPIO LEDs start on or keep their state There already is a "default-on" trigger but there are problems with it. For one, it's a inefficient way to do it and requires led trigger support to be compiled in. But the real reason is that is produces a glitch on the LED. The GPIO is allocate with the LED *off*, then *later* when the trigger runs it is turned back on. If the LED was already on via the GPIO's reset default or action of the firmware, this produces a glitch where the LED goes from on to off to on. While normally this is fast enough that it wouldn't be noticeable to a human observer, there are still serious problems. One is that there may be something else on the GPIO line, like a hardware alarm or watchdog, that is fast enough to notice the glitch. Another is that the kernel may panic before the LED is turned back on, thus hanging with the LED in the wrong state. This is not just speculation, but actually happened to me with an embedded system that has an LED which should turn off when the kernel finishes booting, which was left in the incorrect state due to a bug in the OF LED binding code. We also let GPIO LEDs get their initial value from whatever the current state of the GPIO line is. On some systems the LEDs are put into some state by the firmware or hardware before Linux boots, and it is desired to have them keep this state which is otherwise unknown to Linux. This requires that the underlying GPIO driver support reading the value of output GPIOs. Some drivers support this and some do not. The platform device binding gains a field in the platform data "default_state" that controls this. There are three constants defined to select from on, off, or keeping the current state. The OpenFirmware binding uses a property named "default-state" that can be set to "on", "off", or "keep". The default if the property isn't present is off. Signed-off-by: Trent Piepho Acked-by: Grant Likely Acked-by: Wolfram Sang Acked-by: Sean MacLennan Signed-off-by: Richard Purdie commit 5054d39e327f76df022163a2ebd02e444c5d65f9 Author: Antonio Ospite Date: Fri Jun 19 13:55:42 2009 +0200 leds: LED driver for National Semiconductor LP3944 Funlight Chip LEDs driver for National Semiconductor LP3944 Funlight Chip http://www.national.com/pf/LP/LP3944.html This helper chip can drive up to 8 leds, with two programmable DIM modes; it could even be used as a gpio expander but this driver assumes it is used as a led controller. The DIM modes are used to set _blink_ patterns for leds, the pattern is specified supplying two parameters: - period: from 0s to 1.6s - duty cycle: percentage of the period the led is on, from 0 to 100 LP3944 can be found on Motorola A910 smartphone, where it drives the rgb leds, the camera flash light and the displays backlights. Signed-off-by: Antonio Ospite Signed-off-by: Richard Purdie commit 07172d2bfa339d6c150d8cdd7c02128177feffbb Author: Antonio Ospite Date: Fri Jun 19 13:53:07 2009 +0200 leds: pca9532 - Indent using tabs, not spaces. Indent using tabs, not spaces. Signed-off-by: Antonio Ospite Acked-by: Riku Voipio Signed-off-by: Richard Purdie commit 34abdf252699ebc549fad54c1db481612f22a826 Author: Richard Purdie Date: Wed Jun 17 13:05:27 2009 +0100 leds: Remove an orphan Kconfig entry Remove an orphan Kconfig entry (LEDS_LP5521) Signed-off-by: Richard Purdie commit 92722b1bb1ebcba767f9c6ee499992ee33367268 Author: Mark Brown Date: Thu Jun 11 14:17:48 2009 +0100 leds: Further document parameters for blink_set() The documentation for the parameters of blink_set() was a bit hard to find so put some where I'd expected to find it. Signed-off-by: Mark Brown Signed-off-by: Richard Purdie commit 2216c6e83ccbc9d34f541621ff23f510cd8a256f Author: Tobias Mueller Date: Wed Jun 10 12:48:52 2009 -0700 leds: alix-leds2 fixed for Award BIOS Add initialisation of GPIO ports for compatibility with boards with Award BIOS (e.g. ALIX.3D3). Signed-off-by: Tobias Mueller Reviewed-by: Constantin Baranov Signed-off-by: Andrew Morton Signed-off-by: Richard Purdie commit 7fd02170e25b3b60fc21cd7b64bf1ed42e6a7cbe Author: Zhenwen Xu Date: Wed Jun 10 12:48:51 2009 -0700 leds: leds-gpio - fix a section mismatch WARNING: drivers/leds/leds-gpio.o(.text+0x153): Section mismatch in reference from the function gpio_led_probe() to the function .devinit.text:create_gpio_led() The function gpio_led_probe() references the function __devinit create_gpio_led(). This is often because gpio_led_probe lacks a __devinit annotation or the annotation of create_gpio_led is wrong. Signed-off-by: Zhenwen Xu Signed-off-by: Andrew Morton Signed-off-by: Richard Purdie commit 8792f7cf4368f9bc337eee65851d8e7abbbf946c Author: Kim Kyuwon Date: Wed Jun 10 12:48:50 2009 -0700 leds: add the sysfs interface into the leds-bd2802 driver for changing wave pattern and led current. Allow the user application to change the wave pattern and led current by 'wave_pattern' and 'rgb_current' sysfs files. Signed-off-by: Kim Kyuwon Signed-off-by: Andrew Morton Signed-off-by: Richard Purdie commit 1b18cf413f63ff6de5ba3e5028e869c21322a4df Author: Kim Kyuwon Date: Wed Jun 10 12:48:50 2009 -0700 leds: change the license information Change the license to 'GPL v2' Signed-off-by: Kim Kyuwon Signed-off-by: Andrew Morton Signed-off-by: Richard Purdie commit b8389018212e8c4e03ede4df5405796100ef4390 Author: Kim Kyuwon Date: Wed Jun 10 12:48:48 2009 -0700 leds: fix led-bd2802 errors while resuming LED_CORE_SUSPENDRESUME flag is not needed in the bd2802 driver, because all works for suspend/resume is done in bd2802_suspend and bd2802_suspend functions. And this patch allows bd2802 to be configured again when it resumes from suspend. Signed-off-by: Kim Kyuwon Signed-off-by: Andrew Morton Signed-off-by: Richard Purdie commit b5aa8a0fc132dd512c33e7c2621d075e3b77a65e Author: Grégoire Henry Date: Tue Jun 23 15:41:02 2009 +0200 drm/i915: initialize fence registers to zero when loading GEM Unitialized fence register could leads to corrupted display. Problem encountered on MacBooks (revision 1 and 2), directly booting from EFI or through BIOS emulation. (bug #21710 at freedestop.org) Signed-off-by: Grégoire Henry Signed-off-by: Eric Anholt commit 66c6b856d8738278a4a6e558d25c90e9950aa112 Author: Anton Vorontsov Date: Fri Jun 19 03:37:52 2009 +0400 powerpc/85xx: Make eSDHC 1-bit only transfer mode default for MPC8569E-MDS For yet unknown reason 4-bit mode doesn't work on MPC8569E-MDS boards, so make 1-bit mode default. When we resolve the issue, u-boot will remove sdhci,1-bit-only property from the device tree, while SDHCI will still work with older u-boots. Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit 6cc7959f385abc77abdeda5462f96407a556265a Author: Huang Weiyi Date: Sat Jun 20 19:16:59 2009 +0800 powerpc/85xx: remove duplicated #include Remove duplicated #include in arch/powerpc/platforms/85xx/xes_mpc85xx.c. Signed-off-by: Huang Weiyi Signed-off-by: Kumar Gala commit b053dc5a722eade28514f2cc922caf7a4baad987 Author: Kumar Gala Date: Fri Jun 19 08:31:05 2009 -0500 powerpc: Refactor device tree binding Split device tree binding out of booting-without-of.txt and put them into their own files per binding. Signed-off-by: Kumar Gala commit cb1ffb6204712b04396ae0a9f3d1bf93cd8df8fb Author: Kumar Gala Date: Fri Jun 19 03:30:42 2009 -0500 powerpc/85xx: Fix issue found by lockdep trace in smp_85xx_kick_cpu lockdep trace found the following: ------------[ cut here ]------------ Badness at c007baf0 [verbose debug info unavailable] NIP: c007baf0 LR: c007bad8 CTR: 00000000 REGS: ef855e00 TRAP: 0700 Tainted: G W (2.6.30-06736-g12a31df-dirty) MSR: 00021000 CR: 24044022 XER: 20000000 TASK = ef858000[1] 'swapper' THREAD: ef854000 CPU: 0 GPR00: 00000000 ef855eb0 ef858000 00000001 000000d0 f1000000 ffbc8000 ffffffff GPR08: 000000d0 c0760000 c0710000 00000007 2fffffff 1004a388 7ffd9400 00000000 GPR16: 00000000 7ffcd100 7ffcd100 7ffcd100 c059cd78 c075c498 c057da7c ffffffff GPR24: ffbc8000 f1000000 00000001 c00bf8b0 c07595d4 000000d0 00021000 000000d0 NIP [c007baf0] lockdep_trace_alloc+0xc0/0xf0 LR [c007bad8] lockdep_trace_alloc+0xa8/0xf0 Call Trace: [ef855eb0] [c007ba60] lockdep_trace_alloc+0x30/0xf0 (unreliable) [ef855ec0] [c00cb3ac] kmem_cache_alloc+0x2c/0xf0 [ef855ee0] [c00bf8b0] __get_vm_area_node+0x80/0x1c0 [ef855f10] [c0017580] __ioremap_caller+0x1d0/0x1e0 [ef855f40] [c057da7c] smp_85xx_kick_cpu+0x64/0x124 [ef855f60] [c0599180] __cpu_up+0xd0/0x1a4 [ef855f80] [c05997c4] cpu_up+0x14c/0x1e0 [ef855fc0] [c05732a0] kernel_init+0x100/0x1c4 [ef855ff0] [c0011524] kernel_thread+0x4c/0x68 Instruction dump: 8009c174 2f800000 409e0048 73c08000 40820040 4818980d 2f830000 419effa0 3d20c076 8009c388 2f800000 409eff90 <0fe00000> 4bffff88 60000000 60000000 We were calling ioremap after we local_irq_restore(flags). A simple reorder fixes the problem. Signed-off-by: Kumar Gala commit fa874618c3155e4f255387987d630a203578b5ae Author: Randy Vinson Date: Fri Jun 19 03:22:08 2009 +0400 powerpc/85xx: Fix FSL RapidIO probing on MDS boards FSL RapidIO won't probe without a proper compatible entry. This patch fixes the issue by adding fsl,rapidio-delta compatible to mpc85xx_ids. Signed-off-by: Randy Vinson Signed-off-by: Anton Vorontsov Signed-off-by: Kumar Gala commit a44a23ed4d144e4fb83d256b32021b732bda4787 Author: Kumar Gala Date: Thu Jun 18 23:28:34 2009 -0500 powerpc/85xx: Stop using ppc_md.init on socrates Match what other 85xx platforms do for of_platform_bus_probe and use machine_device_initcall. This is one small step in killing of ppc_md.init. Signed-off-by: Kumar Gala commit 5e10cf587a7b1aa34099cbfc244e6f04e96dc835 Author: Kumar Gala Date: Tue May 19 00:52:20 2009 -0500 powerpc/cpm1: Remove IMAP_ADDR We no longer user IMAP_ADDR for anything so kill it off. Signed-off-by: Kumar Gala commit f49156ea1bf3bccf45a01351cf3db2b5f6a8597e Author: Timur Tabi Date: Tue May 26 10:21:42 2009 -0500 powerpc/qe: add polling timeout to qe_issue_cmd() The qe_issue_cmd() function (Freescale PowerPC QUICC Engine library) polls on a register until a status bit changes, but does not include a timeout to handle the situation if the bit never changes. Change the code to use the new spin_event_timeout() macro, which simplifies polling on a register without a timeout. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit bfdb4d9f0f611687d71cf6a460efc9e755f4a462 Author: Arun R Bharadwaj Date: Tue Jun 23 10:00:58 2009 +0530 timers: Fix timer_migration interface which accepts any number as input Poornima Nayek reported: | Timer migration interface /proc/sys/kernel/timer_migration in | 2.6.30-git9 accepts any numerical value as input. | | Steps to reproduce: | 1. echo -6666666 > /proc/sys/kernel/timer_migration | 2. cat /proc/sys/kernel/timer_migration | -6666666 | | 1. echo 44444444444444444444444444444444444444444444444444444444444 > /proc/sys/kernel/timer_migration | 2. cat /proc/sys/kernel/timer_migration | -1357789412 | | Expected behavior: Should 'echo: write error: Invalid argument' while | setting any value other then 0 & 1 Restrict valid values to 0 and 1. Reported-by: Poornima Nayak Tested-by: Poornima Nayak Signed-off-by: Arun R Bharadwaj Cc: poornima nayak Cc: Arun Bharadwaj LKML-Reference: <20090623043058.GA3249@linux.vnet.ibm.com> Signed-off-by: Ingo Molnar commit 854c879f5abf309ebd378bea1ee41acf4ddf7194 Author: Pekka J Enberg Date: Mon Jun 22 17:39:41 2009 +0300 x86: Move init_gbpages() to setup_arch() The init_gbpages() function is conditionally called from init_memory_mapping() function. There are two call-sites where this 'after_bootmem' condition can be true: setup_arch() and mem_init() via pci_iommu_alloc(). Therefore, it's safe to move the call to init_gbpages() to setup_arch() as it's always called before mem_init(). This removes an after_bootmem use - paving the way to remove all uses of that state variable. Signed-off-by: Pekka Enberg Acked-by: Yinghai Lu LKML-Reference: Signed-off-by: Ingo Molnar commit 56d21b07d44e0a33ab846f4f08e9e33bd87e5d4b Author: Zhenyu Wang Date: Wed Jun 17 09:43:25 2009 +0800 drm/i915: Fix HDMI regression introduced in new chipset support Remove wrongly added NULL_PACKETS_DURING_VSYNC setting for HDMI. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 1b16de0b070dc6fa29b7a99980eabe3325ee5983 Author: Jesse Barnes Date: Mon Jun 22 11:30:30 2009 -0700 drm/i915: fix LFP data fetch Apparently the proper way to do this is to use the LFP data pointer block to figure out the LFP data block entry size, then use that plus the panel index to calculate an offset into the LFP data block array. Similar fix has already been pushed to the 2D driver to fix fdo bug applied to the VBIOS reader, and things look sane). Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 8ed9a5bc9c9425ef93a1b03b418300a5e18b2361 Author: ling.ma@intel.com Date: Mon Jun 22 22:08:35 2009 +0800 drm/i915: set TV detection mode when tv is already connected We used load_detect_temp flag to determine whether to set tv to the test mode. However if the TV already has a mode set, we still need to set the test mode to determine connection. This results in blinking, but there is no other reliable way to determine TV connection. freedesktop.org bug #22035 Signed-off-by: Ma Ling Signed-off-by: Eric Anholt commit 921809a5831821eaf86e799c4b3d7c666ee352b1 Author: Krzysztof Halasa Date: Fri Jun 19 22:35:09 2009 +0200 drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. Signed-off-by: Krzysztof Halasa Signed-off-by: Eric Anholt commit cfd43c025ddef0b1c723bb9811d2bde52b285710 Author: Krzysztof Halasa Date: Sat Jun 20 00:31:28 2009 +0200 drm/i915: Fix size_t handling in off-by-default debug printfs Signed-off-by: Krzysztof Halasa Signed-off-by: Eric Anholt commit aa0261f230105b86409e29bbe851b09830d93d50 Author: Zhao Yakui Date: Mon Jun 22 15:31:26 2009 +0800 drm/i915: Don't change the blank/sync width when calculating scaled modes Also, use the border instead of border minus one. At the same time, make sure the horizontal border and hsync are even for the LVDS that works in dual-channel mode. So both horizontal border and hsync start are also changed to be even, even for the LVDS in single-channel mode. https://bugs.freedesktop.org/show_bug.cgi?id=20951 Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 3fbe18d65d66054667aaee849bed74674bb50062 Author: Zhao Yakui Date: Mon Jun 22 15:31:25 2009 +0800 drm/i915: Add support for changing LVDS panel fitting using an output property. Previously the driver would always scale the chosen video mode to fill the panel. This adds 1:1 and maintain-aspect-ratio scaling modes. v2: the drm_calloc/drm_free is replaced by kzalloc/kfree based on Eric's suggestion. Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 9e06dd39f2b6d7e35981e0d7aded618686b32ccb Author: Jesse Barnes Date: Mon Jun 22 18:05:12 2009 -0700 drm/i915: correct suspend/resume ordering We need to save register state *after* idling GEM, clearing the ring, and uninstalling the IRQ handler, or we might end up saving bogus fence regs, for one. Our restore ordering should already be correct, since we do GEM, ring and IRQ init after restoring the last register state, which prevents us from clobbering things. I put this together to potentially address a bug, but I haven't heard back if it fixes it yet. However I think it stands on its own, so I'm sending it in. Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit b7f797cb600fa88de04903be4df3c8a6cb1cb35c Merge: 99bd0c0 0017c86 Author: Ingo Molnar Date: Mon Jun 22 10:24:43 2009 +0200 Merge branch 'for-tip' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu into x86/urgent commit be9f1c4f738a715abbd8ea742f3ec60a1ce73f4b Merge: 8c52da5 fb0f8fb Author: Eric Anholt Date: Sun Jun 21 22:14:55 2009 -0700 Merge commit 'keithp/drm-intel-next' into drm-intel-next commit 8c52da503b7e4cf961807f11824e3258ef9f7f1c Author: Eric Anholt Date: Thu Jun 18 20:22:19 2009 -0700 drm/i915: Add missing dependency on Intel AGP support. Users could accidentally enable AGP but not the Intel AGP support, and get a DRM that doesn't probe as a result. Bug #22358. Signed-off-by: Eric Anholt commit 0017c869ddcb73069905d09f9e98e68627466237 Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: ensure percpu lpage doesn't consume too much vmalloc space On extreme configuration (e.g. 32bit 32-way NUMA machine), lpage percpu first chunk allocator can consume too much of vmalloc space. Make it fall back to 4k allocator if the consumption goes over 20%. [ Impact: add sanity check for lpage percpu first chunk allocator ] Signed-off-by: Tejun Heo Reported-by: Jan Beulich Cc: Andi Kleen Cc: Ingo Molnar commit fa8a7094ba1679b4b9b443e0ac9f5e046c79ee8d Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: implement percpu_alloc kernel parameter According to Andi, it isn't clear whether lpage allocator is worth the trouble as there are many processors where PMD TLB is far scarcer than PTE TLB. The advantage or disadvantage probably depends on the actual size of percpu area and specific processor. As performance degradation due to TLB pressure tends to be highly workload specific and subtle, it is difficult to decide which way to go without more data. This patch implements percpu_alloc kernel parameter to allow selecting which first chunk allocator to use to ease debugging and testing. While at it, make sure all the failure paths report why something failed to help determining why certain allocator isn't working. Also, kill the "Great future plan" comment which had already been realized quite some time ago. [ Impact: allow explicit percpu first chunk allocator selection ] Signed-off-by: Tejun Heo Reported-by: Jan Beulich Cc: Andi Kleen Cc: Ingo Molnar commit e59a1bb2fdfb745c685f5b40ffbed126331d3223 Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: fix pageattr handling for lpage percpu allocator and re-enable it lpage allocator aliases a PMD page for each cpu and returns whatever is unused to the page allocator. When the pageattr of the recycled pages are changed, this makes the two aliases point to the overlapping regions with different attributes which isn't allowed and known to cause subtle data corruption in certain cases. This can be handled in simliar manner to the x86_64 highmap alias. pageattr code should detect if the target pages have PMD alias and split the PMD alias and synchronize the attributes. pcpur allocator is updated to keep the allocated PMD pages map sorted in ascending address order and provide pcpu_lpage_remapped() function which binary searches the array to determine whether the given address is aliased and if so to which address. pageattr is updated to use pcpu_lpage_remapped() to detect the PMD alias and split it up as necessary from cpa_process_alias(). Jan Beulich spotted the original problem and incorrect usage of vaddr instead of laddr for lookup. With this, lpage percpu allocator should work correctly. Re-enable it. [ Impact: fix subtle lpage pageattr bug and re-enable lpage ] Signed-off-by: Tejun Heo Reported-by: Jan Beulich Cc: Andi Kleen Cc: Ingo Molnar commit 992f4c1c2c1583cef3296ec4bf5205843a9a5f3d Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: reorganize cpa_process_alias() Reorganize cpa_process_alias() so that new alias condition can be added easily. Jan Beulich spotted problem in the original cleanup thread which incorrectly assumed the two existing conditions were mutially exclusive. [ Impact: code reorganization ] Signed-off-by: Tejun Heo Cc: Jan Beulich Cc: Andi Kleen Cc: Ingo Molnar commit 0ff2587fd54bd6f66bc6914ada4eb77a7e819a5b Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: prepare setup_pcpu_lpage() for pageattr fix Make the following changes in preparation of coming pageattr updates. * Define and use array of struct pcpul_ent instead of array of pointers. The only difference is ->cpu field which is set but unused yet. * Rename variables according to the above change. * Rename local variable vm to pcpul_vm and move it out of the function. [ Impact: no functional difference ] Signed-off-by: Tejun Heo Cc: Jan Beulich Cc: Andi Kleen Cc: Ingo Molnar commit 97c9bf0618cd40b05b4859c1f8a90d8ad97fefb2 Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: rename remap percpu first chunk allocator to lpage The "remap" allocator remaps large pages to build the first chunk; however, the name isn't very good because 4k allocator remaps too and the whole point of the remap allocator is using large page mapping. The allocator will be generalized and exported outside of x86, rename it to lpage before that happens. percpu_alloc kernel parameter is updated to accept both "remap" and "lpage" for lpage allocator. [ Impact: code cleanup, kernel parameter argument updated ] Signed-off-by: Tejun Heo Cc: Ingo Molnar commit c5806df9232d2a7f554b4839b57cac2e664fc256 Author: Tejun Heo Date: Mon Jun 22 11:56:24 2009 +0900 x86: fix duplicate free in setup_pcpu_remap() failure path In the failure path, setup_pcpu_remap() tries to free the area which has already been freed to make holes in the large page. Fix it. [ Impact: fix duplicate free in failure path ] Signed-off-by: Tejun Heo Cc: Ingo Molnar commit 85ae87c1ad8e18a421e7448a99a42ecda183f29f Author: Tejun Heo Date: Mon Jun 22 11:56:23 2009 +0900 percpu: fix too lazy vunmap cache flushing In pcpu_unmap(), flushing virtual cache on vunmap can't be delayed as the page is going to be returned to the page allocator. Only TLB flushing can be put off such that vmalloc code can handle it lazily. Fix it. [ Impact: fix subtle virtual cache flush bug ] Signed-off-by: Tejun Heo Cc: Nick Piggin Cc: Ingo Molnar commit 99bd0c0fc4b04da54cb311953ef9489931c19c63 Author: Andreas Herrmann Date: Fri Jun 19 10:59:09 2009 +0200 x86: Set cpu_llc_id on AMD CPUs This counts when building sched domains in case NUMA information is not available. ( See cpu_coregroup_mask() which uses llc_shared_map which in turn is created based on cpu_llc_id. ) Currently Linux builds domains as follows: (example from a dual socket quad-core system) CPU0 attaching sched-domain: domain 0: span 0-7 level CPU groups: 0 1 2 3 4 5 6 7 ... CPU7 attaching sched-domain: domain 0: span 0-7 level CPU groups: 7 0 1 2 3 4 5 6 Ever since that is borked for multi-core AMD CPU systems. This patch fixes that and now we get a proper: CPU0 attaching sched-domain: domain 0: span 0-3 level MC groups: 0 1 2 3 domain 1: span 0-7 level CPU groups: 0-3 4-7 ... CPU7 attaching sched-domain: domain 0: span 4-7 level MC groups: 7 4 5 6 domain 1: span 0-7 level CPU groups: 4-7 0-3 This allows scheduler to assign tasks to cores on different sockets (i.e. that don't share last level cache) for performance reasons. Signed-off-by: Andreas Herrmann LKML-Reference: <20090619085909.GJ5218@alberich.amd.com> Cc: Signed-off-by: Ingo Molnar commit fb0f8fbf97e8a25074c81c629500d94cafa9e366 Author: Keith Packard Date: Thu Jun 11 22:31:31 2009 -0700 drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O. The display port aux channel clock is taken from the hrawclk value, which is provided to the chip as the FSB frequency (as far as I can determine). The strapping values for that are available in the CLKCFG register, now used to select an appropriate divider to generate a 2MHz clock. In addition, the DisplayPort spec requires that each aux channel I/O be retried 'at least 3 times' in case the sink is idle when the first request comes in. Signed-off-by: Keith Packard commit a5b3da543d4882d57a2f3e05d37ad8e1e1453489 Author: Keith Packard Date: Thu Jun 11 22:30:32 2009 -0700 drm/i915: Clarify error returns from display port aux channel I/O Use distinct error return values for each kind of aux channel I/O failure. Signed-off-by: Keith Packard commit b11248df4c0decb1e473d5025f237be32c0f67bb Author: Keith Packard Date: Thu Jun 11 22:28:56 2009 -0700 drm/i915: Add CLKCFG register definition The CLKCFG register holds information about the GMCH plls and input clock values. Signed-off-by: Keith Packard commit e4b366996bc58a02b9dc35db3ef83f0454553f50 Author: Keith Packard Date: Fri Jun 5 19:22:17 2009 -0700 drm/i915: Split array of DAC limits into separate structures. The array of DAC limits was only ever referenced with #defined constant offsets, and keeping those #define values in sync with the array itself was a nuisance. This will make future changes to the set of DAC limits less error-prone. Signed-off-by: Keith Packard commit c8110e52b753f3d105604df84ac06cd6d1645409 Author: Keith Packard Date: Wed May 6 11:51:10 2009 -0700 drm/i915: Use hotplug callback to retrain DP link When a DP monitor is plugged back in, it needs to be retrained if it was active before. Signed-off-by: Keith Packard commit a4fc5ed69817c73e32571ad7837bb707f9890009 Author: Keith Packard Date: Tue Apr 7 16:16:42 2009 -0700 drm/i915: Add Display Port support Signed-off-by: Keith Packard commit c31c4ba3437d98efa19710e30d694a1cfdf87aa5 Author: Keith Packard Date: Wed May 6 11:48:58 2009 -0700 drm/i915: add per-output hotplug callback for KMS This allows each output to deal with plug/unplug events as needed. Signed-off-by: Keith Packard commit 308cd3a2e505b0d15f2852e8db5d648b60a6313b Author: Keith Packard Date: Sun Jun 14 11:56:18 2009 -0700 drm/i915: Clean up SDVO i2c handling Eliminate the copy of i2c_bus in sdvo_priv. Eliminate local copies of i2c_bus and ddcbus. Eliminate unused settings of slave_addr. Signed-off-by: Keith Packard commit f9c10a9b96a31b4a82a4fa807400c04f00284068 Author: Keith Packard Date: Sat May 30 12:16:25 2009 -0700 drm/i915: Change I2C api to pass around i2c_adapters The existing API passed around intel_i2c_chan pointers, which are dependent on the i2c bit-banging algo. This precluded the driver from using outputs which use a different algo. Switching to the more general i2c_adpater allows the driver to support non bit-banging DDC. This also required moving the slave address into the output private structures. Signed-off-by: Keith Packard commit b99e228d354cc1e7f19fb8b5f1297d493e309186 Author: Keith Packard Date: Wed Jun 10 19:08:16 2009 -0700 drm/i915: check for CONFIG_PNP before using pnp function Signed-off-by: Keith Packard commit 98acd46f356e560c371c0e416d92e8e56be31804 Author: Keith Packard Date: Sun Jun 14 12:31:58 2009 -0700 drm/i915: Apple DMI info has inconsistent SYS_VENDOR information Some machines say 'Apple Inc.' while others say 'Apple Computer, Inc'. Switch the test to just look for 'Apple' instead. Signed-off-by: Keith Packard commit aa93d632c496184e5b779dbcf961bf1c6ececf0b Author: Keith Packard Date: Tue May 5 09:52:46 2009 -0700 drm/i915: Require digital monitor on HDMI ports for detect HDMI and DVI both require DDC/EDID on monitors, so use that to know when a monitor is connected as the hot-plug pins are shared with SDVO and DisplayPort Signed-off-by: Keith Packard commit 361ea1ae5451040cd254eee0b6df64581080b2cc Author: Steve French Date: Mon Jun 15 13:46:12 2009 +0000 [CIFS] Fix build break Signed-off-by: Steve French commit 61f98ffd74254a95871168bd5a6646b4f3002e31 Author: Jeff Layton Date: Thu Jun 11 10:27:32 2009 -0400 cifs: display scopeid in /proc/mounts Move address display into a new function and display the scopeid as part of the address in /proc/mounts. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit b70b92e41d95fd906f05f6e98f61209201495fa7 Merge: 1e68b2b 44b7532 Author: Steve French Date: Sun Jun 14 13:34:46 2009 +0000 Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6 commit 1e68b2b2756fc3488ecbade5ad5f13302b3aaafc Author: Jeff Layton Date: Thu Jun 11 10:27:30 2009 -0400 cifs: add new routine for converting AF_INET and AF_INET6 addrs ...to consolidate some logic used in more than one place. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 340481a36498bf3fe404bcecb2e2d6188e950bff Author: Jeff Layton Date: Thu Jun 11 10:27:29 2009 -0400 cifs: have cifs_show_options show forceuid/forcegid options Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 8616e0fc1e27295316f9821a883f0e9fa6f8200f Author: Jeff Layton Date: Thu Jun 11 10:27:28 2009 -0400 cifs: remove unneeded NULL checks from cifs_show_options show_options is always called with the namespace_sem held. Therefore we don't need to worry about the vfsmount being NULL, or it vanishing while the function is running. By the same token, there's no need to worry about the superblock, tcon, smb or tcp sessions being NULL on entry. Signed-off-by: Jeff Layton Signed-off-by: Steve French