commit ac07860264bd2b18834d3fa3be47032115524cea Author: Jesper Juhl Date: Wed Aug 8 16:31:30 2007 -0700 SLUB: Fix format specifier in Documentation/vm/slabinfo.c There's a little problem in Documentation/vm/slabinfo.c The code is using "%d" in a printf() call to print an 'unsigned long'. This patch corrects it to use "%lu" instead. Signed-off-by: Jesper Juhl Signed-off-by: Christoph Lameter commit 1ceef40249f21eceabf8633934d94962e7d8e1d7 Author: Christoph Lameter Date: Tue Aug 7 15:11:48 2007 -0700 SLUB: Fix dynamic dma kmalloc cache creation The dynamic dma kmalloc creation can run into trouble if a GFP_ATOMIC allocation is the first one performed for a certain size of dma kmalloc slab. - Move the adding of the slab to sysfs into a workqueue (sysfs does GFP_KERNEL allocations) - Do not call kmem_cache_destroy() (uses slub_lock) - Only acquire the slub_lock once and--if we cannot wait--do a trylock. This introduces a slight risk of the first kmalloc(x, GFP_DMA|GFP_ATOMIC) for a range of sizes failing due to another process holding the slub_lock. However, we only need to acquire the spinlock once in order to establish each power of two DMA kmalloc cache. The possible conflict is with the slub_lock taken during slab management actions (create / remove slab cache). It is rather typical that a driver will first fill its buffers using GFP_KERNEL allocations which will wait until the slub_lock can be acquired. Drivers will also create its slab caches first outside of an atomic context before starting to use atomic kmalloc from an interrupt context. If there are any failures then they will occur early after boot or when loading of multiple drivers concurrently. Drivers can already accomodate failures of GFP_ATOMIC for other reasons. Retries will then create the slab. Signed-off-by: Christoph Lameter commit fcda3d89bf1366f6801447eab2d8a75ac5b9c4ce Author: Christoph Lameter Date: Mon Jul 30 13:06:46 2007 -0700 SLUB: Remove checks for MAX_PARTIAL from kmem_cache_shrink The MAX_PARTIAL checks were supposed to be an optimization. However, slab shrinking is a manually triggered process either through running slabinfo or by the kernel calling kmem_cache_shrink. If one really wants to shrink a slab then all operations should be done regardless of the size of the partial list. This also fixes an issue that could surface if the number of partial slabs was initially above MAX_PARTIAL in kmem_cache_shrink and later drops below MAX_PARTIAL through the elimination of empty slabs on the partial list (rare). In that case a few slabs may be left off the partial list (and only be put back when they are empty). Signed-off-by: Christoph Lameter commit 6adb31c90c47262c8a25bf5097de9b3426caf3ae Author: Alan Cox Date: Thu Aug 9 00:57:54 2007 +0100 remove dubious legal statment from uio-howto UIO currently contains a rather dubious statement which wants removing. The actual questions around whether user space code that depends tightly on kernel GPL code designed to co-work with it are derivative works of the kernel is extremely complex, and since we don't have space for either a masters length essay on legal issues or need to start flamewars lets simply remove the comment and leave law to lawyers Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 620b5e68ee89ba1d3f017056857459dc21be8c7b Author: Richard Henderson Date: Wed Aug 8 13:17:08 2007 -0700 Fix Alpha O_CLOEXEC definition The default definition in asm-generic conflicts with Alpha's O_DIRECT, so, like several other arches, it needs to be redefined. Signed-off-by: Richard Hendersion Signed-off-by: Linus Torvalds commit 8b80fc02b829a59602b0f53eb9393ffb2db2659d Merge: 6a0ed91... 4011cd9... Author: Linus Torvalds Date: Thu Aug 9 08:38:14 2007 -0700 Merge git://git.linux-nfs.org/pub/linux/nfs-2.6 * git://git.linux-nfs.org/pub/linux/nfs-2.6: SUNRPC: Replace flush_workqueue() with cancel_work_sync() and friends NFS: Replace flush_scheduled_work with cancel_work_sync() and friends SUNRPC: Don't call gss_delete_sec_context() from an rcu context NFSv4: Don't call put_rpccred() from an rcu callback NFS: Fix NFSv4 open stateid regressions NFSv4: Fix a locking regression in nfs4_set_mode_locked() NFS: Fix put_nfs_open_context SUNRPC: Fix a race in rpciod_down() commit 6a0ed91e361a93ee1efb4c20c4967024ed2a8dd7 Author: Artem Bityutskiy Date: Tue Aug 7 23:43:14 2007 +0300 hexdump: use const notation Trivial fix: mark the buffer to hexdump as const so callers could avoid casting their const buffers when calling print_hex_dump(). The patch is really trivial and I suggest to consider it as a fix (it fixes GCC warnings) and push it to current tree. Signed-off-by: Artem Bityutskiy Signed-off-by: Linus Torvalds commit 660ca5317d229ca27dec6a3159423bc0c5291c2d Merge: e7bc15a... f34d195... Author: Linus Torvalds Date: Thu Aug 9 08:31:03 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [TCP]: H-TCP maxRTT estimation at startup [NETFILTER]: nf_nat: add symbolic dependency on IPv4 conntrack [NETFILTER]: ctnetlink: return EEXIST instead of EINVAL for existing nat'ed conntracks [NETFILTER]: ipt_recent: avoid a possible NULL pointer deref in recent_seq_open() [NET] net/core/utils: fix sparse warning [NetLabel]: add missing rcu_dereference() calls in the LSM domain mapping hash table [PATCH] mac80211: don't allow scanning in monitor mode [PATCH] mac80211: Fix sparse error for sta_last_seq_ctrl_read [PATCH] mac80211: use do { } while (0) for multi-line macros [PATCH] mac80211: missing dev_put in ieee80211_master_start_xmit commit e7bc15a9ad07269c48732e9a9874e5938b4700ee Merge: 5a0276b... b434e71... Author: Linus Torvalds Date: Thu Aug 9 08:27:25 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC64]: Fix memory leak when cpu hotplugging. [SPARC64]: Do not assume sun4v chips have load-twin/store-init support. [SPARC64]: Fix hard-coding of cpu type output in /proc/cpuinfo on sun4v. [SPARC]: Centralize find_in_proplist() instead of duplicating N times. commit 5a0276b7ae1fcd90cea07f65452aebbd1b0743c5 Merge: be12014... 37b758e... Author: Linus Torvalds Date: Thu Aug 9 08:23:47 2007 -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: at91_mci: remove whitespace at the end of lines mmc: reorganize bounce buffer init wbsd: fix section mismatch warnings commit be12014dd7750648fde33e1e45cac24dc9a8be6d Merge: e3bcf5e... 7cff8cf... Author: Linus Torvalds Date: Thu Aug 9 08:23:31 2007 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched * git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched: (61 commits) sched: refine negative nice level granularity sched: fix update_stats_enqueue() reniced codepath sched: round a bit better sched: make the multiplication table more accurate sched: optimize update_rq_clock() calls in the load-balancer sched: optimize activate_task() sched: clean up set_curr_task_fair() sched: remove __update_rq_clock() call from entity_tick() sched: move the __update_rq_clock() call to scheduler_tick() sched debug: remove the 'u64 now' parameter from print_task()/_rq() sched: remove the 'u64 now' local variables sched: remove the 'u64 now' parameter from deactivate_task() sched: remove the 'u64 now' parameter from dequeue_task() sched: remove the 'u64 now' parameter from enqueue_task() sched: remove the 'u64 now' parameter from dec_nr_running() sched: remove the 'u64 now' parameter from inc_nr_running() sched: remove the 'u64 now' parameter from dec_load() sched: remove the 'u64 now' parameter from inc_load() sched: remove the 'u64 now' parameter from update_curr_load() sched: remove the 'u64 now' parameter from ->task_new() ... commit e3bcf5e2785aa49f75f36a8d27d601891a7ff12b Author: Ronald G. Minnich Date: Thu Aug 9 21:07:24 2007 +1000 lguest: avoid shared libraries mapped over guest memory Some versions of ld.so mmap the shared libraries right in over guest memory, so compile lguest statically by default. [ FC7 maps shared libraries very low, where the launcher maps guest's physical memory. Quick fix is to link Launcher static, real fix is for 2.6.24. ] -static is a simple fix. I expect this problem will be more common than we like, as different distro's make different "improvements" to ld.so Signed-off-by: Ronald G. Minnich Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit 0d027c01cd36b8cff727c78d2e40d334ba9895a8 Author: Rusty Russell Date: Thu Aug 9 20:57:13 2007 +1000 lguest: Fix Malicious Guest GDT Host Crash If a Guest makes hypercall which sets a GDT entry to not present, we currently set any segment registers using that GDT entry to 0. Unfortunately, this is not sufficient: there are other ways of altering GDT entries which will cause a fault. The correct solution to do what Linux does: let them set any GDT value they want and handle the #GP when popping causes a fault. This has the added benefit of making our Switcher slightly more robust in the case of any other bugs which cause it to fault. We kill the Guest if it causes a fault in the Switcher: it's the Guest's responsibility to make sure it's not using segments when it changes them. Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit 37250097e1b730c30da1790e354c0da65e617043 Author: Rusty Russell Date: Thu Aug 9 20:52:35 2007 +1000 Fix non-TSC guest clocksource lockup lguest uses a host-supplied wallclock-based clocksource when the TSC is not reliable. As this is already in nanoseconds, I naively used a multiplier of 1 and a shift of 0. But update_wall_time() in its infinite wisdom decides to adjust the clock a little (where does it think it's getting a more accurate time from?) It will happily tweak the multiplier... to 0, then -1. So the "fix" is to use a shift of 22 like everyone else, and a multiplier of 1 << 22. Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit 88ffc3505988196ef5cfdc0278ad89025c2a7b1a Author: Linus Torvalds Date: Thu Aug 9 08:10:16 2007 -0700 Revert "genirq: temporary fix for level-triggered IRQ resend" This reverts commit 0fc4969b866671dfe39b1a9119d0fdc7ea0f63e5. It was always meant to be temporary, but it's generating more useless noise than anything else, and we probably should never have done it in the generic kernel (only had the people involved test it on their own). Signed-off-by: Linus Torvalds commit 37b758e8bcf705a1bc6fd94bfc53ded2d506116c Author: Nicolas Ferre Date: Wed Aug 8 12:01:44 2007 +0200 mmc: at91_mci: remove whitespace at the end of lines Some cleanup with whitespace/tab at the end of lines. Signed-off-by: Nicolas Ferre Signed-off-by: Pierre Ossman commit aafabfab26bf4968b5c6423a3c53e920ae8fa406 Author: Pierre Ossman Date: Thu Aug 9 14:28:02 2007 +0200 mmc: reorganize bounce buffer init Reorganize the code that initializes mmc_block's bounce buffer in order to avoid warnings when MMC_BLOCK_BOUNCE isn't used. Signed-off-by: Pierre Ossman commit b3627bb19f8f0ca12136d985d4d73c437cba0e14 Author: Gabriel C Date: Thu Aug 2 20:20:44 2007 +0200 wbsd: fix section mismatch warnings This patch fixes the following section mismatch warnings ... WARNING: vmlinux.o(.init.text+0x29d40): Section mismatch: reference to .exit.text:wbsd_release_resources (between 'wbsd_init' and 'wbsd_probe') WARNING: vmlinux.o(.init.text+0x29d49): Section mismatch: reference to .exit.text:wbsd_free_mmc (between 'wbsd_init' and 'wbsd_probe') WARNING: vmlinux.o(.init.text+0x29f28): Section mismatch: reference to .exit.text:wbsd_free_mmc (between 'wbsd_init' and 'wbsd_probe') ... Signed-off-by: Gabriel Craciunescu Acked-by: Sam Ravnborg Signed-off-by: Pierre Ossman commit 7cff8cf61cac15fa29a1ca802826d2bcbca66152 Author: Ingo Molnar Date: Thu Aug 9 11:16:52 2007 +0200 sched: refine negative nice level granularity refine the granularity of negative nice level tasks: let them reschedule more often to offset the effect of them consuming their wait_runtime proportionately slower. (This makes nice-0 task scheduling smoother in the presence of negatively reniced tasks.) Signed-off-by: Ingo Molnar commit a69edb55605117cc0f20aa36c49c20b96590774d Author: Ingo Molnar Date: Thu Aug 9 11:16:52 2007 +0200 sched: fix update_stats_enqueue() reniced codepath the key has to be rescaled to /weight even if it has a positive value. (this change only affects the scheduling of reniced tasks) Signed-off-by: Ingo Molnar commit 194081ebfaa8c7d16133e08dd79254910c20c6ff Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: round a bit better round a tiny bit better in high-frequency rescheduling scenarios, by rounding around zero instead of rounding down. (this is pretty theoretical though) Signed-off-by: Ingo Molnar commit 254753dc321ea2b753ca9bc58ac329557a20efac Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: make the multiplication table more accurate do small deltas in the weight and multiplication constant table so that the worst-case numeric error is better than 1:100000000. (8 digits) the current error table is: nice mult * inv_mult error ------------------------------------------ -20: 88761 * 48388 -0.0000000065 -19: 71755 * 59856 -0.0000000037 -18: 56483 * 76040 0.0000000056 -17: 46273 * 92818 0.0000000042 -16: 36291 * 118348 -0.0000000065 -15: 29154 * 147320 -0.0000000037 -14: 23254 * 184698 -0.0000000009 -13: 18705 * 229616 -0.0000000037 -12: 14949 * 287308 -0.0000000009 -11: 11916 * 360437 -0.0000000009 -10: 9548 * 449829 -0.0000000009 -9: 7620 * 563644 -0.0000000037 -8: 6100 * 704093 0.0000000009 -7: 4904 * 875809 0.0000000093 -6: 3906 * 1099582 -0.0000000009 -5: 3121 * 1376151 -0.0000000058 -4: 2501 * 1717300 0.0000000009 -3: 1991 * 2157191 -0.0000000035 -2: 1586 * 2708050 0.0000000009 -1: 1277 * 3363326 0.0000000014 0: 1024 * 4194304 0.0000000000 1: 820 * 5237765 0.0000000009 2: 655 * 6557202 0.0000000033 3: 526 * 8165337 -0.0000000079 4: 423 * 10153587 0.0000000012 5: 335 * 12820798 0.0000000079 6: 272 * 15790321 0.0000000037 7: 215 * 19976592 -0.0000000037 8: 172 * 24970740 -0.0000000037 9: 137 * 31350126 -0.0000000079 10: 110 * 39045157 -0.0000000061 11: 87 * 49367440 -0.0000000037 12: 70 * 61356676 0.0000000056 13: 56 * 76695844 -0.0000000075 14: 45 * 95443717 -0.0000000072 15: 36 * 119304647 -0.0000000009 16: 29 * 148102320 -0.0000000037 17: 23 * 186737708 -0.0000000028 18: 18 * 238609294 -0.0000000009 19: 15 * 286331153 -0.0000000002 Signed-off-by: Ingo Molnar commit 6e82a3befe91423e501c2124312bd805be0048eb Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: optimize update_rq_clock() calls in the load-balancer optimize update_rq_clock() calls in the load-balancer: update them right after locking the runqueue(s) so that the pull functions do not have to call it. Signed-off-by: Ingo Molnar commit 2daa357705bfe68788132cf9079930ca948a90af Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: optimize activate_task() optimize activate_task() by removing update_rq_clock() from it. (and add update_rq_clock() to all callsites of activate_task() that did not have it before.) Signed-off-by: Ingo Molnar commit c3b64f1e4f772418a649bb8e3b39fcea6c358330 Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: clean up set_curr_task_fair() clean up set_curr_task_fair(). ( identity transformation that causes no change in functionality. ) text data bss dec hex filename 39170 3750 36 42956 a7cc sched.o.before 39170 3750 36 42956 a7cc sched.o.after Signed-off-by: Ingo Molnar commit d9e0e6aa6d72df21ff190962c842e027fca0e009 Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: remove __update_rq_clock() call from entity_tick() remove __update_rq_clock() call from entity_tick(). no change in functionality because scheduler_tick() already calls __update_rq_clock(). Signed-off-by: Ingo Molnar commit 546fe3c909b0a4235c7237c210da483eaaac1edc Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: move the __update_rq_clock() call to scheduler_tick() move the __update_rq_clock() call from update_cpu_load() to scheduler_tick(). ( identity transformation that causes no change in functionality. ) this allows the direct use of rq->clock in ->task_tick() functions. Signed-off-by: Ingo Molnar commit a48da48b403319918a587be8b5d46fe1d186c2ac Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched debug: remove the 'u64 now' parameter from print_task()/_rq() remove the 'u64 now' parameter from sched_debug.c:print_task()/_rq(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit bdd4dfa89c1e3e1379729b9edec1526b3ecc25ec Author: Ingo Molnar Date: Thu Aug 9 11:16:51 2007 +0200 sched: remove the 'u64 now' local variables final step: remove all (now superfluous) 'u64 now' variables. ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 2e1cb74a501c4b1bca5e55dabff24f267349193c Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from deactivate_task() remove the 'u64 now' parameter from deactivate_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 69be72c13db0e9165796422b544f989033146171 Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from dequeue_task() remove the 'u64 now' parameter from dequeue_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 8159f87e2bfeeba8887b8ef34f7b523958910132 Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from enqueue_task() remove the 'u64 now' parameter from enqueue_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit db53181e41728cfd58336925422dc17f1d2c655c Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from dec_nr_running() remove the 'u64 now' parameter from dec_nr_running(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit e5fa2237b53d751c59f773a68e1b12c411f0b19b Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from inc_nr_running() remove the 'u64 now' parameter from inc_nr_running(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 79b5dddf831b4719b7ec8dfcfb9bf9c619805b9c Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from dec_load() remove the 'u64 now' parameter from dec_load(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 29b4b623fe8163ca3c1da125da81234d41c8a3db Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from inc_load() remove the 'u64 now' parameter from inc_load(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 84a1d7a2f91d2f26d21026973dbf3023d17c701f Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from update_curr_load() remove the 'u64 now' parameter from update_curr_load(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit ee0827d8b5271094380410cf21d8c48c109a773a Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from ->task_new() remove the 'u64 now' parameter from ->task_new(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 31ee529cc2254e8b62880535ec8f21a4c5e1c091 Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from ->put_prev_task() remove the 'u64 now' parameter from ->put_prev_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit ff95f3df54609d9d4b9572f8a67d09922a645043 Author: Ingo Molnar Date: Thu Aug 9 11:16:49 2007 +0200 sched: remove the 'u64 now' parameter from pick_next_task() remove the 'u64 now' parameter from pick_next_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit fb8d47240246e20f864f0724a23a7220cd1c59ac Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from ->pick_next_task() remove the 'u64 now' parameter from ->pick_next_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit f02231e51a280f1a0fee4d03ad8f50048e06cced Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from ->dequeue_task() remove the 'u64 now' parameter from ->dequeue_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit fd390f6a04f22fb457d6fd1855964f79536525de Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from ->enqueue_task() remove the 'u64 now' parameter from ->enqueue_task(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit f1e14ef64d3e1bdcb3437f1e926fe5a7f861aa0a Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from update_curr_rt() remove the 'u64 now' parameter from update_curr_rt(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit ab6cde2692c76b88ea430aa188ea50303216a955 Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from put_prev_entity() remove the 'u64 now' parameter from put_prev_entity(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 9948f4b2a728e9ca4928a9a97eb09df955f5b17c Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from pick_next_entity() remove the 'u64 now' parameter from pick_next_entity(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 8494f412edecbdbc36105e0a08f80d05a14dde2c Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from set_next_entity() remove the 'u64 now' parameter from set_next_entity(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 525c2716a41d3e87387b32c5b0868acb52cbb559 Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from dequeue_entity() remove the 'u64 now' parameter from dequeue_entity(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 668031ca8fa2cc565f325f4fb69f131af449b7a7 Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from enqueue_entity() remove the 'u64 now' parameter from enqueue_entity(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 2396af69bec0ba3274383c20de7a31acf7c74b7a Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from enqueue_sleeper() remove the 'u64 now' parameter from enqueue_sleeper(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit dfdc119e54f44cba70ebe1f565767d3d0640d19f Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from __enqueue_sleeper() remove the 'u64 now' parameter from __enqueue_sleeper(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit c7e9b5b293106c8dd6b1ca968d24f10fa919f6fd Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_curr_end() remove the 'u64 now' parameter from update_stats_curr_end(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 19b6a2e3706675eea4d74729114e36968fa43577 Author: Ingo Molnar Date: Thu Aug 9 11:16:48 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_dequeue() remove the 'u64 now' parameter from update_stats_dequeue(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 79303e9e0219a23f8757af99393b21ecb35231bf Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_curr_start() remove the 'u64 now' parameter from update_stats_curr_start(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 9ef0a9615b0d9cd29c6bc0e8898f1bc3145e44c6 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_wait_end() remove the 'u64 now' parameter from update_stats_wait_end(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit eac55ea37642163e6bdd899ac319c413c1f1b7cd Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from __update_stats_wait_end() remove the 'u64 now' parameter from __update_stats_wait_end(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit d2417e5a3e6c79e79f982c7553301dc3539873b0 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_enqueue() remove the 'u64 now' parameter from update_stats_enqueue(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 5870db5b83932bea0deac3c68e3c40f377d0b8f7 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from update_stats_wait_start() remove the 'u64 now' parameter from update_stats_wait_start(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit b7cc089657c12340077fe937380f9e54bbd6b300 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from update_curr() remove the 'u64 now' parameter from update_curr(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit 5cef9eca3837a8dcf605a360e213c4179a07c41a Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove the 'u64 now' parameter from print_cfs_rq() remove the 'u64 now' parameter from print_cfs_rq(). ( identity transformation that causes no change in functionality. ) Signed-off-by: Ingo Molnar commit d281918d7c135c555d9cebcf73d4320efa8177dc Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove 'now' use from assignments change all 'now' timestamp uses in assignments to rq->clock. ( this is an identity transformation that causes no functionality change: all such new rq->clock is necessarily preceded by an update_rq_clock() call. ) Signed-off-by: Ingo Molnar commit eb59449400f1e5984509e502711141302a2867ab Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove __rq_clock() remove the (now unused) __rq_clock() function. Signed-off-by: Ingo Molnar commit c1b3da3ecdbf9e9f377474c11ba988b8821f86c8 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: eliminate __rq_clock() use eliminate __rq_clock() use by changing it to: __update_rq_clock(rq) now = rq->clock; identity transformation - no change in behavior. Signed-off-by: Ingo Molnar commit 2ab81159fa426bd09c21faf7c25fba13bc9d2902 Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: remove rq_clock() remove the now unused rq_clock() function. Signed-off-by: Ingo Molnar commit a8e504d2a57ecd3f905b402072cdd1903f963bef Author: Ingo Molnar Date: Thu Aug 9 11:16:47 2007 +0200 sched: eliminate rq_clock() use eliminate rq_clock() use by changing it to: update_rq_clock(rq) now = rq->clock; identity transformation - no change in behavior. Signed-off-by: Ingo Molnar commit b04a0f4c1651a553ee1a03dc70297d66ec74db5c Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: add [__]update_rq_clock(rq) add the [__]update_rq_clock(rq) functions. (No change in functionality, just reorganization to prepare for elimination of the heavy 64-bit timestamp-passing in the scheduler.) Signed-off-by: Ingo Molnar commit a4ac01c36e286dd1b9a1d5cd7422c5af51dc55f8 Author: Peter Williams Date: Thu Aug 9 11:16:46 2007 +0200 sched: fix bug in balance_tasks() There are two problems with balance_tasks() and how it used: 1. The variables best_prio and best_prio_seen (inherited from the old move_tasks()) were only required to handle problems caused by the active/expired arrays, the order in which they were processed and the possibility that the task with the highest priority could be on either. These issues are no longer present and the extra overhead associated with their use is unnecessary (and possibly wrong). 2. In the absence of CONFIG_FAIR_GROUP_SCHED being set, the same this_best_prio variable needs to be used by all scheduling classes or there is a risk of moving too much load. E.g. if the highest priority task on this at the beginning is a fairly low priority task and the rt class migrates a task (during its turn) then that moved task becomes the new highest priority task on this_rq but when the sched_fair class initializes its copy of this_best_prio it will get the priority of the original highest priority task as, due to the run queue locks being held, the reschedule triggered by pull_task() will not have taken place. This could result in inappropriate overriding of skip_for_load and excessive load being moved. The attached patch addresses these problems by deleting all reference to best_prio and best_prio_seen and making this_best_prio a reference parameter to the various functions involved. load_balance_fair() has also been modified so that this_best_prio is only reset (in the loop) if CONFIG_FAIR_GROUP_SCHED is set. This should preserve the effect of helping spread groups' higher priority tasks around the available CPUs while improving system performance when CONFIG_FAIR_GROUP_SCHED isn't set. Signed-off-by: Peter Williams Signed-off-by: Ingo Molnar commit aea25401c3347d9f3a64ebdc81043be246a9f631 Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: document nice levels Document the design thinking behind nice levels. Signed-off-by: Ingo Molnar commit e0361851e5647cdd62fd5c367df5d7e145769d04 Author: Alexey Dobriyan Date: Thu Aug 9 11:16:46 2007 +0200 sched: remove binary sysctls from kernel.sched_domain kernel.sched_domain hierarchy is under CTL_UNNUMBERED and thus unreachable to sysctl(2). Generating .ctl_number's in such situation is not useful. Signed-off-by: Alexey Dobriyan Signed-off-by: Ingo Molnar commit fd8bb43e27bbba1b6d49552c3d588cf741dd44af Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: delta_exec accounting fix small delta_exec accounting fix: increase delta_exec and increase sum_exec_runtime even if the task is not on the runqueue anymore. Signed-off-by: Ingo Molnar commit c5dcfe72aa8d26e924cccca9725a9f7be0d4ab01 Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: clean up delta_mine cleanup: delta_mine is an unsigned value. no code impact: text data bss dec hex filename 27823 2726 16 30565 7765 sched.o.before 27823 2726 16 30565 7765 sched.o.after Signed-off-by: Ingo Molnar commit 8e717b194ce3f3ac9e6acc63f66fe274cdf9cde1 Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: schedule() speedup speed up schedule(): share the 'now' parameter that deactivate_task() was calculating internally. ( this also fixes the small accounting window between the deactivate call and the pick_next_task() call. ) Signed-off-by: Ingo Molnar commit 7bfd0485871df01764ca89d5679f128d870aef1a Author: Ingo Molnar Date: Thu Aug 9 11:16:46 2007 +0200 sched: uninline rq_clock() uninline rq_clock() to save 263 bytes of code: text data bss dec hex filename 39561 3642 24 43227 a8db sched.o.before 39298 3642 24 42964 a7d4 sched.o.after Signed-off-by: Ingo Molnar commit 291ae5a12088e1aa87aae4899a818498be3d18eb Author: Josh Triplett Date: Thu Aug 9 11:16:46 2007 +0200 sched: mark print_cfs_stats static sched_fair.c defines print_cfs_stats, and sched_debug.c uses it, but sched.c includes both sched_fair.c and sched_debug.c, so all the references to print_cfs_stats occur in the same compilation unit. Thus, mark print_cfs_stats static. Eliminates a sparse warning: warning: symbol 'print_cfs_stats' was not declared. Should it be static? Signed-off-by: Josh Triplett Signed-off-by: Ingo Molnar commit 9531b62f5ebf2b693bf85129d20328188f685c44 Author: Ulrich Drepper Date: Thu Aug 9 11:16:46 2007 +0200 sched: clean up sched_getaffinity() here's another tiny cleanup. The generated code is not affected (gcc is smart enough) but for people looking over the code it is just irritating to have the extra conditional. Signed-off-by: Ulrich Drepper Signed-off-by: Ingo Molnar commit 5f5d3aa15bb24a4d5d195bd32d549bd725d414bc Author: Thomas Voegtle Date: Thu Aug 9 11:16:46 2007 +0200 sched: mention CONFIG_SCHED_DEBUG in documentation a little hint to switch on CONFIG_SCHED_DEBUG should be given. Signed-off-by: Ingo Molnar commit 4301065920b0cbde3986519582347e883b166f3e Author: Peter Williams Date: Thu Aug 9 11:16:46 2007 +0200 sched: simplify move_tasks() The move_tasks() function is currently multiplexed with two distinct capabilities: 1. attempt to move a specified amount of weighted load from one run queue to another; and 2. attempt to move a specified number of tasks from one run queue to another. The first of these capabilities is used in two places, load_balance() and load_balance_idle(), and in both of these cases the return value of move_tasks() is used purely to decide if tasks/load were moved and no notice of the actual number of tasks moved is taken. The second capability is used in exactly one place, active_load_balance(), to attempt to move exactly one task and, as before, the return value is only used as an indicator of success or failure. This multiplexing of sched_task() was introduced, by me, as part of the smpnice patches and was motivated by the fact that the alternative, one function to move specified load and one to move a single task, would have led to two functions of roughly the same complexity as the old move_tasks() (or the new balance_tasks()). However, the new modular design of the new CFS scheduler allows a simpler solution to be adopted and this patch addresses that solution by: 1. adding a new function, move_one_task(), to be used by active_load_balance(); and 2. making move_tasks() a single purpose function that tries to move a specified weighted load and returns 1 for success and 0 for failure. One of the consequences of these changes is that neither move_one_task() or the new move_tasks() care how many tasks sched_class.load_balance() moves and this enables its interface to be simplified by returning the amount of load moved as its result and removing the load_moved pointer from the argument list. This helps simplify the new move_tasks() and slightly reduces the amount of work done in each of sched_class.load_balance()'s implementations. Further simplification, e.g. changes to balance_tasks(), are possible but (slightly) complicated by the special needs of load_balance_fair() so I've left them to a later patch (if this one gets accepted). NB Since move_tasks() gets called with two run queue locks held even small reductions in overhead are worthwhile. [ mingo@elte.hu ] this change also reduces code size nicely: text data bss dec hex filename 39216 3618 24 42858 a76a sched.o.before 39173 3618 24 42815 a73f sched.o.after Signed-off-by: Peter Williams Signed-off-by: Ingo Molnar commit f1a438d813d416fa9f4be4e6dbd10b54c5938d89 Author: Ingo Molnar Date: Thu Aug 9 11:16:45 2007 +0200 sched: reorder update_cpu_load(rq) with the ->task_tick() call Peter Williams suggested to flip the order of update_cpu_load(rq) with the ->task_tick() call. This is a NOP for the current scheduler (the two functions are independent of each other), ->task_tick() might create some state for update_cpu_load() in the future (or in PlugSched). Signed-off-by: Ingo Molnar commit 0915c4e89d311948b67cdd4c183a2efbcafcc9f9 Author: Ingo Molnar Date: Thu Aug 9 11:16:45 2007 +0200 sched: batch sleeper bonus batch up the sleeper bonus sum a bit more. Anything below sched-granularity is too small to make a practical difference anyway. this optimization reduces the math in high-frequency scheduling scenarios. Signed-off-by: Ingo Molnar commit b434e71933aa0519ee042c01419db76b7dcc058e Author: David S. Miller Date: Wed Aug 8 17:32:33 2007 -0700 [SPARC64]: Fix memory leak when cpu hotplugging. Every time a cpu is added via hotplug, we allocate the per-cpu MONDO queues but we never free them up. Freeing isn't easy since the first cpu gets this memory from bootmem. Therefore, the simplest thing to do to fix this bug is to allocate the queues for all possible cpus at boot time. Signed-off-by: David S. Miller commit 6c70b6fc7b6fc321636a014082d9e32333da1f80 Author: David S. Miller Date: Wed Aug 8 17:11:39 2007 -0700 [SPARC64]: Do not assume sun4v chips have load-twin/store-init support. Check the cpu type in the OBP device tree before committing to using the optimized Niagara memcpy and memset implementation. If we don't recognize the cpu type, use a completely generic version. Signed-off-by: David S. Miller commit 175fc484256e9c85e043f599ec2f6bc0d2e6c443 Author: Al Viro Date: Wed Aug 8 00:01:46 2007 +0100 fix oops in __audit_signal_info() The check for audit_signals is misplaced and the check for audit_dummy_context() is missing; as the result, if we send a signal to auditd from task with NULL ->audit_context while we have audit_signals != 0 we end up with an oops. Signed-off-by: Al Viro Acked-by: James Morris Signed-off-by: Linus Torvalds commit 68c9f9fd336dc7e793cecad25f8ac40ccaa7a256 Author: David S. Miller Date: Tue Aug 7 19:09:29 2007 -0700 [SPARC64]: Fix hard-coding of cpu type output in /proc/cpuinfo on sun4v. Signed-off-by: David S. Miller commit 46bcea7751efc867ae4b073c99ad1d137a475bc0 Author: David S. Miller Date: Tue Aug 7 18:46:36 2007 -0700 [SPARC]: Centralize find_in_proplist() instead of duplicating N times. Signed-off-by: David S. Miller commit f34d1955dff5a5769d24614d137003f0316406f3 Author: Stephen Hemminger Date: Tue Aug 7 18:29:05 2007 -0700 [TCP]: H-TCP maxRTT estimation at startup Small patch to H-TCP from Douglas Leith. Fix estimation of maxRTT. The original code ignores rtt measurements during slow start (via the check tp->snd_ssthresh < 0xFFFF) yet this is probably a good time to try to estimate max rtt as delayed acking is disabled and slow start will only exit on a loss which presumably corresponds to a maxrtt measurement. Second, the original code (via the check htcp_ccount(ca) > 3) ignores rtt data during what it estimates to be the first 3 round-trip times. This seems like an unnecessary check now that the RCV timestamp are no longer used for rtt estimation. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 591e620693e71e24fb3450a4084217e44b7a60b6 Author: Patrick McHardy Date: Tue Aug 7 18:12:01 2007 -0700 [NETFILTER]: nf_nat: add symbolic dependency on IPv4 conntrack Loading nf_nat causes the conntrack core to be loaded, but we need IPv4 as well. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ff4ca8273eafbba875a86d333e059e78f292107f Author: Pablo Neira Ayuso Date: Tue Aug 7 18:11:26 2007 -0700 [NETFILTER]: ctnetlink: return EEXIST instead of EINVAL for existing nat'ed conntracks ctnetlink must return EEXIST for existing nat'ed conntracks instead of EINVAL. Only return EINVAL if we try to update a conntrack with NAT handlings (that is not allowed). Decadence:libnetfilter_conntrack/utils# ./conntrack_create_nat TEST: create conntrack (0)(Success) Decadence:libnetfilter_conntrack/utils# ./conntrack_create_nat TEST: create conntrack (-1)(Invalid argument) Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 3af8e31cf57646284b5f77f9d57d2c22fa77485a Author: Jesper Juhl Date: Tue Aug 7 18:10:54 2007 -0700 [NETFILTER]: ipt_recent: avoid a possible NULL pointer deref in recent_seq_open() If the call to seq_open() returns != 0 then the code calls kfree(st) but then on the very next line proceeds to dereference the pointer - not good. Problem spotted by the Coverity checker. Signed-off-by: Jesper Juhl Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 864c5a4d37b1f25e3c36dd00a09158eae455a8fd Merge: 14ae856... f27b62d... Author: David S. Miller Date: Tue Aug 7 18:07:35 2007 -0700 Merge branch 'fixes-davem' of master.kernel.org:/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 14ae856645dba5b9ba56b2d0627b3b9825fa37b2 Author: Johannes Berg Date: Tue Aug 7 18:02:43 2007 -0700 [NET] net/core/utils: fix sparse warning net_msg_warn is not defined because it is in net/sock.h which isn't included. Signed-off-by: Johannes Berg Signed-off-by: David S. Miller commit 3482fd9099e8aab8b8096eb6da93571ea5a0b4c2 Author: Paul Moore Date: Tue Aug 7 17:53:10 2007 -0700 [NetLabel]: add missing rcu_dereference() calls in the LSM domain mapping hash table The LSM domain mapping head table pointer was not being referenced via the RCU safe dereferencing function, rcu_dereference(). This patch adds those missing calls to the NetLabel code. This has been tested using recent linux-2.6 git kernels with no visible regressions. Signed-off-by: Paul Moore Signed-off-by: David S. Miller commit 9dc83afdbefd184bf29f347e8fcbb6d8a2b5e6fe Author: Mariusz Kozlowski Date: Mon Aug 6 23:44:03 2007 +0200 drivers/net/ibmveth.c: memset fix > >> Looks like memset() is zeroing wrong nr of bytes. > > > > Good catch, however, I think we can just remove this memset altogether > > since the memory gets allocated via kzalloc. > > Correct, that memset() is superfluous. Ok. Then this should do it. Signed-off-by: Mariusz Kozlowski drivers/net/ibmveth.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) Signed-off-by: Jeff Garzik commit 163642a24a44d7b1d1e1b3cb8da25a142a919e24 Author: Domen Puncer Date: Tue Aug 7 12:12:41 2007 +0200 phy layer: fix phy_mii_ioctl for autonegotiation Fix a thinko (?) in setting phydev->autoneg. Signed-off-by: Domen Puncer Signed-off-by: Jeff Garzik commit 44a5b3d539893988dc6b63054c59d031df1fd7bc Author: Thomas Klein Date: Mon Aug 6 13:55:44 2007 +0200 ehea: Eliminated some compiler warnings Fixed wrongly casted pointers Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit 35cf2e2e3b96c070a615d699bf514ffec6afd19e Author: Thomas Klein Date: Mon Aug 6 13:55:14 2007 +0200 ehea: Simplify resource usage check Use shorter method to determine whether adapter has configured ports Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit f46f6ba99bad942963cc4b4cc4aabcc55a567b4a Author: Thomas Klein Date: Mon Aug 6 13:54:29 2007 +0200 ehea: Fix workqueue handling Fix: Workqueue ehea_driver_wq was not destroyed Signed-off-by: Thomas Klein Signed-off-by: Jeff Garzik commit 76b9cfccb39f542ce48a79b9ad50af25e422506c Author: Brian King Date: Fri Aug 3 13:55:19 2007 +1000 ibmveth: Fix rx pool deactivate oops This fixes the following oops which can occur when trying to deallocate receive buffer pools using sysfs with the ibmveth driver. NIP: d00000000024f954 LR: d00000000024fa58 CTR: c0000000000d7478 REGS: c00000000ffef9f0 TRAP: 0300 Not tainted (2.6.22-ppc64) MSR: 8000000000009032 CR: 24242442 XER: 00000010 DAR: 00000000000007f0, DSISR: 0000000042000000 TASK = c000000002f91360[2967] 'bash' THREAD: c00000001398c000 CPU: 2 GPR00: 0000000000000000 c00000000ffefc70 d000000000262d30 c00000001c4087a0 GPR04: 00000003000000fe 0000000000000000 000000000000000f c000000000579d80 GPR08: 0000000000365688 c00000001c408998 00000000000007f0 0000000000000000 GPR12: d000000000251e88 c000000000579d80 00000000200957ec 0000000000000000 GPR16: 00000000100b8808 00000000100feb30 0000000000000000 0000000010084828 GPR20: 0000000000000000 000000001014d4d0 0000000000000010 c00000000ffefeb0 GPR24: c00000001c408000 0000000000000000 c00000001c408000 00000000ffffb054 GPR28: 00000000000000fe 0000000000000003 d000000000262700 c00000001c4087a0 NIP [d00000000024f954] .ibmveth_remove_buffer_from_pool+0x38/0x108 [ibmveth] LR [d00000000024fa58] .ibmveth_rxq_harvest_buffer+0x34/0x78 [ibmveth] Call Trace: [c00000000ffefc70] [c0000000000280a8] .dma_iommu_unmap_single+0x14/0x28 (unreliable) [c00000000ffefd00] [d00000000024fa58] .ibmveth_rxq_harvest_buffer+0x34/0x78 [ibmveth] [c00000000ffefd80] [d000000000250e40] .ibmveth_poll+0xd8/0x434 [ibmveth] [c00000000ffefe40] [c00000000032da8c] .net_rx_action+0xdc/0x248 [c00000000ffefef0] [c000000000068b4c] .__do_softirq+0xa8/0x164 [c00000000ffeff90] [c00000000002789c] .call_do_softirq+0x14/0x24 [c00000001398f6f0] [c00000000000c04c] .do_softirq+0x68/0xac [c00000001398f780] [c000000000068ca0] .irq_exit+0x54/0x6c [c00000001398f800] [c00000000000c8e4] .do_IRQ+0x170/0x1ac [c00000001398f890] [c000000000004790] hardware_interrupt_entry+0x18/0x1c Exception: 501 at .plpar_hcall_norets+0x24/0x94 LR = .veth_pool_store+0x15c/0x298 [ibmveth] [c00000001398fb80] [d000000000250b2c] .veth_pool_store+0x5c/0x298 [ibmveth] (unreliable) [c00000001398fc30] [c000000000145530] .sysfs_write_file+0x140/0x1d8 [c00000001398fcf0] [c0000000000de89c] .vfs_write+0x120/0x208 [c00000001398fd90] [c0000000000df2c8] .sys_write+0x4c/0x8c [c00000001398fe30] [c0000000000086ac] syscall_exit+0x0/0x40 Instruction dump: fba1ffe8 fbe1fff8 789d0022 f8010010 f821ff71 789c0020 1d3d00a8 7b8a1f24 38000000 7c7f1b78 7d291a14 e9690128 <7c0a592a> e8030000 e9690120 80a90100 Signed-off-by: Brian King Signed-off-by: Paul Mackerras Signed-off-by: Jeff Garzik commit c21723edd5f6c288ab613ed658b7140e07fc7209 Merge: 9b7530c... 313b030... Author: Jeff Garzik Date: Tue Aug 7 17:28:23 2007 -0400 Merge branch 'r8169-for-jeff-20070806' of git://electric-eye.fr.zoreil.com/home/romieu/linux-2.6 into upstream-fixes commit 9b7530c83d04da28fdded741e718721d509c74b1 Merge: 0ae842e... fdc8f43... Author: Jeff Garzik Date: Tue Aug 7 17:25:02 2007 -0400 Merge branch 'fixes-jgarzik' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes commit 0ae842eaf9512d9c9479797083750c077fc7d1f8 Merge: 8eb7ad6... 7c5b016... Author: Jeff Garzik Date: Tue Aug 7 17:19:44 2007 -0400 Merge branch 'ucc_geth' of master.kernel.org:/pub/scm/linux/kernel/git/leo/fsl-soc into upstream-fixes commit 8eb7ad68bd10d858066ca51713ca5645996e77a5 Author: Neil Muller Date: Wed Aug 1 17:52:04 2007 +0200 sis190 check for ISA bridge on SiS966 sis190 driver assumes to find ISA only on SiS965. similar fix is in sis900 driver, see bug report http://bugs.debian.org/435547 Signed-off-by: maximilian attems Signed-off-by: Jeff Garzik commit 5845b677cf7f64a0f104609e1dfe02a439f69f71 Author: Ingo Molnar Date: Tue Jul 31 19:07:02 2007 -0500 atl1: use spin_trylock_irqsave() use the simpler spin_trylock_irqsave() API to get the adapter lock. [ this is also a fix for -rt where adapter->lock is a sleeping lock. ] Signed-off-by: Ingo Molnar Signed-off-by: Jay Cliburn Signed-off-by: Jeff Garzik commit 092ed997c0c324a2e5e839da9f49453bb5227703 Author: Paul Mundt Date: Wed Aug 1 15:48:55 2007 +0900 net: smc91x: Build fixes for general sh boards. SH boards in general only wire this up in 8 or 16-bit mode, and as we never had the wrappers for 32-bit mode defined, SMC_CAN_USE_32BIT caused build failure for the non-Solution Engine boards. This gets it building again. Also kill off the straggling set_irq_type() definition, this is left over cruft that was missed when the rest of it switched to IRQ flags. Signed-off-by: Paul Mundt -- drivers/net/smc91x.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) Signed-off-by: Jeff Garzik commit 4011cd97886dd04b90fef8b671b9936cd39ab983 Author: Trond Myklebust Date: Tue Aug 7 15:33:01 2007 -0400 SUNRPC: Replace flush_workqueue() with cancel_work_sync() and friends Signed-off-by: Trond Myklebust commit 3d39c691ff486142dd9aaeac12f553f4476b7a62 Author: Trond Myklebust Date: Tue Aug 7 15:28:33 2007 -0400 NFS: Replace flush_scheduled_work with cancel_work_sync() and friends This will avoid deadlocks of the form: stack backtrace: [] show_trace_log_lvl+0x1a/0x30 [] show_trace+0x12/0x20 [] dump_stack+0x15/0x20 [] __lock_acquire+0xc22/0x1030 [] lock_acquire+0x61/0x80 [] flush_workqueue+0x49/0x70 [] flush_scheduled_work+0xd/0x10 [] nfs_release_automount_timer+0x2c/0x30 [nfs] [] nfs_free_server+0x9e/0xd0 [nfs] [] nfs_kill_super+0x16/0x20 [nfs] [] deactivate_super+0x7d/0xa0 [] mntput_no_expire+0x4b/0x80 [] expire_mount_list+0xe4/0x140 [] mark_mounts_for_expiry+0x99/0xb0 [] nfs_expire_automounts+0xd/0x40 [nfs] [] run_workqueue+0x12b/0x1e0 [] worker_thread+0x9b/0x100 [] kthread+0x42/0x70 [] kernel_thread_helper+0x7/0x18 ======================= Signed-off-by: Trond Myklebust commit a4deb81ba8ece75af5560d40d9bb8d242c48a111 Author: Trond Myklebust Date: Mon Aug 6 12:21:13 2007 -0400 SUNRPC: Don't call gss_delete_sec_context() from an rcu context Doing so may not be safe... Signed-off-by: Trond Myklebust commit 905f8d16e32fd48499e3f8b9a2d9f746af3e0949 Author: Trond Myklebust Date: Mon Aug 6 12:18:34 2007 -0400 NFSv4: Don't call put_rpccred() from an rcu callback Doing so would require us to introduce bh-safe locks into put_rpccred(). This patch fixes the lockdep complaint reported by Marc Dietrich: inconsistent {softirq-on-W} -> {in-softirq-W} usage. swapper/0 [HC0[0]:SC1[1]:HE1:SE0] takes: (rpc_credcache_lock){-+..}, at: [] _atomic_dec_and_lock+0x17/0x60 {softirq-on-W} state was registered at: [] __lock_acquire+0x650/0x1030 [] lock_acquire+0x61/0x80 [] _spin_lock+0x2c/0x40 [] _atomic_dec_and_lock+0x17/0x60 [] put_rpccred+0x5d/0x100 [sunrpc] [] rpcauth_unbindcred+0x21/0x60 [sunrpc] [] a0 [sunrpc] [] rpc_call_sync+0x30/0x40 [sunrpc] [] rpcb_register+0xdb/0x180 [sunrpc] [] svc_register+0x93/0x160 [sunrpc] [] __svc_create+0x1ee/0x220 [sunrpc] [] svc_create+0x13/0x20 [sunrpc] [] nfs_callback_up+0x82/0x120 [nfs] [] nfs_get_client+0x176/0x390 [nfs] [] nfs4_set_client+0x31/0x190 [nfs] [] nfs4_create_server+0x63/0x3b0 [nfs] [] nfs4_get_sb+0x346/0x5b0 [nfs] [] vfs_kern_mount+0x94/0x110 [] do_mount+0x1f2/0x7d0 [] sys_mount+0x66/0xa0 [] syscall_call+0x7/0xb [] 0xffffffff irq event stamp: 5277830 hardirqs last enabled at (5277830): [] kmem_cache_free+0x8a/0xc0 hardirqs last disabled at (5277829): [] kmem_cache_free+0x52/0xc0 softirqs last enabled at (5277798): [] __do_softirq+0xa3/0xc0 softirqs last disabled at (5277817): [] do_softirq+0x47/0x50 other info that might help us debug this: no locks held by swapper/0. stack backtrace: [] show_trace_log_lvl+0x1a/0x30 [] show_trace+0x12/0x20 [] dump_stack+0x15/0x20 [] print_usage_bug+0x153/0x160 [] mark_lock+0x449/0x620 [] __lock_acquire+0x604/0x1030 [] lock_acquire+0x61/0x80 [] _spin_lock+0x2c/0x40 [] _atomic_dec_and_lock+0x17/0x60 [] put_rpccred+0x5d/0x100 [sunrpc] [] nfs_free_delegation_callback+0x13/0x20 [nfs] [] __rcu_process_callbacks+0x6a/0x1c0 [] rcu_process_callbacks+0x12/0x30 [] tasklet_action+0x38/0x80 [] __do_softirq+0x55/0xc0 [] do_softirq+0x47/0x50 [] irq_exit+0x35/0x40 [] smp_apic_timer_interrupt+0x43/0x80 [] apic_timer_interrupt+0x33/0x38 [] cpuidle_idle_call+0x6f/0x90 [] cpu_idle+0x43/0x70 [] rest_init+0x47/0x50 [] start_kernel+0x22a/0x2b0 [<00000000>] 0x0 ======================= Signed-off-by: Trond Myklebust commit 45328c354e8ae16b67cb3adb72ab57459f9e5fd6 Author: Trond Myklebust Date: Thu Jul 26 17:47:34 2007 -0400 NFS: Fix NFSv4 open stateid regressions Do not allow cached open for O_RDONLY or O_WRONLY unless the file has been previously opened in these modes. Also Fix the calculation of the mode in nfs4_close_prepare. We should only issue an OPEN_DOWNGRADE if we're sure that we will still be holding the correct open modes. This may not be the case if we've been doing delegated opens. Finally, there is no need to adjust the open mode bit flags in nfs4_close_done(): that has already been done in nfs4_close_prepare(). Signed-off-by: Trond Myklebust commit ba683031fae115d61c6b5f4c675cc27f6e9576d2 Author: Trond Myklebust Date: Fri Jul 27 10:23:05 2007 -0400 NFSv4: Fix a locking regression in nfs4_set_mode_locked() We don't really need to clear &state->inode_states inside nfs4_set_mode_locked, and doing so without holding the inode->i_lock would in any case be a bug... Signed-off-by: Trond Myklebust commit 5e11934d13c9a3bcb0cadad6c7a7de5c32660422 Author: Trond Myklebust Date: Thu Jul 26 12:06:17 2007 -0400 NFS: Fix put_nfs_open_context We need to grab the inode->i_lock atomically with the last reference put in order to remove the open context that is being freed from the nfsi->open_files list. Fix by converting the kref to a standard atomic counter and then using atomic_dec_and_lock()... Thanks to Arnd Bergmann for pointing out the problem. Signed-off-by: Trond Myklebust commit b247bbf1da69ce376aa1ceb8057331214589e366 Author: Trond Myklebust Date: Thu Jul 19 16:32:20 2007 -0400 SUNRPC: Fix a race in rpciod_down() The commit 4ada539ed77c7a2bbcb75cafbbd7bd8d2b9bef7b lead to the unpleasant possibility of an asynchronous rpc_task being required to call rpciod_down() when it is complete. This again means that the rpciod workqueue may get to call destroy_workqueue on itself -> hang... Change rpciod_up/rpciod_down to just get/put the module, and then create/destroy the workqueues on module load/unload. Signed-off-by: Trond Myklebust commit 4a2a4df7b6db25df8f3d5cc6dd0b096119359d92 Merge: f27eb3a... 6e7d934... Author: Linus Torvalds Date: Mon Aug 6 18:31:43 2007 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: [ARM] rpc: update defconfig [ARM] pata_icside: fix the FIXMEs [ARM] 4542/1: AT91: include atmel_lcdc.h in at91sam926{1,3}_devices.c [ARM] 4541/1: iop: defconfig updates [ARM] 4531/1: remove is_in_rom() protptype commit f27eb3afe87bd4b3fe919a6b7bf364f577ccee3b Merge: 6f605d8... 0681717... Author: Linus Torvalds Date: Mon Aug 6 18:25:06 2007 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: [CRYPTO] api: fix writting into unallocated memory in setkey_aligned commit 6f605d83dd3906bcf69280f8754df85f80538471 Author: Al Viro Date: Mon Aug 6 04:26:59 2007 +0100 take sched_debug.c out of nasal demon territory C99 6.10.3[11]: preprocessing directive within the argument list of macro invocation => undefined behaviour. Don't do that... Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit cc1ff43b7002b40686f03269b5011d59965737a4 Author: Rusty Russell Date: Mon Aug 6 10:48:18 2007 +1000 Enable lguest drivers in Kconfig Lguest drivers need to default to "Y" otherwise they're never selected for new builds. (We don't bother prompting, because they're less than 4k combined, and implied by selecting lguest support). Signed-off-by: Rusty Russell Signed-off-by: Linus Torvalds commit bac27d35cbbf7c641efcc75b5330df8717d6db65 Author: Avi Kivity Date: Sun Aug 5 10:16:11 2007 +0300 KVM: x86 emulator: fix debug reg mov instructions More fallout from the writeback fixes: debug register transfer instructions do their own writeback and thus need to disable the general writeback mechanism. This fixes oopses and some guest failures on AMD machines (the Intel variant decodes the instruction in hardware and thus does not need emulation). Cc: Alistair John Strachan Signed-off-by: Avi Kivity Signed-off-by: Linus Torvalds commit 9e865f58da5ff0a9c19669a49ac984117711757a Merge: 111e2a5... be1b685... Author: Linus Torvalds Date: Mon Aug 6 17:52:56 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [NETFILTER]: Add xt_statistic.h to the header list for usermode programs [BNX2]: Fix suspend/resume problem. [TG3]: Fix suspend/resume problem. commit 111e2a513bac77d317011350f34f9cc30deb9806 Merge: bced137... c8154c8... Author: Linus Torvalds Date: Mon Aug 6 17:52:42 2007 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SPARC32]: Fix build. commit bced13738405b62c8203df9c103d4ba63d747872 Merge: 21f1628... 2b05372... Author: Linus Torvalds Date: Mon Aug 6 17:48:34 2007 -0700 Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (32 commits) [SCSI] aacraid: prevent panic on adapter resource failure [SCSI] aha152x: use data accessors and !use_sg cleanup [SCSI] aha152x: Fix check_condition code-path [SCSI] aha152x: Clean Reset path [SCSI] aha152x: preliminary fixes and some comments [SCSI] aha152x: use bounce buffer [SCSI] aha152x: fix debug mode symbol conflict [SCSI] sd: disentangle barriers in SCSI [SCSI] lpfc : scsi command accessor fix for 8.2.2 [SCSI] qlogicpti: Some cosmetic changes [SCSI] lpfc 8.2.2 : Change version number to 8.2.2 [SCSI] lpfc 8.2.2 : Style cleanups [SCSI] lpfc 8.2.2 : Miscellaneous Bug Fixes [SCSI] lpfc 8.2.2 : Miscellaneous management and logging mods [SCSI] lpfc 8.2.2 : Rework the lpfc_printf_log() macro [SCSI] lpfc 8.2.2 : Attribute and Parameter splits for vport and physical port [SCSI] lpfc 8.2.2 : Fix locking around HBA's port_list [SCSI] lpfc 8.2.2 : Error messages and debugfs updates [SCSI] initialize shost_data to zero [SCSI] mptsas: add SMP passthrough support via bsg ... commit 21f16289270447673a7263ccc0b22d562fb01ecb Author: Dave Airlie Date: Tue Aug 7 09:09:51 2007 +1000 drm/i915: Fix i965 secured batchbuffer usage This 965G and above chipsets moved the batch buffer non-secure bits to another place. This means that previous drm's allowed in-secure batchbuffers to be submitted to the hardware from non-privileged users who are logged into X and and have access to direct rendering. Signed-off-by: Dave Airlie Signed-off-by: Linus Torvalds commit 313b0305b5a1e7e0fb39383befbf79558ce68a9c Author: Francois Romieu Date: Thu Aug 2 00:00:48 2007 +0200 r8169: avoid needless NAPI poll scheduling Theory : though needless, it should not have hurt. Practice: it does not play nice with DEBUG_SHIRQ + LOCKDEP + UP (see https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=242572). The patch makes sense in itself but I should dig why it has an effect on #242572 (assuming that NAPI do not change in a near future). Signed-off-by: Francois Romieu Cc: Edward Hsu commit 2584fbc3a61897de5eddd56b39a4fa9cd074eca2 Author: Roger So Date: Tue Jul 31 23:52:42 2007 +0200 r8169: PHY power-on fix Fix extracted from Realtek's driver (8.002.00/20070713) for the PHY attached to 8111/8168b chipsets. The check against mac_version is just usual paranoia during the bugfix period of the kernel cycle. -- FR Tested on Asus M2A-VM motherboard by Roger So. No regression on my Asrock 945G DVI either (built-in 8168 + 2x8169). Signed-off-by: Roger So Signed-off-by: Francois Romieu Cc: Edward Hsu commit f27b62d3e7ecca42a75f1c5d3cc225539301ba6d Author: Daniel Drake Date: Fri Jul 27 15:43:24 2007 +0200 [PATCH] mac80211: don't allow scanning in monitor mode zd1211rw gets confused when the user asks for a scan when the device is in monitor mode. This patch tightens up the SIWSCAN handler to deny the scan under these conditions. Signed-off-by: Daniel Drake Signed-off-by: Jiri Benc Signed-off-by: John W. Linville commit ba9b07d08b7e512535c6fcfcc2cf470f3dd58b8d Author: Zhu Yi Date: Fri Jul 27 15:43:23 2007 +0200 [PATCH] mac80211: Fix sparse error for sta_last_seq_ctrl_read Fix sparse error for sta_last_seq_ctrl_read. Signed-off-by: Zhu Yi Signed-off-by: Jiri Benc Signed-off-by: John W. Linville commit 21887b2f1826876f78a2d8e8e89f52993e7d76db Author: Zhu Yi Date: Fri Jul 27 15:43:23 2007 +0200 [PATCH] mac80211: use do { } while (0) for multi-line macros Use do { } while (0) for multi-line macros Signed-off-by: Zhu Yi Signed-off-by: Jiri Benc Signed-off-by: John W. Linville commit 0e7088de6ce5a64d9bb7b11eba4ee98ca5b654e8 Author: Daniel Drake Date: Fri Jul 27 15:43:21 2007 +0200 [PATCH] mac80211: missing dev_put in ieee80211_master_start_xmit Fixes an unlikely reference leak condition. Signed-off-by: Daniel Drake Signed-off-by: Jiri Benc Signed-off-by: John W. Linville commit fdc8f43b5e49b64b251bb48da95193a13ac0132f Author: Michael Buesch Date: Tue Jul 31 20:41:04 2007 +0200 [PATCH] softmac: Fix deadlock of wx_set_essid with assoc work The essid wireless extension does deadlock against the assoc mutex, as we don't unlock the assoc mutex when flushing the workqueue, which also holds the lock. Signed-off-by: Michael Buesch Signed-off-by: John W. Linville commit 69dad6e563140ce8578749a8c8651b7f1db8cdbc Author: Ulrich Kunitz Date: Sat Jul 21 22:42:02 2007 +0100 [PATCH] zd1211rw: fix filter for PSPOLL frames While filling the control set the driver tests for a PSPOLL frame. But it tested only the subtype of the packet. The full type needs to be tested to identify those packets reliably. [dsd@gentoo.org: backport to mainline] Signed-off-by: Ulrich Kunitz Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit c43bff43e0617dd56515b4ea42a8037c699c86f1 Author: Michael Wu Date: Sun Jul 15 17:09:55 2007 -0700 [PATCH] rtl8187: ensure priv->hwaddr is always valid conf->mac_addr is not guaranteed to be set. This ensures priv->hwaddr is always set to a valid mac address. Thanks to Johannes Berg for finding this problem. Signed-off-by: Michael Wu Signed-off-by: John W. Linville commit 313b0d3d863453cb596ea42aed07f8e1a9b0a7e2 Author: Masakazu Mokuno Date: Mon Jul 9 19:54:39 2007 +0900 [PATCH] remove duplicated ioctl entries in compat_ioctl.c This patch removes some duplicated wireless ioctl entries in the array 'struct ioctl_trans ioctl_start[]' of fs/compat_ioctl.c These entries are registered twice like: COMPATIBLE_IOCTL(SIOCGIWPRIV) and HANDLE_IOCTL(SIOCGIWPRIV, do_wireless_ioctl) Signed-off-by: Masakazu Mokuno Signed-off-by: John W. Linville commit 829ef1f574a979f681959fd17f9bd698e878cda4 Author: John W. Linville Date: Mon Aug 6 14:41:59 2007 -0400 Revert "[PATCH] bcm43xx: Fix deviation from specifications in set_baseband_attenuation" This reverts commit 77548f58070894cf5970a110981e511ffe793369. David Woodhouse wrote: >This broke my shinybook. I seem to get absolutely _no_ outgoing packets, >although I can receive OK. Larry Finger wrote: >Please revert this patch. Signed-off-by: John W. Linville commit 6e7d934060559454f161b3cf7cc5b7a5926e71d6 Author: Russell King Date: Mon Aug 6 16:48:49 2007 +0100 [ARM] rpc: update defconfig Signed-off-by: Russell King commit eba84481c7424f03c792d753fe02d9d6d3609fe0 Author: Russell King Date: Mon Aug 6 16:10:54 2007 +0100 [ARM] pata_icside: fix the FIXMEs Alan Cox suggested that the solution to the FIXMEs in pata_icside is to use a private postreset method to detect the lack of devices on a port, and in such a case, disable the interrupt for the port. This patch implements such a method, and removes the hard coded disable of port 0. Tested as working. Acked-by: Jeff Garzik Signed-off-by: Russell King commit 06817176784f620984200dc5d7cbe16984f7b262 Author: Sebastian Siewior Date: Fri Aug 3 20:33:47 2007 +0800 [CRYPTO] api: fix writting into unallocated memory in setkey_aligned setkey_unaligned() commited in ca7c39385ce1a7b44894a4b225a4608624e90730 overwrites unallocated memory in the following memset() because I used the wrong buffer length. Signed-off-by: Sebastian Siewior Signed-off-by: Herbert Xu commit be1b685fe6c9928848b26b568eaa86ba8ce0046c Author: Chuck Ebbert Date: Sat Aug 4 21:18:16 2007 -0700 [NETFILTER]: Add xt_statistic.h to the header list for usermode programs Add xt_statistic.h to the list of headers to install. Apparently needed to build newer versions of iptables. Signed-off-by: Chuck Ebbert Signed-off-by: David S. Miller commit c8154c8a9aaf548ad91e413da8b319858e37bc52 Author: Mark Fortescue Date: Sat Aug 4 21:17:18 2007 -0700 [SPARC32]: Fix build. Correct incorrect removal of asm-generic/fcntl.h from asm-sparc/fcntl.h by commit 6ba60d2195cd65d72eaf7ce3903a707c5bf20c7b. Signed-off-by: Mark Fortescue Signed-off-by: David S. Miller commit b8b786098b98f3b08dc8ab7cccf3963976b10336 Author: Jan Altenberg Date: Fri Aug 3 12:14:34 2007 +0100 [ARM] 4542/1: AT91: include atmel_lcdc.h in at91sam926{1,3}_devices.c - Include atmel_lcdc.h in at91sam926{1,3}_devices.c Signed-off-by: Jan Altenberg Signed-off-by: Russell King commit 581cf23b51614461ab66e3b786d96cc73e813550 Author: Dan Williams Date: Thu Aug 2 17:08:51 2007 +0100 [ARM] 4541/1: iop: defconfig updates With the availability of the iop-adma driver iop platforms can now use their offload engines for md-raid5 (copy+xor) and net-dma (tcp receive copy) offload. Cc: Lennert Buytenhek Signed-off-by: Dan Williams Signed-off-by: Russell King commit 0a8626a475b2b6215a25e944fbd378bd5818fdd7 Author: Greg Ungerer Date: Mon Jul 30 02:07:39 2007 +0100 [ARM] 4531/1: remove is_in_rom() protptype Remove unused is_in_rom() function prototype. Signed-off-by: Greg Ungerer Signed-off-by: Russell King commit 2b053729a84b6aac197df51b8729bc9fec743bff Author: Salyzyn, Mark Date: Thu Aug 2 15:38:59 2007 -0400 [SCSI] aacraid: prevent panic on adapter resource failure If the driver fails to allocate the contiguous (DMAable) memory for system reasons, we fail to load the instance, but then we try to free the allocation in the cleanup code and we get a panic in pci_free_consistent(). This is reported against an older kernel, hope this is relevant for latest/greatest. Signed-off-by: Mark Salyzyn Signed-off-by: James Bottomley commit 2338545aafbecce55bbc651fb3f63ebf7468b6fb Author: Boaz Harrosh Date: Sun Jul 29 22:29:02 2007 +0300 [SCSI] aha152x: use data accessors and !use_sg cleanup And finally this is the regular !use_sg cleanup and use of data accessors. Signed-off-by: Boaz Harrosh Signed-off-by: James Bottomley commit 45333ffa6ffd2f493fc3853481984b6e60b4fb93 Author: Boaz Harrosh Date: Sun Jul 29 22:27:06 2007 +0300 [SCSI] aha152x: Fix check_condition code-path check_condition code-path was similar but more complicated to Reset. It went like this: 1. extra space was allocated at aha152x_scdata for mirroring scsi_cmnd members. 2. At aha152x_internal_queue() every not check_condition (REQUEST_SENSE) command was copied to above members in case of error. 3. At busfree_run() in the DONE_CS phase if a Status of SAM_STAT_CHECK_CONDITION was detected. The command was re-queued Internally using aha152x_internal_queue(,,check_condition,) The old command members are over written with the REQUEST_SENSE info. 4. At busfree_run() in the DONE_CS phase again. If it is a check_condition command, info was restored from mirror made at first call to aha152x_internal_queue() (see 2) and the command is completed. What I did is: 1. Allocate less space in aha152x_scdata only for the 16-byte original command. (which is actually not needed by scsi-ml anymore at this stage. But this is to much knowledge of scsi-ml) 2. If Status == SAM_STAT_CHECK_CONDITION, then like before re-queue a REQUEST_SENSE command. But only now save original command members. (Less of them) 3. In aha152x_internal_queue(), just like for Reset, use the check_condition hint to set differently the working members. execute the command. 4. At busfree_run() in the DONE_CS phase again. restore needed members. While at it. This patch fixes a BUG. Old code when sending a REQUEST_SENSE for a failed command. Would than return with cmd->resid == 0 which was the status of the REQUEST_SENSE. The failing command resid was lost. And when would resid be interesting if not on a failing command? Signed-off-by: Boaz Harrosh Signed-off-by: James Bottomley commit 66acdb0309507950376393f2fb1c8e7482fb4d52 Author: Boaz Harrosh Date: Sun Jul 29 22:24:09 2007 +0300 [SCSI] aha152x: Clean Reset path What Reset code was doing: Save command's important/dangerous Info on stack. NULL those members from scsi_cmnd. Issue a Reset. wait for it to finish than restore members and return. What I do is save or NULL nothing. But use the "resetting" hint in aha152x_internal_queue() to NULL out working members and leave struct scsi_cmnd alone. The indent here looks funny but it will change/drop in last patch and it is clear this way what changed. Signed-off-by: James Bottomley commit 0ceb47987d31f8529c60f1e802e0523fcde9492c Author: Boaz Harrosh Date: Sun Jul 29 22:22:04 2007 +0300 [SCSI] aha152x: preliminary fixes and some comments hunk by hunk: - CHECK_CONDITION is what happens to cmnd->status >> 1 or after status_byte() macro. But here it is used directly on status which means 0x1 which is an undefined bit in the standard. And is a status that will never return from a target. - in busfree_run at the DONE_SC phase we have 3 distinct operation: 1-if(DONE_SC->SCp.phase & check_condition) The REQUEST_SENSE command return. - Restore original command - Than continue to operation 3. 2-if(DONE_SC->SCp.Status==SAM_STAT_CHECK_CONDITION) A regular command returned with a status. - Internally re-Q a REQUEST_SENSE. - Do not do operation 3. 3- - Complete the command and return it to scsi-ml So the 0x2 in both these operations (1,2) means the scsi check-condition status, hence SAM_STAT_CHECK_CONDITION - Here the code asks about !(DONE_SC->SCp.Status & not_issued) but "not_issued" is an enum belonging to the "phase" member and not to the Status returned from target. The reason this works is because not_issued==1 and Also CHECK_CONDITION==1 (remember from hunk 1). So actually the code was asking !(DONE_SC->SCp.Status & CHECK_CONDITION). Which means "Has the status been read from target yet?" Staus is read at status_run(). "not_issued" is cleared in seldo_run() which is usually earlier than status_run(). So this patch does nothing as far as assembly is concerned but it does let the reader understand what is going on. Signed-off-by: Boaz Harrosh Signed-off-by: James Bottomley commit b1ee0795276f976118f832313488e6daf83ff542 Author: Boaz Harrosh Date: Sun Jul 29 22:18:20 2007 +0300 [SCSI] aha152x: use bounce buffer Cause highmem buffers to be bounced to low memory until this driver supports highmem addresses. Otherwise it just oopses on NULL buffer addresses. Signed-off-by: Randy Dunlap Signed-off-by: Boaz Harrosh Signed-off-by: James Bottomley commit 50535df3ee3d3407ff61044692942288df7fcd6a Author: Boaz Harrosh Date: Sun Jul 29 22:16:14 2007 +0300 [SCSI] aha152x: fix debug mode symbol conflict The symbol conflicts with the rather global one in include/linux/locks.h. Signed-off-by: Randy Dunlap Signed-off-by: Boaz Harrosh Signed-off-by: James Bottomley commit 03a5743a12b58e10eaa936a02498539db645ba4e Author: James Bottomley Date: Fri Aug 3 16:41:11 2007 -0500 [SCSI] sd: disentangle barriers in SCSI Our current implementation has a generic set of barrier functions that go through the SCSI driver model. Realistically, this is unnecessary, because the only device that can use barriers (sd) can set the flush functions up at probe or revalidate time. This patch pulls the barrier functions out of the mid layer and scsi driver model and relocates them directly in sd. Acked-by: Tejun Heo Signed-off-by: James Bottomley commit 6caebb02294b503c5eced4a3f90e6166548ce879 Author: Michael Chan Date: Fri Aug 3 20:57:25 2007 -0700 [BNX2]: Fix suspend/resume problem. The device would not resume properly if it was shutdown before the system was suspended. In such scenario where the netif_running state is 0, bnx2_suspend() would not save the PCI state and so the memory enable bit and bus master enable bit would be lost. We fix this by always saving and restoring the PCI state in bnx2_suspend() and bnx2_resume() regardless of netif_running() state. Update version to 1.6.4. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3e0c95fd648c0d3175b9ff2232597d0b02eb7d46 Author: Michael Chan Date: Fri Aug 3 20:56:54 2007 -0700 [TG3]: Fix suspend/resume problem. Joachim Deguara reported that tg3 devices would not resume properly if the device was shutdown before the system was suspended. In such scenario where the netif_running state is 0, tg3_suspend() would not save the PCI state and so the memory enable bit and bus master enable bit would be lost. We fix this by always saving and restoring the PCI state in tg3_suspend() and tg3_resume() regardless of netif_running() state. Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 66dbfbe6fde35c881deda5cebb6ecaa0dcc1c975 Author: James Smart Date: Sun Aug 5 06:08:38 2007 -0400 [SCSI] lpfc : scsi command accessor fix for 8.2.2 It was pointed out by Boaz Harrosh that our 8.2.2 lpfc patches revert a change to using SCSI command accessor functions. This patch, to be applied on top of the 8.2.2. patches, updates the driver for the accessor functions. Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7c5b016246a889ec4b5dc8d40cab525e888a649e Author: Jan Altenberg Date: Fri Aug 3 16:08:15 2007 +0800 ucc_geth: remove get_perm_addr from ucc_geth_ethtool.c This is needed because commit 313674afa8fdced2fe79f50f38e1c387b63d8790 inlines the generic function to the caller. Signed-off-by: Jan Altenberg Signed-off-by: Li Yang commit ed7e63a51d46e835422d89c687b8a3e419a4212a Author: Domen Puncer Date: Fri Aug 3 16:07:58 2007 +0800 ucc_geth: fix section mismatch This fix section mismatch: reference to .exit.text:uec_mdio_exit (between 'ucc_geth_init' and 'uec_mdio_init') void __exit uec_mdio_exit(void) is called from - static int __init ucc_geth_init(void) - static void __exit ucc_geth_exit(void) First one would make error path more than just an error. Signed-off-by: Domen Puncer Signed-off-by: Li Yang commit 585a8a59ebfc81327e1c4f2c0e80730bdd2e5d8e Author: Mark Fortescue Date: Tue Jul 31 20:10:45 2007 +0100 [SCSI] qlogicpti: Some cosmetic changes Change a printk sequencing issue where <6> ... was coming up in the middle of a line when scsi_add_host was being called. Reduce the length of some printk messages and make the messages more consistant. All cosmetic but it makes it easier to read as it scrolles off the screen during boot. Signed-off-by: Mark Fortescue Acked-by: David S. Miller Signed-off-by: James Bottomley commit 822b41f4eb98c144a07747e88e94941946bda124 Author: James Smart Date: Thu Aug 2 11:10:46 2007 -0400 [SCSI] lpfc 8.2.2 : Change version number to 8.2.2 Signed-off-by: James Smart Signed-off-by: James Bottomley commit 311464ec0bfea96e7f09f4afca26283f5fa90c24 Author: James Smart Date: Thu Aug 2 11:10:37 2007 -0400 [SCSI] lpfc 8.2.2 : Style cleanups - Clean up all instances of mixed tab-space indentation - Clean up sparse build errors - Add appropriate static's Signed-off-by: James Smart Signed-off-by: James Bottomley commit 51ef4c26891a734bc8416b639ad460a8162926bc Author: James Smart Date: Thu Aug 2 11:10:31 2007 -0400 [SCSI] lpfc 8.2.2 : Miscellaneous Bug Fixes - Fix vport ndlp ref counting errors - Fix use after free of ndlp structure - Use the correct flag to check for LOADING setting. - Fix driver unload bugs (related to shost references) after link down or rscn - Fix up HBQ initialization - Fix port_list locking around driver unload. - Fix references to hostdata as a phba - Fix GFFID type offset to work correctly with big endian structure. - Only call pci_disable_msi if the pci_enable_msi succeeded - Fix vport_delete wait/fail if in discovery - Put a reference on the nameservers ndlp when performing CT traffic. - Remove unbalanced hba unlock. - Fix up HBQ processing - Fix lpfc debugfs discovery trace output for ELS rsp cmpl - Send ADISC when rpi is 0 - Stop FDISC retrying forever - Unable to retrieve correct config parameter for vport - Fix sli_validate_fcp_iocb, sli_sum_iocb, sli_abort_iocb to be vport-aware. - Fix index-out-of-range error in iocb. Spotted by Coverity. Signed-off-by: James Smart Signed-off-by: James Bottomley commit 78b2d852a88cd2a55e3ab632109de045d58b83e3 Author: James Smart Date: Thu Aug 2 11:10:21 2007 -0400 [SCSI] lpfc 8.2.2 : Miscellaneous management and logging mods - Remove the "management_version" sysfs parameter (was unused) - Add HBQ information to lpfc debugfs - Change lpfc_npiv_enable name back to lpfc_enable_npiv (internal stds) - Remove "issue_lip" attribute from the vports transport template Signed-off-by: James Smart Signed-off-by: James Bottomley commit e8b62011d88d6fdba585fb2bb77c9274a63cadab Author: James Smart Date: Thu Aug 2 11:10:09 2007 -0400 [SCSI] lpfc 8.2.2 : Rework the lpfc_printf_log() macro Rework the lpfc_printf_log() macro so that logging is enabled on a per-vport basis. Used to be on a physical-port basis, thus logging with large numbers of vports became a mess. Required redefinition of the macro, and an update of every use. Signed-off-by: James Smart Signed-off-by: James Bottomley commit 3de2a653a127c468284c48e233719dc39769e354 Author: James Smart Date: Thu Aug 2 11:09:59 2007 -0400 [SCSI] lpfc 8.2.2 : Attribute and Parameter splits for vport and physical port - Split attributes up into vport and non-vport attributes. - Move vport specific cfg params to vport Many of the vport-specific behaviors were still global attributes on the physical port. Move them to the vport itself. Signed-off-by: James Smart Signed-off-by: James Bottomley commit 549e55cd2a1b83ea45ac17fb6c309654a3d371a4 Author: James Smart Date: Thu Aug 2 11:09:51 2007 -0400 [SCSI] lpfc 8.2.2 : Fix locking around HBA's port_list Cleans up a lot of bad behaviors that have been in this area a while Signed-off-by: James Smart Signed-off-by: James Bottomley commit a58cbd5212fff2d4bba0bf58e778f02069597294 Author: James Smart Date: Thu Aug 2 11:09:43 2007 -0400 [SCSI] lpfc 8.2.2 : Error messages and debugfs updates Error messages and debugfs updates: - Fix up GID_FT error messages - Enhance debugfs with slow_ring_trace, dumpslim and nodelist information - Add log type (and messages) for vport state changes - Enhance log messages when retries ELS fail Signed-off-by: James Smart Signed-off-by: James Bottomley commit c000c43cf12090972fad0fbb621d78c2100d0373 Author: FUJITA Tomonori Date: Wed Aug 1 08:40:27 2007 +0900 [SCSI] initialize shost_data to zero It's better to initialize host->shost_data to zero like target->starget_data and device->sdev_data. Signed-off-by: FUJITA Tomonori Signed-off-by: James Bottomley commit 159e36fe996411a4a05added6b7b20b1c4490ebb Author: FUJITA Tomonori Date: Mon Jul 30 11:10:07 2007 -0600 [SCSI] mptsas: add SMP passthrough support via bsg This patch adds support for SAS Management Protocol (SMP) passthrough support via bsg. Signed-off-by: FUJITA Tomonori Acked-by: Eric Moore Signed-off-by: James Bottomley commit 96d32215d433c38f258159b8735f98158f6a2575 Author: David Miller Date: Mon Jul 30 16:19:20 2007 -0700 [SCSI] ESP: Revert ESP_BUS_TIMEOUT back down to 250 This reverts d73f5222a618a91452d41c29f5996ce3d9c63673 The bug that made us increase ESP_BUS_TIMEOUT to 275 turned out to be a memset bug on 32-bit sparc. It is better to put this back at the correct timeout value than to leave it increased when there is no reason for doing so. Signed-off-by: David S. Miller Signed-off-by: James Bottomley commit 55d9fcf57ba5ec427544fca7abc335cf3da78160 Author: Matthew Wilcox Date: Mon Jul 30 15:19:18 2007 -0600 [SCSI] dpt_i2o: convert to SCSI hotplug model - Delete refereces to HOSTS_C - Switch to module_init/module_exit instead of detect/release - Don't pass around the host template and rename it to adpt_template - Switch from scsi_register/scsi_unregister to scsi_host_alloc, scsi_add_host, scsi_scan_host and scsi_host_put. Signed-off-by: Matthew Wilcox Acked-by: "Salyzyn, Mark" Signed-off-by: James Bottomley commit 53772a2cb40748ea0b26db8101d632ddb3875b51 Author: Seokmann Ju Date: Mon Jul 30 11:01:07 2007 -0700 [SCSI] qla2xxx: fix panic caused by previous patch - this patch will fix a panic caused by omitted memory allocation for the nvram. Signed-off-by: Seokmann Ju Signed-off-by: James Bottomley commit 142009a3df39ecd4e96601d8bdabbe0c5f6e2f4e Author: James Bottomley Date: Mon Jul 30 09:52:25 2007 -0500 [SCSI] aic7xxx: cap maxsync according to correct card limits Not doing this can cause cards less than u160 capable to send out PPR offers to devices they can't then deliver on ... causing some devices to get a bit confused. Fix by capping the start syncrate at the appropriate level according to the card capabilities. Signed-off-by: James Bottomley commit 28f85009e0cf6a5232cd285131eac3dfe26d9e3a Author: Matthias Kaehlcke Date: Sun Jul 29 23:38:15 2007 +0200 [SCSI] st: Use mutex instead of semaphore The SCSI Tape driver uses a semaphore as mutex. Use the mutex API instead of the (binary) semaphore. Signed-off-by: Matthias Kaehlcke Acked-by: Kai Makisara Signed-off-by: James Bottomley commit 0c6a89ba640d28e1dcd7fd1a217d2cfb92ae4953 Author: FUJITA Tomonori Date: Sun Jul 29 23:00:46 2007 +0900 [SCSI] bsg: update sg_io_v4 structure This updates sg_io_v4 structure (based on Doug's RFC, release 1.3). The major changes are: - add dout_resid field - increase tag size to 64 bits to comply with SAM-4 and SRP - add dout_iovec_count and din_iovec_count dout_iovec_count and din_iovec_count aren't supported now. I'm not sure whether they will be supported or not but they were added for the possible future changes. Signed-off-by: FUJITA Tomonori Signed-off-by: James Bottomley commit db47c2d8d98a76083a88ec53f44cc74c48dfd1e8 Author: James Bottomley Date: Sat Jul 28 13:40:21 2007 -0400 [SCSI] mpt fusion: make logging a global sysfs parameter Wire up the mpt_debug_level module parameter so you can write to the /sys/module/mptbase/parameters/mpt_debug_level and have it take effect in every ioc. Acked-by: "Moore, Eric" Signed-off-by: James Bottomley commit 15617ff66c777b008e170f9c5b0e8a9854937648 Author: James Bottomley Date: Sat Jul 28 11:07:36 2007 -0400 [SCSI] libsas: fix build dependencies on libata If you have the libsas with ATA support, it needs libata to function. The problem is that if you compile in libsas, you can't build libata as a module (however, vice versa you can). Signed-off-by: James Bottomley commit 8e9a8a0d56c5d9d87adbefbbc8c8728c529fd95a Author: Jeff Garzik Date: Tue Jul 17 05:25:17 2007 -0400 [SCSI] gdth: remove redundant PCI stuff This patch * removes struct members that duplicate pci_dev members * replaces ha->stype usage with ha->pdev->device usage where feasible Signed-off-by: Jeff Garzik Acked-by: Christoph Hellwig Acked-by: Achim Leubner Signed-off-by: James Bottomley commit 7603e02eac309626c0153ebddf277253ea7fe0e0 Author: FUJITA Tomonori Date: Mon Jul 23 09:28:40 2007 +0900 [SCSI] ibmvscsi: use shost_priv Signed-off-by: FUJITA Tomonori Acked-by: Brian King Signed-off-by: James Bottomley commit ed3a3633b798a15281f9c9a89a7e74d4bdd02ebe Author: FUJITA Tomonori Date: Mon Jul 23 09:28:39 2007 +0900 [SCSI] ibmvscsi: remove unnecessary map_sg check No need to check use_sg since sg_tablesize is set appropriately in the scsi host template. Brian King's patch (2a7309372fe56ae46c499b772d811ad31c501dd9) did this cleanup but the data buffer accessors patch (written before the patch and merged after it) restored the check. Signed-off-by: FUJITA Tomonori Acked-by: Brian King Signed-off-by: James Bottomley commit 7936a892e72498a05b9a7fb1fec6506d65c8e435 Author: FUJITA Tomonori Date: Sun Jul 29 16:46:28 2007 +0900 [SCSI] zfcp: convert to use the data buffer accessors - remove the unnecessary map_single path. - convert to use the new accessors for the sg lists and the parameters. Signed-off-by: FUJITA Tomonori Acked-by: Swen Schillig Signed-off-by: James Bottomley