commit 16b71fdf97599f1b1b7f38418ee9922d9f117396 Author: Samuel CUELLA Date: Tue Mar 10 12:56:00 2009 -0700 i810: fix kernel crash fix when struct fb_var_screeninfo is supplied Prevent the kernel from being crashed by a divide-by-zero operation when supplied an incorrectly filled 'struct fb_var_screeninfo' from userland. Previously i810_main.c:1005 (i810_check_params) was using the global 'yres' symbol previously defined at i810_main.c:145 as a module parameter value holder (i810_main.c:2174). If i810fb is compiled-in or if this param doesn't get a default value, this direct usage leads to a divide-by-zero at i810_main.c:1005 (i810_check_params). The patch simply replace the 'yres' global, perhaps undefined symbol usage by a given parameter structure lookup. This problem occurs with directfb, mplayer -vo fbdev, SDL library. It was also reported ( but non solved ) at: http://mail.directfb.org/pipermail/directfb-dev/2008-March/004050.html Signed-off-by: Samuel CUELLA Cc: Jiri Kosina Cc: Krzysztof Helt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9233ecc5c4b5f31921d914b3ef3baa3dc1ae4cc6 Author: Steven King Date: Tue Mar 10 12:55:58 2009 -0700 m68knommu: m528x build fix There isn't any mcfqspi.h in the tree, and without it everything inside the #ifdef CONFIG_SPI is uncompilable. Signed-off-by: Steven King Acked-by: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9333d826813a2722d3babfbfd0f65c21b75127b3 Author: Steven King Date: Tue Mar 10 12:55:57 2009 -0700 m68knommu: m5206e build fix Signed-off-by: Steven King Acked-by: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0612ea00a010e36fde61e7b7649a1105b0ef1080 Author: Paul E. McKenney Date: Tue Mar 10 12:55:57 2009 -0700 rcu: documentation 1Q09 update Update the RCU documentation to call out the need for callers of primitives like call_rcu() and synchronize_rcu() to prevent subsequent RCU readers from hazard. Signed-off-by: Paul E. McKenney Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be50b8342dead8cacf57d4839240106b225d31f5 Author: Dhaval Giani Date: Tue Mar 10 12:55:56 2009 -0700 kernel/user.c: fix a memory leak when freeing up non-init usernamespaces users We were returning early in the sysfs directory cleanup function if the user belonged to a non init usernamespace. Due to this a lot of the cleanup was not done and we were left with a leak. Fix the leak. Reported-by: Serge Hallyn Signed-off-by: Dhaval Giani Acked-by: Serge Hallyn Tested-by: Serge Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d58ab5cf09679d8cb4824e22cae900c0eab5ab31 Author: Atsushi Nemoto Date: Tue Mar 10 12:55:55 2009 -0700 mtd: physmap: fix NULL pointer dereference in error path commit e480814f138cd5d78a8efe397756ba6b6518fdb6 ("[MTD] [MAPS] physmap: fix wrong free and del_mtd_{partition,device}") introduces a NULL pointer dereference in physmap_flash_remove when called from the error path in physmap_flash_probe (if map_probe failed). Call del_mtd_{partition,device} only if info->cmtd was not NULL. Reported-by: pHilipp Zabel Signed-off-by: Atsushi Nemoto Cc: David Woodhouse Cc: "Rafael J. Wysocki" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9c1e8a4ebcc04226cb6f3a1bf1d72f4cafd6b089 Author: Lubomir Rintel Date: Tue Mar 10 12:55:54 2009 -0700 intel-agp: fix a panic with 1M of shared memory, no GTT entries When GTT size is equal to amount of video memory, the amount of GTT entries is computed lower than zero, which is invalid and leads to off-by-one error in intel_i915_configure() Originally posted here: http://bugzilla.kernel.org/show_bug.cgi?id=12539 http://bugzilla.redhat.com/show_bug.cgi?id=445592 Signed-off-by: Lubomir Rintel Cc: Lubomir Rintel Cc: Dave Airlie Reviewed-by: Eric Anholt Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 229cc58ba2b5a83b0b55764c6cb98695c106238a Author: Will Newton Date: Tue Mar 10 12:55:53 2009 -0700 mtd_dataflash: fix probing of AT45DB321C chips. Commit 771999b65f79264acde4b855e5d35696eca5e80c ("[MTD] DataFlash: bugfix, binary page sizes now handled") broke support for probing AT45DB321C flash chips. These chips do not support the "page size" status bit, so if we match the JEDEC id return early. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Will Newton Cc: David Woodhouse Acked-by: David Brownell Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b23336ad98b3666c216617227c7767cd60a22be Author: Paul E. McKenney Date: Tue Mar 10 12:55:52 2009 -0700 idr: make idr_remove_all() do removal -before- free_layer() Fix a problem in the IDR system, where an idr_remove_all() hands a data element to call_rcu() (via free_layer()) before making that data element inaccessible to new readers. This is very bad, and results in readers still having a reference to this data element at the end of the grace period. Tests on large machines that concurrently map and unmap user-space memory within the same multithreaded process result in crashes within about five minutes. Applying this patch increases the kernel's longevity to the three-to-eight-hour range. There appear to be other similar problems in idr_get_empty_slot() and sub_remove(), but I fixed the easy one in idr_remove_all() first. It is therefore no surprise that failures still occur. Located-by: Milton Miller II Tested-by: Milton Miller II Signed-off-by: Paul E. McKenney Cc: Manfred Spraul Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 260219cc48cfb22486e5d0d706c978228a080d63 Author: Alexey Dobriyan Date: Tue Mar 10 12:55:51 2009 -0700 devpts: remove graffiti Very annoying when working with containters. Signed-off-by: Alexey Dobriyan Cc: Alan Cox Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2f68891314b14e7e0ef07b4e77a8ea6e917fc74b Author: Yinghai Lu Date: Tue Mar 10 12:55:50 2009 -0700 x86/agp: tighten check to update amd nb aperture Impact: fix bug to make agp work with dri Jeffrey reported that dri does work with 64bit, but doesn't work with 32bit it turns out NB aperture is 32M, aperture on agp is 128M 64bit is using 64M for vaidation for 64 iommu/gart 32bit is only using 32M..., and will not update the nb aperture. So try to compare nb apterture and agp apterture before leaving not touch nb aperture. Reported-by: Jeffrey Trull Tested-by: Jeffrey Trull Signed-off-by: Yinghai Lu Acked-by: Dave Airlie Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a891ed5adef39aca0b7662c58a2566c7a16237e Author: Alexey Dobriyan Date: Tue Mar 10 12:55:49 2009 -0700 xtensa: fix compilation somewhat * ->put_char changes * HIGHMEM is bogus it seems, there is no kmap_atomic() et al * some includes Signed-off-by: Alexey Dobriyan Acked-by: Chris Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ef1f0291a5d126f678b2f0225843c1ab550559c Author: Darrick J. Wong Date: Tue Mar 10 12:55:48 2009 -0700 lm85: add VRM10 support for adt7468 chip The adt7468 chip supports VRM10 sensors just like the adt7463; add a missing check for it. Signed-off-by: Darrick J. Wong Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c15ade65788b70797c947f7de3e049e6a23f407f Author: Darrick J. Wong Date: Tue Mar 10 12:55:47 2009 -0700 lm85: fix the version check that broke adt7468 probing The verstep check in the lm85 driver fails because the upper nibble of the version register is 0x7, not 0x6, on the adt7468 chip. Probing of all adt7468s was broken by 69fc1feba2d5856ff74dedb6ae9d8c490210825c ("hwmon: (lm85) Rework the device detection"), and this patch fixes that. Also add in a missing i2c_device_id that accidentally got dropped from the original patch. Signed-off-by: Darrick J. Wong Cc: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b943c460ff8556a193b28e2145b513f8b978e869 Author: Randy Dunlap Date: Tue Mar 10 12:55:46 2009 -0700 menu: fix embedded menu snafu The COMPAT_BRK kconfig symbol does not depend on EMBEDDED, but it is in the midst of the EMBEDDED menu symbols, so it mucks up the EMBEDDED menu. Fix by moving it to just after all of the EMBEDDED menu symbols. Also, ANON_INODES has a similar problem, so move it to just above the EMBEDDED menu items since it is used in the EMBEDDED menu. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 475049809977bf3975d78f2d2fd992e19ce2d59e Author: Roel Kluin Date: Tue Mar 10 12:55:45 2009 -0700 mm: get_nid_for_pfn() returns int get_nid_for_pfn() returns int Presumably the (nid < 0) case has never happened. We do know that it is happening on one system while creating a symlink for a memory section so it should also happen on the same system if unregister_mem_sect_under_nodes() were called to remove the same symlink. The test was actually added in response to a problem with an earlier version reported by Yasunori Goto where one or more of the leading pages of a memory section on the 2nd node of one of his systems was uninitialized because I believe they coincided with a memory hole. That earlier version did not ignore uninitialized pages and determined the nid by considering only the 1st page of each memory section. This caused the symlink to the 1st memory section on the 2nd node to be incorrectly created in /sys/devices/system/node/node0 instead of /sys/devices/system/node/node1. The problem was fixed by adding the test to skip over uninitialized pages. I suspect we have not seen any reports of the non-removal of a symlink due to the incorrect declaration of the nid variable in unregister_mem_sect_under_nodes() because - systems where a memory section could have an uninitialized range of leading pages are probably rare. - memory remove is probably not done very frequently on the systems that are capable of demonstrating the problem. - lingering symlink(s) that should have been removed may have simply gone unnoticed. [garyhade@us.ibm.com: wrote changelog] Signed-off-by: Roel Kluin Cc: Gary Hade Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1abaf3326bf2a2fabd6a0b6258e9cb33d734050a Merge: a651d79... d0fc63f... Author: Linus Torvalds Date: Tue Mar 10 12:03:30 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 mmiotrace: fix remove_kmmio_fault_pages() commit a651d7997978bdecfc9891b05b9ee3dccb42f588 Merge: bad948f... 467fc49... Author: Linus Torvalds Date: Tue Mar 10 09:31:19 2009 -0700 Merge branch 'sh/for-2.6.29' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * 'sh/for-2.6.29' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: video: deferred io cleanup fix for sh_mobile_lcdcfb sh: Add media/soc_camera.h to board setup of Renesas AP325RXA commit 467fc4988986865b5dbcc8cc6a86c9b650cb0c6f Author: Magnus Damm Date: Tue Mar 10 06:08:49 2009 +0000 video: deferred io cleanup fix for sh_mobile_lcdcfb Fix deferred io cleanup patch in the sh_mobile_lcdcfb driver. If probe() fails early the sh_mobile_lcdc_stop() function will be called to clean up deferred io. This patch modifies the code to only call fb_deferred_io_cleanup() after deferred io has been initialized. With this patch applied we no longer hit BUG_ON() inside fb_deferred_io_cleanup(). Triggers on a Migo-R with the SYS QVGA panel board unmounted. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit ba087e6f69381de6c91d6634aa0f603a2fdc96a9 Author: Nobuhiro Iwamatsu Date: Fri Mar 6 02:51:14 2009 +0000 sh: Add media/soc_camera.h to board setup of Renesas AP325RXA Other compilation errors were revised by commit of "sh: ap325rxa: Revert ov772x support" (08c2f5b4d76f83213e379b12df504269d21c9e7c) but other compilation errors are given. We revert this commit and need to add new header(media/soc_camera.h). This change revises new compilation error. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Paul Mundt commit bad948ffee7cbf73a7dd3e4b8272985d5c3c8b55 Merge: 99adcd9... 5fd3a17... Author: Linus Torvalds Date: Mon Mar 9 20:50:11 2009 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: md: fix deadlock when stopping arrays commit 99adcd9d67aaf04e28f5ae96df280f236bde4b66 Merge: 2d5516c... 753b7ae... Author: Linus Torvalds Date: Mon Mar 9 13:23:59 2009 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] Add p4-clockmod sysfs-ui removal to feature-removal schedule. Revert "[CPUFREQ] Disable sysfs ui for p4-clockmod." commit 2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205 Author: Oleg Nesterov Date: Mon Mar 2 22:58:45 2009 +0100 copy_process: fix CLONE_PARENT && parent_exec_id interaction CLONE_PARENT can fool the ->self_exec_id/parent_exec_id logic. If we re-use the old parent, we must also re-use ->parent_exec_id to make sure exit_notify() sees the right ->xxx_exec_id's when the CLONE_PARENT'ed task exits. Also, move down the "p->parent_exec_id = p->self_exec_id" thing, to place two different cases together. Signed-off-by: Oleg Nesterov Cc: Roland McGrath Cc: Andrew Morton Cc: David Howells Cc: Serge E. Hallyn Signed-off-by: Linus Torvalds commit 753b7aea8e4611433c13ac157f944d8b4bf42482 Author: Dave Jones Date: Mon Mar 9 15:14:37 2009 -0400 [CPUFREQ] Add p4-clockmod sysfs-ui removal to feature-removal schedule. Signed-off-by: Matthew Garrett Signed-off-by: Dave Jones commit 129f8ae9b1b5be94517da76009ea956e89104ce8 Author: Dave Jones Date: Mon Mar 9 15:07:33 2009 -0400 Revert "[CPUFREQ] Disable sysfs ui for p4-clockmod." This reverts commit e088e4c9cdb618675874becb91b2fd581ee707e6. Removing the sysfs interface for p4-clockmod was flagged as a regression in bug 12826. Course of action: - Find out the remaining causes of overheating, and fix them if possible. ACPI should be doing the right thing automatically. If it isn't, we need to fix that. - mark p4-clockmod ui as deprecated - try again with the removal in six months. It's not really feasible to printk about the deprecation, because it needs to happen at all the sysfs entry points, which means adding a lot of strcmp("p4-clockmod".. calls to the core, which.. bleuch. Signed-off-by: Dave Jones commit df0b4a5080ca668636831b641a6356500fb5c637 Merge: 39a3478... c035002... Author: Linus Torvalds Date: Mon Mar 9 09:15:40 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: (29 commits) p54: fix race condition in memory management cfg80211: test before subtraction on unsigned iwlwifi: fix error flow in iwl*_pci_probe rt2x00 : more devices to rt73usb.c rt2x00 : more devices to rt2500usb.c bonding: Fix device passed into ->ndo_neigh_setup(). vlan: Fix vlan-in-vlan crashes. net: Fix missing dev->neigh_setup in register_netdevice(). tmspci: fix request_irq race pkt_sched: act_police: Fix a rate estimator test. tg3: Fix 5906 link problems SCTP: change sctp_ctl_sock_init() to try IPv4 if IPv6 fails IPv6: add "disable" module parameter support to ipv6.ko sungem: another error printed one too early aoe: error printed 1 too early net pcmcia: worklimit reaches -1 net: more timeouts that reach -1 net: fix tokenring license dm9601: new vendor/product IDs netlink: invert error code in netlink_set_err() ... commit 39a3478c1c0122640b1a0ead0d7cccd0804b1750 Merge: 1c91ffc... 6db6a5f... Author: Linus Torvalds Date: Mon Mar 9 09:14:17 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: lguest: fix for CONFIG_SPARSE_IRQ=y lguest: fix crash 'unhandled trap 13 at ' commit 1c91ffc896cf839a3a0923c0062ff61c930a21e0 Merge: 6d5b5ac... b9447ef... Author: Linus Torvalds Date: Mon Mar 9 09:13:16 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: fix spinlock assertions on UP systems commit b9447ef80bd301b932ac4d85c9622e929de5fd62 Author: Chris Mason Date: Mon Mar 9 11:45:38 2009 -0400 Btrfs: fix spinlock assertions on UP systems btrfs_tree_locked was being used to make sure a given extent_buffer was properly locked in a few places. But, it wasn't correct for UP compiled kernels. This switches it to using assert_spin_locked instead, and renames it to btrfs_assert_tree_locked to better reflect how it was really being used. Signed-off-by: Chris Mason commit 6d5b5acca9e566515ef3f1ed617e7295c4f94345 Author: Heiko Carstens Date: Mon Mar 9 13:31:59 2009 +0100 Fix fixpoint divide exception in acct_update_integrals Frans Pop reported the crash below when running an s390 kernel under Hercules: Kernel BUG at 000738b4 verbose debug info unavailable! fixpoint divide exception: 0009 #1! SMP Modules linked in: nfs lockd nfs_acl sunrpc ctcm fsm tape_34xx cu3088 tape ccwgroup tape_class ext3 jbd mbcache dm_mirror dm_log dm_snapshot dm_mod dasd_eckd_mod dasd_mod CPU: 0 Not tainted 2.6.27.19 #13 Process awk (pid: 2069, task: 0f9ed9b8, ksp: 0f4f7d18) Krnl PSW : 070c1000 800738b4 (acct_update_integrals+0x4c/0x118) R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0 Krnl GPRS: 00000000 000007d0 7fffffff fffff830 00000000 ffffffff 00000002 0f9ed9b8 00000000 00008ca0 00000000 0f9ed9b8 0f9edda4 8007386e 0f4f7ec8 0f4f7e98 Krnl Code: 800738aa: a71807d0 lhi %r1,2000 800738ae: 8c200001 srdl %r2,1 800738b2: 1d21 dr %r2,%r1 >800738b4: 5810d10e l %r1,270(%r13) 800738b8: 1823 lr %r2,%r3 800738ba: 4130f060 la %r3,96(%r15) 800738be: 0de1 basr %r14,%r1 800738c0: 5800f060 l %r0,96(%r15) Call Trace: ( <000000000004fdea>! blocking_notifier_call_chain+0x1e/0x2c) <0000000000038502>! do_exit+0x106/0x7c0 <0000000000038c36>! do_group_exit+0x7a/0xb4 <0000000000038c8e>! SyS_exit_group+0x1e/0x30 <0000000000021c28>! sysc_do_restart+0x12/0x16 <0000000077e7e924>! 0x77e7e924 Reason for this is that cpu time accounting usually only happens from interrupt context, but acct_update_integrals gets also called from process context with interrupts enabled. So in acct_update_integrals we may end up with the following scenario: Between reading tsk->stime/tsk->utime and tsk->acct_timexpd an interrupt happens which updates accouting values. This causes acct_timexpd to be greater than the former stime + utime. The subsequent calculation of dtime = cputime_sub(time, tsk->acct_timexpd); will be negative and the division performed by cputime_to_jiffies(dtime) will generate an exception since the result won't fit into a 32 bit register. In order to fix this just always disable interrupts while accessing any of the accounting values. Reported by: Frans Pop Tested by: Frans Pop Cc: stable@kernel.org Cc: Martin Schwidefsky Signed-off-by: Heiko Carstens Signed-off-by: Linus Torvalds commit 6db6a5f3ae2ca6b874b0fd97ae16fdc9b5cdd6cc Author: Rusty Russell Date: Mon Mar 9 10:06:28 2009 -0600 lguest: fix for CONFIG_SPARSE_IRQ=y Impact: remove lots of lguest boot WARN_ON() when CONFIG_SPARSE_IRQ=y We now need to call irq_to_desc_alloc_cpu() before set_irq_chip_and_handler_name(), but we can't do that from init_IRQ (no kmalloc available). So do it as we use interrupts instead. Also means we only alloc for irqs we use, which was the intent of CONFIG_SPARSE_IRQ anyway. Signed-off-by: Rusty Russell Cc: Ingo Molnar commit cbd88c8e6f5cdb8d4b9af01df825305200240382 Author: Rusty Russell Date: Mon Mar 9 10:06:22 2009 -0600 lguest: fix crash 'unhandled trap 13 at ' Impact: fix lguest boot crash on modern Intel machines The code in early_init_intel does: if (c->x86 > 6 || (c->x86 == 6 && c->x86_model >= 0xd)) { u64 misc_enable; rdmsrl(MSR_IA32_MISC_ENABLE, misc_enable); And that rdmsr faults (not allowed from non-0 PL). We can get around this by mugging the family ID part of the cpuid. 5 seems like a good number. Of course, this is a hack (how very lguest!). We could just indicate that we don't support MSRs, or implement lguest_rdmst. Reported-by: Patrick McHardy Signed-off-by: Rusty Russell Tested-by: Patrick McHardy commit d0fc63f7bd07cb779a06dc1cdd0c5a14e7f5d562 Author: Stuart Bennett Date: Sun Mar 8 20:21:35 2009 +0200 x86 mmiotrace: fix remove_kmmio_fault_pages() Impact: fix race+crash in mmiotrace The list manipulation in remove_kmmio_fault_pages() was broken. If more than one consecutive kmmio_fault_page was re-added during the grace period between unregister_kmmio_probe() and remove_kmmio_fault_pages(), the list manipulation failed to remove pages from the release list. After a second grace period the pages get into rcu_free_kmmio_fault_pages() and raise a BUG_ON() kernel crash. The list manipulation is fixed to properly remove pages from the release list. This bug has been present from the very beginning of mmiotrace in the mainline kernel. It was introduced in 0fd0e3da ("x86: mmiotrace full patch, preview 1"); An urgent fix for Linus. Tested by Stuart (on 32-bit) and Pekka (on amd and intel 64-bit systems, nouveau and nvidia proprietary). Signed-off-by: Stuart Bennett Signed-off-by: Pekka Paalanen LKML-Reference: <20090308202135.34933feb@daedalus.pq.iki.fi> Signed-off-by: Ingo Molnar commit 7a203f3b089be4410fe065dd9927027eade94557 Merge: dbb9be8... cda56ac... Author: Linus Torvalds Date: Sun Mar 8 10:37:57 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: mmc: fix data timeout for SEND_EXT_CSD commit dbb9be8a79802d1d1fd487d54ad48ac0b7fc17df Merge: 05e12a6... 64ca5ab... Author: Linus Torvalds Date: Sun Mar 8 10:30:18 2009 -0700 Merge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rcu: increment quiescent state counter in ksoftirqd() commit 05e12a699e2ec5bd9697754320dc77253a241bdf Merge: cd3c1cd... 73bf1b6... Author: Linus Torvalds Date: Sun Mar 8 10:27:13 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, pebs: correct qualifier passed to ds_write_config() from ds_request_pebs() x86, bts: remove bad warning x86: add Dell XPS710 reboot quirk x86, math-emu: fix init_fpu for task != current x86: EFI: Back efi_ioremap with init_memory_mapping instead of FIX_MAP x86: fix DMI on EFI commit cd3c1cde262b0f068d27d980648892b2843966d4 Merge: 5b61f6a... c9a0c8a... Author: Linus Torvalds Date: Sun Mar 8 10:25:13 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog * git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: [WATCHDOG] orion5x_wdt.c: 'ORION5X_TCLK' undeclared [WATCHDOG] gef_wdt.c: fsl_get_sys_freq() failure not noticed [WATCHDOG] ks8695_wdt.c: 'CLOCK_TICK_RATE' undeclared [WATCHDOG] rc32434_wdt: fix sections [WATCHDOG] rc32434_wdt: fix watchdog driver commit 5b61f6accfd6449150aefe13a7679ec360abcc16 Merge: 1401689... 7ce9d5d... Author: Linus Torvalds Date: Sun Mar 8 10:24:57 2009 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: ext4: fix ext4_free_inode() vs. ext4_claim_inode() race commit 14016899967739585b7450d486681f4c5deec149 Merge: 5dc18f5... f3f704d... Author: Linus Torvalds Date: Sun Mar 8 10:24:39 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (28 commits) Blackfin arch: SPI_MMC is now mainlined MMC_SPI Blackfin arch: disable legacy /proc/scsi/ support by default Blackfin arch: remove duplicated ANOMALY_05000448 ifdef check Blackfin arch: add stubs for anomalies 447 and 448 Blackfin arch: cleanup bfin_sport.h header and export it to userspace Blackfin arch: fix bug - gdb signull case make trunk kernel panic frequently Blackfin arch: remove spurious dash when dcache is off Blackfin arch: mark init_pda as __init as only __init funcs all it Blackfin arch: fix bug - On bf548-ezkit, ethernet fails to work after wakeup from "mem" Blackfin arch: Random read/write errors are a bad thing Blackfin arch: update default kernel config, select KSZ8893M driver for BF518 Blackfin arch: Fix bug - KGDB single step into the middle of a 4 bytes instruction on bf561 after soft bp is hit Blackfin arch: Fix bug - make ksz8893m driver available when bfin_mac is enabled Blackfin arch: make sure people do not set the kernel load address too high Blackfin arch: fix bug - The SPORT_HYS bit is not set for BF561 0.5 Blackfin arch: update anomaly sheets to match latest public info Blackfin arch: Fix BUG - kernel fails to build in pm.c when allow wakeup fromi standby by GPIO Blackfin arch: PM_BFIN_WAKE_GP: update help Blackfin arch: fix bug - kgdb fails to continue after setting breakpoint on bf561-ezkit kernel with smp patch Blackfin arch: Enable Write Back Cache on all Blackfin Boards ... commit 5dc18f51a2c06ddab708184e30b7967fb71c1784 Merge: fd6ec5f... 7cbd487... Author: Linus Torvalds Date: Sun Mar 8 10:23:05 2009 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: dmatest: fix use after free in dmatest_exit ipu_idmac: fix spinlock type iop-adma, mv_xor: fix mem leak on self-test setup failure fsldma: fix off by one in dma_halt I/OAT: fail self-test if callback test reaches timeout I/OAT: update driver version and copyright dates I/OAT: list usage cleanup I/OAT: set tcp_dma_copybreak to 256k for I/OAT ver.3 I/OAT: cancel watchdog before dma remove I/OAT: fail initialization on zero channels detection I/OAT: do not set DCACTRL_CMPL_WRITE_ENABLE for I/OAT ver.3 I/OAT: add verification for proper APICID_TAG_MAP setting by BIOS dmaengine: update kerneldoc commit fd6ec5f3acfe7e94469d83374b83ff183953fa45 Merge: 83d5a32... d42ad15... Author: Linus Torvalds Date: Sun Mar 8 10:22:22 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: ata: add CFA specific identify data words remove stale comment from AT91: initialize Compact Flash on AT91SAM9263 cpu ide: add at91_ide driver ide: allow to wrap interrupt handler ide-iops: fix odd-length ATAPI PIO transfers ide: NULL noise: drivers/ide/ide-*.c ide: expiry() returns int, negative expiry() return values won't be noticed commit 83d5a325107cd0befa2b863e795675bc8ff881d7 Merge: d0cdb07... 968e594... Author: Linus Torvalds Date: Sun Mar 8 10:22:01 2009 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: Don't trust current capacity values in identify words 57-58 libata: make sure port is thawed when skipping resets sata_nv: fix module parameter description ahci: Add the Device IDs for MCP89 and remove IDs of MCP7B to/from ahci.c libata: don't use on-stack sense buffer libata: align ap->sector_buf libata: fix dma_unmap_sg misuse libata: change drive ready wait after hard reset to 5s commit d0cdb070ced5453fd1790d83c32bdc59d8ff9375 Merge: 153d8a1... f4f8056... Author: Linus Torvalds Date: Sun Mar 8 10:21:31 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus * git://git.kernel.org/pub/scm/linux/kernel/git/pkl/squashfs-linus: Squashfs: frag_size should be signed, as it can hold an error result Squashfs: fix documentation typo, Cramfs filesystem limit is 256 MiB Squashfs: Fix oops when reading fsfuzzer corrupted filesystems commit 153d8a122e04d285aaee0ba00af7564182b7b6de Merge: 2a50b25... 211a40c... Author: Linus Torvalds Date: Sun Mar 8 10:21:10 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6: smack: fixes for unlabeled host support commit 2a50b2560ee956808da0b644cb529608dee65274 Merge: ba933be... ab96dde... Author: Linus Torvalds Date: Sun Mar 8 10:14:19 2009 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: Input: serio - fix protocol number for TouchIT213 commit ba933beb11b46b6d90d53b7220858148d8687ab1 Merge: 81d1ab8... c63c580... Author: Linus Torvalds Date: Sun Mar 8 10:13:28 2009 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] fix PCI DMA flag propagation on SN (Altix) with PICs commit 81d1ab82c045fd4d2f3c803147f0a1c6bd2015fc Merge: d3dea1e... 59247ea... Author: Linus Torvalds Date: Sun Mar 8 10:08:57 2009 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block * 'for-linus' of git://git.kernel.dk/linux-2.6-block: block: fix missing bio back/front segment size setting in blk_recount_segments() loop: don't increment p->offset with (size_t) -EINVAL cciss: remove 30 second initial timeout on controller reset Fix kernel NULL pointer dereference in xen-blkfront commit d3dea1e2d5b08964a8d47a29b4f6807a60d40f4c Merge: 4302e5d... c50ff7c... Author: Linus Torvalds Date: Sun Mar 8 10:03:31 2009 -0700 Merge branch 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'fix/hda' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - Fix headphone-detect regression with multiple HP jacks ALSA: hda - Fix typos in slave controls in patch_sigmatel.c commit 4302e5d53b9166d45317e3ddf0a7a9dab3efd43b Author: Ralf Baechle Date: Thu Mar 5 11:45:48 2009 +0100 MIPS: compat: Implement is_compat_task. This is a build fix required after "x86-64: seccomp: fix 32/64 syscall hole" (commit 5b1017404aea6d2e552e991b3fd814d839e9cd67). MIPS doesn't have the issue that was fixed for x86-64 by that patch. This also doesn't solve the N32 issue which is that N32 seccomp processes will be treated as non-compat processes thus only have access to N64 syscalls. Signed-off-by: Ralf Baechle Signed-off-by: Linus Torvalds commit cda56ac29f2d8288d62978272856884d26e0b47b Author: Adrian Hunter Date: Tue Feb 10 16:32:33 2009 +0200 mmc: fix data timeout for SEND_EXT_CSD Commit 0d3e0460f307e84904968aad6cff97bd688583d8 "MMC: CSD and CID timeout values" inadvertently broke the timeout for the MMC command SEND_EXT_CSD. This patch puts it back again. Depending on the characteristics of the controller, this bug may prevent the use of MMC cards. Signed-off-by: Adrian Hunter Signed-off-by: Pierre Ossman commit ab96ddec7213004b632d24dc2cdcd2df5f16f50b Author: Dmitry Torokhov Date: Sat Mar 7 13:39:22 2009 -0800 Input: serio - fix protocol number for TouchIT213 Protocol 0x37 has been reserved for iNexio devices and Sahara was supposed to get 0x38. Reported-by: Claudio Nieder Signed-off-by: Dmitry Torokhov commit c0350024723b4a69e38655816484d934aca8eb30 Author: Christian Lamparter Date: Fri Mar 6 00:53:59 2009 +0100 p54: fix race condition in memory management This patch fixes a number of race conditions in the driver. Up until now, "entry" pointer was initialized before acquiring the right lock. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit bd05f28e1a15ae62994fe309a524695fe26dd834 Author: Roel Kluin Date: Tue Mar 3 22:55:21 2009 +0100 cfg80211: test before subtraction on unsigned freq_diff is unsigned, so test before subtraction Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit c63c58056e268b0d6bd6994b69030c144567990d Author: Jeremy Higdon Date: Wed Mar 4 12:09:46 2009 -0800 [IA64] fix PCI DMA flag propagation on SN (Altix) with PICs We recently discovered a problem with passing of DMA attributes on SN systems with the older PIC chips. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jeremy Higdon Cc: Cc: Jesse Barnes Signed-off-by: Andrew Morton Signed-off-by: Tony Luck commit 73bf1b62f561fc8ecb00e2810efe4fe769f4933e Author: Markus Metzger Date: Thu Mar 5 08:57:21 2009 +0100 x86, pebs: correct qualifier passed to ds_write_config() from ds_request_pebs() ds_write_config() can write the BTS as well as the PEBS part of the DS config. ds_request_pebs() passes the wrong qualifier, which results in the wrong configuration to be written. Reported-by: Stephane Eranian Signed-off-by: Markus Metzger LKML-Reference: <20090305085721.A22550@sedona.ch.intel.com> Signed-off-by: Ingo Molnar commit 9ca0791dcaa666e8e8f4b4ca028b65b4bde9cb28 Author: Markus Metzger Date: Thu Mar 5 08:49:54 2009 +0100 x86, bts: remove bad warning In case a ptraced task is reaped (while the tracer is still attached), ds_exit_thread() is called before ptrace_exit(). The latter will release the bts_tracer and remove the thread's ds_ctx. The former will WARN() if the context is not NULL. Oleg Nesterov submitted patches that move ptrace_exit() before exit_thread() and thus reverse the order of the above calls. Remove the bad warning. I will add it again when Oleg's changes are in. Signed-off-by: Markus Metzger LKML-Reference: <20090305084954.A22000@sedona.ch.intel.com> Signed-off-by: Ingo Molnar commit c50ff7c04225c945b13d410d50fde6ff6c59d7ee Author: Takashi Iwai Date: Fri Mar 6 09:43:58 2009 +0100 ALSA: hda - Fix headphone-detect regression with multiple HP jacks The recent changes over the DAC detection mechanism in patch_sigmatel.c breaks the HP detection on the machines with multiple HP jacks. It's basically because of the workaround to support the multi-channel output. Since the HP detection is more important feature, disable the HP-swap workaroud temporarily. Reference: Novell bnc#482052 https://bugzilla.novell.com/show_bug.cgi?id=482052 Signed-off-by: Takashi Iwai commit 14b97595e0e1f47b6f809e180e5bcd8dcd995690 Author: Takashi Iwai Date: Fri Mar 6 09:42:07 2009 +0100 ALSA: hda - Fix typos in slave controls in patch_sigmatel.c "Headphone Playback ..." appears twice in slave_vols[] and slave_sws[]. They should be "Headphone Playback2 ..." Signed-off-by: Takashi Iwai commit 59247eaea50cc68cc6ce3d3fd3855f3301b65c96 Author: Jens Axboe Date: Fri Mar 6 08:55:24 2009 +0100 block: fix missing bio back/front segment size setting in blk_recount_segments() Commit 1e42807918d17e8c93bf14fbb74be84b141334c1 introduced a bug where we don't get front/back segment sizes in the bio in blk_recount_segments(). Fix this by tracking the back bio as well as the front bio in __blk_recalc_rq_segments(), this also cleans up the interface by getting rid of the segment size pointer passing. Tested-by: Thomas Gleixner Tested-by: Ingo Molnar Signed-off-by: Jens Axboe commit c9a0c8a6845b5efb64841f40b8efb4c387051d46 Author: Wim Van Sebroeck Date: Wed Feb 25 13:33:01 2009 +0100 [WATCHDOG] orion5x_wdt.c: 'ORION5X_TCLK' undeclared orion5x_wdt no longer compiled after the changes in commit ebe35aff883496c07248df82c8576c3b6e84bbbe ("Orion: prepare for runtime-determined timer tick rate"). The tick rate define (ORION5X_TCLK) was removed in favor of a runtime detection. The quick fix is to add the define in the watchdog driver. The fix is not correct for all supported orion5x platforms, but since the supported platforms right now are 133 Mhz and 166 Mhz, it won't be _that_ far off. ;-) A fix that uses the runtime-determined timer tick rate will be applied later. Signed-off-by: Wim Van Sebroeck Cc: Kristof Provost Acked-by: Lennert Buytenhek Cc: Nicolas Pitre Cc: Russell King Cc: Andrew Morton commit 623d563e52d4d4041612e24b33a5610a900dd778 Author: Reinette Chatre Date: Tue Mar 3 11:37:04 2009 -0800 iwlwifi: fix error flow in iwl*_pci_probe Both the agn and 3945 drivers has some problems with dealing with errors in their probe functions. Ensure that a goto will undo only things that was done before the goto was called. Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville commit ef4bb70d876b4ae5787cc43727477d1a36cdc2e8 Author: Xose Vazquez Perez Date: Sat Feb 28 00:34:23 2009 +0100 rt2x00 : more devices to rt73usb.c add more usb_dev to rt73usb.c . IDs 'stolen' from the windows inf file(10/21/2008, 1.03.02.0000) plus some from the Ralink linux driver(2009_0206_RT73_Linux_STA_Drv1.1.0.2.tar.bz2) Signed-off-by: Xose Vazquez Perez Signed-off-by: John W. Linville commit 9eb77ab0762d8cfc4686e1ec5e9a52905f3a5009 Author: Xose Vazquez Perez Date: Sat Feb 28 00:26:09 2009 +0100 rt2x00 : more devices to rt2500usb.c add more usb_dev to rt2500usb.c . IDs 'stolen' from the windows inf file(02/12/2009, 2.01.01.0015). Signed-off-by: Xose Vazquez Perez Signed-off-by: John W. Linville commit f3f704d375fcc92950f688ccb3dd0f650acace92 Author: Michael Hennerich Date: Fri Mar 6 00:27:57 2009 +0800 Blackfin arch: SPI_MMC is now mainlined MMC_SPI Signed-off-by: Mike Frysinger Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 4aad7ec373a559177ee2c488455f6bf8928c030c Author: Mike Frysinger Date: Fri Mar 6 00:27:17 2009 +0800 Blackfin arch: disable legacy /proc/scsi/ support by default Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 357fd373e194ec5bb02fe875a67c0874ab74b5a6 Author: Mike Frysinger Date: Fri Mar 6 00:24:01 2009 +0800 Blackfin arch: remove duplicated ANOMALY_05000448 ifdef check Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d42ad15b759d05a87f22b484af63987eff38ea88 Author: Sergei Shtylyov Date: Thu Mar 5 17:20:55 2009 +0100 ata: add CFA specific identify data words Declare CFA specific identify data words 162 and 163 for future use. Signed-off-by: Sergei Shtylyov Signed-off-by: Jeff Garzik [bart: update patch summary/description] Signed-off-by: Bartlomiej Zolnierkiewicz commit 7dbc3f6ead13cb87d2318443ebd8f19a987149aa Author: Mike Frysinger Date: Fri Mar 6 00:20:49 2009 +0800 Blackfin arch: add stubs for anomalies 447 and 448 Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit ebcad5aaea26da3cb2ca90b7f31a67a027eb60db Author: Bartlomiej Zolnierkiewicz Date: Thu Mar 5 16:10:59 2009 +0100 remove stale comment from HDIO_GET_IDENTITY returns 256 words currently. Noticed by Norman Diamond. Signed-off-by: Bartlomiej Zolnierkiewicz commit e565f206082a725108a75bcf00bbe3db21a56474 Author: Stanislaw Gruszka Date: Thu Mar 5 16:10:58 2009 +0100 AT91: initialize Compact Flash on AT91SAM9263 cpu Signed-off-by: Stanislaw Gruszka Cc: Andrew Victor Acked-by: Sergei Shtylyov Acked-by: Andrew Victor Signed-off-by: Bartlomiej Zolnierkiewicz commit 6e5f1e1115bb041993f9f247036996364b4c84d5 Author: Stanislaw Gruszka Date: Thu Mar 5 16:10:58 2009 +0100 ide: add at91_ide driver This is IDE host driver for AT91 (SAM9, CAP9, AT572D940HF) Static Memory Controller with Compact Flash True IDE Mode logic. Driver have to switch 8/16 bit bus width when accessing Task Tile or Data Register. Moreover some extra things need to be done when setting PIO mode. Only PIO mode is used, hardware have no DMA support. If interrupt line is connected through GPIO extra quirk is needed to cope with fake interrupts. Signed-off-by: Stanislaw Gruszka Cc: Andrew Victor Acked-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 849d7130001ab740a5a4778a561049841fdd77c9 Author: Stanislaw Gruszka Date: Thu Mar 5 16:10:57 2009 +0100 ide: allow to wrap interrupt handler Signed-off-by: Stanislaw Gruszka Cc: Andrew Victor [bart: minor checkpatch.pl / CodingStyle fixups] Signed-off-by: Bartlomiej Zolnierkiewicz commit a509538d4fb4f99cdf0a095213d57cc3b2347615 Author: Sergei Shtylyov Date: Thu Mar 5 16:10:56 2009 +0100 ide-iops: fix odd-length ATAPI PIO transfers Commit 9567b349f7e7dd7e2483db99ee8e4a6fe0caca38 (ide: merge ->atapi_*put_bytes and ->ata_*put_data methods) introduced a regression WRT the odd-length ATAPI PIO transfers -- the final word didn't get written (causing command timeouts). Signed-off-by: Sergei Shtylyov Signed-off-by: Bartlomiej Zolnierkiewicz commit 71bfc7a7c73eaf1f99e309dba60822ba050e3ec5 Author: Hannes Eder Date: Thu Mar 5 16:10:56 2009 +0100 ide: NULL noise: drivers/ide/ide-*.c Fix this sparse warnings: drivers/ide/ide-disk_proc.c:130:11: warning: Using plain integer as NULL pointer drivers/ide/ide-floppy_proc.c:32:11: warning: Using plain integer as NULL pointer drivers/ide/ide-proc.c:234:11: warning: Using plain integer as NULL pointer drivers/ide/ide-tape.c:2141:11: warning: Using plain integer as NULL pointer Signed-off-by: Hannes Eder Cc: trivial@kernel.org Cc: kernel-janitors@vger.kernel.org Cc: Al Viro Signed-off-by: Bartlomiej Zolnierkiewicz commit e0c6dcd8d4257a129fc813ac68f20b77c6ae2a7a Author: Roel Kluin Date: Thu Mar 5 16:10:55 2009 +0100 ide: expiry() returns int, negative expiry() return values won't be noticed bart: It seems like the bug could cause insanely long timeouts for: - ATA_DMA_ERR error in dma_timer_expiry() - commands without ->expiry in tc86c001_timer_expiry() (TC86C001 IDE controller only) Signed-off-by: Roel Kluin Cc: Sergei Shtylyov Cc: Andrew Morton [bart: port it to the current tree] Signed-off-by: Bartlomiej Zolnierkiewicz commit 26952669f01646c3e7d0832c99b310b199fe2b20 Author: Roel Kluin Date: Tue Mar 3 15:10:05 2009 +0100 [WATCHDOG] gef_wdt.c: fsl_get_sys_freq() failure not noticed fsl_get_sys_freq() may return -1 when 'soc' isn't found, but in gef_wdt_probe() 'freq' is unsigned, so the test doesn't catch that. Signed-off-by: Roel Kluin Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit b02c387892fc6b3cc59c78ab2f79413d55f50190 Author: Alexey Dobriyan Date: Thu Feb 12 13:42:41 2009 +0300 [WATCHDOG] ks8695_wdt.c: 'CLOCK_TICK_RATE' undeclared On arm-acs5k_tiny: drivers/watchdog/ks8695_wdt.c:68: error: 'CLOCK_TICK_RATE' undeclared (first use in this function) Signed-off-by: Alexey Dobriyan Signed-off-by: Wim Van Sebroeck Cc: stable commit 968e594afdbc40b4270f9d4032ae8350475749d6 Author: Robert Hancock Date: Mon Feb 16 20:15:08 2009 -0600 libata: Don't trust current capacity values in identify words 57-58 Hanno Böck reported a problem where an old Conner CP30254 240MB hard drive was reported as 1.1TB in capacity by libata: http://lkml.org/lkml/2009/2/13/134 This was caused by libata trusting the drive's reported current capacity in sectors in identify words 57 and 58 if the drive does not support LBA and the current CHS translation values appear valid. Unfortunately it seems older ATA specs were vague about what this field should contain and a number of drives used values with wrong byte order or that were totally bogus. There's no unique information that it conveys and so we can just calculate the number of sectors from the reported current CHS values. While we're at it, clean up this function to use named constants for the identify word values. Signed-off-by: Robert Hancock Signed-off-by: Jeff Garzik commit d6515e6ff4ad3db4bd5ef2dd4e1026a7aca2482e Author: Tejun Heo Date: Wed Mar 4 15:59:30 2009 +0900 libata: make sure port is thawed when skipping resets When SCR access is available and the link is offline, softreset is skipped as it only wastes time and some controllers don't respond very well. However, the skip path forgot to thaw the port, which not only blocks further event notification from the port but also causes repeated EH invocations on the same event on drivers which rely on ->thaw() to clear events if the IRQ is shared with another device or port. This problem has always been there but is uncovered by recent sata_nv nf2/3 change which dropped hardreset support while maintaining SCR access. nf2/3 doesn't clear hotplug event mask from the interrupt handler but relies on ->thaw() to clear them. When the hardreset was there, the reset action was never skipped and the port was always thawed but, with the hardreset gone, ->prereset() determines that there's no need for softreset and both ->softreset() and ->thaw() are skipped. This leads to stuck hotplug event in the IRQ status register triggering hotplug event whenever IRQ is delieverd on the same IRQ. As the controller shares the same IRQ for both ports, this happens on every IO if one port is occpupied and the other isn't. This patch fixes the problem by making sure that the port is thawed on reset-skip path. bko#11615 reports this problem. Signed-off-by: Tejun Heo Cc: Robert Hancock Reported-by: Dan Andresan Reported-by: Arne Woerner Reported-by: Stefan Lippers-Hollmann Signed-off-by: Jeff Garzik commit 55f784c826af2506e417bcc484d7e0e4d27f1977 Author: Brandon Ehle Date: Sun Mar 1 00:02:49 2009 -0800 sata_nv: fix module parameter description Update MODULE_PARM_DESC for ADMA to reflect the fact that the option is disabled by default. Signed-off-by: Brandon Ehle Signed-off-by: Jeff Garzik commit 7adbe46b9289794f8fe629cd78c876169741177f Author: peerchen Date: Fri Feb 27 16:58:41 2009 +0800 ahci: Add the Device IDs for MCP89 and remove IDs of MCP7B to/from ahci.c Added the Device IDs for MCP89 AHCI controller. Removed the IDs of MCP7B because this chipset had been cancelled. Signed-off-by: Peer Chen Signed-off-by: Jeff Garzik commit b53570814692db79c3525523b6e9ec9874416c04 Author: Tejun Heo Date: Mon Mar 2 18:55:16 2009 +0900 libata: don't use on-stack sense buffer sense_buffer is used as DMA target and shouldn't be allocated on stack. Use ap->sector_buf instead. This problem is spotted by Chuck Ebbert. Signed-off-by: Tejun Heo Reported-by: Chuck Ebbert Signed-off-by: Jeff Garzik commit 84bda12af31f930e4200c5244aa111de2485d7b0 Author: Tejun Heo Date: Mon Mar 2 18:53:26 2009 +0900 libata: align ap->sector_buf ap->sector_buf is used as DMA target and should at least be aligned on cacheline. This caused problems on some embedded machines. Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 5825627c9463581fd9e70f8285685889ae5bb9bb Author: FUJITA Tomonori Date: Fri Feb 27 17:35:43 2009 +0900 libata: fix dma_unmap_sg misuse libata passes the returned value of dma_map_sg() to dma_unmap_sg(),which is the misuse of dma_unmap_sg(). DMA-mapping.txt says: To unmap a scatterlist, just call: pci_unmap_sg(pdev, sglist, nents, direction); Again, make sure DMA activity has already finished. PLEASE NOTE: The 'nents' argument to the pci_unmap_sg call must be the _same_ one you passed into the pci_map_sg call, it should _NOT_ be the 'count' value _returned_ from the pci_map_sg call. Signed-off-by: FUJITA Tomonori Acked-by: Bartlomiej Zolnierkiewicz Acked-by: Tejun Heo Signed-off-by: Jeff Garzik commit e7d3ef13d52a126438f687a1a32da65ff926ed57 Author: Stuart Hayes Date: Wed Mar 4 11:59:46 2009 -0800 libata: change drive ready wait after hard reset to 5s This fixes problems during resume with drives that take longer than 1s to be ready. The ATA-6 spec appears to allow 5 seconds for a drive to be ready. On one affected system, this patch changes "PM: resume devices took..." message from 17 seconds to 4 seconds, and gets rid of a lot of ugly timeout/error messages. Without this patch, the libata code moves on after 1s, tries to send a soft reset (which the drive doesn't see because it isn't ready) which also times out, then an IDENTIFY command is sent to the drive which times out, and finally the error handler will try to send another hard reset which will finally get things working. Signed-off-by: Stuart Hayes Signed-off-by: Andrew Morton Signed-off-by: Jeff Garzik commit fb7b75abe58acfa586445e430c29412090ad2058 Author: Alon Bar-Lev Date: Thu Mar 5 19:42:43 2009 +0800 Blackfin arch: cleanup bfin_sport.h header and export it to userspace Signed-off-by: Alon Bar-Lev Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit a3941ec101a5ec54c1e929730afeb196441a171e Author: Roel Kluin Date: Thu Mar 5 08:03:53 2009 +0100 loop: don't increment p->offset with (size_t) -EINVAL Upon a 'transfer error block' size is set to -EINVAL, but this becomes positive since size is unsigned: p->offset still gets incremented. Signed-off-by: Roel Kluin Signed-off-by: Jens Axboe commit 5e18cfd04feca78cc08a6b8b71a60a610de81eaa Author: Jens Axboe Date: Fri Feb 27 08:10:26 2009 +0100 cciss: remove 30 second initial timeout on controller reset Commit 5e4c91c84b194b26cf592779e451f4b5be777cba forgot to remove the initial sleep, get rid of it. Thanks to Randy Dunlap for spotting this error. Signed-off-by: Jens Axboe commit a1a15ac5f9aeee521c048a88fc1aec848e623de7 Author: Kris Shannon Date: Mon Mar 2 19:47:37 2009 +1100 Fix kernel NULL pointer dereference in xen-blkfront When booting Xen Dom0 on a pre-release 3.2.1 hypervisor the system Oopses on a "Unable to handle kernel NULL pointer dereference" in xenwatch. From the backtrace it looks like backend_changed is calling bdget_disk with a NULL pointer. Checking for NULL and returning ENODEV instead allows the kernel to boot. commit 7786ce823b1c9a3de01a63857e3451890cb4e81c Author: Jie Zhang Date: Thu Mar 5 18:50:26 2009 +0800 Blackfin arch: fix bug - gdb signull case make trunk kernel panic frequently Use copy_to_user_page and copy_from_user_page instead of memcpy. copy_to_user_page does cache flush when necessary. Signed-off-by: Jie Zhang Signed-off-by: Bryan Wu commit 27276ba21fe590edc43305f483565aa02010bbbb Author: Mike Frysinger Date: Thu Mar 5 18:47:20 2009 +0800 Blackfin arch: remove spurious dash when dcache is off Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8e2a769414604e016fcb3d0f15a2050b5d0d90c0 Author: Mike Frysinger Date: Thu Mar 5 18:45:07 2009 +0800 Blackfin arch: mark init_pda as __init as only __init funcs all it Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit ba0dade4bbe6bb26b975323726f7214278d5e994 Author: Michael Hennerich Date: Thu Mar 5 18:41:24 2009 +0800 Blackfin arch: fix bug - On bf548-ezkit, ethernet fails to work after wakeup from "mem" Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 00049522425e8390d1815e1579733644ad2bb0c7 Author: Robin Getz Date: Thu Mar 5 18:18:49 2009 +0800 Blackfin arch: Random read/write errors are a bad thing Random read/write errors are a bad thing - so don't let anyone (including the test bench) run on something we know is bad. Signed-off-by: Robin Getz Signed-off-by: Bryan Wu commit 72e2240f181871675d3a979766330c91d48a1673 Author: Patrick McHardy Date: Thu Mar 5 01:57:44 2009 -0800 bonding: Fix device passed into ->ndo_neigh_setup(). Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 5047607f0170b1f797a2fe37bb45310c1e1d5ce0 Author: Graf Yang Date: Thu Mar 5 17:32:41 2009 +0800 Blackfin arch: update default kernel config, select KSZ8893M driver for BF518 Signed-off-by: Graf Yang Signed-off-by: Bryan Wu commit d7ff1a90b2d3d122b896056d63db919617e9b6cd Author: Sonic Zhang Date: Thu Mar 5 18:26:59 2009 +0800 Blackfin arch: Fix bug - KGDB single step into the middle of a 4 bytes instruction on bf561 after soft bp is hit Run IFLUSH twice to avoid loading wrong instruction after invalidating icache and following sequence is met. 1) The one instruction address is cached in the icache. 2) This instruction in SDRAM is changed. 3) IFLASH[P0] is executed only once in lackfin_icache_flush_range(). 4) This instruction is executed again, but not the changed new one. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit c19577e34e641f802ad35fc0204ff68ea16fe7a3 Author: Graf Yang Date: Thu Mar 5 17:35:59 2009 +0800 Blackfin arch: Fix bug - make ksz8893m driver available when bfin_mac is enabled Signed-off-by: Graf Yang Signed-off-by: Bryan Wu commit f7e989ab64f926e34bafea0752431e1fd6a618f3 Author: Mike Frysinger Date: Thu Mar 5 17:33:36 2009 +0800 Blackfin arch: make sure people do not set the kernel load address too high Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 77827a7cf3aa415f8afec6d9d0537dda8de90ef1 Merge: 9d40bbd... 559595a... Author: David S. Miller Date: Wed Mar 4 23:59:54 2009 -0800 Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ commit 9d40bbda599def1e1d155d7f7dca14fe8744bd2b Author: David S. Miller Date: Wed Mar 4 23:46:25 2009 -0800 vlan: Fix vlan-in-vlan crashes. As analyzed by Patrick McHardy, vlan needs to reset it's netdev_ops pointer in it's ->init() function but this leaves the compat method pointers stale. Add a netdev_resync_ops() and call it from the vlan code. Any other driver which changes ->netdev_ops after register_netdevice() will need to call this new function after doing so too. With help from Patrick McHardy. Tested-by: Patrick McHardy Signed-off-by: David S. Miller commit 54acd0efab072cb70e87206329d561b297f93bbb Author: David S. Miller Date: Wed Mar 4 23:01:02 2009 -0800 net: Fix missing dev->neigh_setup in register_netdevice(). Signed-off-by: David S. Miller commit 7acab7a9ca6b0c5b820f083424c57e6ac2031d9d Author: Enrik Berkhan Date: Thu Mar 5 14:42:30 2009 +0800 Blackfin arch: fix bug - The SPORT_HYS bit is not set for BF561 0.5 IMHO the setting should depend on ANOMALY_05000305 which is about the availability of the bit, not ANOMALY_05000265 which only describes the SPORT sensitivity to noise (checked for BF561 only, though). If that's not true for other BF variants, maybe the definition of ANOMALY_05000265 for BF561 should be changed to '(1)' instead. Signed-off-by: Enrik Berkhan Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 87786945fe4b0e60e8f1db62d5ee8a3cec539a67 Author: Meelis Roos Date: Wed Mar 4 04:59:41 2009 +0000 tmspci: fix request_irq race Currently, tmspci tokenring driver crashes on device initialization because it requests its irq before initializing corresponding data structures. Fix this by moving request_irq call to a safer place. Signed-off-by: Meelis Roos Signed-off-by: David S. Miller commit a883bf564ea555447a76682bb2d8d4bc92e23e0e Author: Jarek Poplawski Date: Wed Mar 4 17:38:10 2009 -0800 pkt_sched: act_police: Fix a rate estimator test. A commit c1b56878fb68e9c14070939ea4537ad4db79ffae "tc: policing requires a rate estimator" introduced a test which invalidates previously working configs, based on examples from iproute2: doc/actions/actions-general. This is too rigorous: a rate estimator is needed only when police's "avrate" option is used. Reported-by: Joao Correia Diagnosed-by: John Dykstra Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit f4f8056a862a9950320429dfda708c88b4ce6025 Author: Roel Kluin Date: Thu Mar 5 00:55:31 2009 +0000 Squashfs: frag_size should be signed, as it can hold an error result Signed-off-by: Roel Kluin Signed-off-by: Phillip Lougher commit edf2e2811efa9304ebe14f778d33b764cfd58b7a Author: Phillip Lougher Date: Thu Mar 5 00:40:13 2009 +0000 Squashfs: fix documentation typo, Cramfs filesystem limit is 256 MiB Signed-off-by: Phillip Lougher commit 118e1ef6fabfc023126e6075f6ac0fc729cb5285 Author: Phillip Lougher Date: Thu Mar 5 00:31:12 2009 +0000 Squashfs: Fix oops when reading fsfuzzer corrupted filesystems This fixes a code regression caused by the recent mainlining changes. The recent code changes call zlib_inflate repeatedly, decompressing into separate 4K buffers, this code didn't check for the possibility that zlib_inflate might ask for too many buffers when decompressing corrupted data. Signed-off-by: Phillip Lougher commit 7ce9d5d1f3c8736511daa413c64985a05b2feee3 Author: Eric Sandeen Date: Wed Mar 4 18:38:18 2009 -0500 ext4: fix ext4_free_inode() vs. ext4_claim_inode() race I was seeing fsck errors on inode bitmaps after a 4 thread dbench run on a 4 cpu machine: Inode bitmap differences: -50736 -(50752--50753) etc... I believe that this is because ext4_free_inode() uses atomic bitops, and although ext4_new_inode() *used* to also use atomic bitops for synchronization, commit 393418676a7602e1d7d3f6e560159c65c8cbd50e changed this to use the sb_bgl_lock, so that we could also synchronize against read_inode_bitmap and initialization of uninit inode tables. However, that change left ext4_free_inode using atomic bitops, which I think leaves no synchronization between setting & unsetting bits in the inode table. The below patch fixes it for me, although I wonder if we're getting at all heavy-handed with this spinlock... Signed-off-by: Eric Sandeen Reviewed-by: Aneesh Kumar K.V Signed-off-by: "Theodore Ts'o" commit 9f8ac0b7b063be77f0de7a27fe5e6a0aa2cce58d Author: Matt Carlson Date: Wed Feb 25 14:21:20 2009 +0000 tg3: Fix 5906 link problems Commit 6833c043f9fc03696fde623914c4a0277df2a0bc introduced the phy auto-powerdown capability. While the APD feature only works for 5761 and 5784 asic revisions, the (harmless portion of the) code was applied to all 5705 and newer devices. However, the 5906 phy departs from the usual design. This commit was interfering with the 5906's ability to negotiate link against some switches. This patch corrects the problem. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 7cbd4877e5b167b56a3d6033b926a9f925186e12 Author: Dan Williams Date: Wed Mar 4 16:06:03 2009 -0700 dmatest: fix use after free in dmatest_exit dmatest_cleanup_chanel will free dtc, so grab ->chan before it goes away and use it to do the release. Reported-by: Thierry Reding Signed-off-by: Dan Williams commit c74ef1f867d18171c8617519ee5fe40b02903934 Author: Luotao Fu Date: Thu Feb 26 12:29:20 2009 +0100 ipu_idmac: fix spinlock type fix a probably accidently dropped reference operator while calling spin_unlock_restore to an ipu lock. Signed-off-by: Luotao Fu Cc: Guennadi Liakhovetski Signed-off-by: Andrew Morton Signed-off-by: Dan Williams commit a09b09ae51ace43d28cd9bc1c8bb97986f2b55a6 Author: Roel Kluin Date: Wed Feb 25 13:56:21 2009 +0100 iop-adma, mv_xor: fix mem leak on self-test setup failure iop_adma_zero_sum_self_test has the brackets in the wrong place for the setup failure deallocation path. This error was duplicated in mv_xor_xor_self_test. Signed-off-by: Roel Kluin Signed-off-by: Dan Williams commit 900325a6ce33995688b7a680a34e7698f16f4d72 Author: Dan Williams Date: Mon Mar 2 15:33:46 2009 -0700 fsldma: fix off by one in dma_halt Prevent dev_err from firing even if we successfully detected 'dma-idle' before the full 1ms timeout has elapsed. Acked-by: Roel Kluin Signed-off-by: Dan Williams commit 0c33e1ca3d80647f2e72e44524fd21e79214da20 Author: Dan Williams Date: Mon Mar 2 13:31:35 2009 -0700 I/OAT: fail self-test if callback test reaches timeout If we miss interrupts in the self test then fail registration of this channel as it is unsuitable for use as a public channel. Signed-off-by: Maciej Sosnowski Signed-off-by: Dan Williams commit 211a22ce08dbb27eb1a66df8a4bdae5e96092bc8 Author: Maciej Sosnowski Date: Thu Feb 26 11:05:43 2009 +0100 I/OAT: update driver version and copyright dates Together with new fixes update driver version and extend copyright dates ranges. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit aa2d0b8b97efa1033609ca89b9faa5d3a1232959 Author: Eric Sesterhenn Date: Thu Feb 26 11:05:30 2009 +0100 I/OAT: list usage cleanup Trivial cleanup, list_del(); list_add_tail() is equivalent to list_move_tail(). Semantic patch for coccinelle can be found at www.cccmz.de/~snakebyte/list_move_tail.spatch Signed-off-by: Eric Sesterhenn Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit 5de22343b2303b278ab562e5d166ffe306566d30 Author: Maciej Sosnowski Date: Thu Feb 26 11:05:17 2009 +0100 I/OAT: set tcp_dma_copybreak to 256k for I/OAT ver.3 Upcoming server platforms from Intel based on the Nehalem performance have significantly improved CPU based copy performance. However, the DMA engine can still be effective at higher I/O sizes for TCP traffic and at this time copybreak should be set to 256k for TCP traffic only. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit 2b8a6bf896ef47cc7d84c503079cc7b99789f9fa Author: Maciej Sosnowski Date: Thu Feb 26 11:05:07 2009 +0100 I/OAT: cancel watchdog before dma remove Channel watchdog should be canceled before the rest of dma remove stuff. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit 8b794b141c633083408d0bfb2229b3406d0ebf99 Author: Maciej Sosnowski Date: Thu Feb 26 11:04:54 2009 +0100 I/OAT: fail initialization on zero channels detection On some systems with I/OAT ver.2 when DCA is disabled in BIOS situations have been observed that zero DMA channels are detected instead of four. To avoid kernel panic driver should fail gracefully with appropriate message. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit ea9c717d0148d4194f9bd04ecfa6b59b20fc0a08 Author: Maciej Sosnowski Date: Thu Feb 26 11:04:38 2009 +0100 I/OAT: do not set DCACTRL_CMPL_WRITE_ENABLE for I/OAT ver.3 Flag DCACTRL_CMPL_WRITE_ENABLE is valid only for I/OAT ver.2 so it should not be set for I/OAT ver.3. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit 49bc46360d68156ce82b2b1a12badb80078453a0 Author: Maciej Sosnowski Date: Thu Feb 26 11:04:23 2009 +0100 I/OAT: add verification for proper APICID_TAG_MAP setting by BIOS BIOS versions for systems with I/OAT ver.2 have been found which fail to program APICID_TAG_MAP for DCA. The ioatdma driver should recognize incorrectly set APICID_TAG_MAP and disable DCA in that case. Signed-off-by: Maciej Sosnowski Signed-off-by: Shannon Nelson Acked-by: Jeff Kirsher Signed-off-by: Dan Williams commit 211a40c0870457b29100cffea0180fa5083caf96 Author: etienne Date: Wed Mar 4 07:33:51 2009 +0100 smack: fixes for unlabeled host support The following patch (against 2.6.29rc5) fixes a few issues in the smack/netlabel "unlabeled host support" functionnality that was added in 2.6.29rc. It should go in before -final. 1) smack_host_label disregard a "0.0.0.0/0 @" rule (or other label), preventing 'tagged' tasks to access Internet (many systems drop packets with IP options) 2) netmasks were not handled correctly, they were stored in a way _not equivalent_ to conversion to be32 (it was equivalent for /0, /8, /16, /24, /32 masks but not other masks) 3) smack_netlbladdr prefixes (IP/mask) were not consistent (mask&IP was not done), so there could have been different list entries for the same IP prefix; if those entries had different labels, well ... 4) they were not sorted 1) 2) 3) are bugs, 4) is a more cosmetic issue. The patch : -creates a new helper smk_netlbladdr_insert to insert a smk_netlbladdr, -sorted by netmask length -use the new sorted nature of smack_netlbladdrs list to simplify smack_host_label : the first match _will_ be the more specific -corrects endianness issues in smk_write_netlbladdr & netlbladdr_seq_show Signed-off-by: Acked-by: Casey Schaufler Reviewed-by: Paul Moore Signed-off-by: James Morris commit 64ca5ab913f1594ef316556e65f5eae63ff50cee Author: Eric Dumazet Date: Wed Mar 4 12:11:56 2009 -0800 rcu: increment quiescent state counter in ksoftirqd() If a machine is flooded by network frames, a cpu can loop 100% of its time inside ksoftirqd() without calling schedule(). This can delay RCU grace period to insane values. Adding rcu_qsctr_inc() call in ksoftirqd() solves this problem. Paul: "This regression was a result of the recent change from "schedule()" to "cond_resched()", which got rid of that quiescent state in the common case where a reschedule is not needed". Signed-off-by: Eric Dumazet Reviewed-by: Paul E. McKenney Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar commit dd4124a8a06bca89c077a16437edac010f0bb993 Author: Leann Ogasawara Date: Wed Mar 4 11:53:00 2009 -0800 x86: add Dell XPS710 reboot quirk Dell XPS710 will hang on reboot. This is resolved by adding a quirk to set bios reboot. Signed-off-by: Leann Ogasawara Signed-off-by: Tim Gardner Cc: "manoj.iyer" Cc: LKML-Reference: <1236196380.3231.89.camel@emiko> Signed-off-by: Ingo Molnar commit ab9e18587f4cdb5f3fb3854c732f27a36f98e8f6 Author: Daniel Glöckner Date: Wed Mar 4 19:42:27 2009 +0100 x86, math-emu: fix init_fpu for task != current Impact: fix math-emu related crash while using GDB/ptrace init_fpu() calls finit to initialize a task's xstate, while finit always works on the current task. If we use PTRACE_GETFPREGS on another process and both processes did not already use floating point, we get a null pointer exception in finit. This patch creates a new function finit_task that takes a task_struct parameter. finit becomes a wrapper that simply calls finit_task with current. On the plus side this avoids many calls to get_current which would each resolve to an inline assembler mov instruction. An empty finit_task has been added to i387.h to avoid linker errors in case the compiler still emits the call in init_fpu when CONFIG_MATH_EMULATION is not defined. The declaration of finit in i387.h has been removed as the remaining code using this function gets its prototype from fpu_proto.h. Signed-off-by: Daniel Glöckner Cc: Suresh Siddha Cc: "Pallipadi Venkatesh" Cc: Arjan van de Ven Cc: Bill Metzenthen LKML-Reference: Signed-off-by: Ingo Molnar commit dd39ecf522ba86c70809715af46e6557f6491131 Author: Huang Ying Date: Wed Mar 4 10:58:33 2009 +0800 x86: EFI: Back efi_ioremap with init_memory_mapping instead of FIX_MAP Impact: Fix boot failure on EFI system with large runtime memory range Brian Maly reported that some EFI system with large runtime memory range can not boot. Because the FIX_MAP used to map runtime memory range is smaller than run time memory range. This patch fixes this issue by re-implement efi_ioremap() with init_memory_mapping(). Reported-and-tested-by: Brian Maly Signed-off-by: Huang Ying Cc: Brian Maly Cc: Yinghai Lu LKML-Reference: <1236135513.6204.306.camel@yhuang-dev.sh.intel.com> Signed-off-by: Ingo Molnar commit ff0c0874905fb312ca1491bbdac2653b0b48c20b Author: Brian Maly Date: Tue Mar 3 21:55:31 2009 -0500 x86: fix DMI on EFI Impact: reactivate DMI quirks on EFI hardware DMI tables are loaded by EFI, so the dmi calls must happen after efi_init() and not before. Currently Apple hardware uses DMI to determine the framebuffer mappings for efifb. Without DMI working you also have no video on MacBook Pro. This patch resolves the DMI issue for EFI hardware (DMI is now properly detected at boot), and additionally efifb now loads on Apple hardware (i.e. video works). Signed-off-by: Brian Maly Acked-by: Yinghai Lu Cc: ying.huang@intel.com LKML-Reference: <49ADEDA3.1030406@redhat.com> Signed-off-by: Ingo Molnar arch/x86/kernel/setup.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 559595a985e106d2fa9f0c79b7f5805453fed593 Merge: 5ad8b7d... 368a121... Author: Linus Torvalds Date: Wed Mar 4 07:49:07 2009 -0800 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: powerpc: Run sbc610 USB fixup code only on the appropriate platform. commit 5ad8b7d12605e88d1e532061699102797fdefe08 Author: Helge Bahmann Date: Wed Mar 4 21:49:14 2009 +1000 drm: fix double lock typo [airlied: you shall not retype patches from other trees half asleep] Signed-of-by: Dave Airlie commit fb13d9f9e450bceafd88ac8a98f7a98e8096a5fe Author: Brian Haley Date: Wed Mar 4 03:20:26 2009 -0800 SCTP: change sctp_ctl_sock_init() to try IPv4 if IPv6 fails Change sctp_ctl_sock_init() to try IPv4 if IPv6 socket registration fails. Required if the IPv6 module is loaded with "disable=1", else SCTP will fail to load. Signed-off-by: Brian Haley Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit fe7ca2e1e847b65c12d245cbf402af89da96888a Author: Brian Haley Date: Wed Mar 4 03:18:11 2009 -0800 IPv6: add "disable" module parameter support to ipv6.ko Add "disable" module parameter support to ipv6.ko by specifying "disable=1" on module load. We just do the minimum of initializing inetsw6[] so calls from other modules to inet6_register_protosw() won't OOPs, then bail out. No IPv6 addresses or sockets can be created as a result, and a reboot is required to enable IPv6. Signed-off-by: Brian Haley Signed-off-by: David S. Miller commit c18e99cfba746ab0ad8d45e1f351ed990947c58c Author: Mike Frysinger Date: Wed Mar 4 17:36:49 2009 +0800 Blackfin arch: update anomaly sheets to match latest public info Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit ff19fed4fe54f2f1dd439ac02969333ea9a9b4ff Author: Michael Hennerich Date: Wed Mar 4 17:35:51 2009 +0800 Blackfin arch: Fix BUG - kernel fails to build in pm.c when allow wakeup fromi standby by GPIO This feature is not available on BF54x. Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 199862892e83d04a294eebad45adc40c658b8630 Author: Michael Hennerich Date: Thu Mar 5 16:45:55 2009 +0800 Blackfin arch: PM_BFIN_WAKE_GP: update help Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 0bf3d933085509916335480121761a1b225e6c23 Author: Sonic Zhang Date: Thu Mar 5 16:44:53 2009 +0800 Blackfin arch: fix bug - kgdb fails to continue after setting breakpoint on bf561-ezkit kernel with smp patch Free spinlock before call IPI handlers. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu Header from folded patch 'blackfin_arch__fix_bug_-_kgdb_fails_to_continue_after_setting_breakpoint_on_bf561-ezkit_kernel_with_smp_patch-1': Blackfin arch: fix bug - kgdb fails to continue after setting breakpoint on bf561-ezkit kernel with smp patch Don't test l1 code in SMP kernel. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 4a8fd2cfdad4d043a1fadba2f3f340945d966825 Author: Roel Kluin Date: Wed Mar 4 00:08:39 2009 -0800 sungem: another error printed one too early Another error was printed one too early. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit 948731115774c2e5ff7409360f35389459502211 Author: Roel Kluin Date: Wed Mar 4 00:07:57 2009 -0800 aoe: error printed 1 too early with while (i-- > 0); i reaches -1 after the loop, so the test below is printed one too early: 0 still means success. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit b9bdcd9bd78d253dcc8e13c29f0acd67e080e7c1 Author: Roel Kluin Date: Wed Mar 4 00:05:56 2009 -0800 net pcmcia: worklimit reaches -1 with while (--worklimit >= 0); worklimit reaches -1 after the loop. In 3c589_cs.c this caused a warning not to be printed. In 3c574_cs.c contrastingly, el3_rx() treats worklimit differently: static int el3_rx(struct net_device *dev, int worklimit) { while (--worklimit >= 0) { ... } return worklimit; } el3_rx() is only called by function el3_interrupt(): twice: static irqreturn_t el3_interrupt(int irq, void *dev_id) { int work_budget = max_interrupt_work; while(...) { if (...) work_budget = el3_rx(dev, work_budget); if (...) work_budget = el3_rx(dev, work_budget); if (--work_budget < 0) { ... break; } } } The error path can occur 2 too early. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit 858b9ced6e73a0f087294c398a1ae70a7eeed94f Author: Roel Kluin Date: Wed Mar 4 00:11:42 2009 -0800 net: more timeouts that reach -1 with while (timeout-- > 0); timeout reaches -1 after the loop, so the tests below are off by one. also don't do an '< 0' test on an unsigned. Signed-off-by: Roel Kluin Signed-off-by: David S. Miller commit 5fd3a17ed456637a224cf4ca82b9ad9d005bc8d4 Author: Dan Williams Date: Wed Mar 4 00:57:25 2009 -0700 md: fix deadlock when stopping arrays Resolve a deadlock when stopping redundant arrays, i.e. ones that require a call to sysfs_remove_group when shutdown. The deadlock is summarized below: Thread1 Thread2 ------- ------- read sysfs attribute stop array take mddev lock sysfs_remove_group sysfs_get_active wait for mddev lock wait for active Sysrq-w: -------- mdmon S 00000017 2212 4163 1 f1982ea8 00000046 2dcf6b85 00000017 c0b23100 f2f83ed0 c0b23100 f2f8413c c0b23100 c0b23100 c0b1fb98 f2f8413c 00000000 f2f8413c c0b23100 f2291ecc 00000002 c0b23100 00000000 00000017 f2f83ed0 f1982eac 00000046 c044d9dd Call Trace: [] ? debug_mutex_add_waiter+0x1d/0x58 [] __mutex_lock_common+0x1d9/0x338 [] ? __mutex_lock_common+0x1d9/0x338 [] mutex_lock_interruptible_nested+0x33/0x3a [] ? mddev_lock+0x14/0x16 [] mddev_lock+0x14/0x16 [] md_attr_show+0x2a/0x49 [] sysfs_read_file+0x93/0xf9 mdadm D 00000017 2812 4177 1 f0401d78 00000046 430456f8 00000017 f0401d58 f0401d20 c0b23100 f2da2c4c c0b23100 c0b23100 c0b1fb98 f2da2c4c 0a10fc36 00000000 c0b23100 f0401d70 00000003 c0b23100 00000000 00000017 f2da29e0 00000001 00000002 00000000 Call Trace: [] schedule_timeout+0x1b/0x95 [] ? schedule_timeout+0x1b/0x95 [] ? wait_for_common+0x34/0xdc [] ? trace_hardirqs_on_caller+0x18/0x145 [] ? trace_hardirqs_on+0xb/0xd [] wait_for_common+0xa0/0xdc [] ? default_wake_function+0x0/0x12 [] wait_for_completion+0x17/0x19 [] sysfs_addrm_finish+0x19f/0x1d1 [] sysfs_hash_and_remove+0x42/0x55 [] sysfs_remove_group+0x57/0x86 [] do_md_stop+0x13a/0x499 This has been there for a while, but is easier to trigger now that mdmon is closely watching sysfs. Cc: Reported-by: Jacek Danecki Signed-off-by: Dan Williams commit 4222474519ff5b31a526dfa1da7aa4b0e38bef5c Author: Meelis Roos Date: Tue Mar 3 23:48:50 2009 -0800 net: fix tokenring license Currently, modular tokenring ("tr") lacks a license and fails to load: tr: module license 'unspecified' taints kernel. tr: Unknown symbol proc_net_fops_create Beacuse of this, no tokenring driver can load if it depends on modular tr. Fix this by adding GPL module license as it is in the kernel. With this fix, tr module loads fine and tms380 driver also loads. Well, it does'nt work but that's a different bug. Signed-off-by: Meelis Roos Signed-off-by: David S. Miller commit a1a69c8db7f988f903349442a7538d21b56c38e9 Author: Peter Korsgaard Date: Tue Mar 3 23:48:16 2009 -0800 dm9601: new vendor/product IDs Add vendor/product IDs for new no name dm9601 compatible usb ethernet adaptors. Reported-by: Eric Lauriault Signed-off-by: Peter Korsgaard Signed-off-by: David S. Miller commit 4843b93c96ae5043c6279c4ec6fcd8ee3866ff5b Author: Pablo Neira Ayuso Date: Tue Mar 3 23:37:30 2009 -0800 netlink: invert error code in netlink_set_err() The callers of netlink_set_err() currently pass a negative value as parameter for the error code. However, sk->sk_err wants a positive error value. Without this patch, skb_recv_datagram() called by netlink_recvmsg() may return a positive value to report an error. Another choice to fix this is to change callers to pass a positive error value, but this seems a bit inconsistent and error prone to me. Indeed, the callers of netlink_set_err() assumed that the (usual) negative value for error codes was fine before this patch :). This patch also includes some documentation in docbook format for netlink_set_err() to avoid this sort of confusion. Signed-off-by: Pablo Neira Ayuso Signed-off-by: David S. Miller commit 368a12117dd8abf6eaefa37c21ac313b517128b9 Author: Tony Breeds Date: Tue Mar 3 17:59:30 2009 +0000 powerpc: Run sbc610 USB fixup code only on the appropriate platform. commit a969e76a7101bf5f3d369563df1ca1253dd6131b (powerpc: Correct USB support for GE Fanuc SBC610) introduced a fixup for NEC usb controllers. This fixup should only run on GEF SBC610 boards. Fixes Fedora bug #486511. (https://bugzilla.redhat.com/show_bug.cgi?id=486511) Signed-off-by: Tony Breeds Signed-off-by: Benjamin Herrenschmidt commit 8bf6774d7fe44ada94bb8df50f089c6e60bdfb26 Author: Michael Hennerich Date: Wed Mar 4 11:34:10 2009 +0800 Blackfin arch: Enable Write Back Cache on all Blackfin Boards Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 9bd50df6aa9bdd583793a16b0b9379dfd78c079e Author: Philippe Gerum Date: Wed Mar 4 16:52:38 2009 +0800 Blackfin arch: Update adeos blackfin arch patch to 1.9-00 Signed-off-by: Philippe Gerum Signed-off-by: Bryan Wu commit 97d4b35fb44cd5a80bc10952e2b1de5d3a14117b Author: Tom Parker Date: Tue Mar 3 17:59:39 2009 +0800 Blackfin arch: fix bug - Error if one serial has hardware flow control and the other doesn't I have a system where UART0 is configured with hardware flow control, but UART1 doesn't have it enabled. Attempting to access UART1 in this configuration results in the following error in dmesg: <3>bfin-gpio: GPIO 0 is already reserved as Peripheral by bfin-uart ! <5>Stack from 0082bc7c: <5> 0082bc88 00404dd6 00000003 00000000 0054051e 004079da 0082bcb4 00000000 <5> 00000003 00000000 0052686c 0113f2a0 005fa3f0 00000032 20515249 00003035 <5> 00427228 00526e50 0113f2e0 005fa3f0 00000032 0113f2e0 0054b748 0000ffff <5> 22222222 22222222 004e1628 00427304 00000000 00000032 00000023 0054b748 <5> 00487a94 0054b7e8 0054b748 0000000b 00487fb8 0054b748 0054b748 00000001 <5> 0000000a 005fa3f0 009d4fe8 0101e3c0 0054b748 005fa3f0 0050b134 0054b748 <5> <5>Call Trace: <4>[<00485c16>] _uart_startup+0x56/0x178 <4>[<004865c8>] _uart_open+0x40/0x3e0 <4>[<0048661c>] _uart_open+0x94/0x3e0 <4>[<0047f1ce>] _init_dev+0x1fa/0x450 <4>[<004e1628>] ___mutex_unlock_slowpath+0x30/0xe8 <4>[<004815da>] _tty_open+0xf6/0x21c <4>[<0043dab0>] ___path_lookup_intent_open+0x34/0x7c <4>[<004375e4>] _chrdev_open+0x7c/0x134 <4>[<0043dc2c>] _open_namei+0x60/0x568 <4>[<00433fa2>] ___dentry_open+0x9e/0x188 <4>[<00437568>] _chrdev_open+0x0/0x134 <4>[<0043410c>] _nameidata_to_filp+0x30/0x3c <4>[<00434152>] _do_filp_open+0x3a/0x44 <4>[<00408826>] _task_running_tick+0x102/0x278 <4>[<0043418e>] _do_sys_open+0x32/0xac <4>[<0043ede4>] _sys_ioctl+0x28/0x50 <4>[<0043edbc>] _sys_ioctl+0x0/0x50 <4>[<00434224>] _sys_open+0x18/0x20 <4>[<0043420c>] _sys_open+0x0/0x20 <4>[<00418174>] _sys_setuid+0x0/0xc8 This is because the #ifdef's in bfin_serial_5xx.h are messed up. More specifically, they add/remove the uart_{rts,cts}_pin fields in bfin_serial_resources based on whether the particular port has rts/cts enabled, as opposed to when either port has it enabled. This patch fixed this. Signed-off-by: Tom Parker Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit 17edde520927070a6bf14a6a75027c0b843443e5 Author: Eric W. Biederman Date: Sun Feb 22 00:11:09 2009 -0800 netns: Remove net_alive It turns out that net_alive is unnecessary, and the original problem that led to it being added was simply that the icmp code thought it was a network device and wound up being unable to handle packets while there were still packets in the network namespace. Now that icmp and tcp have been fixed to properly register themselves this problem is no longer present and we have a stronger guarantee that packets will not arrive in a network namespace then that provided by net_alive in netif_receive_skb. So remove net_alive allowing packet reception run a little faster. Additionally document the strong reason why network namespace cleanup is safe so that if something happens again someone else will have a chance of figuring it out. Signed-off-by: Eric W. Biederman Signed-off-by: David S. Miller commit 2f20d2e667ab1ca44cde5fb361386dff5bb6081d Author: Eric W. Biederman Date: Sun Feb 22 00:10:18 2009 -0800 tcp: Like icmp use register_pernet_subsys To remove the possibility of packets flying around when network devices are being cleaned up use reisger_pernet_subsys instead of register_pernet_device. Signed-off-by: Eric W. Biederman Acked-by: Denis V. Lunev Signed-off-by: David S. Miller commit 6eb0777228f31932fc941eafe8b08848466630a1 Author: Eric W. Biederman Date: Sun Feb 22 00:09:14 2009 -0800 netns: Fix icmp shutdown. Recently I had a kernel panic in icmp_send during a network namespace cleanup. There were packets in the arp queue that failed to be sent and we attempted to generate an ICMP host unreachable message, but failed because icmp_sk_exit had already been called. The network devices are removed from a network namespace and their arp queues are flushed before we do attempt to shutdown subsystems so this error should have been impossible. It turns out icmp_init is using register_pernet_device instead of register_pernet_subsys. Which resulted in icmp being shut down while we still had the possibility of packets in flight, making a nasty NULL pointer deference in interrupt context possible. Changing this to register_pernet_subsys fixes the problem in my testing. Signed-off-by: Eric W. Biederman Acked-by: Denis V. Lunev Signed-off-by: David S. Miller commit 176c39af29bc4edaf37f663553eeaacd47b5bc9c Author: Daniel Lezcano Date: Tue Mar 3 01:06:45 2009 -0800 netns: fix addrconf_ifdown kernel panic When a network namespace is destroyed the network interfaces are all unregistered, making addrconf_ifdown called by the netdevice notifier. In the other hand, the addrconf exit method does a loop on the network devices and does addrconf_ifdown on each of them. But the ordering of the netns subsystem is not right because it uses the register_pernet_device instead of register_pernet_subsys. If we handle the loopback as any network device, we can safely use register_pernet_subsys. But if we use register_pernet_subsys, the addrconf exit method will do exactly what was already done with the unregistering of the network devices. So in definitive, this code is pointless. I removed the netns addrconf exit method and moved the code to the addrconf cleanup function. Signed-off-by: Daniel Lezcano Signed-off-by: David S. Miller commit ee554be9ddcb666445b6765d8b5cdbfe80a1e9cf Author: Mike Frysinger Date: Tue Mar 3 16:52:55 2009 +0800 Blackfin arch: fix compile failure when missing the anomaly definition make sure ANOMALY_05000278/ANOMALY_05000380 is defined for all parts Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit b325fddb7f869e6c95a88dc6573220f162e5b89f Author: Stephen Hemminger Date: Thu Feb 26 06:55:31 2009 +0000 ipv6: Fix sysctl unregistration deadlock Signed-off-by: David S. Miller commit 5a5990d3090b03745a9548a6f5edef02095675cf Author: Stephen Hemminger Date: Thu Feb 26 06:49:24 2009 +0000 net: Avoid race between network down and sysfs Signed-off-by: Stephen Hemminger Acked-by: "Eric W. Biederman" Signed-off-by: David S. Miller commit 07555c9880da3e2e96e5eae00a03b44cc076deaf Author: Russell King Date: Mon Mar 2 22:29:37 2009 -0800 OMAP: enable smc911x support for LDP platform The following patch enables SMC911x support to work on the OMAP LDP board. Although the SMC911x driver will eventually be obsoleted, the smsc911x patches are rather invasive for the -rc kernels. Rather than risk destablising smsc911x, this simpler patch is preferred to allow the network interface to work. Signed-off-by: Russell King Acked-by: Tony Lindgren Signed-off-by: David S. Miller commit 3df2678737974accf437dad11e584c1871a3ede3 Author: Wei Yongjun Date: Mon Mar 2 06:46:51 2009 +0000 sctp: fix kernel panic with ERROR chunk containing too many error causes If ERROR chunk is received with too many error causes in ESTABLISHED state, the kernel get panic. This is because sctp limit the max length of cmds to 14, but while ERROR chunk is received, one error cause will add around 2 cmds by sctp_add_cmd_sf(). So many error causes will fill the limit of cmds and panic. This patch fixed the problem. This bug can be test by SCTP Conformance Test Suite . Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit d1dd524785e30cf3d64d395d829b207376acb0aa Author: Vlad Yasevich Date: Mon Mar 2 06:46:50 2009 +0000 sctp: fix crash during module unload An extra list_del() during the module load failure and unload resulted in a crash with a list corruption. Now sctp can be unloaded again. Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit e84dcaa18b2785d8ab20a7cb25612d89feb89fa7 Author: Bernd Schmidt Date: Mon Mar 2 18:37:48 2009 +0800 Blackfin arch: fix bug - jump_to_zero test case failed on noMPU kernel The nompu code is now derived from the mpu code, and had the same problem - no null pointer detection on ICPLBs. Signed-off-by: Bernd Schmidt Cc: Mike Frysinger Signed-off-by: Bryan Wu commit 34d464f8aa3e762ec812a131bfd53ccb4f886f69 Author: Mike Frysinger Date: Mon Mar 2 18:14:47 2009 +0800 Blackfin arch: use common KGDB_TESTS rather than our own KGDB_TESTCASE Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 0f29456a21ae55c43b4e2a64611f778b1fbe4bdf Author: Michael Hennerich Date: Mon Mar 2 18:06:13 2009 +0800 Blackfin arch: Make IRQ_EPPIx_ERROR naming consistent Signed-off-by: Michael Hennerich Signed-off-by: Bryan Wu commit 28e4cf22a3707d05eb697b9b8ae6a4ed39c99b45 Author: Sonic Zhang Date: Mon Mar 2 18:04:24 2009 +0800 Blackfin arch: Disable NAND option by default Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu commit a572e217c6f09fb02853d3196458b8bf30a9a321 Author: Mike Frysinger Date: Mon Mar 2 17:22:36 2009 +0800 Blackfin arch: drop untested and useless "generic" board file Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit d9a8798c4bab5ccd40e45e011f668099cfb3eb83 Author: Phil Sutter Date: Sun Feb 8 16:44:42 2009 +0100 [WATCHDOG] rc32434_wdt: fix sections Fix init and exit sections. Signed-off-by: Phil Sutter Signed-off-by: Wim Van Sebroeck Cc: stable commit 0af98d37e85e6958eb84987b1f60da3b54008317 Author: Phil Sutter Date: Sun Feb 8 16:44:42 2009 +0100 [WATCHDOG] rc32434_wdt: fix watchdog driver The existing driver code wasn't working. Neither the timeout was set correctly, nor system reset was being triggered, as the driver seemed to keep the WDT alive himself. There was also some unnecessary code. Signed-off-by: Phil Sutter Signed-off-by: Wim Van Sebroeck Cc: stable commit 1d93e52eb48df986a3c4d5ad8a520bf1f6837367 Author: Johannes Weiner Date: Wed Feb 11 08:47:19 2009 -0700 dmaengine: update kerneldoc Some of the kerneldoc comments in the dmaengine header describe already removed structure members. Remove them. Also add a short description for dma_device->device_is_tx_complete. Signed-off-by: Johannes Weiner Signed-off-by: Dan Williams