commit 02f8c6aee8df3cdc935e9bdd4f2d020306035dbe Author: Linus Torvalds Date: Thu Jul 21 19:17:23 2011 -0700 Linux 3.0 commit 1f922d07704c501388a306c78536bca7432b3934 Merge: 2bafc7a 33d8881 Author: Linus Torvalds Date: Thu Jul 21 17:20:57 2011 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb: sparc,kgdbts: fix compile regression with kgdb test suite commit 33d8881af5584fb7994f6b3d17fc11dcaf07b3b2 Author: Jason Wessel Date: Tue Jul 19 15:43:16 2011 -0500 sparc,kgdbts: fix compile regression with kgdb test suite Commit 63ab25ebbc (kgdbts: unify/generalize gdb breakpoint adjustment) introduced a compile regression on sparc. kgdbts.c: In function 'check_and_rewind_pc': kgdbts.c:307: error: implicit declaration of function 'instruction_pointer_set' Simply add the correct macro definition for instruction pointer on the Sparc architecture. Signed-off-by: Jason Wessel Acked-by: Mike Frysinger Acked-by: David S. Miller commit 2bafc7a275436da4a1ece4ecfcbacb82a0560efb Merge: 57a6fa9 2cebaa5 Author: Linus Torvalds Date: Thu Jul 21 14:28:01 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: CIFS: Fix wrong length in cifs_iovec_read commit 57a6fa9acd6b4a479a6ede4d6d2258f04afd3a6f Merge: ad21b11 a536877 Author: Linus Torvalds Date: Thu Jul 21 12:25:39 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Make Dell Latitude E6420 use reboot=pci x86: Make Dell Latitude E5420 use reboot=pci commit a536877e77f73ea22d12d94a019fedd9671b6acd Author: H. Peter Anvin Date: Thu Jul 21 11:22:21 2011 -0700 x86: Make Dell Latitude E6420 use reboot=pci Yet another variant of the Dell Latitude series which requires reboot=pci. From the E5420 bug report by Daniel J Blueman: > The E6420 is affected also (same platform, different casing and > features), which provides an external confirmation of the issue; I can > submit a patch for that later or include it if you prefer: > http://linux.koolsolutions.com/2009/08/04/howto-fix-linux-hangfreeze-during-reboots-and-restarts/ Reported-by: Daniel J Blueman Signed-off-by: H. Peter Anvin Cc: commit b7798d28ec15d20fd34b70fa57eb13f0cf6d1ecd Author: Daniel J Blueman Date: Fri May 13 09:04:59 2011 +0800 x86: Make Dell Latitude E5420 use reboot=pci Rebooting on the Dell E5420 often hangs with the keyboard or ACPI methods, but is reliable via the PCI method. [ hpa: this was deferred because we believed for a long time that the recent reshuffling of the boot priorities in commit 660e34cebf0a11d54f2d5dd8838607452355f321 fixed this platform. Unfortunately that turned out to be incorrect. ] Signed-off-by: Daniel J Blueman Link: http://lkml.kernel.org/r/1305248699-2347-1-git-send-email-daniel.blueman@gmail.com Signed-off-by: H. Peter Anvin Cc: commit ad21b115772dfa146f19ec5d1db9de25973c483b Merge: b91da88 e28f871 Author: Linus Torvalds Date: Thu Jul 21 11:07:18 2011 -0700 Merge branch 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915: Fix unfenced alignment on pre-G33 hardware drm/i915: Add quirk to disable SSC on Lenovo U160 LVDS commit b91da88fed84843313a1b6fd1b1c834a24bbcf9e Author: Linus Torvalds Date: Thu Jul 21 11:01:42 2011 -0700 vfs: drop conditional inode prefetch in __do_lookup_rcu It seems to hurt performance in real life. Yes, the inode will be used later, but the conditional doesn't seem to predict all that well (negative dentries are not uncommon) and it looks like the cost of prefetching is simply higher than depending on the cache doing the right thing. As usual. Signed-off-by: Linus Torvalds commit b307d4655a71749ac3f91c6dbe33d28cc026ceeb Author: Jan Beulich Date: Thu Jul 21 15:02:43 2011 +0100 FS-Cache: Fix __fscache_uncache_all_inode_pages()'s outer loop The compiler, at least for ix86 and m68k, validly warns that the comparison: next <= (loff_t)-1 is always true (and it's always true also for x86-64 and probably all other arches - as long as pgoff_t isn't wider than loff_t). The intention appears to be to avoid wrapping of "next", so rather than eliminating the pointless comparison, fix the loop to indeed get exited when "next" would otherwise wrap. On m68k the following warning is observed: fs/fscache/page.c: In function '__fscache_uncache_all_inode_pages': fs/fscache/page.c:979: warning: comparison is always false due to limited range of data type Reported-by: Geert Uytterhoeven Reported-by: Jan Beulich Signed-off-by: Jan Beulich Signed-off-by: David Howells Cc: Suresh Jayaraman Cc: Geert Uytterhoeven Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 2cebaa58b7de775386732bbd6cd11c3f5b73faf0 Author: Pavel Shilovsky Date: Wed Jul 20 18:24:09 2011 +0400 CIFS: Fix wrong length in cifs_iovec_read Signed-off-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Steve French commit cf6ace16a3cd8b728fb0afa68368fd40bbeae19f Merge: acc11ea d1e9ae4 Author: Linus Torvalds Date: Wed Jul 20 15:56:25 2011 -0700 Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: signal: align __lock_task_sighand() irq disabling and RCU softirq,rcu: Inform RCU of irq_exit() activity sched: Add irq_{enter,exit}() to scheduler_ipi() rcu: protect __rcu_read_unlock() against scheduler-using irq handlers rcu: Streamline code produced by __rcu_read_unlock() rcu: Fix RCU_BOOST race handling current->rcu_read_unlock_special rcu: decrease rcu_report_exp_rnp coupling with scheduler commit acc11eab70591744369722280c9ce162a6193494 Merge: 919d25a d110235 Author: Linus Torvalds Date: Wed Jul 20 15:55:48 2011 -0700 Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Avoid creating superfluous NUMA domains on non-NUMA systems sched: Allow for overlapping sched_domain spans sched: Break out cpu_power from the sched_group structure commit 919d25a710bd6ded210426e911c9f9ec535d8d9c Merge: e6625fa 3628c3f Author: Linus Torvalds Date: Wed Jul 20 15:33:59 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86. reboot: Make Dell Latitude E6320 use reboot=pci x86, doc only: Correct real-mode kernel header offset for init_size x86: Disable AMD_NUMA for 32bit for now commit d1e9ae47a0285d3f1699e8219ce50f656243b93f Merge: e6625fa a841796 Author: Ingo Molnar Date: Wed Jul 20 20:59:26 2011 +0200 Merge branch 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/urgent commit a841796f11c90d53dbac773be56b04fbee8af272 Author: Paul E. McKenney Date: Tue Jul 19 03:25:36 2011 -0700 signal: align __lock_task_sighand() irq disabling and RCU The __lock_task_sighand() function calls rcu_read_lock() with interrupts and preemption enabled, but later calls rcu_read_unlock() with interrupts disabled. It is therefore possible that this RCU read-side critical section will be preempted and later RCU priority boosted, which means that rcu_read_unlock() will call rt_mutex_unlock() in order to deboost itself, but with interrupts disabled. This results in lockdep splats, so this commit nests the RCU read-side critical section within the interrupt-disabled region of code. This prevents the RCU read-side critical section from being preempted, and thus prevents the attempt to deboost with interrupts disabled. It is quite possible that a better long-term fix is to make rt_mutex_unlock() disable irqs when acquiring the rt_mutex structure's ->wait_lock. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit ec433f0c51527426989ea8a38a856d810d739414 Author: Peter Zijlstra Date: Tue Jul 19 15:32:00 2011 -0700 softirq,rcu: Inform RCU of irq_exit() activity The rcu_read_unlock_special() function relies on in_irq() to exclude scheduler activity from interrupt level. This fails because exit_irq() can invoke the scheduler after clearing the preempt_count() bits that in_irq() uses to determine that it is at interrupt level. This situation can result in failures as follows: $task IRQ SoftIRQ rcu_read_lock() /* do stuff */ |= UNLOCK_BLOCKED rcu_read_unlock() --t->rcu_read_lock_nesting irq_enter(); /* do stuff, don't use RCU */ irq_exit(); sub_preempt_count(IRQ_EXIT_OFFSET); invoke_softirq() ttwu(); spin_lock_irq(&pi->lock) rcu_read_lock(); /* do stuff */ rcu_read_unlock(); rcu_read_unlock_special() rcu_report_exp_rnp() ttwu() spin_lock_irq(&pi->lock) /* deadlock */ rcu_read_unlock_special(t); Ed can simply trigger this 'easy' because invoke_softirq() immediately does a ttwu() of ksoftirqd/# instead of doing the in-place softirq stuff first, but even without that the above happens. Cure this by also excluding softirqs from the rcu_read_unlock_special() handler and ensuring the force_irqthreads ksoftirqd/# wakeup is done from full softirq context. [ Alternatively, delaying the ->rcu_read_lock_nesting decrement until after the special handling would make the thing more robust in the face of interrupts as well. And there is a separate patch for that. ] Cc: Thomas Gleixner Reported-and-tested-by: Ed Tomlinson Signed-off-by: Peter Zijlstra Signed-off-by: Paul E. McKenney commit c5d753a55ac92e09816d410cd17093813f1a904b Author: Peter Zijlstra Date: Tue Jul 19 15:07:25 2011 -0700 sched: Add irq_{enter,exit}() to scheduler_ipi() Ensure scheduler_ipi() calls irq_{enter,exit} when it does some actual work. Traditionally we never did any actual work from the resched IPI and all magic happened in the return from interrupt path. Now that we do do some work, we need to ensure irq_{enter,exit} are called so that we don't confuse things. This affects things like timekeeping, NO_HZ and RCU, basically everything with a hook in irq_enter/exit. Explicit examples of things going wrong are: sched_clock_cpu() -- has a callback when leaving NO_HZ state to take a new reading from GTOD and TSC. Without this callback, time is stuck in the past. RCU -- needs in_irq() to work in order to avoid some nasty deadlocks Signed-off-by: Peter Zijlstra Signed-off-by: Paul E. McKenney commit 10f39bb1b2c1923ca73e70cb13aeee0e9b822d8f Author: Paul E. McKenney Date: Sun Jul 17 21:14:35 2011 -0700 rcu: protect __rcu_read_unlock() against scheduler-using irq handlers The addition of RCU read-side critical sections within runqueue and priority-inheritance lock critical sections introduced some deadlock cycles, for example, involving interrupts from __rcu_read_unlock() where the interrupt handlers call wake_up(). This situation can cause the instance of __rcu_read_unlock() invoked from interrupt to do some of the processing that would otherwise have been carried out by the task-level instance of __rcu_read_unlock(). When the interrupt-level instance of __rcu_read_unlock() is called with a scheduler lock held from interrupt-entry/exit situations where in_irq() returns false, deadlock can result. This commit resolves these deadlocks by using negative values of the per-task ->rcu_read_lock_nesting counter to indicate that an instance of __rcu_read_unlock() is in flight, which in turn prevents instances from interrupt handlers from doing any special processing. This patch is inspired by Steven Rostedt's earlier patch that similarly made __rcu_read_unlock() guard against interrupt-mediated recursion (see https://lkml.org/lkml/2011/7/15/326), but this commit refines Steven's approach to avoid the need for preemption disabling on the __rcu_read_unlock() fastpath and to also avoid the need for manipulating a separate per-CPU variable. This patch avoids need for preempt_disable() by instead using negative values of the per-task ->rcu_read_lock_nesting counter. Note that nested rcu_read_lock()/rcu_read_unlock() pairs are still permitted, but they will never see ->rcu_read_lock_nesting go to zero, and will therefore never invoke rcu_read_unlock_special(), thus preventing them from seeing the RCU_READ_UNLOCK_BLOCKED bit should it be set in ->rcu_read_unlock_special. This patch also adds a check for ->rcu_read_unlock_special being negative in rcu_check_callbacks(), thus preventing the RCU_READ_UNLOCK_NEED_QS bit from being set should a scheduling-clock interrupt occur while __rcu_read_unlock() is exiting from an outermost RCU read-side critical section. Of course, __rcu_read_unlock() can be preempted during the time that ->rcu_read_lock_nesting is negative. This could result in the setting of the RCU_READ_UNLOCK_BLOCKED bit after __rcu_read_unlock() checks it, and would also result it this task being queued on the corresponding rcu_node structure's blkd_tasks list. Therefore, some later RCU read-side critical section would enter rcu_read_unlock_special() to clean up -- which could result in deadlock if that critical section happened to be in the scheduler where the runqueue or priority-inheritance locks were held. This situation is dealt with by making rcu_preempt_note_context_switch() check for negative ->rcu_read_lock_nesting, thus refraining from queuing the task (and from setting RCU_READ_UNLOCK_BLOCKED) if we are already exiting from the outermost RCU read-side critical section (in other words, we really are no longer actually in that RCU read-side critical section). In addition, rcu_preempt_note_context_switch() invokes rcu_read_unlock_special() to carry out the cleanup in this case, which clears out the ->rcu_read_unlock_special bits and dequeues the task (if necessary), in turn avoiding needless delay of the current RCU grace period and needless RCU priority boosting. It is still illegal to call rcu_read_unlock() while holding a scheduler lock if the prior RCU read-side critical section has ever had either preemption or irqs enabled. However, the common use case is legal, namely where then entire RCU read-side critical section executes with irqs disabled, for example, when the scheduler lock is held across the entire lifetime of the RCU read-side critical section. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit d110235d2c331c4f79e0879f51104be79e17a469 Author: Peter Zijlstra Date: Wed Jul 20 18:42:57 2011 +0200 sched: Avoid creating superfluous NUMA domains on non-NUMA systems When creating sched_domains, stop when we've covered the entire target span instead of continuing to create domains, only to later find they're redundant and throw them away again. This avoids single node systems from touching funny NUMA sched_domain creation code and reduces the risks of the new SD_OVERLAP code. Requested-by: Linus Torvalds Signed-off-by: Peter Zijlstra Cc: Anton Blanchard Cc: mahesh@linux.vnet.ibm.com Cc: benh@kernel.crashing.org Cc: linuxppc-dev@lists.ozlabs.org Link: http://lkml.kernel.org/r/1311180177.29152.57.camel@twins Signed-off-by: Ingo Molnar commit e3589f6c81e4764d32a25d2a2a0afe54fa344f5c Author: Peter Zijlstra Date: Fri Jul 15 10:35:52 2011 +0200 sched: Allow for overlapping sched_domain spans Allow for sched_domain spans that overlap by giving such domains their own sched_group list instead of sharing the sched_groups amongst each-other. This is needed for machines with more than 16 nodes, because sched_domain_node_span() will generate a node mask from the 16 nearest nodes without regard if these masks have any overlap. Currently sched_domains have a sched_group that maps to their child sched_domain span, and since there is no overlap we share the sched_group between the sched_domains of the various CPUs. If however there is overlap, we would need to link the sched_group list in different ways for each cpu, and hence sharing isn't possible. In order to solve this, allocate private sched_groups for each CPU's sched_domain but have the sched_groups share a sched_group_power structure such that we can uniquely track the power. Reported-and-tested-by: Anton Blanchard Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/n/tip-08bxqw9wis3qti9u5inifh3y@git.kernel.org Signed-off-by: Ingo Molnar commit 9c3f75cbd144014bea6af866a154cc2e73ab2287 Author: Peter Zijlstra Date: Thu Jul 14 13:00:06 2011 +0200 sched: Break out cpu_power from the sched_group structure In order to prepare for non-unique sched_groups per domain, we need to carry the cpu_power elsewhere, so put a level of indirection in. Reported-and-tested-by: Anton Blanchard Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/n/tip-qkho2byuhe4482fuknss40ad@git.kernel.org Signed-off-by: Ingo Molnar commit e6625fa48e6580a74b7e700efd7e6463e282810b Merge: 47126d8 38be7a7 Author: Linus Torvalds Date: Tue Jul 19 22:10:28 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: ceph: fix file mode calculation commit 47126d807ab1ef24e0f02dcca20883e275198fe2 Merge: 4746efd 9daedd8 Author: Linus Torvalds Date: Tue Jul 19 22:10:05 2011 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: davinci: DM365 EVM: fix video input mux bits ARM: davinci: Check for NULL return from irq_alloc_generic_chip arm: davinci: Fix low level gpio irq handlers' argument commit 4746efded84d7c5a9c8d64d4c6e814ff0cf9fb42 Author: Shaohua Li Date: Tue Jul 19 08:49:26 2011 -0700 vmscan: fix a livelock in kswapd I'm running a workload which triggers a lot of swap in a machine with 4 nodes. After I kill the workload, I found a kswapd livelock. Sometimes kswapd3 or kswapd2 are keeping running and I can't access filesystem, but most memory is free. This looks like a regression since commit 08951e545918c159 ("mm: vmscan: correct check for kswapd sleeping in sleeping_prematurely"). Node 2 and 3 have only ZONE_NORMAL, but balance_pgdat() will return 0 for classzone_idx. The reason is end_zone in balance_pgdat() is 0 by default, if all zones have watermark ok, end_zone will keep 0. Later sleeping_prematurely() always returns true. Because this is an order 3 wakeup, and if classzone_idx is 0, both balanced_pages and present_pages in pgdat_balanced() are 0. We add a special case here. If a zone has no page, we think it's balanced. This fixes the livelock. Signed-off-by: Shaohua Li Acked-by: Mel Gorman Cc: Minchan Kim Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f7b88631a89757d70192044c9d9f2e8d2fc02f2c Author: Akinobu Mita Date: Tue Jul 19 08:49:25 2011 -0700 fs/libfs.c: fix simple_attr_write() on 32bit machines Assume that /sys/kernel/debug/dummy64 is debugfs file created by debugfs_create_x64(). # cd /sys/kernel/debug # echo 0x1234567812345678 > dummy64 # cat dummy64 0x0000000012345678 # echo 0x80000000 > dummy64 # cat dummy64 0xffffffff80000000 A value larger than INT_MAX cannot be written to the debugfs file created by debugfs_create_u64 or debugfs_create_x64 on 32bit machine. Because simple_attr_write() uses simple_strtol() for the conversion. To fix this, use simple_strtoll() instead. Signed-off-by: Akinobu Mita Cc: Greg Kroah-Hartman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e501f29c727dea74e2124c584cbab5fa805d489b Merge: 3a5c374 5943026 Author: Linus Torvalds Date: Tue Jul 19 21:50:21 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: vfs: fix race in rcu lookup of pruned dentry Fix cifs_get_root() [ Edited the last commit to get rid of a 'unused variable "seq"' warning due to Al editing the patch. - Linus ] commit 59430262401bec02d415179c43dbe5b8819c09ce Author: Linus Torvalds Date: Mon Jul 18 15:43:29 2011 -0700 vfs: fix race in rcu lookup of pruned dentry Don't update *inode in __follow_mount_rcu() until we'd verified that there is mountpoint there. Kudos to Hugh Dickins for catching that one in the first place and eventually figuring out the solution (and catching a braino in the earlier version of patch). Signed-off-by: Linus Torvalds Signed-off-by: Al Viro commit be0e1e21ef707be4d16ea6a96ac9997463e4b8d2 Author: Paul E. McKenney Date: Sat May 21 05:57:18 2011 -0700 rcu: Streamline code produced by __rcu_read_unlock() Given some common flag combinations, particularly -Os, gcc will inline rcu_read_unlock_special() despite its being in an unlikely() clause. Use noinline to prohibit this misoptimization. In addition, move the second barrier() in __rcu_read_unlock() so that it is not on the common-case code path. This will allow the compiler to generate better code for the common-case path through __rcu_read_unlock(). Suggested-by: Linus Torvalds Signed-off-by: Paul E. McKenney Acked-by: Mathieu Desnoyers commit 7765be2fec0f476fcd61812d5f9406b04c765020 Author: Paul E. McKenney Date: Thu Jul 14 12:24:11 2011 -0700 rcu: Fix RCU_BOOST race handling current->rcu_read_unlock_special The RCU_BOOST commits for TREE_PREEMPT_RCU introduced an other-task write to a new RCU_READ_UNLOCK_BOOSTED bit in the task_struct structure's ->rcu_read_unlock_special field, but, as noted by Steven Rostedt, without correctly synchronizing all accesses to ->rcu_read_unlock_special. This could result in bits in ->rcu_read_unlock_special being spuriously set and cleared due to conflicting accesses, which in turn could result in deadlocks between the rcu_node structure's ->lock and the scheduler's rq and pi locks. These deadlocks would result from RCU incorrectly believing that the just-ended RCU read-side critical section had been preempted and/or boosted. If that RCU read-side critical section was executed with either rq or pi locks held, RCU's ensuing (incorrect) calls to the scheduler would cause the scheduler to attempt to once again acquire the rq and pi locks, resulting in deadlock. More complex deadlock cycles are also possible, involving multiple rq and pi locks as well as locks from multiple rcu_node structures. This commit fixes synchronization by creating ->rcu_boosted field in task_struct that is accessed and modified only when holding the ->lock in the rcu_node structure on which the task is queued (on that rcu_node structure's ->blkd_tasks list). This results in tasks accessing only their own current->rcu_read_unlock_special fields, making unsynchronized access once again legal, and keeping the rcu_read_unlock() fastpath free of atomic instructions and memory barriers. The reason that the rcu_read_unlock() fastpath does not need to access the new current->rcu_boosted field is that this new field cannot be non-zero unless the RCU_READ_UNLOCK_BLOCKED bit is set in the current->rcu_read_unlock_special field. Therefore, rcu_read_unlock() need only test current->rcu_read_unlock_special: if that is zero, then current->rcu_boosted must also be zero. This bug does not affect TINY_PREEMPT_RCU because this implementation of RCU accesses current->rcu_read_unlock_special with irqs disabled, thus preventing races on the !SMP systems that TINY_PREEMPT_RCU runs on. Maybe-reported-by: Dave Jones Maybe-reported-by: Sergey Senozhatsky Reported-by: Steven Rostedt Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Steven Rostedt commit 131906b0062ddde7f85bbe67754983c754648bd8 Author: Paul E. McKenney Date: Sun Jul 17 02:05:49 2011 -0700 rcu: decrease rcu_report_exp_rnp coupling with scheduler PREEMPT_RCU read-side critical sections blocking an expedited grace period invoke rcu_report_exp_rnp(). When the last such critical section has completed, rcu_report_exp_rnp() invokes the scheduler to wake up the task that invoked synchronize_rcu_expedited() -- needlessly holding the root rcu_node structure's lock while doing so, thus needlessly providing a way for RCU and the scheduler to deadlock. This commit therefore releases the root rcu_node structure's lock before calling wake_up(). Reported-by: Ed Tomlinson Signed-off-by: Paul E. McKenney commit 38be7a79f7c99dd01425f19ef6cf744878b6a94b Author: Sage Weil Date: Tue Jul 19 11:25:04 2011 -0700 ceph: fix file mode calculation open(2) must always include one of O_RDONLY, O_WRONLY, or O_RDWR. No need for any O_APPEND special case. Passing O_WRONLY|O_RDWR is undefined according to the man page, but the Linux VFS interprets this as O_RDWR, so we'll do the same. This fixes open(2) with flags O_RDWR|O_APPEND, which was incorrectly being translated to readonly. Reported-by: Fyodor Ustinov Signed-off-by: Sage Weil commit 9daedd833a38edd90cf7baa1b1fcf61c3a0721e3 Author: Jon Povey Date: Tue Jul 19 12:30:11 2011 +0900 davinci: DM365 EVM: fix video input mux bits Video input mux settings for tvp7002 and imager inputs were swapped. Comment was correct. Tested on EVM with tvp7002 input. Signed-off-by: Jon Povey Acked-by: Manjunath Hadli Cc: stable@kernel.org Signed-off-by: Sekhar Nori commit 33e1e5e317b0fc78ac6588ec8aa40005bcddd7ce Author: Todd Poynor Date: Sat Jul 16 22:39:35 2011 -0700 ARM: davinci: Check for NULL return from irq_alloc_generic_chip Avoid NULL dereference of irq_alloc_generic_chip return in low memory conditions. Signed-off-by: Todd Poynor Signed-off-by: Sekhar Nori commit e28f87116503f796aba4fb27d81e2c3d81966174 Author: Chris Wilson Date: Mon Jul 18 13:11:49 2011 -0700 drm/i915: Fix unfenced alignment on pre-G33 hardware Align unfenced buffers on older hardware to the power-of-two object size. The docs suggest that it should be possible to align only to a power-of-two tile height, but using the already computed fence size is easier and always correct. We also have to make sure that we unbind misaligned buffers upon tiling changes. In order to prevent a repetition of this bug, we change the interface to the alignment computation routines to force the caller to provide the requested alignment and size of the GTT binding rather than assume the current values on the object. Reported-and-tested-by: Sitosfe Wheeler Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36326 Signed-off-by: Chris Wilson Cc: stable@kernel.org Reviewed-by: Daniel Vetter Signed-off-by: Keith Packard commit 3a5c3743f15f27237ab025736a981e2d0c9fdfed Merge: dc6b845 680ba7c Author: Linus Torvalds Date: Mon Jul 18 13:29:26 2011 -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: pppoe: Must flush connections when MAC address changes too. include/linux/sdla.h: remove the prototype of sdla() tulip: dmfe: Remove old log spamming pr_debugs commit 680ba7ca630f5816af9c80a946520be76b2167a5 Author: David S. Miller Date: Mon Jul 18 11:48:28 2011 -0700 pppoe: Must flush connections when MAC address changes too. Kernel bugzilla: 39252 Signed-off-by: David S. Miller commit a07c7964a29b6dc515b120f1e1c223ac2f8666f5 Author: WANG Cong Date: Sat Jul 16 22:22:20 2011 +0000 include/linux/sdla.h: remove the prototype of sdla() `make headers_check` complains that linux-2.6/usr/include/linux/sdla.h:116: userspace cannot reference function or variable defined in the kernel this is due to that there is no such a kernel function, void sdla(void *cfg_info, char *dev, struct frad_conf *conf, int quiet); I don't know why we have it in a kernel header, so remove it. Signed-off-by: WANG Cong Signed-off-by: David S. Miller commit fec11dd9a0109fe52fd631e5c510778d6cbff6cc Author: Al Viro Date: Mon Jul 18 13:50:40 2011 -0400 Fix cifs_get_root() Add missing ->i_mutex, convert to lookup_one_len() instead of (broken) open-coded analog, cope with getting something like a//b as relative pathname. Simplify the hell out of it, while we are there... Signed-off-by: Al Viro Reviewed-by: Jeff Layton commit 0b8f6273eb6fd0611849d6fb432151f04e042434 Author: Joe Perches Date: Mon Jul 18 10:44:44 2011 -0700 tulip: dmfe: Remove old log spamming pr_debugs Commit 726b65ad444d ("tulip: Convert uses of KERN_DEBUG") enabled some old previously inactive uses of pr_debug converted by commit dde7c8ef1679 ("tulip/dmfe.c: Use dev_ and pr_"). Remove these pr_debugs. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit dc6b845044ccb7e9e6f3b7e71bd179b3cf0223b6 Author: Mauro Carvalho Chehab Date: Sun Jul 17 00:24:37 2011 -0300 si4713-i2c: avoid potential buffer overflow on si4713 While compiling it with Fedora 15, I noticed this issue: inlined from ‘si4713_write_econtrol_string’ at drivers/media/radio/si4713-i2c.c:1065:24: arch/x86/include/asm/uaccess_32.h:211:26: error: call to ‘copy_from_user_overflow’ declared with attribute error: copy_from_user() buffer size is not provably correct Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab Acked-by: Sakari Ailus Acked-by: Eduardo Valentin Reviewed-by: Eugene Teo Signed-off-by: Linus Torvalds commit 524196d2ad12cfe29e15d3db7b8d678dde35b5f7 Merge: d36c301 b793eb6 Author: Linus Torvalds Date: Mon Jul 18 09:05:59 2011 -0700 Merge branch 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ASoC: Correct WM8994 MICBIAS supply widget hookup ASoC: Fix shift in WM8958 accessory detection default implementation ASoC: sh: fsi-hdmi: fixup snd_soc_card name ASoC: sh: fsi-da7210: fixup snd_soc_card name ASoC: sh: fsi-ak4642: fixup snd_soc_card name commit d36c30181c4cf6ead34ae30fa2c777b871225c87 Merge: a406721 0916a5e Author: Linus Torvalds Date: Mon Jul 18 09:03:15 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: hppfs_lookup(): don't open-code lookup_one_len() hppfs: fix dentry leak cramfs: get_cramfs_inode() returns ERR_PTR() on failure ufs should use d_splice_alias() fix exofs ->get_parent() ceph analog of cifs build_path_from_dentry() race fix cifs: build_path_from_dentry() race fix commit a406721dff91a9a5297d140dbb90327966cf9bc0 Merge: f560f66 d3f684f Author: Linus Torvalds Date: Mon Jul 18 09:02:58 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: hwmon: (max1111) Fix race condition causing NULL pointer exception hwmon: (it87) Fix label group removal hwmon: (asus_atk0110) Fix memory leak commit 0916a5e45fbd2604a303c8cc18e6b2b7c815e4c9 Author: Al Viro Date: Sun Jul 17 22:27:22 2011 -0400 hppfs_lookup(): don't open-code lookup_one_len() ... and it's getting it wrong, too - missing ->d_revalidate() calls when it's dealing with filesystem (procfs) that has non-trivial ->d_revalidate()... Signed-off-by: Al Viro commit 3cc0658e35124ace881f6942839dcae877c3eaed Author: Al Viro Date: Sun Jul 17 22:24:15 2011 -0400 hppfs: fix dentry leak Signed-off-by: Al Viro commit 0577d1ba411f9c40693b8b3e4aa7e0892cd03091 Author: Al Viro Date: Sun Jul 17 19:04:14 2011 -0400 cramfs: get_cramfs_inode() returns ERR_PTR() on failure ... and we want to report these failures in ->lookup() anyway. Signed-off-by: Al Viro commit 642c937b4ed2e51d2f2e4c46ab7cd8b5bddf268b Author: Al Viro Date: Sun Jul 17 10:07:34 2011 -0400 ufs should use d_splice_alias() it's NFS-exportable, so... Signed-off-by: Al Viro commit a803b8067e317832d6a251c5b0486e36a4f81922 Author: Al Viro Date: Fri Jul 8 20:56:55 2011 -0400 fix exofs ->get_parent() NULL is not a possible return value for that method, TYVM... Signed-off-by: Al Viro commit f560f6697f17e2465c8845c09f3a483faef38275 Merge: 3d68bd0 c2ec947 Author: Linus Torvalds Date: Sun Jul 17 12:49:55 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] update cifs to version 1.74 [CIFS] update limit for snprintf in cifs_construct_tcon cifs: Fix signing failure when server mandates signing for NTLMSSP commit 3d68bd0010d2c9bc9ad6004fdcc4d6a56dcae199 Merge: efcbae2 05e9a2f Author: Linus Torvalds Date: Sun Jul 17 12:49:28 2011 -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: Bluetooth: Fix crash with incoming L2CAP connections Bluetooth: Fix regression in L2CAP connection procedure gianfar: rx parser r6040: only disable RX interrupt if napi_schedule_prep is successful net: remove NETIF_F_ALL_TX_OFFLOADS net: sctp: fix checksum marking for outgoing packets commit efcbae253f97bf82e7befd372da3ad5995a53f1a Merge: 54a772b f71d26b Author: Linus Torvalds Date: Sun Jul 17 12:48:52 2011 -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: hpwdt depends on PCI watchdog: fix hpwdt Kconfig regression in 3.0-rc commit 54a772b8aace3df8ad6af0bd0748f57d27f72b1d Merge: a6b52a9 a1ad5ec Author: Linus Torvalds Date: Sun Jul 17 12:48:18 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] tuner-core: fix a 2.6.39 regression with mt20xx [media] dvb_frontend: fix race condition in stopping/starting frontend [media] media: fix radio-sf16fmr2 build when SND is not enabled [media] MEDIA: Fix non-ISA_DMA_API link failure of sound code [media] nuvoton-cir: make idle timeout more sane [media] mceusb: increase default timeout to 100ms [media] mceusb: Timeout unit corrections [media] Revert "V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)" commit a6b52a9db891e2a39e8a0fed6005935d8b1aa59c Merge: 247dc22 7fb574a Author: Linus Torvalds Date: Sun Jul 17 12:47:47 2011 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI: Fixes device power states array overflow ACPI, APEI, HEST, Detect duplicated hardware error source ID ACPI: Fix lockdep false positives in acpi_power_off() commit 247dc220f410969b35f884f1554fe9b78119dd59 Merge: 94b0522 84652e8 Author: Linus Torvalds Date: Sun Jul 17 12:47:27 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM / MIPS: Convert i8259.c to using syscore_ops commit 94b0522ab77e4d74950e258e804ba05030b6fcff Merge: d4bd4b4 d670ac0 Author: Linus Torvalds Date: Sun Jul 17 12:47:11 2011 -0700 Merge branch 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung * 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: SAMSUNG: DMA Cleanup as per sparse ARM: SAMSUNG: Check NULL return from irq_alloc_generic_chip commit d4bd4b40f8b18ad6a7e269e8f5c06f953f51016d Merge: 1765a36 1ef4859 Author: Linus Torvalds Date: Sun Jul 17 12:43:58 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc: sun4m SMP: fix wrong shift instruction in IPI handler sparc32,leon: Added __init declaration to leon_flush_needed() sparc/irqs: Do not trace arch_local_{*,irq_*} functions commit d3f684f2820a7f42acef68bea6622d9032127fb2 Author: Pavel Herrmann Date: Sun Jul 17 18:39:19 2011 +0200 hwmon: (max1111) Fix race condition causing NULL pointer exception spi_sync call uses its spi_message parameter to keep completion information, using a drvdata structure is not thread-safe. Use a mutex to prevent multiple access to shared driver data. Signed-off-by: Pavel Herrmann Acked-by: Russell King Acked-by: Pavel Machek Acked-by: Marek Vasut Acked-by: Cyril Hrubis Tested-by: Stanislav Brabec Signed-off-by: Jean Delvare Cc: stable@kernel.org commit fa8b69758e65b406c8010936b541cd00deef804d Author: Jean Delvare Date: Sun Jul 17 18:39:19 2011 +0200 hwmon: (it87) Fix label group removal A copy-and-paste error caused it87_attributes_vid to be referenced where it87_attributes_label should be. Thankfully the group is only used for attribute removal, not attribute creation, so the effects of this bug are limited, but let's fix it still. Signed-off-by: Jean Delvare Cc: stable@kernel.org Acked-by: Guenter Roeck commit 0b8e77f12cb6bfe2e5a67f2cdc8c7af23abc4ccf Author: Luca Tettamanti Date: Sun Jul 17 18:39:18 2011 +0200 hwmon: (asus_atk0110) Fix memory leak The object returned by atk_gitm is dynamically allocated and must be freed. Signed-off-by: Luca Tettamanti Signed-off-by: Jean Delvare Cc: stable@kernel.org commit f71d26bb6503e9b11b91444819b2f96872baaab8 Author: Randy Dunlap Date: Sat Jul 16 12:25:49 2011 -0700 watchdog: hpwdt depends on PCI hpwdt is a PCI driver so it should depend on PCI. Fixes these build errors: drivers/watchdog/hpwdt.c:762: error: implicit declaration of function 'pci_iomap' drivers/watchdog/hpwdt.c:762: warning: assignment makes pointer from integer without a cast drivers/watchdog/hpwdt.c:797: error: implicit declaration of function 'pci_iounmap' Signed-off-by: Randy Dunlap Signed-off-by: Wim Van Sebroeck Cc: Thomas Mingarelli commit b793eb60a01d5b5e4aaeb2fbc2b036dec0d9f84d Author: Mark Brown Date: Thu Jul 14 18:21:37 2011 +0900 ASoC: Correct WM8994 MICBIAS supply widget hookup The WM8994 and WM8958 series of devices have two MICBIAS supplies rather than one, the current widget actually manages the microphone detection control register bit (which is managed separately by the relevant API). Fix this, hooking the relevant supplies up to the MICBIAS1 and MICBIAS2 widgets. Signed-off-by: Mark Brown Cc: stable@kernel.org commit 1b71fe2efa31cd18c865db474a4cd473b6ab5281 Author: Al Viro Date: Sat Jul 16 23:43:58 2011 -0400 ceph analog of cifs build_path_from_dentry() race fix ... unfortunately, cifs bug got copied. Fix is essentially the same. Signed-off-by: Al Viro commit dc137bf553dbb6855bd7efc34fedcd03102455f7 Author: Al Viro Date: Sat Jul 16 23:37:20 2011 -0400 cifs: build_path_from_dentry() race fix deal with d_move() races properly; rename_lock read-retry loop, rcu_read_lock() held while walking to root, d_lock held over subtraction from namelen and copying the component to stabilize ->d_name. Signed-off-by: Al Viro commit 1ef48593bd6a508984d1270a1075532628bfd9c8 Author: Will Simoneau Date: Sat Jul 16 10:45:12 2011 -0700 sparc: sun4m SMP: fix wrong shift instruction in IPI handler This shift instruction appears to be shifting in the wrong direction. Without this change, my SparcStation-20MP hangs just after bringing up the second CPU: Entering SMP Mode... Starting CPU 2 at f02b4e90 Brought up 2 CPUs Total of 2 processors activated (99.52 BogoMIPS). *** stuck *** Signed-off-by: Will Simoneau Signed-off-by: David S. Miller commit 05e9a2f67849e427f8900bad0a3f2a939e8dd3d6 Author: Ilia Kolomisnky Date: Fri Jul 15 18:30:21 2011 +0000 Bluetooth: Fix crash with incoming L2CAP connections Another regression fix considering incomming l2cap connections with defer_setup enabled. In situations when incomming connection is extracted with l2cap_sock_accept, it's bt_sock info will have 'parent' member zerroed, but 'parent' may be used unconditionally in l2cap_conn_start() and l2cap_security_cfm() when defer_setup is enabled. Backtrace: [] (l2cap_security_cfm+0x0/0x2ac [bluetooth]) from [] (hci_event_pac ket+0xc2c/0x4aa4 [bluetooth]) [] (hci_event_packet+0x0/0x4aa4 [bluetooth]) from [] (hci_rx_task+0x cc/0x27c [bluetooth]) [] (hci_rx_task+0x0/0x27c [bluetooth]) from [] (tasklet_action+0xa0/ 0x15c) [] (tasklet_action+0x0/0x15c) from [] (__do_softirq+0x98/0x130) r7:00000101 r6:00000018 r5:00000001 r4:efc46000 [] (__do_softirq+0x0/0x130) from [] (do_softirq+0x4c/0x58) [] (do_softirq+0x0/0x58) from [] (run_ksoftirqd+0xb0/0x1b4) r4:efc46000 r3:00000001 [] (run_ksoftirqd+0x0/0x1b4) from [] (kthread+0x84/0x8c) r7:00000000 r6:c008f530 r5:efc47fc4 r4:efc41f08 [] (kthread+0x0/0x8c) from [] (do_exit+0x0/0x5f0) Signed-off-by: Ilia Kolomisnky Signed-off-by: Gustavo F. Padovan Signed-off-by: David S. Miller commit 9191e6ad897a8b4f0b89aea7c2d3c843f29a8630 Author: Gustavo F. Padovan Date: Fri Jul 15 18:30:20 2011 +0000 Bluetooth: Fix regression in L2CAP connection procedure Caused by the following commit, partially revert it. commit 9fa7e4f76f3658ba1f44fbdb95c77e7df3f53f95 Author: Gustavo F. Padovan Date: Thu Jun 30 16:11:30 2011 -0300 Bluetooth: Fix regression with incoming L2CAP connections PTS test A2DP/SRC/SRC_SET/TC_SRC_SET_BV_02_I revealed that ( probably after the df3c3931e commit ) the l2cap connection could not be established in case when the "Auth Complete" HCI event does not arive before the initiator send "Configuration request", in which case l2cap replies with "Command rejected" since the channel is still in BT_CONNECT2 state. Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Gustavo F. Padovan Signed-off-by: David S. Miller commit d670ac019f60e4932ba329bb0800bf2929e6d77c Author: Sangwook Lee Date: Sat Jul 16 15:50:19 2011 +0900 ARM: SAMSUNG: DMA Cleanup as per sparse Function declaration differs between file: dma.c and file:dma.h and SPARSE (Documentation/sparse.txt) gives error messages All dma channels are members of 'enum dma_ch' and not 'unsigned int' Please have a look at channel definitions in: arch/arm/mach-s3c64xx/include/mach/dma.h arch/arm/plat-samsung/include/plat/s3c-dma-pl330.h arch/arm/mach-s3c2410/include/mach/dma.h So all arguments should be of type 'enum dma_ch' Signed-off-by: Sangwook Lee Signed-off-by: Kukjin Kim commit 2a75ca4a43e4276e6da2c75bea672a03e8e900fb Author: Olaf Hering Date: Fri Jul 15 23:23:33 2011 +0200 watchdog: fix hpwdt Kconfig regression in 3.0-rc Remove Kconfig regression caused by commit a4616153deae053b29a2b7dd9ec4b2a225accfc5 "watchdog: hpwdt: build hpwdt as module by default with NMI_DECODING enabled" With the above change applied, hpwdt will be enabled unconditionally by just entering the Watchdog subscreen in menuconfig. Since this driver is not essential to boot any box it should remain disabled until it gets manually enabled, just like all other drivers. Signed-off-by: Olaf Hering Cc: Tony Camuso Signed-off-by: Wim Van Sebroeck Signed-off-by: Andrew Morton commit 691abd0abf8fd496c96fdb5b4fb64721f02aa513 Author: Todd Poynor Date: Sat Jul 16 11:13:47 2011 +0900 ARM: SAMSUNG: Check NULL return from irq_alloc_generic_chip Signed-off-by: Todd Poynor Signed-off-by: Kukjin Kim commit 1765a367a3b5d5e9692949b0c5ec933eff2c0701 Merge: 900b170 164d5c3 Author: Linus Torvalds Date: Fri Jul 15 18:03:30 2011 -0700 Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio: wm831x: add a missing break in wm831x_gpio_dbg_show commit 900b170af40b4fef54e89f3d48d055f7d8031ae6 Author: Richard Cochran Date: Fri Jul 15 21:33:12 2011 +0200 ARM: fix regression in IXP4xx clocksource Commit 234b6ceddb4fc2a4bc5b9a7670f070f6e69e0868 clocksource: convert ARM 32-bit up counting clocksources broke the build for ixp4xx and made big endian operation impossible. This commit restores the original behaviour. Signed-off-by: Richard Cochran Signed-off-by: Krzysztof Hałasa [ Thomas says that we might want to have generic BE accessor functions to the MMIO clock source, but that hasn't happened yet, so in the meantime this seems to be the short-term fix for the particular problem - Linus ] Signed-off-by: Linus Torvalds commit f3dc1586375c3fa061c4867e8b076d09a53beb03 Author: Sebastian Pöhn Date: Fri Jul 15 16:00:20 2011 -0700 gianfar: rx parser Only let the rx parser be enabled if it is necessary (if VLAN extraction, IP or TCP checksumming or the rx queue filer are enabled). Otherwise disable it. The new routine gfar_check_rx_parser_mode should be run after every change on this features and will enable/disable the parser as necessary. Signed-off-by: Jiri Pirko Signed-off-by: Sebastian Poehn Signed-off-by: David S. Miller commit 84652e834b11d1d279e9073a94b320c85707a880 Author: Rafael J. Wysocki Date: Sat Jul 16 00:59:54 2011 +0200 PM / MIPS: Convert i8259.c to using syscore_ops The code in arch/mips/kernel/i8259.c still hasn't been converted to using struct syscore_ops instead of a sysdev for resume and shutdown. As a result, this code doesn't build any more after suspend, resume and shutdown callbacks have been removed from struct sysdev_class. Fix this problem by converting i8259.c to using syscore_ops. Reported-and-tested-by: Roland Vossen Signed-off-by: Rafael J. Wysocki Acked-by: Ralf Baechle commit 164d5c3988baf61f40c5749ddc063a9cdca8f521 Author: Axel Lin Date: Sun Jul 10 15:45:07 2011 +0800 gpio: wm831x: add a missing break in wm831x_gpio_dbg_show Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Grant Likely commit af8a927c8bdea82cf220e0b720d64daaf073a969 Merge: 3110df8 3a36199 Author: Linus Torvalds Date: Fri Jul 15 11:03:49 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: nilfs2: remove resize from unsupported features list commit 3110df800c4de2724624d46e6bed27efc5e9a707 Merge: 375d0c0 7e97bbb Author: Linus Torvalds Date: Fri Jul 15 10:21:21 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (adm1275) Fix coefficients per datasheet revision B hwmon: (pmbus) Use long variables for register to data conversions commit 375d0c0e70cf788fa74c658e5dd619a7abb7c5f7 Merge: da1b001 e3c1620 Author: Linus Torvalds Date: Fri Jul 15 10:21:07 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: add new NI pci ids commit da1b001a2a2a9cb323e58327ed07ac4a5e6d96ea Merge: df8d6fe 1836750 Author: Linus Torvalds Date: Fri Jul 15 09:55:39 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: fix loop checks in d_materialise_unique() Fix ->d_lock locking order in unlazy_walk() commit df8d6fe9efba4ea4b46a5bdc229031c5bb880575 Merge: c64be78 b0d3041 Author: Linus Torvalds Date: Fri Jul 15 09:54:34 2011 -0700 Merge branch 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu * 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu: rcu: Prevent RCU callbacks from executing before scheduler initialized commit c64be78ffb415278d7d32d6f55de95c73dcc19a4 Author: Peter Zijlstra Date: Mon Jul 11 16:28:50 2011 +0200 sched: Fix 32bit race Commit 3fe1698b7fe0 ("sched: Deal with non-atomic min_vruntime reads on 32bit") forgot to initialize min_vruntime_copy which could lead to an infinite while loop in task_waking_fair() under some circumstances (early boot, lucky timing). [ This bug was also reported by others that blamed it on the RCU initialization problems ] Reported-and-tested-by: Bruno Wolff III Signed-off-by: Peter Zijlstra Reviewed-by: Paul E. McKenney Signed-off-by: Linus Torvalds commit e3c1620434ac77b618ce74c024ace3559602ac99 Author: Alex Deucher Date: Fri Jul 15 14:39:10 2011 +0000 drm/radeon/kms: add new NI pci ids Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 0d9b6e738a22244d38def847a24e5ee6fcedd898 Author: Michael Thalmeier Date: Fri Jul 15 01:28:26 2011 +0000 r6040: only disable RX interrupt if napi_schedule_prep is successful When receiving the first RX interrupt before the internal call to napi_schedule_prep is successful the RX interrupt gets disabled and is never enabled again as the poll function never gets executed. Signed-off-by: Michael Thalmeier Signed-off-by: David S. Miller commit 7e97bbba62754ea86e191b99c6978476198ecb99 Author: Guenter Roeck Date: Thu Jul 14 14:18:03 2011 -0700 hwmon: (adm1275) Fix coefficients per datasheet revision B Coefficients to convert chip register values to voltage/current have been slightly changed in revision B of the chip datasheet. Update driver coefficients to match the coefficients in the datasheet. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare commit b35e160a111aa9ae3fad6294e038be20d0da721b Author: Mark Brown Date: Fri Jul 15 22:28:32 2011 +0900 ASoC: Fix shift in WM8958 accessory detection default implementation Signed-off-by: Mark Brown Cc: stable@kernel.org commit 1836750115f20b774e55c032a3893e8c5bdf41ed Author: Al Viro Date: Tue Jul 12 21:42:24 2011 -0400 fix loop checks in d_materialise_unique() Both __d_unalias() and __d_materialise_dentry() need loop prevention. Grab rename_lock in caller, check for loops there... As a side benefit, we have dentry_lock_for_move() called only under rename_lock, which seriously reduces deadlock potential of the execrable "locking order" used for ->d_lock. Signed-off-by: Al Viro commit 62f2a3a48bdc99822a24356e667e52c30df287c9 Author: Michał Mirosław Date: Wed Jul 13 14:10:29 2011 +0000 net: remove NETIF_F_ALL_TX_OFFLOADS There is no software fallback implemented for SCTP or FCoE checksumming, and so it should not be passed on by software devices like bridge or bonding. For VLAN devices, this is different. First, the driver for underlying device should be prepared to get offloaded packets even when the feature is disabled (especially if it advertises it in vlan_features). Second, devices under VLANs do not get replaced without tearing down the VLAN first. This fixes a mess I accidentally introduced while converting bonding to ndo_fix_features. NETIF_F_SOFT_FEATURES are removed from BOND_VLAN_FEATURES because they are unused as of commit 712ae51afd. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit b73c43f884b1b26ef8e824a33f3924f92e493c11 Author: Michał Mirosław Date: Wed Jul 13 14:10:29 2011 +0000 net: sctp: fix checksum marking for outgoing packets Packets to devices without NETIF_F_SCTP_CSUM (including NETIF_F_NO_CSUM) should be properly checksummed because the packets can be diverted or rerouted after construction. This still leaves packets diverted from NETIF_F_SCTP_CSUM-enabled devices with broken checksums. Fixing this needs implementing software offload fallback in networking core. For users of sctp_checksum_disable, skb->ip_summed should be left as CHECKSUM_NONE and not CHECKSUM_UNNECESSARY as per include/linux/skbuff.h. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 5dcd07b9f39ca3e9be5bcc387d193fc0674e1c81 Merge: 51414d4 380f7c6 Author: Linus Torvalds Date: Thu Jul 14 10:20:42 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes: GFS2: Resolve inode eviction and ail list interaction bug GFS2: Fix race during filesystem mount GFS2: force a log flush when invalidating the rindex glock commit 380f7c65a7eb3288e4b6812acf3474a1de230707 Author: Steven Whitehouse Date: Thu Jul 14 08:59:44 2011 +0100 GFS2: Resolve inode eviction and ail list interaction bug This patch contains a few misc fixes which resolve a recently reported issue. This patch has been a real team effort and has received a lot of testing. The first issue is that the ail lock needs to be held over a few more operations. The lock thats added into gfs2_releasepage() may possibly be a candidate for replacing with RCU at some future point, but at this stage we've gone for the obvious fix. The second issue is that gfs2_write_inode() can end up calling a glock recursively when called from gfs2_evict_inode() via the syncing code, so it needs a guard added. The third issue is that we either need to not truncate the metadata pages of inodes which have zero link count, but which we cannot deallocate due to them still being in use by other nodes, or we need to ensure that those pages have all made it through the journal and ail lists first. This patch takes the former approach, but the latter has also been tested and there is nothing to choose between them performance-wise. So again, we could revise that decision in the future. Also, the inode eviction process is now better documented. Signed-off-by: Steven Whitehouse Tested-by: Bob Peterson Tested-by: Abhijith Das Reported-by: Barry J. Marson Reported-by: David Teigland commit 435793dfb8aec7b2e19f72d5bce8a22fd0b57839 Author: Keith Packard Date: Tue Jul 12 14:56:22 2011 -0700 drm/i915: Add quirk to disable SSC on Lenovo U160 LVDS We've tried several times to make this machine 'just work', but every patch that does causes many other machines to fail. This adds a quirk which special cases this hardware and forces ssc to be disabled. There's no way to override this from the command line; that would be a significantly more invasive change. This patch fixes #36656 on fdo bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36656 Signed-off-by: Keith Packard References: https://bugs.freedesktop.org/show_bug.cgi?id=36656 Reviewed-by: Chris Wilson commit 7fb574a97f7147610c44cef55d0cde2409392a80 Merge: b4a03b9 4d2b295 07e49a7 Author: Len Brown Date: Thu Jul 14 00:16:38 2011 -0400 Merge branches 'd3cold', 'bugzilla-37412' and 'bugzilla-38152' into release commit b4a03b9aa96cc186bf3cfd7a55cb7d7227f0cf4d Author: Lin Ming Date: Wed Jun 1 23:54:02 2011 +0800 ACPI: Fixes device power states array overflow Commit 28c2103 added new state ACPI_STATE_D3_COLD, so the device power states array must be expanded by one also. v2: Use ACPI_D_STATE_COUNT instead of number 5 for the array size. Reported-by: Dan Carpenter Suggested-by: Oldřich Jedlička Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 4d2b2956ef1113f1cc43e98e947c20d9c7d2712c Author: Huang Ying Date: Wed Jul 13 13:14:12 2011 +0800 ACPI, APEI, HEST, Detect duplicated hardware error source ID The firmware on some machine will report duplicated hardware error source ID in HEST. This is considered a firmware bug. To provide better warning message, this patch adds duplicated hardware error source ID detecting and corresponding printk. This patch fixes #37412 on kernel bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=37412 Reported-by: marconifabio@ubuntu-it.org Signed-off-by: Huang Ying Tested-by: Mathias Signed-off-by: Len Brown commit 51414d41084496aaefd06d7f19eb8206e8bfac2d Merge: 201f92e f39b2dd Author: Linus Torvalds Date: Wed Jul 13 16:47:31 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: mmc: core: Bus width testing needs to handle suspend/resume commit a1ad5ec7f520c559becab2e989a397f1d6ac5eb0 Author: Mauro Carvalho Chehab Date: Wed Jul 13 01:23:11 2011 -0300 [media] tuner-core: fix a 2.6.39 regression with mt20xx As Simon reported, digital TV broke with mt20xx tuner due to commit ad020dc2fe9039628cf6cef42cd1b76531ee8411. The mt20xx tuner passes V4L2_TUNER_DIGITAL_TV to tuner core. However, the check_mode code now doesn't handle it well. Change the logic there to avoid the breakage, and fix a test for analog-only at g_tuner. Reported-by: Simon Arlott Tested-by: Simon Arlott Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab commit 2d1969312d6319d28ae9609a84f969b6933bd51c Author: Devin Heitmueller Date: Mon Jul 4 21:55:01 2011 -0300 [media] dvb_frontend: fix race condition in stopping/starting frontend Attached is a patch which addresses a race condition in the DVB core related to closing/reopening the DVB frontend device in quick succession. This is the reason that devices such as the HVR-1300, HVR-3000, and HVR-4000 have been failing to scan properly under MythTV and w_scan. The gory details of the race are described in the patch. Devin There is a race condition exhibited when channel scanners such as w_scan and MythTV quickly close and then reopen the frontend device node. Under normal conditions, the behavior is as follows: 1. Application closes the device node 2. DVB frontend ioctl calls dvb_frontend_release which sets fepriv->release_jiffies 3. DVB frontend thread *eventually* calls dvb_frontend_is_exiting() which compares fepriv->release_jiffies, and shuts down the thread if timeout has expired 4. Thread goes away 5. Application opens frontend device 6. DVB frontend ioctl() calls ts_bus_ctrl(1) 7. DVB frontend ioctl() creates new frontend thread, which calls dvb_frontend_init(), which has demod driver init() routine setup initial register state for demod chip. 8. Tuning request is issued. The race occurs when the application in step 5 performs the new open() call before the frontend thread is shutdown. In this case the ts_bus_ctrl() call is made, which strobes the RESET pin on the demodulator, but the dvb_frontend_init() function never gets called because the frontend thread hasn't gone away yet. As a result, the initial register config for the demod is *never* setup, causing subsequent tuning requests to fail. If there is time between the close and open (enough for the dvb frontend thread to be torn down), then in that case the new frontend thread is created and thus the dvb_frontend_init() function does get called. The fix is to set the flag which forces reinitialization if we did in fact call ts_bus_ctrl(). This problem has been seen on the HVR-1300, HVR-3000, and HVR-4000, and is likely occuring on other designs as well where ts_bus_ctrl() actually strobes the reset pin on the demodulator. Note that this patch should supercede any patches submitted for the 1300/3000/4000 which remove the code that removes GPIO code in cx8802_dvb_advise_acquire(), which have been circulating by users for some time now... Canonical tracking this issue in Launchpad 439163: Thanks to Jon Sayers from Hauppauge and Florent Audebert from Anevia S.A. for providing hardware to test/debug with. Signed-off-by: Devin Heitmueller Cc: Jon Sayers Cc: Florent Audebert Signed-off-by: Mauro Carvalho Chehab commit 42a741dcf1472cea55193ea8611db3d67808ce22 Author: Randy Dunlap Date: Thu Jun 30 14:31:04 2011 -0300 [media] media: fix radio-sf16fmr2 build when SND is not enabled When CONFIG_SND is not enabled, radio-sf16fmr2 build fails with: so make this driver depend on SND. Signed-off-by: Randy Dunlap Cc: Hans Verkuil Cc: Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org Signed-off-by: Mauro Carvalho Chehab commit 201f92e2ca789d529418da8fa027d5457f0df024 Merge: 6ac556d ec0dd26 Author: Linus Torvalds Date: Wed Jul 13 14:34:08 2011 -0700 Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: SUNRPC: Fix use of static variable in rpcb_getport_async NFSv4.1: update nfs4_fattr_bitmap_maxsz SUNRPC: Fix a race between work-queue and rpc_killall_tasks pnfs: write: Set mds_offset in the generic layer - it is needed by all LDs commit 6ac556daa7822fdda585e2c387739abb0646c6ef Merge: c835490 8fc62e5 Author: Linus Torvalds Date: Wed Jul 13 14:16:53 2011 -0700 Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: Do not write to builddir in modules_install commit c835490196c42d9f225ee6873880f436d031df86 Merge: 5d7d5d9 c61d0af Author: Linus Torvalds Date: Wed Jul 13 14:04:26 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms/evergreen: emit SQ_LDS_RESOURCE_MGMT for blits agp/intel: Fix typo in G4x_GMCH_SIZE_VT_2M drm/radeon/kms: fix typo in read_disabled vbios code drm/radeon/kms: use correct BUS_CNTL reg on rs600 drm/radeon/kms: fix backend map typo on juniper drm/radeon/kms: fix regression in hotplug commit 5d7d5d933256fc44f68e061ccd103b027fef0fc9 Merge: 8d86e5f 7686d1c Author: Linus Torvalds Date: Wed Jul 13 13:51:32 2011 -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: (21 commits) slip: fix wrong SLIP6 ifdef-endif placing natsemi: fix another dma-debug report sctp: ABORT if receive, reassmbly, or reodering queue is not empty while closing socket net: Fix default in docs for tcp_orphan_retries. hso: fix a use after free condition net/natsemi: Fix module parameter permissions XFRM: Fix memory leak in xfrm_state_update sctp: Enforce retransmission limit during shutdown mac80211: fix TKIP replay vulnerability mac80211: fix ie memory allocation for scheduled scans ssb: fix init regression of hostmode PCI core rtlwifi: rtl8192cu: Add new USB ID for Netgear WNA1000M ath9k: Fix tx throughput drops for AR9003 chips with AES encryption carl9170: add NEC WL300NU-AG usbid cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex ath5k: fix incorrect use of drvdata in PCI suspend/resume code ath5k: fix incorrect use of drvdata in sysfs code Bluetooth: Fix memory leak under page timeouts Bluetooth: Fix regression with incoming L2CAP connections Bluetooth: Fix hidp disconnect deadlocks and lost wakeup ... commit f39b2dd9d065151a04f5996656d1f27a7eb32d45 Author: Philip Rakity Date: Thu Jul 7 09:04:55 2011 -0700 mmc: core: Bus width testing needs to handle suspend/resume On reading the ext_csd for the first time (in 1 bit mode), save the ext_csd information needed for bus width compare. On every pass we make re-reading the ext_csd, compare the data against the saved ext_csd data. This fixes a regression introduced in 3.0-rc1 by 08ee80cc397ac1a3 ("mmc: core: eMMC bus width may not work on all platforms"), which incorrectly assumed we would be re-reading the ext_csd at resume- time. Signed-off-by: Philip Rakity Tested-by: Jaehoon Chung Signed-off-by: Chris Ball commit 07e49a7a31153a95caa270d8ad7350a0bcd4d511 Author: Rafael J. Wysocki Date: Wed Jul 6 20:44:25 2011 +0200 ACPI: Fix lockdep false positives in acpi_power_off() All ACPICA locks are allocated by the same function, acpi_os_create_lock(), with the help of a local variable called "lock". Thus, when lockdep is enabled, it uses "lock" as the name of all those locks and regards them as instances of the same lock, which causes it to report possible locking problems with them when there aren't any. To work around this problem, define acpi_os_create_lock() as a macro and make it pass its argument to spin_lock_init(), so that lockdep uses it as the name of the new lock. Define this macron in a Linux-specific file, to minimize the resulting modifications of the OS-independent ACPICA parts. This change is based on an earlier patch from Andrea Righi and it addresses a regression from 2.6.39 tracked as https://bugzilla.kernel.org/show_bug.cgi?id=38152 Signed-off-by: Rafael J. Wysocki Reported-and-tested-by: Borislav Petkov Tested-by: Andrea Righi Reviewed-by: Florian Mickler Signed-off-by: Len Brown commit b0d304172f49061b4ff78f9e2b02719ac69c8a7e Author: Paul E. McKenney Date: Sun Jul 10 15:57:35 2011 -0700 rcu: Prevent RCU callbacks from executing before scheduler initialized Under some rare but real combinations of configuration parameters, RCU callbacks are posted during early boot that use kernel facilities that are not yet initialized. Therefore, when these callbacks are invoked, hard hangs and crashes ensue. This commit therefore prevents RCU callbacks from being invoked until after the scheduler is fully up and running, as in after multiple tasks have been spawned. It might well turn out that a better approach is to identify the specific RCU callbacks that are causing this problem, but that discussion will wait until such time as someone really needs an RCU callback to be invoked (as opposed to merely registered) during early boot. Reported-by: julie Sullivan Reported-by: RKK Signed-off-by: Paul E. McKenney Tested-by: Konrad Rzeszutek Wilk Tested-by: julie Sullivan Tested-by: RKK commit 3a36199114de0e60984534776732e0a7a220e29e Author: Ryusuke Konishi Date: Sun Jun 19 16:56:29 2011 +0900 nilfs2: remove resize from unsupported features list Resize feature was supported by the commit 4e33f9eab07e but it was not reflected to the list of unsupported features in nilfs2.txt file. This updates the list to fix discrepancy. Signed-off-by: Ryusuke Konishi commit c61d0af9131976db150c40996a71387ba59edb67 Author: Alex Deucher Date: Tue Jul 12 11:53:23 2011 -0400 drm/radeon/kms/evergreen: emit SQ_LDS_RESOURCE_MGMT for blits Compute drivers may change this, so make sure to emit it to avoid errors in bo blits. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=39119 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 780d7cc44524cd396a34757127f51ecb8ccaf2da Author: Chris Wilson Date: Tue Jul 12 23:38:18 2011 +0100 agp/intel: Fix typo in G4x_GMCH_SIZE_VT_2M Konstantin Belousov found an error in the define of G4x_GMCH_SIZE_VT_2M relative to the GMCH specs, and confirmed that indeed one of his users with a Q45 reports 0xb not 0xc for a 2/2MiB GATT. Signed-off-by: Chris Wilson Cc: Konstantin Belousov Cc: Daniel Vetter Acked-by: Daniel Vetter Signed-off-by: Dave Airlie commit 3628c3f5c818cfc6e588d1ccb31f19aa12345c02 Author: Maxime Ripard Date: Tue Jun 28 15:57:31 2011 +0200 x86. reboot: Make Dell Latitude E6320 use reboot=pci The Dell Latitude E6320 doesn't reboot unless reboot=pci is set. Force it thanks to DMI. Signed-off-by: Maxime Ripard Link: http://lkml.kernel.org/r/1309269451-4966-1-git-send-email-maxime.ripard@free-electrons.com Cc: Matthew Garrett Signed-off-by: H. Peter Anvin commit 4756fc64ecd628efa6f8296711d7dbcefabf25dd Author: Ralf Baechle Date: Fri Jun 24 10:30:09 2011 -0300 [media] MEDIA: Fix non-ISA_DMA_API link failure of sound code sound/isa/es18xx.c: In function ‘snd_es18xx_playback1_prepare’: sound/isa/es18xx.c:501:9: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/es18xx.c: In function ‘snd_es18xx_playback_pointer’: sound/isa/es18xx.c:818:3: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[2]: *** [sound/isa/es18xx.o] Error 1 sound/isa/sscape.c: In function ‘upload_dma_data’: sound/isa/sscape.c:481:3: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[2]: *** [sound/isa/sscape.o] Error 1 sound/isa/ad1816a/ad1816a_lib.c: In function ‘snd_ad1816a_playback_prepare’: sound/isa/ad1816a/ad1816a_lib.c:244:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/ad1816a/ad1816a_lib.c: In function ‘snd_ad1816a_playback_pointer’: sound/isa/ad1816a/ad1816a_lib.c:302:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] sound/isa/ad1816a/ad1816a_lib.c: In function ‘snd_ad1816a_free’: sound/isa/ad1816a/ad1816a_lib.c:544:3: error: implicit declaration of function ‘snd_dma_disable’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/ad1816a/ad1816a_lib.o] Error 1 make[3]: Target `__build' not remade because of errors. make[2]: *** [sound/isa/ad1816a] Error 2 sound/isa/es1688/es1688_lib.c: In function ‘snd_es1688_playback_prepare’: sound/isa/es1688/es1688_lib.c:417:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/es1688/es1688_lib.c: In function ‘snd_es1688_playback_pointer’: sound/isa/es1688/es1688_lib.c:509:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/es1688/es1688_lib.o] Error 1 make[3]: Target `__build' not remade because of errors. make[2]: *** [sound/isa/es1688] Error 2 sound/isa/gus/gus_dma.c: In function ‘snd_gf1_dma_program’: sound/isa/gus/gus_dma.c:79:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/gus/gus_dma.c: In function ‘snd_gf1_dma_done’: sound/isa/gus/gus_dma.c:177:3: error: implicit declaration of function ‘snd_dma_disable’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/gus/gus_dma.o] Error 1 sound/isa/gus/gus_pcm.c: In function ‘snd_gf1_pcm_capture_prepare’: sound/isa/gus/gus_pcm.c:591:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/gus/gus_pcm.c: In function ‘snd_gf1_pcm_capture_pointer’: sound/isa/gus/gus_pcm.c:619:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/gus/gus_pcm.o] Error 1 make[3]: Target `__build' not remade because of errors. make[2]: *** [sound/isa/gus] Error 2 sound/isa/sb/sb16_csp.c: In function ‘snd_sb_csp_ioctl’: sound/isa/sb/sb16_csp.c:228:227: error: case label does not reduce to an integer constant make[3]: *** [sound/isa/sb/sb16_csp.o] Error 1 sound/isa/sb/sb16_main.c: In function ‘snd_sb16_playback_prepare’: sound/isa/sb/sb16_main.c:276:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/sb/sb16_main.c: In function ‘snd_sb16_playback_pointer’: sound/isa/sb/sb16_main.c:456:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/sb/sb16_main.o] Error 1 sound/isa/sb/sb8_main.c: In function ‘snd_sb8_playback_prepare’: sound/isa/sb/sb8_main.c:172:3: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/sb/sb8_main.c: In function ‘snd_sb8_playback_pointer’: sound/isa/sb/sb8_main.c:425:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/sb/sb8_main.o] Error 1 make[3]: Target `__build' not remade because of errors. make[2]: *** [sound/isa/sb] Error 2 sound/isa/wss/wss_lib.c: In function ‘snd_wss_playback_prepare’: sound/isa/wss/wss_lib.c:1025:2: error: implicit declaration of function ‘snd_dma_program’ [-Werror=implicit-function-declaration] sound/isa/wss/wss_lib.c: In function ‘snd_wss_playback_pointer’: sound/isa/wss/wss_lib.c:1160:2: error: implicit declaration of function ‘snd_dma_pointer’ [-Werror=implicit-function-declaration] sound/isa/wss/wss_lib.c: In function ‘snd_wss_free’: sound/isa/wss/wss_lib.c:1695:3: error: implicit declaration of function ‘snd_dma_disable’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[3]: *** [sound/isa/wss/wss_lib.o] Error 1 warning: (RADIO_MIROPCM20) selects SND_ISA which has unmet direct dependencies (SOUND && !M68K && SND && ISA && ISA_DMA_API) A build with ISA && ISA_DMA && !ISA_DMA_API results in: CC sound/isa/es18xx.o CC sound/isa/sscape.o CC sound/isa/ad1816a/ad1816a_lib.o CC sound/isa/es1688/es1688_lib.o CC sound/isa/gus/gus_dma.o CC sound/isa/gus/gus_pcm.o CC sound/isa/sb/sb16_csp.o CC sound/isa/sb/sb16_main.o CC sound/isa/sb/sb8_main.o CC sound/isa/wss/wss_lib.o The root cause for this is hidden in this Kconfig warning: Adding a dependency on ISA_DMA_API to RADIO_MIROPCM20 fixes these issues. Signed-off-by: Ralf Baechle Acked-by: Takashi Iwai Signed-off-by: Mauro Carvalho Chehab commit 11e48feebe8b5d2ae348893a6e0d47c46204bee2 Author: Darren Hart Date: Mon Jul 11 20:27:40 2011 -0700 x86, doc only: Correct real-mode kernel header offset for init_size The real-mode kernel header init_size field is located at 0x260 per the field listing in th e"REAL-MODE KERNEL HEADER" section. It is listed as 0x25c in the "DETAILS OF HEADER FIELDS" section, which overlaps with pref_address. Correct the details listing to 0x260. Signed-off-by: Darren Hart Link: http://lkml.kernel.org/r/541cf88e2dfe5b8186d8b96b136d892e769a68c1.1310441260.git.dvhart@linux.intel.com CC: H. Peter Anvin Signed-off-by: H. Peter Anvin commit 94c0d4ecbe7f9fe56e052b26b2ab484e246c07b4 Author: Al Viro Date: Tue Jul 12 21:40:23 2011 -0400 Fix ->d_lock locking order in unlazy_walk() Make sure that child is still a child of parent before nested locking of child->d_lock in unlazy_walk(); otherwise we are risking a violation of locking order and deadlocks. Signed-off-by: Al Viro commit 8d86e5f91440aa56a5df516bf58fe3883552ad56 Merge: d93a881 770e1ac Author: Linus Torvalds Date: Tue Jul 12 14:21:19 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/mm: Fix memory_block_size_bytes() for non-pseries mm: Move definition of MIN_MEMORY_BLOCK_SIZE to a header commit d93a881dd7d71ad0e6504af232be2795044ab686 Merge: d1ca1a0 24109af Author: Linus Torvalds Date: Tue Jul 12 14:19:51 2011 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc: pcmcia: pxa2xx/vpac270: free gpios on exist rather than requesting ARM: pxa/raumfeld: fix device name for codec ak4104 ARM: pxa/raumfeld: display initialisation fixes ARM: pxa/raumfeld: adapt to upcoming hardware change ARM: pxa: fix gpio_to_chip() clash with gpiolib namespace genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd) arm: mach-vt8500: add forgotten irq_data conversion ARM: pxa168: correct nand pmu setting ARM: pxa910: correct nand pmu setting ARM: pxa: fix PGSR register address calculation commit d1ca1a004822983e2fc702d5382b4b9a5527cfbe Merge: 620917d a94919e Author: Linus Torvalds Date: Tue Jul 12 14:18:00 2011 -0700 Merge branch 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915/ringbuffer: Idling requires waiting for the ring to be empty Revert "drm/i915: enable rc6 by default" drm/i915: Clean up i915_driver_load failure path drm/i915: Enable GPU reset on Ivybridge. drm/i915/dp: manage sink power state if possible drm/i915/dp: consolidate AUX retry code drm/i915/dp: remove DPMS mode tracking from DP drm/i915/dp: try to read receiver capabilities 3 times when detecting drm/i915/dp: read more receiver capability bits on hotplug drm/i915/dp: use DP DPCD defines when looking at DPCD values drm/i915/dp: retry link status read 3 times on failure commit c2ec9471b5b1307429aef1cfaa2b3ae453a61d6f Author: Steve French Date: Tue Jul 12 19:15:02 2011 +0000 [CIFS] update cifs to version 1.74 Signed-off-by: Steve French commit ea1be1a3c3c4b2bbc32aeb7995e18336c8060e0e Author: Steve French Date: Tue Jul 12 18:24:43 2011 +0000 [CIFS] update limit for snprintf in cifs_construct_tcon In 34c87901e113 "Shrink stack space usage in cifs_construct_tcon" we change the size of the username name buffer from MAX_USERNAME_SIZE (256) to 28. This call to snprintf() needs to be updated as well. Reported by Dan Carpenter. Reviewed-by: Dan Carpenter Signed-off-by: Steve French commit 62411ab2fe5f002dff27417630ddf02cc40ca404 Author: Shirish Pargaonkar Date: Sun Jul 10 06:55:32 2011 -0500 cifs: Fix signing failure when server mandates signing for NTLMSSP When using NTLMSSP authentication mechanism, if server mandates signing, keep the flags in type 3 messages of the NTLMSSP exchange same as in type 1 messages (i.e. keep the indicated capabilities same). Some of the servers such as Samba, expect the flags such as Negotiate_Key_Exchange in type 3 message of NTLMSSP exchange as well. Some servers like Windows do not. https://bugzilla.samba.org/show_bug.cgi?id=8212 Signed-off-by: Shirish Pargaonkar Acked-by: Jeff Layton Signed-off-by: Steve French commit ec0dd267bf7d08cb30e321e45a75fd40edd7e528 Author: Ben Greear Date: Tue Jul 12 10:27:55 2011 -0700 SUNRPC: Fix use of static variable in rpcb_getport_async Because struct rpcbind_args *map was declared static, if two threads entered this method at the same time, the values assigned to map could be sent two two differen tasks. This could cause all sorts of problems, include use-after-free and double-free of memory. Fix this by removing the static declaration so that the map pointer is on the stack. Signed-off-by: Ben Greear Cc: stable@kernel.org Signed-off-by: Trond Myklebust commit a94919eaddaa3fede1df8563ce4d761a75374645 Author: Chris Wilson Date: Tue Jul 12 18:03:29 2011 +0100 drm/i915/ringbuffer: Idling requires waiting for the ring to be empty ...which is measured by the size and not the amount of space remaining. Waiting upon size-8, did one of two things. In the common case with more than 8 bytes available to write into the ring, it would return immediately. Otherwise, it would timeout given the impossible condition of waiting for more space than is available in the ring, leading to warnings such as: [drm:intel_cleanup_ring_buffer] *ERROR* failed to quiesce render ring whilst cleaning up: -16 Signed-off-by: Chris Wilson Reviewed-by: Eric Anholt Signed-off-by: Keith Packard commit 05bd42688dbc066d4e2689b6f73c0470601f788b Author: Keith Packard Date: Tue Jul 12 08:49:31 2011 -0700 Revert "drm/i915: enable rc6 by default" This reverts commit a51f7a66fb5e4af5ec4286baef940d06594b59d2. We still have a few Ironlake and Sandybridge machines which fail when RC6 is enabled. Better luck next release? Signed-off-by: Keith Packard commit a7b85d2aa63ed09cd5a4a640772b3272f5ac7caa Author: Keith Packard Date: Sun Jul 10 13:12:17 2011 -0700 drm/i915: Clean up i915_driver_load failure path i915_driver_load adds a write-combining MTRR region for the GTT aperture to improve memory speeds through the aperture. If i915_driver_load fails after this, it would not have cleaned up the MTRR. This shouldn't cause any problems, except for consuming an MTRR register. Still, it's best to clean up completely in the failure path, which is easily done by calling mtrr_del if the mtrr was successfully allocated. i915_driver_load calls i915_gem_load which register i915_gem_inactive_shrink. If i915_driver_load fails after calling i915_gem_load, the shrinker will be left registered. When called, it will access freed memory and crash. The fix is to unregister the shrinker in the failure path using code duplicated from i915_driver_unload. i915_driver_load also has some incorrect gotos in the error cleanup paths: * After failing to initialize the GTT (which cannot happen, btw, intel_gtt_get returns a fixed (non-NULL) value), it tries to free the uninitialized WC IO mapping. Fixed this by changing the target from out_iomapfree to out_rmmap Signed-off-by: Keith Packard Tested-by: Lin Ming commit f450c1504d3ff6aace3927c805bdea0ac0669efd Author: Guenter Roeck Date: Sun Jul 10 19:31:29 2011 -0700 hwmon: (pmbus) Use long variables for register to data conversions Using integer variable types for register to data conversions can cause overflows especially for power calculations, which are in microwatt. Use long variables instead. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.39+ commit 8fc62e59425389a6d48429b9d146223122743435 Author: Michal Marek Date: Tue Jul 12 11:54:48 2011 +0200 kbuild: Do not write to builddir in modules_install Let depmod.sh create a temporary directory in /tmp instead of writing to the build directory as root. The mktemp utility should be available on any recent system (and there is already scripts/gen_initramfs_list.sh relying on it). Reported-by: Christian Kujau Signed-off-by: Michal Marek commit f299bb9527abfa6ee45a5e26288b5e3a619f01d6 Author: Ido Yariv Date: Tue Jul 12 00:03:11 2011 +0300 arm: davinci: Fix low level gpio irq handlers' argument Commit 7416401 ("arm: davinci: Fix fallout from generic irq chip conversion") introduced a bug, causing low level interrupt handlers to get a bogus irq number as an argument. The gpio irq handler falsely assumes that the handler data is the irq base number and that is no longer true. Set the irq handler data to be a pointer to the corresponding gpio controller. The chained irq handler can then use it to extract both the irq base number and the gpio registers structure. Signed-off-by: Ido Yariv CC: Thomas Gleixner [nsekhar@ti.com: renamed "ctl" to "d", simplified indexing logic for chips and took care of odd bank handling in irq handler] Signed-off-by: Sekhar Nori commit 3942ae5319640ced5844b75f44884e4bcb8a2f16 Author: Steven Whitehouse Date: Mon Jul 11 08:53:30 2011 +0100 GFS2: Fix race during filesystem mount There is a potential race during filesystem mounting which has recently been reported. It occurs when the userland gfs_controld is able to process requests fast enough that it tries to use the sysfs interface before the lock module is properly initialised. This is a pretty unusual case as normally the lock module initialisation is very quick compared with gfs_controld. This patch adds an interruptible completion which is used to ensure that userland will wait for the initialisation of the lock module to complete. There are other potential solutions to this problem, but this is the quickest at this stage and has been tested both with and without mount.gfs2 present in the system. Signed-off-by: Steven Whitehouse Reported-by: David Booher commit 1ce533686c7d40bf900dc346a7279c17a9ee8e0e Author: Benjamin Marzinski Date: Mon Jun 13 14:27:40 2011 -0500 GFS2: force a log flush when invalidating the rindex glock Right now, there is nothing that forces the log to get flushed when a node drops its rindex glock so that another node can grow the filesystem. If the log doesn't get flushed, GFS2 can corrupt the sd_log_le_rg list in the following way. A node puts an rgd on the list in rg_lo_add(), and then the rindex glock is dropped so the other node can grow the filesystem. When the node reacquires the rindex glock, that rgd gets deleted in clear_rgrpdi() before ever being removed from the list by gfs2_log_flush(). This code simply forces a log flush when the rindex glock is invalidated, solving the problem. Signed-off-by: Benjamin Marzinski Signed-off-by: Steven Whitehouse commit 4171424e66e5525d7128a2c355215ca5c66f76d5 Author: Alex Deucher Date: Mon Jul 11 20:22:33 2011 +0000 drm/radeon/kms: fix typo in read_disabled vbios code BUS_CNTL reg and bits moved between pre-PCIE and PCIE asics. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit e22e6d20700328ed0a1801ad71cecf1b63a22555 Author: Alex Deucher Date: Mon Jul 11 20:27:23 2011 +0000 drm/radeon/kms: use correct BUS_CNTL reg on rs600 BUS_CNTL is at 0x30 on rs600, not 0x4c. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 9a4a0b9c9fa6ad9902f49801d7b770462b69c4d3 Author: Alex Deucher Date: Mon Jul 11 19:45:32 2011 +0000 drm/radeon/kms: fix backend map typo on juniper Don't enable backends that don't exist. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit cbac9543281f8e813f3ca9186c963a9b55136e93 Author: Alex Deucher Date: Mon Jul 11 14:49:28 2011 +0000 drm/radeon/kms: fix regression in hotplug Skip connectors that do not have an HPD pin. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=39027 Signed-off-by: Alex Deucher Tested-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 7686d1cc5ed0932a533a5acbc3888b48de63bef8 Author: Matvejchikov Ilya Date: Sun Jul 10 08:49:26 2011 +0000 slip: fix wrong SLIP6 ifdef-endif placing SLIP6 have nothing to do with CSLIP so placing a block of SLIP6-related code within a CSLIP ifdef-endif block is incorrect. Signed-off-by: Ilya Matvejchikov Signed-off-by: David S. Miller commit 770e1ac5f29003fca18af4e67eb5a05ddb5b1491 Author: Benjamin Herrenschmidt Date: Tue Jun 14 10:57:51 2011 +1000 powerpc/mm: Fix memory_block_size_bytes() for non-pseries Just compiling pseries in the kernel causes it to override memory_block_size_bytes() regardless of what is the runtime platform. This cleans up the implementation of that function, fixing a bug or two while at it, so that it's harmless (and potentially useful) for other platforms. Without this, bugs in that code would trigger a WARN_ON() in drivers/base/memory.c when booting some different platforms. If/when we have another platform supporting memory hotplug we might want to either move that out to a generic place or make it a ppc_md. callback. Signed-off-by: Benjamin Herrenschmidt commit a63fdc5156f2ef5690b6cf03d72b0c4917efbba7 Author: Benjamin Herrenschmidt Date: Tue Jun 14 10:57:50 2011 +1000 mm: Move definition of MIN_MEMORY_BLOCK_SIZE to a header The macro MIN_MEMORY_BLOCK_SIZE is currently defined twice in two .c files, and I need it in a third one to fix a powerpc bug, so let's first move it into a header Signed-off-by: Benjamin Herrenschmidt Acked-by: Ingo Molnar commit d7b290a1056c5564eec8a1b169c6e84ff3f54c13 Author: Jarod Wilson Date: Mon Jul 11 12:09:00 2011 -0300 [media] nuvoton-cir: make idle timeout more sane The nuvoton-cir inherited an insanely low idle timeout value from the mceusb driver. We're fixing mceusb, should fix this driver too. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 9824ae4aff2793947ea78c4c8147bb6c59efdcba Author: Rafi Rubin Date: Sun Jul 3 17:13:53 2011 -0300 [media] mceusb: increase default timeout to 100ms This matches the typical timeout advertised by hardware, once we're actually interpreting it correctly. Signed-off-by: Rafi Rubin Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit f3e456cb899304bed183247ed3228f7ff855eebd Author: Rafi Rubin Date: Sun Jul 3 17:13:52 2011 -0300 [media] mceusb: Timeout unit corrections Unit missmatch in mceusb_handle_command. It should be converting to us, not 1/10th of ms. mceusb_dev_printdata 100us/ms -> 1000us/ms Alter format of fix slightly and update comment to match proper reality. Signed-off-by: Rafi Rubin Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 620917de59eeb934b9f8cf35cc2d95c1ac8ed0fc Author: Linus Torvalds Date: Mon Jul 11 16:51:52 2011 -0700 Linux 3.0-rc7 commit d7515b8866b60c9526d2d7af37ebcd16c3c5ed97 Author: Jarod Wilson Date: Wed Jun 29 18:36:19 2011 -0300 [media] Revert "V4L/DVB: cx23885: Enable Message Signaled Interrupts(MSI)" This reverts commit e38030f3ff02684eb9e25e983a03ad318a10a2ea. MSI flat-out doesn't work right on cx2388x devices yet. There are now multiple reports of cards that hard-lock systems when MSI is enabled, including my own HVR-1250 when trying to use its built-in IR receiver. Disable MSI and it works just fine. Similar for another user's HVR-1270. Issues have also been reported with the HVR-1850 when MSI is enabled, and the 1850 behavior sounds similar to an as-yet-undiagnosed issue I've seen with an 1800. CC: stable@kernel.org CC: Steven Toth CC: Kusanagi Kouichi Signed-off-by: Jarod Wilson Acked-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 5adaf851d2073c76bb98bc5cdb13d5754b7f0983 Author: Linus Torvalds Date: Mon Jul 11 16:48:38 2011 -0700 Documentation/Changes: remove some really obsolete text That file harkens back to the days of the big 2.4 -> 2.6 version jump, and was based even then on older versions. Some of it is just obsolete, and Jesper Juhl points out that it talks about kernel versions 2.6 and should be updated to 3.0. Remove some obsolete text, and re-phrase some other to not be 2.6-specific. Reported-by: Jesper Juhl Signed-off-by: Linus Torvalds commit c15000b40d46c0affa4c142c4ecb7beee4ce03f3 Merge: 9ddf7f5 ddc6ff3 Author: Linus Torvalds Date: Mon Jul 11 16:43:27 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] msp3400: fill in v4l2_tuner based on vt->type field [media] tuner-core.c: don't change type field in g_tuner or g_frequency [media] cx18/ivtv: fix g_tuner support [media] tuner-core: power up tuner when called with s_power(1) [media] v4l2-ioctl.c: check for valid tuner type in S_HW_FREQ_SEEK [media] tuner-core: simplify the standard fixup [media] tuner-core/v4l2-subdev: document that the type field has to be filled in [media] v4l2-subdev.h: remove unused s_mode tuner op [media] feature-removal-schedule: change in how radio device nodes are handled [media] bttv: fix s_tuner for radio [media] pvrusb2: fix g/s_tuner support [media] v4l2-ioctl.c: prefill tuner type for g_frequency and g/s_tuner [media] tuner-core: fix tuner_resume: use t->mode instead of t->type [media] tuner-core: fix s_std and s_tuner commit e5012d1f3861d18c7f3814e757c1c3ab3741dbcd Author: Andy Adamson Date: Mon Jul 11 17:17:42 2011 -0400 NFSv4.1: update nfs4_fattr_bitmap_maxsz Attribute IDs assigned in RFC 5661 now require three bitmaps. Fixes hitting a BUG_ON in xdr_shrink_bufhead when getting ACLs. Signed-off-by: Andy Adamson Cc:stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 24109afd17426e1a2b72141e4a2b730057e1a0ea Merge: 659fb32 512b793 Author: Arnd Bergmann Date: Mon Jul 11 23:26:16 2011 +0200 Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into fixes commit 9ddf7f5058c4f4badd38dba8d5896a5dbd7e716f Merge: 71a1b44 8875962 Author: Linus Torvalds Date: Mon Jul 11 12:49:03 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM: Reintroduce dropped call to check_wakeup_irqs commit 71a1b44b036457169e7974eea0b5b37f64176952 Merge: c891f2c f484b5d0 Author: Linus Torvalds Date: Mon Jul 11 12:48:24 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: drop spinlock before calling cifs_put_tlink cifs: fix expand_dfs_referral cifs: move bdi_setup_and_register outside of CONFIG_CIFS_DFS_UPCALL cifs: factor smb_vol allocation out of cifs_setup_volume_info cifs: have cifs_cleanup_volume_info not take a double pointer cifs: fix build_unc_path_to_root to account for a prefixpath cifs: remove bogus call to cifs_cleanup_volume_info commit c891f2cd89c7a2b4d51d009e94c74a1e31626528 Merge: 1456281 50f4ddd Author: Linus Torvalds Date: Mon Jul 11 12:47:53 2011 -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] fix cpumask memory leak in acpi-cpufreq on cpu hotplug. commit 145628130b9b364fe246e96ba52386d97af40d64 Merge: 83e9569 0401846 Author: Linus Torvalds Date: Mon Jul 11 12:47:09 2011 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: hp-wmi: fix use after free dell-laptop - using buffer without mutex_lock Revert: "dell-laptop: Toggle the unsupported hardware killswitch" platform-drivers-x86: set backlight type to BACKLIGHT_PLATFORM thinkpad-acpi: handle HKEY 0x4010, 0x4011 events drivers/platform/x86: Fix memory leak thinkpad-acpi: handle some new HKEY 0x60xx events acer-wmi: fix bitwise bug when set device state acer-wmi: Only update rfkill status for associated hotkey events commit 83e95697143d341f3c670c4c5cda0268ae198e63 Merge: 404ba3f 7f7e3711 Author: Linus Torvalds Date: Mon Jul 11 12:46:39 2011 -0700 Merge branch 'movieboard' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'movieboard' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: ohci: do not bind to Pinnacle cards, avert panic commit 404ba3f029a53597928a20ce33351e77e3259840 Author: Joe Perches Date: Sun Jul 10 02:28:26 2011 -0700 ath5k: Add missing breaks in switch/case Signed-off-by: Joe Perches Acked-by: Pavel Roskin Signed-off-by: Linus Torvalds commit 05801817845b308e1cf0fb8e2700b15dab79afc5 Author: Muthu Kumar Date: Mon Jul 11 11:04:58 2011 -0700 Documentation/spinlocks.txt: Remove reference to sti()/cli() Since we removed sti()/cli() and related, how about removing it from Documentation/spinlocks.txt? Signed-off-by: Muthukumar R Signed-off-by: Linus Torvalds commit f484b5d001a972a42129570e98086a2a6d216ce0 Author: Jeff Layton Date: Mon Jul 11 10:16:34 2011 -0400 cifs: drop spinlock before calling cifs_put_tlink ...as that function can sleep. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 5da0ef9a8554a8d03dc880a53f213289fe7b576d Author: Tejun Heo Date: Mon Jul 11 10:34:32 2011 +0200 x86: Disable AMD_NUMA for 32bit for now Commit 2706a0bf7b ("x86, NUMA: Enable CONFIG_AMD_NUMA on 32bit too") enabled AMD NUMA for 32bit too. Unfortunately, SPARSEMEM on 32bit had rather coarse (512MiB) addr->node mapping granularity due to lack of space in page->flags. This led to boot failure on certain AMD NUMA machines which had 128MiB alignment on nodes. Patches to properly detect this condition and reject NUMA configuration are posted[1] but deemed too pervasive for merge at this point (-rc6). Disable AMD NUMA for 32bit for now and re-enable once the detection logic is merged. [1] http://thread.gmane.org/gmane.linux.kernel/1161279/focus=1162583 Reported-by: Hans Rosenfeld Signed-off-by: Tejun Heo Cc: Conny Seidel Link: http://lkml.kernel.org/r/20110711083432.GC943@htj.dyndns.org Signed-off-by: Ingo Molnar commit 0401846c339fbdfb9bd822d83b43e8a9f7d072a4 Author: Eric Dumazet Date: Mon Jul 11 12:22:21 2011 +0200 hp-wmi: fix use after free [ 191.310008] WARNING: kmemcheck: Caught 32-bit read from freed memory (f0d25f14) [ 191.310011] c056d2f088000000105fd2f00000000050415353040000000000000000000000 [ 191.310020] i i i i f f f f f f f f f f f f f f f f f f f f f f f f f f f f [ 191.310027] ^ [ 191.310029] [ 191.310032] Pid: 737, comm: modprobe Not tainted 3.0.0-rc5+ #268 Hewlett-Packard HP Compaq 6005 Pro SFF PC/3047h [ 191.310036] EIP: 0060:[] EFLAGS: 00010286 CPU: 0 [ 191.310039] EIP is at hp_wmi_perform_query+0x104/0x150 [hp_wmi] [ 191.310041] EAX: f0d25601 EBX: f0d25f00 ECX: 000121cf EDX: 000121ce [ 191.310043] ESI: f0d25f10 EDI: f0f97ea8 EBP: f0f97ec4 ESP: c173f34c [ 191.310045] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 191.310046] CR0: 8005003b CR2: f540c000 CR3: 30f30000 CR4: 000006d0 [ 191.310048] DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000 [ 191.310050] DR6: ffff4ff0 DR7: 00000400 [ 191.310051] [] hp_wmi_dock_state+0x2b/0x40 [hp_wmi] [ 191.310054] [] hp_wmi_init+0x93/0x1a8 [hp_wmi] [ 191.310057] [] do_one_initcall+0x30/0x170 [ 191.310061] [] sys_init_module+0xef/0x1a60 [ 191.310064] [] sysenter_do_call+0x12/0x28 [ 191.310067] [] 0xffffffff Signed-off-by: Eric Dumazet Signed-off-by: Matthew Garrett commit b486742a12a474a01d1acb1a5924af11d9b32b68 Author: Jose Alonso Date: Sun Jul 10 15:46:51 2011 -0300 dell-laptop - using buffer without mutex_lock Using buffer->output[1] without mutex_lock() Signed-off-by: Jose Alonso Signed-off-by: Matthew Garrett commit be65dde82a4a402e9607c2f306f343bf0912623c Author: Keng-Yu Lin Date: Mon Jun 27 11:19:03 2011 +0100 Revert: "dell-laptop: Toggle the unsupported hardware killswitch" This reverts commit a3d77411e8b2ad661958c1fbee65beb476ec6d70, as it causes a mess in the wireless rfkill status on some models. It is probably a bad idea to toggle the rfkill for all dell models without the respect to the claim that it is hardware-controlled. Cc: stable@kernel.org Signed-off-by: Keng-Yu Lin Signed-off-by: Matthew Garrett commit 887596224cca4dc4669c53e4d7a33fcfc9d9e823 Author: Colin Cross Date: Mon Jul 11 10:51:49 2011 +0200 PM: Reintroduce dropped call to check_wakeup_irqs Patch 2e711c04dbbf7a7732a3f7073b1fc285d12b369d (PM: Remove sysdev suspend, resume and shutdown operations) deleted sysdev_suspend(), which was being relied on to call check_wakeup_irqs() in suspend. If check_wakeup_irqs() is not called, wake interrupts that are pending when suspend is entered may be lost. It also breaks IRQCHIP_MASK_ON_SUSPEND, which is handled in check_wakeup_irqs(). This patch adds a call to check_wakeup_irqs() in syscore_suspend(), similar to what was deleted in sysdev_suspend(). Signed-off-by: Colin Cross Signed-off-by: Rafael J. Wysocki commit 512b7938fefd03d512463aa597a1216cf088dfe3 Author: Jonathan Cameron Date: Mon Jun 6 15:24:13 2011 +0100 pcmcia: pxa2xx/vpac270: free gpios on exist rather than requesting Signed-off-by: Jonathan Cameron Acked-by: Marek Vasut Signed-off-by: Eric Miao commit 9c0de4947a44166b16f189aa56f34791e9d7f552 Author: Daniel Mack Date: Wed May 25 13:37:33 2011 +0200 ARM: pxa/raumfeld: fix device name for codec ak4104 In commit f0fba2ad (ASoC: multi-component - ASoC Multi-Component Support), the name of the ak4104 codec driver was changed without amending the platform code which uses it as well. Signed-off-by: Daniel Mack Signed-off-by: Eric Miao commit a74fe1194b8da1dcee7529ba14999381bb9c25d9 Author: Sven Neumann Date: Wed May 25 13:37:32 2011 +0200 ARM: pxa/raumfeld: display initialisation fixes The display requires some milliseconds between GPIO_TFT_VA_EN and GPIO_DISPLAY_ENABLE. Reorder initialisation to comply with the display spec. Also tune timings for better compliance with the spec. Signed-off-by: Sven Neumann Acked-by: Daniel Mack Signed-off-by: Eric Miao commit 8c568df9d7e9b40063f0a5d4235e3d28df88f92a Author: Sven Neumann Date: Wed May 25 13:37:31 2011 +0200 ARM: pxa/raumfeld: adapt to upcoming hardware change The backlight control is going to change back to PWM in the upcoming Raumfeld Controller hardware revision. Signed-off-by: Sven Neumann Acked-by: Daniel Mack Signed-off-by: Eric Miao commit a065685d2f0b4bb69d0f64d2cd396a5c463db2a9 Author: Linus Walleij Date: Mon Jun 13 10:42:19 2011 +0200 ARM: pxa: fix gpio_to_chip() clash with gpiolib namespace The PXA platform code has a static inline helper called gpio_to_chip which clashes with the gpiolib namespace if we try to expose the function with the same name from gpiolib, and it's still confusing even if we don't do that. So rename it to gpio_to_pxachip(). Reported-by: H Hartley Sweeten Cc: Eric Miao Signed-off-by: Linus Walleij Signed-off-by: Eric Miao commit 50f4ddd4ff713d2599e2f246775fe2206090126e Author: Luming Yu Date: Fri Jul 8 16:37:44 2011 -0400 [CPUFREQ] fix cpumask memory leak in acpi-cpufreq on cpu hotplug. I came across a memory leak during a cyclic cpu-online-offline test. Signed-off-by: Yu Luming Cc: Len Brown Signed-off-by: Andrew Morton Signed-off-by: Dave Jones commit e3bbfa78bab125f58b831b5f7f45b5a305091d72 Merge: aa4c495 22e6b23 Author: Linus Torvalds Date: Sun Jul 10 10:24:47 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (pmbus) Improve auto-detection of temperature status register hwmon: (lm95241) Fix negative temperature results hwmon: (lm95241) Fix chip detection code commit 22e6b2312d221376dcd98a8afb0f314b62d33a91 Author: Guenter Roeck Date: Sun Jul 3 13:08:03 2011 -0700 hwmon: (pmbus) Improve auto-detection of temperature status register It is possible that a PMBus device supports the READ_TEMPERATURE2 and/or READ_TEMPERATURE3 registers but does not support READ_TEMPERATURE1. Improve temperature status register detection to address this condition. Reported-by: Jean Delvare Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.39+ commit 0c2a40e2fe4f4af0410f57e84b95b817ec15aa70 Author: Guenter Roeck Date: Thu Jun 30 02:09:37 2011 -0700 hwmon: (lm95241) Fix negative temperature results Negative temperatures were returned in degrees C instead of milli-Degrees C. Also, negative temperatures were reported for remote temperature sensors even if the chip was configured for positive-only results. Fix by detecting temperature modes, and by treating negative temperatures similar to positive temperatures, with appropriate sign extension. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.30+ commit aa4c495e3d24335bedbed56cca47ec9ee1e1b390 Merge: 2169ce9 e8fd86e Author: Linus Torvalds Date: Sun Jul 10 07:29:22 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - Fix a copmile warning ASoC: ak4642: fixup snd_soc_update_bits mask for PW_MGMT2 ALSA: hda - Change all ADCs for dual-adc switching mode for Realtek ASoC: Manage WM8731 ACTIVE bit as a supply widget ASoC: Don't set invalid name string to snd_card->driver field ASoC: Ensure we delay long enough for WM8994 FLL to lock when starting ASoC: Tegra: I2S: Ensure clock is enabled when writing regs ASoC: Fix Blackfin I2S _pointer() implementation return in bounds values ASoC: tlv320aic3x: Do soft reset to codec when going to bias off state ASoC: tlv320aic3x: Don't sync first two registers from register cache audio: tlv320aic26: fix PLL register configuration commit 2169ce92ca996bdbb0baa8b99f928eb5e9a8f3ab Merge: 7fc7693 f483d39 Author: Linus Torvalds Date: Sun Jul 10 07:28:51 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: PCI: conditional resource-reallocation through kernel parameter pci=realloc commit 7fc7693627f363820c0e95d1e082f73c197f83c4 Merge: 8733449 90c5ffe Author: Linus Torvalds Date: Sun Jul 10 07:28:30 2011 -0700 Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm * 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm: ARM: 6994/1: smp_twd: Fix typo in 'twd_timer_rate' printing ARM: 6987/1: l2x0: fix disabling function to avoid deadlock ARM: 6966/1: ep93xx: fix inverted RTS/DTR signals on uart1 ARM: 6980/1: mmci: use StartBitErr to detect bad connections ARM: 6979/1: mach-vt8500: add forgotten irq_data conversion ARM: move memory layout sanity checking before meminfo initialization ARM: 6990/1: MAINTAINERS: add entry for ARM PMU profiling and debugging ARM: 6989/1: perf: do not start the PMU when no events are present ARM: dmabounce: fix map_single() error return value commit 8733449b7c6aca8dc5357720c00633b0dfa78207 Merge: f1a04db b7eff39 Author: Linus Torvalds Date: Sun Jul 10 07:27:45 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: clean up multiple crtc handling for evergreen+ (v2) commit ff1817749f0405c019420fcb415ad20fedec7884 Author: Jim Cromie Date: Sun Jul 10 07:07:40 2011 -0700 natsemi: fix another dma-debug report commit 2fb83cd618be34546fb526a9051eceaa95517026 Author: FUJITA Tomonori Date: Sun Jul 3 22:34:29 2011 -0700 Above commit fixed previously reported warning, but I later noticed another one at shutdown. This commit fixes it. ------------[ cut here ]------------ WARNING: at /home/jimc/projects/lx/linux-2.6/lib/dma-debug.c:820 check_unmap+0x1fe/0x56c() natsemi 0000:00:06.0: DMA-API: device driver frees DMA memory with different size [device address=0x0000000007356840] [map size=1538 bytes] [unmap size=1522 bytes] Modules linked in: bridge stp llc x_tables ipv6 pc87360 hwmon_vid scx200_hrt pc8736x_gpio scx200_gpio nsc_gpio scx200_acb i2c_core arc4 rtl8180 mac80211 eeprom_93cx6 cfg80211 pcspkr scx200 rfkill ide_gd_mod ide_pci_generic ohci_hcd usbcore sc1200 ide_core [last unloaded: ebtables] Pid: 3996, comm: ifconfig Not tainted 3.0.0-rc6-skc-dyndbg+ #104 Call Trace: [] warn_slowpath_common+0x4a/0x5f [] ? check_unmap+0x1fe/0x56c [] warn_slowpath_fmt+0x26/0x2a [] check_unmap+0x1fe/0x56c [] ? check_preempt_curr+0x5a/0x6a [] debug_dma_unmap_page+0x53/0x5b [] pci_unmap_single+0x4d/0x57 [] drain_rx+0x4e/0x74 [] netdev_close+0x103/0x1b8 [] ? spin_unlock_bh.clone.30+0x12/0x14 [] ? dev_deactivate_many+0xc1/0xef [] __dev_close_many+0x69/0x86 [] __dev_close+0x1f/0x2c [] __dev_change_flags+0x92/0x107 [] dev_change_flags+0x13/0x3f [] devinet_ioctl+0x248/0x4b3 [] ? dev_ioctl+0x50a/0x54c [] inet_ioctl+0x8e/0xa7 [] sock_ioctl+0x1b6/0x1da [] ? sock_fasync+0x61/0x61 [] do_vfs_ioctl+0x44d/0x47f [] ? do_page_fault+0x268/0x299 [] ? __put_cred+0x34/0x36 [] ? sys_faccessat+0x13e/0x14b [] sys_ioctl+0x2e/0x4a [] syscall_call+0x7/0xb ---[ end trace 7013a1bdac403e56 ]--- Signed-off-by: Jim Cromie Signed-off-by: David S. Miller commit 7f7e37115a8b6724f26d0637a04e1d35e3c59717 Author: Stefan Richter Date: Sun Jul 10 00:23:03 2011 +0200 firewire: ohci: do not bind to Pinnacle cards, avert panic When firewire-ohci is bound to a Pinnacle MovieBoard, eventually a "Register access failure" is logged and an interrupt storm or a kernel panic happens. https://bugzilla.kernel.org/show_bug.cgi?id=36622 Until this is sorted out (if that is going to succeed at all), let's just prevent firewire-ohci from touching these devices. Signed-off-by: Stefan Richter Cc: commit b9bce2e9f9936cfd12fbc62ead11edcdd46dec7e Author: Jeff Layton Date: Wed Jul 6 08:10:39 2011 -0400 cifs: fix expand_dfs_referral Regression introduced in commit 724d9f1cfba. Prior to that, expand_dfs_referral would regenerate the mount data string and then call cifs_parse_mount_options to re-parse it (klunky, but it worked). The above commit moved cifs_parse_mount_options out of cifs_mount, so the re-parsing of the new mount options no longer occurred. Fix it by making expand_dfs_referral re-parse the mount options. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 20547490c12b0ee3d32152b85e9f9bd183aa7224 Author: Jeff Layton Date: Sat Jul 9 12:21:07 2011 -0400 cifs: move bdi_setup_and_register outside of CONFIG_CIFS_DFS_UPCALL This needs to be done regardless of whether that KConfig option is set or not. Reported-by: Sven-Haegar Koch Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 2c7beb9285342e96f2ebd8ae24d708484e443a7d Author: Kuninori Morimoto Date: Tue Jul 5 00:16:17 2011 -0700 ASoC: sh: fsi-hdmi: fixup snd_soc_card name it shouldn't contain space letters and special letters like parentheses. aplay will be "Segmentation fault" without this patch special thanks to Takashi. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f15c9413310b1dcb55237e9cba16568e35f01471 Author: Kuninori Morimoto Date: Tue Jul 5 00:16:03 2011 -0700 ASoC: sh: fsi-da7210: fixup snd_soc_card name it shouldn't contain space letters and special letters like parentheses. aplay will be "Segmentation fault" without this patch. special thanks to Takashi. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 505b04e0f80a1520245d66e94c3532ec417603f0 Author: Kuninori Morimoto Date: Tue Jul 5 00:15:04 2011 -0700 ASoC: sh: fsi-ak4642: fixup snd_soc_card name it shouldn't contain space letters and special letters like parentheses. aplay will be "Segmentation fault" without this patch. special thanks to Takashi. Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit e8fd86efaa09445ca1afc1aea08d4666c966ed03 Merge: abaead6 18361bb Author: Takashi Iwai Date: Sat Jul 9 11:56:43 2011 +0200 Merge branch 'fix/asoc' into for-linus commit abaead6ac55dbda8b4bae40251d69dc3f0c49b1c Author: Takashi Iwai Date: Sat Jul 9 11:55:28 2011 +0200 ALSA: hda - Fix a copmile warning It's harmless but annyoing. sound/pci/hda/patch_realtek.c: In function ‘alc_cap_getput_caller’: sound/pci/hda/patch_realtek.c:2722:9: warning: ‘err’ may be used uninitialized in this function Signed-off-by: Takashi Iwai commit 18361bbe3180eca62796188d62aefac1519f4c83 Merge: 873bd4c bd7fdbc Author: Takashi Iwai Date: Sat Jul 9 09:44:09 2011 +0200 Merge branch 'for-3.0' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into fix/asoc commit f1a04dbd1e7b497467d488dd35155014eaee8f9b Merge: b56045d d34c1fc Author: Linus Torvalds Date: Fri Jul 8 23:28:23 2011 -0700 Merge branch 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung * 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: S3C2440: fix section mismatch on mini2440 ARM: S3C24XX: drop return codes in void function of dma.c ARM: S3C24XX: don't use uninitialized variable in dma.c ARM: EXYNOS4: Set appropriate I2C device variant ARM: S5PC100: Fix for compilation error spi/s3c64xx: Bug fix for SPI with different FIFO level ARM: SAMSUNG: Add tx_st_done variable ARM: EXYNOS4: Address a section mismatch w/ suspend issue. ARM: S5P: Fix bug on init of PWMTimers for HRTimer ARM: SAMSUNG: header file revised to prevent declaring duplicated ARM: EXYNOS4: fix improper gpio configuration ARM: EXYNOS4: Fix card detection for sdhci 0 and 2 commit b56045d4019a80935ead337e5c3f8e211fa9b471 Merge: 1acc930 6ff325a Author: Linus Torvalds Date: Fri Jul 8 23:26:28 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: regulator: max8997: Fix setting inappropriate value for ramp_delay variable regulator: db8500-prcmu: small fixes regulator: max8997: remove dependency on platform_data pointer regulator: MAX8997: Fix for divide by zero error regulator: max8952 - fix wrong gpio valid check commit 1acc9309eb2674533944f48dbaaa53e7750e3947 Merge: c2d197e 149e2d7 Author: Linus Torvalds Date: Fri Jul 8 23:25:45 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: btrfs: fix oops when doing space balance Btrfs: don't panic if we get an error while balancing V2 btrfs: add missing options displayed in mount output commit c2d197e82b6267fd3338f3fbcb12750ca9f5abda Author: Bjorn Helgaas Date: Fri Jul 8 15:39:48 2011 -0700 MAINTAINERS: update Bjorn Helgaas's email address Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30cb35be6daff48ad6c049466ac92a22c200d1b2 Author: Wolfram Sang Date: Fri Jul 8 15:39:46 2011 -0700 drivers/leds/leds-pca9532.c: change driver name to be unique This driver handles the variants pca9530-pca9533, so it chose the name "pca953x". However, there is a gpio driver which decided on the same name. As a result, those two can't be loaded at the same time. Add a subsystem prefix to make the driver name unique. Device matching will not suffer, because both are I2C drivers which match using a i2c_device_id-table which is not altered. Signed-off-by: Wolfram Sang Acked-by: Jean Delvare Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8f3b1327aa454bc8283e96bca7669c3c88b83f79 Author: Bob Liu Date: Fri Jul 8 15:39:46 2011 -0700 mm/nommu.c: fix remap_pfn_range() remap_pfn_range() means map physical address pfn<vm_start = pfn << PAGE_SHIFT which is wrong acroding the original meaning of this function. And some driver developer using remap_pfn_range() with correct parameter will get unexpected result because vm_start is changed. It should be implementd like addr = pfn << PAGE_SHIFT but which is meanless on nommu arch, this patch just make it simply return. Parameter name and setting of vma->vm_flags also be fixed. Signed-off-by: Bob Liu Cc: Geert Uytterhoeven Cc: David Howells Acked-by: Greg Ungerer Cc: Mike Frysinger Cc: Bob Liu Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f607e7fc5fb94d92030c4527287e9c149ddf9e65 Author: Jean-François Dagenais Date: Fri Jul 8 15:39:44 2011 -0700 w1: ds1wm: add a reset recovery parameter This fixes a regression in 3.0 reported by Paul Parsons regarding the removal of the msleep(1) in the ds1wm_reset() function: : The linux-3.0-rc4 DS1WM 1-wire driver is logging "bus error, retrying" : error messages on an HP iPAQ hx4700 PDA (XScale-PXA270): : : : Driver for 1-wire Dallas network protocol. : DS1WM w1 busmaster driver - (c) 2004 Szabolcs Gyurko : 1-Wire driver for the DS2760 battery monitor chip - (c) 2004-2005, Szabolcs Gyurko : ds1wm ds1wm: pass: 1 bus error, retrying : ds1wm ds1wm: pass: 2 bus error, retrying : ds1wm ds1wm: pass: 3 bus error, retrying : ds1wm ds1wm: pass: 4 bus error, retrying : ds1wm ds1wm: pass: 5 bus error, retrying : ... : : The visible result is that the battery charging LED is erratic; sometimes : it works, mostly it doesn't. : : The linux-2.6.39 DS1WM 1-wire driver worked OK. I haven't tried 3.0-rc1, : 3.0-rc2, or 3.0-rc3. This sleep should not be required on normal circuitry provided the pull-ups on the bus are correctly adapted to the slaves. Unfortunately, this is not always the case. The sleep is restored but as a parameter to the probe function in the pdata. [akpm@linux-foundation.org: coding-style fixes] Reported-by: Paul Parsons Tested-by: Paul Parsons Signed-off-by: Jean-François Dagenais Cc: Evgeniy Polyakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 453a9bf347f1e22a5bb3605ced43b2366921221d Author: KAMEZAWA Hiroyuki Date: Fri Jul 8 15:39:43 2011 -0700 memcg: fix numa scan information update to be triggered by memory event commit 889976dbcb12 ("memcg: reclaim memory from nodes in round-robin order") adds an numa node round-robin for memcg. But the information is updated once per 10sec. This patch changes the update trigger from jiffies to memcg's event count. After this patch, numa scan information will be updated when we see 1024 events of pagein/pageout under a memcg. [akpm@linux-foundation.org: attempt to repair code layout] Signed-off-by: KAMEZAWA Hiroyuki Cc: Michal Hocko Cc: Ying Han Cc: Johannes Weiner Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d0c066d29f030d47d19678f8008933e67dd3b72 Author: KAMEZAWA Hiroyuki Date: Fri Jul 8 15:39:42 2011 -0700 memcg: fix reclaimable lru check in memcg Now, in mem_cgroup_hierarchical_reclaim(), mem_cgroup_local_usage() is used for checking whether the memcg contains reclaimable pages or not. If no pages in it, the routine skips it. But, mem_cgroup_local_usage() contains Unevictable pages and cannot handle "noswap" condition correctly. This doesn't work on a swapless system. This patch adds test_mem_cgroup_reclaimable() and replaces mem_cgroup_local_usage(). test_mem_cgroup_reclaimable() see LRU counter and returns correct answer to the caller. And this new function has "noswap" argument and can see only FILE LRU if necessary. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix kerneldoc layout] Signed-off-by: KAMEZAWA Hiroyuki Cc: Michal Hocko Cc: Ying Han Cc: Johannes Weiner Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0b43c3aab0137595335b08b340a3f3e5af9818a6 Author: Shaohua Li Date: Fri Jul 8 15:39:41 2011 -0700 mm: __tlb_remove_page() check the correct batch __tlb_remove_page() switches to a new batch page, but still checks space in the old batch. This check always fails, and causes a forced tlb flush. Signed-off-by: Shaohua Li Acked-by: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 215ddd6664ced067afca7eebd2d1eb83f064ff5a Author: Mel Gorman Date: Fri Jul 8 15:39:40 2011 -0700 mm: vmscan: only read new_classzone_idx from pgdat when reclaiming successfully During allocator-intensive workloads, kswapd will be woken frequently causing free memory to oscillate between the high and min watermark. This is expected behaviour. Unfortunately, if the highest zone is small, a problem occurs. When balance_pgdat() returns, it may be at a lower classzone_idx than it started because the highest zone was unreclaimable. Before checking if it should go to sleep though, it checks pgdat->classzone_idx which when there is no other activity will be MAX_NR_ZONES-1. It interprets this as it has been woken up while reclaiming, skips scheduling and reclaims again. As there is no useful reclaim work to do, it enters into a loop of shrinking slab consuming loads of CPU until the highest zone becomes reclaimable for a long period of time. There are two problems here. 1) If the returned classzone or order is lower, it'll continue reclaiming without scheduling. 2) if the highest zone was marked unreclaimable but balance_pgdat() returns immediately at DEF_PRIORITY, the new lower classzone is not communicated back to kswapd() for sleeping. This patch does two things that are related. If the end_zone is unreclaimable, this information is communicated back. Second, if the classzone or order was reduced due to failing to reclaim, new information is not read from pgdat and instead an attempt is made to go to sleep. Due to this, it is also necessary that pgdat->classzone_idx be initialised each time to pgdat->nr_zones - 1 to avoid re-reads being interpreted as wakeups. Signed-off-by: Mel Gorman Reported-by: Pádraig Brady Tested-by: Pádraig Brady Tested-by: Andrew Lutomirski Acked-by: Rik van Riel Cc: Minchan Kim Cc: KOSAKI Motohiro Cc: Johannes Weiner Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit da175d06b437093f93109ba9e5efbe44dfdf9409 Author: Mel Gorman Date: Fri Jul 8 15:39:39 2011 -0700 mm: vmscan: evaluate the watermarks against the correct classzone When deciding if kswapd is sleeping prematurely, the classzone is taken into account but this is different to what balance_pgdat() and the allocator are doing. Specifically, the DMA zone will be checked based on the classzone used when waking kswapd which could be for a GFP_KERNEL or GFP_HIGHMEM request. The lowmem reserve limit kicks in, the watermark is not met and kswapd thinks it's sleeping prematurely keeping kswapd awake in error. Signed-off-by: Mel Gorman Reported-by: Pádraig Brady Tested-by: Pádraig Brady Tested-by: Andrew Lutomirski Acked-by: Rik van Riel Reviewed-by: Minchan Kim Cc: KOSAKI Motohiro Cc: Johannes Weiner Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d7868dae893c83c50c7824bc2bc75f93d114669f Author: Mel Gorman Date: Fri Jul 8 15:39:38 2011 -0700 mm: vmscan: do not apply pressure to slab if we are not applying pressure to zone During allocator-intensive workloads, kswapd will be woken frequently causing free memory to oscillate between the high and min watermark. This is expected behaviour. When kswapd applies pressure to zones during node balancing, it checks if the zone is above a high+balance_gap threshold. If it is, it does not apply pressure but it unconditionally shrinks slab on a global basis which is excessive. In the event kswapd is being kept awake due to a high small unreclaimable zone, it skips zone shrinking but still calls shrink_slab(). Once pressure has been applied, the check for zone being unreclaimable is being made before the check is made if all_unreclaimable should be set. This miss of unreclaimable can cause has_under_min_watermark_zone to be set due to an unreclaimable zone preventing kswapd backing off on congestion_wait(). Signed-off-by: Mel Gorman Reported-by: Pádraig Brady Tested-by: Pádraig Brady Tested-by: Andrew Lutomirski Acked-by: Rik van Riel Reviewed-by: Minchan Kim Reviewed-by: KOSAKI Motohiro Cc: Johannes Weiner Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08951e545918c1594434d000d88a7793e2452a9b Author: Mel Gorman Date: Fri Jul 8 15:39:36 2011 -0700 mm: vmscan: correct check for kswapd sleeping in sleeping_prematurely During allocator-intensive workloads, kswapd will be woken frequently causing free memory to oscillate between the high and min watermark. This is expected behaviour. Unfortunately, if the highest zone is small, a problem occurs. This seems to happen most with recent sandybridge laptops but it's probably a co-incidence as some of these laptops just happen to have a small Normal zone. The reproduction case is almost always during copying large files that kswapd pegs at 100% CPU until the file is deleted or cache is dropped. The problem is mostly down to sleeping_prematurely() keeping kswapd awake when the highest zone is small and unreclaimable and compounded by the fact we shrink slabs even when not shrinking zones causing a lot of time to be spent in shrinkers and a lot of memory to be reclaimed. Patch 1 corrects sleeping_prematurely to check the zones matching the classzone_idx instead of all zones. Patch 2 avoids shrinking slab when we are not shrinking a zone. Patch 3 notes that sleeping_prematurely is checking lower zones against a high classzone which is not what allocators or balance_pgdat() is doing leading to an artifical belief that kswapd should be still awake. Patch 4 notes that when balance_pgdat() gives up on a high zone that the decision is not communicated to sleeping_prematurely() This problem affects 2.6.38.8 for certain and is expected to affect 2.6.39 and 3.0-rc4 as well. If accepted, they need to go to -stable to be picked up by distros and this series is against 3.0-rc4. I've cc'd people that reported similar problems recently to see if they still suffer from the problem and if this fixes it. This patch: correct the check for kswapd sleeping in sleeping_prematurely() During allocator-intensive workloads, kswapd will be woken frequently causing free memory to oscillate between the high and min watermark. This is expected behaviour. A problem occurs if the highest zone is small. balance_pgdat() only considers unreclaimable zones when priority is DEF_PRIORITY but sleeping_prematurely considers all zones. It's possible for this sequence to occur 1. kswapd wakes up and enters balance_pgdat() 2. At DEF_PRIORITY, marks highest zone unreclaimable 3. At DEF_PRIORITY-1, ignores highest zone setting end_zone 4. At DEF_PRIORITY-1, calls shrink_slab freeing memory from highest zone, clearing all_unreclaimable. Highest zone is still unbalanced 5. kswapd returns and calls sleeping_prematurely 6. sleeping_prematurely looks at *all* zones, not just the ones being considered by balance_pgdat. The highest small zone has all_unreclaimable cleared but the zone is not balanced. all_zones_ok is false so kswapd stays awake This patch corrects the behaviour of sleeping_prematurely to check the zones balance_pgdat() checked. Signed-off-by: Mel Gorman Reported-by: Pádraig Brady Tested-by: Pádraig Brady Tested-by: Andrew Lutomirski Acked-by: Rik van Riel Reviewed-by: Minchan Kim Reviewed-by: KOSAKI Motohiro Cc: Johannes Weiner Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 27739e694a3c34b5e371575d74e500d60111c689 Author: Guenter Roeck Date: Mon Jun 27 11:22:46 2011 -0700 hwmon: (lm95241) Fix chip detection code The LM95241 driver accepts every chip ID equal to or larger than 0xA4 as its own, and other chips such as LM95245 use chip IDs in the accepted ID range. This results in false chip detection. Fix problem by accepting only the known LM95241 chip ID. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.30+ commit f483d3923dc3a6394c483e28ccb3fe700bdf399e Author: Ram Pai Date: Thu Jul 7 11:19:10 2011 -0700 PCI: conditional resource-reallocation through kernel parameter pci=realloc Multiple attempts to dynamically reallocate pci resources have unfortunately lead to regressions. Though we continue to fix the regressions and fine tune the dynamic-reallocation behavior, we have not reached a acceptable state yet. This patch provides a interim solution. It disables dynamic reallocation by default, but adds the ability to enable it through pci=realloc kernel command line parameter. Tested-by: Oliver Hartkopp Signed-off-by: Ram Pai Signed-off-by: Jesse Barnes commit 6ff325a2d85481cbe31dfbb74b4fd2d94c115300 Author: Donggeun Kim Date: Thu Jul 7 16:51:56 2011 +0900 regulator: max8997: Fix setting inappropriate value for ramp_delay variable The ramp_delay variable can be set lower than the desired value. This patch fixes it. Signed-off-by: Donggeun Kim Signed-off-by: MyungJoo Ham Signed-off-by: KyungMin Park Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 90609503b71b6ec4aaf325c88de98da28740bc1d Author: Axel Lin Date: Wed Jul 6 11:41:12 2011 +0800 regulator: db8500-prcmu: small fixes Small cleanups for better readability. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 6e0414a5c89c708efe67f828f3a9c12293ce326e Author: MyungJoo Ham Date: Mon Jun 20 17:30:17 2011 +0900 regulator: max8997: remove dependency on platform_data pointer The platform_data (pdata) may be pointing to __initdata section, which may be free'd from the memory. The dependency on pdata in non-init functions is removed in this patch to allow platform to declare __initdata for platform data. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit dbb48e7c3db4871803fc990864e37917e413ccb2 Author: Tushar Behera Date: Tue Jun 21 09:08:59 2011 +0530 regulator: MAX8997: Fix for divide by zero error Currently, ramp_delay variable is used uninitialzed in max8997_set_voltage_ldobuck which gets called through regulator_register calls. To fix the problem, in max8997_pmic_probe, ramp_delay initialization code is moved before calls to regulator_register. Cc: Liam Girdwood Cc: Mark Brown Cc: MyungJoo Ham Cc: Kyungmin Park Cc: Samuel Ortiz Signed-off-by: Tushar Behera Acked-by: MyungJoo Ham Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit e2cf3137aaa23faf2b8c1335671f1a0a0d90aab5 Author: Jonghwan Choi Date: Wed Jun 15 17:54:12 2011 +0900 regulator: max8952 - fix wrong gpio valid check Signed-off-by: Jonghwan Choi Acked-by: MyungJoo Ham Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit b7eff394670366a42935bfbaef67a6f7185627d7 Author: Alex Deucher Date: Fri Jul 8 11:44:56 2011 -0400 drm/radeon/kms: clean up multiple crtc handling for evergreen+ (v2) evergreen+ asics have 2-6 crtcs. Don't access crtc registers for crtc regs that don't exist as they have very high latency and may cause problems on some asics. The previous code missed a few cases and was not fine grained enough (missed the 4 crtc case for example). Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=38800 v2: fix typo noticed by Chris Bandy Signed-off-by: Alex Deucher Reviewed-by: Michel Dänzer Tested-by: Simon Farnsworth Signed-off-by: Dave Airlie commit cd4fcc704f30f2064ab30b5300d44d431e46db50 Author: Thomas Graf Date: Fri Jul 8 04:37:46 2011 +0000 sctp: ABORT if receive, reassmbly, or reodering queue is not empty while closing socket Trigger user ABORT if application closes a socket which has data queued on the socket receive queue or chunks waiting on the reassembly or ordering queue as this would imply data being lost which defeats the point of a graceful shutdown. This behavior is already practiced in TCP. We do not check the input queue because that would mean to parse all chunks on it to look for unacknowledged data which seems too much of an effort. Control chunks or duplicated chunks may also be in the input queue and should not be stopping a graceful shutdown. Signed-off-by: Thomas Graf Acked-by: Vlad Yasevich Signed-off-by: David S. Miller commit 3f97fae9482dac1dbdd870a25c89033d3a0b35dc Merge: 06b8fc5 8a98d93 Author: David S. Miller Date: Fri Jul 8 09:33:34 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 06b8fc5d308b15e853a68c3d4854fb2ac33db867 Author: David S. Miller Date: Fri Jul 8 09:31:31 2011 -0700 net: Fix default in docs for tcp_orphan_retries. Default should be listed at 8 instead of 7. Reported-by: Denys Fedoryshchenko Signed-off-by: David S. Miller commit 5e2cd0825a43824827b233d95bc47c0c970e5bef Author: Greg KH Date: Fri Jul 8 03:45:25 2011 +0000 hso: fix a use after free condition This needs to go to netdev: From: Octavian Purdila In hso_free_net_device hso_net pointer is freed and then used to cleanup urb pools. Catched with SLAB_DEBUG during S3 resume: [ 95.824442] Pid: 389, comm: khubd Tainted: G C 2.6.36greenridge-01400-g423cf13-dirty #154 Type2 - Board Product Name1/OakTrail [ 95.824442] EIP: 0060:[] EFLAGS: 00010202 CPU: 0 [ 95.824442] EIP is at kref_put+0x29/0x42 [ 95.824442] EAX: 6b6b6b6b EBX: 6b6b6b6b ECX: c2806b40 EDX: 00000037 [ 95.824442] ESI: c1258d56 EDI: edd3d128 EBP: ee8cde0c ESP: ee8cde04 [ 95.824442] DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 [ 95.824442] Process khubd (pid: 389, ti=ee8cc000 task=ee95ed10 task.ti=ee8cc000) [ 95.824442] Stack: [ 95.824442] edd07020 00000000 ee8cde14 c1258b77 ee8cde38 ef933a44 ef93572b ef935dec [ 95.824442] <0> 0000099a 6b6b6b6b 00000000 ee2da748 edd3e0c0 ee8cde54 ef933b9f ee3b53f8 [ 95.824442] <0> 00000002 ee2da748 ee2da764 ef936658 ee8cde60 ef933d0c ee2da748 ee8cde84 [ 95.824442] Call Trace: [ 95.824442] [] ? usb_free_urb+0x11/0x13 [ 95.824442] [] ? hso_free_net_device+0x81/0xd8 [hso] [ 95.824442] [] ? hso_free_interface+0x104/0x111 [hso] [ 95.824442] [] ? hso_disconnect+0xb/0x18 [hso] [ 95.824442] [] ? usb_unbind_interface+0x44/0x14a [ 95.824442] [] ? __device_release_driver+0x6f/0xb1 [ 95.824442] [] ? device_release_driver+0x18/0x23 [ 95.824442] [] ? bus_remove_device+0x8a/0xa1 [ 95.824442] [] ? device_del+0x129/0x163 [ 95.824442] [] ? put_device+0xf/0x11 [ 95.824442] [] ? device_unregister+0x12/0x15 [ 95.824442] [] ? usb_disable_device+0x90/0xf0 [ 95.824442] [] ? usb_disconnect+0x6d/0xf8 [ 95.824442] [] ? hub_thread+0x3fc/0xc57 [ 95.824442] [] ? autoremove_wake_function+0x0/0x2f [ 95.824442] [] ? complete+0x34/0x3e [ 95.824442] [] ? hub_thread+0x0/0xc57 [ 95.824442] [] ? kthread+0x63/0x68 [ 95.824442] [] ? kthread+0x0/0x68 [ 95.824442] [] ? kernel_thread_helper+0x6/0x10 Signed-off-by: Octavian Purdila Signed-off-by: Alan Cox Signed-off-by: David S. Miller commit b1f524e36cb691d20bfdaee423977f1decb81cf6 Author: Jean Delvare Date: Thu Jul 7 23:01:28 2011 +0000 net/natsemi: Fix module parameter permissions The third parameter of module_param is supposed to represent sysfs file permissions. A value of "1" leads to the following: $ ls -l /sys/module/natsemi/parameters/ total 0 ---------x 1 root root 4096 Jul 8 09:46 dspcfg_workaround I am changing it to "0" to align with the other module parameters in this driver. Signed-off-by: Jean Delvare Cc: Tim Hockin Cc: Mark Brown Signed-off-by: David S. Miller commit 902daf6580cffe04721250fb71b5527a98718b11 Merge: 54af2bd 2345b20 Author: Linus Torvalds Date: Fri Jul 8 09:01:11 2011 -0700 Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio/langwell_gpio: ack the correct bit for langwell gpio interrupts commit 54af2bd25cd489fe9facca15d18a2ca7e070ab2f Merge: c60ffcb 1316d4d Author: Linus Torvalds Date: Fri Jul 8 09:00:51 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: unpin stale inodes directly in IOP_COMMITTED commit c60ffcbb625cf7c570bfce904f0bb525ddeaba65 Merge: 3546eea 07ad6ab Author: Linus Torvalds Date: Fri Jul 8 09:00:02 2011 -0700 Merge branch 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: omap: drop __initdata tags from static struct platform_device declarations commit 3546eea837bffb21f98c8e8529d3de3893fce651 Merge: f1bb20a d61a068 Author: Linus Torvalds Date: Fri Jul 8 08:59:39 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/kms: allow drm_mode_group with no objects drm/radeon/kms: free ib pool on module unloading drm/radeon/kms: fix typo in evergreen disp int status register drm/radeon/kms: fix typo in IH_CNTL swap bitfield commit 8fcbc63701b01e913e6a13937f765fabf9c969c5 Author: Tushar Gohad Date: Thu Jul 7 15:38:52 2011 +0000 XFRM: Fix memory leak in xfrm_state_update Upon "ip xfrm state update ..", xfrm_add_sa() takes an extra reference on the user-supplied SA and forgets to drop the reference when xfrm_state_update() returns 0. This leads to a memory leak as the parameter SA is never freed. This change attempts to fix the leak by calling __xfrm_state_put() when xfrm_state_update() updates a valid SA (err = 0). The parameter SA is added to the gc list when the final reference is dropped by xfrm_add_sa() upon completion. Signed-off-by: Tushar Gohad Acked-by: Herbert Xu Signed-off-by: David S. Miller commit 2345b20fd9160d99f7cdf34e7b028ea351bf9c25 Author: Mathias Nyman Date: Fri Jul 8 10:02:18 2011 +0100 gpio/langwell_gpio: ack the correct bit for langwell gpio interrupts The wrong bit was masked when acking langwell gpio interrupts. Reason for maskig the wrong bit was probably because__ffs() and ffs() functions return bit indexes differently (0..31 vs 1..32) This fixes langwell based devices from hanging when a gpio interrupt is triggered and undoes the breakage which occurred in change set 732063b92bb727b27e61580ce278dddefe31c6ad Signed-off-by: Mathias Nyman Signed-off-by: Alan Cox Signed-off-by: Grant Likely commit 8a98d935c4b8b3515d1403d150e282f95b9f558d Merge: f8d9605 3445951 Author: John W. Linville Date: Fri Jul 8 11:01:31 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit d34c1fcddc3a159d52576c656f8caabc0cf4894b Author: Wolfram Sang Date: Fri Jul 8 18:16:56 2011 +0900 ARM: S3C2440: fix section mismatch on mini2440 If mini2440_init() is in __init, mini2440_parse_features() should also be in __init. Fixes: (.text+0x9adc): Section mismatch in reference from the function mini2440_parse_features.clone.0() to the (unknown reference) .init.data:(unknown) The function mini2440_parse_features.clone.0() references the (unknown reference) __initdata (unknown). Signed-off-by: Wolfram Sang Cc: Michel Pollet Signed-off-by: Kukjin Kim commit cb26a7b1c18857d14913040b45f3fe51b513f936 Author: Wolfram Sang Date: Fri Jul 8 14:33:02 2011 +0900 ARM: S3C24XX: drop return codes in void function of dma.c Commit bb072c3c (ARM / Samsung: Use struct syscore_ops for "core" power management) turned s3c2410_dma_resume_chan() from int to void. So, drop the actual return values, too. Fixes: arch/arm/plat-s3c24xx/dma.c: In function 's3c2410_dma_resume_chan': arch/arm/plat-s3c24xx/dma.c:1238:3: warning: 'return' with a value, in function returning void arch/arm/plat-s3c24xx/dma.c:1250:2: warning: 'return' with a value, in function returning void Signed-off-by: Wolfram Sang Acked-by: Rafael J. Wysocki Signed-off-by: Kukjin Kim commit 5838e9b8dada491278db48ff9162e25125fa89d6 Author: Wolfram Sang Date: Fri Jul 8 14:33:02 2011 +0900 ARM: S3C24XX: don't use uninitialized variable in dma.c Commit 8970ef47 (S3C24XX: Remove hardware specific registers from DMA calls) removed the parameter dcon in s3c2410_dma_config() and calculates it on its own. So the debug-output for the old parameter can go, too. Fixes: arch/arm/plat-s3c24xx/dma.c: In function 's3c2410_dma_config': arch/arm/plat-s3c24xx/dma.c:1030:2: warning: 'dcon' is used uninitialized in this function Signed-off-by: Wolfram Sang Cc: Ben Dooks Signed-off-by: Kukjin Kim commit 04db79b015dafcb79371fda6b5c32ffdbd31a2ff Author: Jeff Layton Date: Wed Jul 6 08:10:38 2011 -0400 cifs: factor smb_vol allocation out of cifs_setup_volume_info Signed-off-by: Jeff Layton Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit b55c59892e1f3b6c7d4b9ccffb4263e1486fb990 Author: Trond Myklebust Date: Wed Jul 6 19:58:23 2011 -0400 SUNRPC: Fix a race between work-queue and rpc_killall_tasks Since rpc_killall_tasks may modify the rpc_task's tk_action field without any locking, we need to be careful when dereferencing it. Reported-by: Ben Greear Tested-by: Ben Greear Signed-off-by: Trond Myklebust Cc: stable@kernel.org commit f1bb20a8365f6753e0f7b6e94981ca2b662bae13 Merge: 90c6906 69f81e8 Author: Linus Torvalds Date: Thu Jul 7 16:29:29 2011 -0700 Merge branch 'for-30-rc5/all-i2c' of git://git.fluff.org/bjdooks/linux * 'for-30-rc5/all-i2c' of git://git.fluff.org/bjdooks/linux: i2c-bfin-twi: abort transfer is MEM bit is reset unexpectedly i2c-s3c2410: Remove useless break code i2c-s3c2410: Fix typo 'i2s' -> 'i2c' i2c: tegra: Assign unused slave address commit 1083694ab052e5ba38a8f9a057c4745448977837 Author: Kenneth Graunke Date: Thu Jul 7 15:33:26 2011 -0700 drm/i915: Enable GPU reset on Ivybridge. According to the hardware documentation, GDRST is exactly the same as on Sandybridge. So simply enable the existing code. Signed-off-by: Kenneth Graunke Signed-off-by: Keith Packard commit 90c69064c903f0993c7268c49670ad1f32030942 Merge: 31cb852 ca5c485 Author: Linus Torvalds Date: Thu Jul 7 15:10:33 2011 -0700 Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: additional regression fix for device removal commit f8d9605243280f1870dd2c6c37a735b925c15f3c Author: Thomas Graf Date: Thu Jul 7 00:28:35 2011 +0000 sctp: Enforce retransmission limit during shutdown When initiating a graceful shutdown while having data chunks on the retransmission queue with a peer which is in zero window mode the shutdown is never completed because the retransmission error count is reset periodically by the following two rules: - Do not timeout association while doing zero window probe. - Reset overall error count when a heartbeat request has been acknowledged. The graceful shutdown will wait for all outstanding TSN to be acknowledged before sending the SHUTDOWN request. This never happens due to the peer's zero window not acknowledging the continuously retransmitted data chunks. Although the error counter is incremented for each failed retransmission, the receiving of the SACK announcing the zero window clears the error count again immediately. Also heartbeat requests continue to be sent periodically. The peer acknowledges these requests causing the error counter to be reset as well. This patch changes behaviour to only reset the overall error counter for the above rules while not in shutdown. After reaching the maximum number of retransmission attempts, the T5 shutdown guard timer is scheduled to give the receiver some additional time to recover. The timer is stopped as soon as the receiver acknowledges any data. The issue can be easily reproduced by establishing a sctp association over the loopback device, constantly queueing data at the sender while not reading any at the receiver. Wait for the window to reach zero, then initiate a shutdown by killing both processes simultaneously. The association will never be freed and the chunks on the retransmission queue will be retransmitted indefinitely. Signed-off-by: Thomas Graf Acked-by: Vlad Yasevich Signed-off-by: David S. Miller commit c7ad381078ee1b5ce2ab5274bd5f12fee6e1e59a Author: Jesse Barnes Date: Thu Jul 7 11:11:03 2011 -0700 drm/i915/dp: manage sink power state if possible On sinks with a DPCD rev of 1.1 or greater, we can send sink power management commands to address 0x600 per section 5.1.5 of the DisplayPort 1.1a spec. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit df0c237d124fb8d10b98f7b43d63d962eeed9355 Author: Jesse Barnes Date: Thu Jul 7 11:11:02 2011 -0700 drm/i915/dp: consolidate AUX retry code When checking link status during a hot plug event or detecting sink presence, we need to retry 3 times per the spec (section 9.1 of the 1.1a DisplayPort spec). Consolidate the retry code into a native_aux_read_retry function for use by get_link_status and _detect. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 885a50147f00a8a80108904bf58a18af357717f3 Author: Jesse Barnes Date: Thu Jul 7 11:11:01 2011 -0700 drm/i915/dp: remove DPMS mode tracking from DP We currently use this when a hot plug event is received, only checking the link status and re-training if we had previously configured a link. However if we want to preserve the DP configuration across both hot plug and DPMS events (which we do for userspace apps that don't respond to hot plug uevents), we need to unconditionally check the link and try to bring it up on hot plug. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 899526d9a73fda47516cf11ccb3467ad6702f568 Author: Jesse Barnes Date: Thu Jul 7 11:11:00 2011 -0700 drm/i915/dp: try to read receiver capabilities 3 times when detecting If ->detect is called too soon after a hot plug event, the sink may not be ready yet. So try up to 3 times with 1ms sleeps in between tries to get the data (spec dictates that receivers must be ready to respond within 1ms and that sources should try 3 times). See section 9.1 of the 1.1a DisplayPort spec. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 59cd09e1aea3ac6eb15b45e5d2261a63ecb1799c Author: Jesse Barnes Date: Thu Jul 7 11:10:59 2011 -0700 drm/i915/dp: read more receiver capability bits on hotplug When a hotplug event is received, we need to check the receiver cap bits in case they've changed (as they might with a hub or chain config). Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 7183dc2912510cf005fcc59239f8d153ef51d3f0 Author: Jesse Barnes Date: Thu Jul 7 11:10:58 2011 -0700 drm/i915/dp: use DP DPCD defines when looking at DPCD values Makes it easier to search for DP related constants. Reviewed-by: Keith Packard Signed-off-by: Jesse Barnes Signed-off-by: Keith Packard commit 61da5fab5a9b129cf05b1fe4666c3e45b3103fd4 Author: Jesse Barnes Date: Thu Jul 7 11:10:57 2011 -0700 drm/i915/dp: retry link status read 3 times on failure Especially after a hotplug or power status change, the sink may not reply immediately to a link status query. So retry 3 times per the spec to really make sure nothing is there. See section 9.1 of the 1.1a DisplayPort spec. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit ca5c485f55d326d9a23e4badd05890148aa53f74 Author: Alan Stern Date: Wed Jul 6 17:03:45 2011 -0400 USB: additional regression fix for device removal Commit e534c5b831c8b8e9f5edee5c8a37753c808b80dc (USB: fix regression occurring during device removal) didn't go far enough. It failed to take into account that when a driver claims multiple interfaces, it may release them all at the same time. As a result, some interfaces can get released before they are unregistered, and we deadlock trying to acquire the bandwidth_mutex that we already own. This patch (asl478) handles this case by setting the "unregistering" flag on all the interfaces before removing any of them. Signed-off-by: Alan Stern Cc: stable Tested-by: Éric Piel Signed-off-by: Greg Kroah-Hartman commit ddc6ff31cc22720c46c1547a5310ea260a968ae9 Author: Hans Verkuil Date: Sun Jun 26 06:16:03 2011 -0300 [media] msp3400: fill in v4l2_tuner based on vt->type field The vt->type field determines how the msp3400 should fill in the tuner data, not whether the msp3400 is in radio mode or not. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 31cb852809c86541c817538c98003678546dfa58 Merge: 2a9d6df 4d4cf23 Author: Linus Torvalds Date: Thu Jul 7 13:22:41 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM / Hibernate: Fix free_unnecessary_pages() commit 2a9d6df425d7b46b23cbc8673b2dfefa4678abdb Merge: c902ce1 7b28afe Author: Linus Torvalds Date: Thu Jul 7 13:22:26 2011 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-block * 'for-linus' of git://git.kernel.dk/linux-block: drbd: we should write meta data updates with FLUSH FUA drbd: fix limit define, we support 1 PiByte now drbd: when receive times out on meta socket, also check last receive time on data socket drbd: account bitmap IO during resync as resync-(related-)-io drbd: don't cond_resched_lock with IRQs disabled drbd: add missing spinlock to bitmap receive drbd: Use the correct max_bio_size when creating resync requests cfq-iosched: make code consistent cfq-iosched: fix a rcu warning commit c902ce1bfb40d8b049bd2319b388b4b68b04bc27 Author: David Howells Date: Thu Jul 7 12:19:48 2011 +0100 FS-Cache: Add a helper to bulk uncache pages on an inode Add an FS-Cache helper to bulk uncache pages on an inode. This will only work for the circumstance where the pages in the cache correspond 1:1 with the pages attached to an inode's page cache. This is required for CIFS and NFS: When disabling inode cookie, we were returning the cookie and setting cifsi->fscache to NULL but failed to invalidate any previously mapped pages. This resulted in "Bad page state" errors and manifested in other kind of errors when running fsstress. Fix it by uncaching mapped pages when we disable the inode cookie. This patch should fix the following oops and "Bad page state" errors seen during fsstress testing. ------------[ cut here ]------------ kernel BUG at fs/cachefiles/namei.c:201! invalid opcode: 0000 [#1] SMP Pid: 5, comm: kworker/u:0 Not tainted 2.6.38.7-30.fc15.x86_64 #1 Bochs Bochs RIP: 0010: cachefiles_walk_to_object+0x436/0x745 [cachefiles] RSP: 0018:ffff88002ce6dd00 EFLAGS: 00010282 RAX: ffff88002ef165f0 RBX: ffff88001811f500 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000100 RDI: 0000000000000282 RBP: ffff88002ce6dda0 R08: 0000000000000100 R09: ffffffff81b3a300 R10: 0000ffff00066c0a R11: 0000000000000003 R12: ffff88002ae54840 R13: ffff88002ae54840 R14: ffff880029c29c00 R15: ffff88001811f4b0 FS: 00007f394dd32720(0000) GS:ffff88002ef00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00007fffcb62ddf8 CR3: 000000001825f000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process kworker/u:0 (pid: 5, threadinfo ffff88002ce6c000, task ffff88002ce55cc0) Stack: 0000000000000246 ffff88002ce55cc0 ffff88002ce6dd58 ffff88001815dc00 ffff8800185246c0 ffff88001811f618 ffff880029c29d18 ffff88001811f380 ffff88002ce6dd50 ffffffff814757e4 ffff88002ce6dda0 ffffffff8106ac56 Call Trace: cachefiles_lookup_object+0x78/0xd4 [cachefiles] fscache_lookup_object+0x131/0x16d [fscache] fscache_object_work_func+0x1bc/0x669 [fscache] process_one_work+0x186/0x298 worker_thread+0xda/0x15d kthread+0x84/0x8c kernel_thread_helper+0x4/0x10 RIP cachefiles_walk_to_object+0x436/0x745 [cachefiles] ---[ end trace 1d481c9af1804caa ]--- I tested the uncaching by the following means: (1) Create a big file on my NFS server (104857600 bytes). (2) Read the file into the cache with md5sum on the NFS client. Look in /proc/fs/fscache/stats: Pages : mrk=25601 unc=0 (3) Open the file for read/write ("bash 5<>/warthog/bigfile"). Look in proc again: Pages : mrk=25601 unc=25601 Reported-by: Jeff Layton Signed-off-by: David Howells Reviewed-and-Tested-by: Suresh Jayaraman cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 5ad339a29858db6544052f98973d235129f9f49c Author: Hans Verkuil Date: Sun Jun 26 05:35:34 2011 -0300 [media] tuner-core.c: don't change type field in g_tuner or g_frequency The tuner core should not silently change the type field in g_tuner and g_frequency. If the tuner is in a different mode than the one that was requested, then just fill in what you can and don't attempt to read afc, signal or rxsubchans values. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 075d9db13183c102770dc6cefabfee1b832f9614 Merge: e55f1b1 ee339fe Author: Linus Torvalds Date: Thu Jul 7 13:19:04 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/pci: Move check for acpi_sci_override_gsi to xen_setup_acpi_sci. commit e55f1b1c00a2df492fbdaeb3fcba67a45bc82a0e Merge: 27a3b73 f70e957 Author: Linus Torvalds Date: Thu Jul 7 13:18:13 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Don't use the EFI reboot method by default x86, suspend: Restore MISC_ENABLE MSR in realmode wakeup x86, reboot: Acer Aspire One A110 reboot quirk x86-32, NUMA: Fix boot regression caused by NUMA init unification on highmem machines commit 27a3b735b70651f28db03e5f92775a40661ba7a6 Merge: 85746e4 161b6ae 140fe3b e4c2fb0 Author: Linus Torvalds Date: Thu Jul 7 13:17:45 2011 -0700 Merge branches 'core-urgent-for-linus', 'perf-urgent-for-linus' and 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: debugobjects: Fix boot crash when kmemleak and debugobjects enabled * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: jump_label: Fix jump_label update for modules oprofile, x86: Fix race in nmi handler while starting counters * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Disable (revert) SCHED_LOAD_SCALE increase sched, cgroups: Fix MIN_SHARES on 64-bit boxen commit 85746e429f8e5dc8c5c0beadc0f099cb1feab93e Merge: 4dd1b49 9491230 Author: Linus Torvalds Date: Thu Jul 7 13:16:21 2011 -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: (31 commits) sctp: fix missing send up SCTP_SENDER_DRY_EVENT when subscribe it net: refine {udp|tcp|sctp}_mem limits vmxnet3: round down # of queues to power of two net: sh_eth: fix the parameter for the ETHER of SH7757 net: sh_eth: fix cannot work half-duplex mode net: vlan: enable soft features regardless of underlying device vmxnet3: fix starving rx ring whenoc_skb kb fails bridge: Always flood broadcast packets greth: greth_set_mac_add would corrupt the MAC address. net: bind() fix error return on wrong address family natsemi: silence dma-debug warnings net: 8139too: Initial necessary vlan_features to support vlan Fix call trace when interrupts are disabled while sleeping function kzalloc is called qlge:Version change to v1.00.00.29 qlge: Fix printk priority so chip fatal errors are always reported. qlge:Fix crash caused by mailbox execution on wedged chip. xfrm4: Don't call icmp_send on local error ipv4: Don't use ufo handling on later transformed packets xfrm: Remove family arg from xfrm_bundle_ok ipv6: Don't put artificial limit on routing table size. ... commit d118e294e27000bfd728308d7b74ba67350e779c Author: Hans Verkuil Date: Sat Jun 25 10:28:21 2011 -0300 [media] cx18/ivtv: fix g_tuner support The driver shouldn't override vt->type, and the tuner name should be based on vt->type as well. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit d16625e788b8871163ad991851ffba5f64c06d43 Author: Hans Verkuil Date: Sat Jun 25 10:24:49 2011 -0300 [media] tuner-core: power up tuner when called with s_power(1) Drivers must be able to rely on s_power to power up subdevices. Note that at this moment no driver attempts to power up tuners. This probably isn't surprising since s_power(1) was never implemented in tuner-core.c until now. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit a6cf90a91551c767bed78a4418c26f41aed60cde Author: Hans Verkuil Date: Tue Jun 14 04:03:26 2011 -0300 [media] v4l2-ioctl.c: check for valid tuner type in S_HW_FREQ_SEEK Prohibit attempts to change the tuner to a type that is different from the device node the ioctl is called from. I.e. the type must be RADIO for a radio node and ANALOG_TV for a video/vbi node. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 487833018eb2b969f20457fcf1956b3c6dbfad51 Author: Hans Verkuil Date: Mon Jun 13 09:47:56 2011 -0300 [media] tuner-core: simplify the standard fixup Get rid of a number of unnecessary tuner_dbg messages by simplifying the std fixup function. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 338e9e1ad541cbb2a3fa5839376ff6c138d40301 Author: Hans Verkuil Date: Mon Jun 13 09:35:56 2011 -0300 [media] tuner-core/v4l2-subdev: document that the type field has to be filled in The tuner ops g_frequency, g_tuner and s_tuner require that the tuner type field is filled in. Document this. The tuner-core doc is based on a patch from Mauro Carvalho Chehab . Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e206fc5e3de0e38a35b6f92941c913b6d8343fc6 Author: Hans Verkuil Date: Mon Jun 13 09:34:56 2011 -0300 [media] v4l2-subdev.h: remove unused s_mode tuner op s_mode is no longer used, so remove it. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 6293698277f04eb1623536887651381ed3abc8d0 Author: Hans Verkuil Date: Mon Jun 13 09:38:54 2011 -0300 [media] feature-removal-schedule: change in how radio device nodes are handled Radio devices have weird side-effects when used with combined TV/radio tuners and the V4L2 spec is ambiguous on how it should work. This results in inconsistent driver behavior which makes life hard for everyone. Be more strict in when and how the switch between radio and tv mode takes place and make sure all drivers behave the same. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit a024c1a6b274e11596d124619e43c25560f64c01 Author: Hans Verkuil Date: Sun Jun 12 07:02:43 2011 -0300 [media] bttv: fix s_tuner for radio Fix typo: g_tuner should have been s_tuner. Tested with a bttv card. Cc: stable@kernel.org Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 50e9efd60b213ce43ad6979bfc18e25eec2d8413 Author: Hans Verkuil Date: Sun Jun 12 06:39:52 2011 -0300 [media] pvrusb2: fix g/s_tuner support The tuner-core subdev requires that the type field of v4l2_tuner is filled in correctly. This is done in v4l2-ioctl.c, but pvrusb2 doesn't use that yet, so we have to do it manually based on whether the current input is radio or not. Tested with my pvrusb2. Signed-off-by: Hans Verkuil Acked-by: Mike Isely Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab commit 227690df75382e46a4f6ea1bbc5df855a674b47f Author: Hans Verkuil Date: Sun Jun 12 06:36:41 2011 -0300 [media] v4l2-ioctl.c: prefill tuner type for g_frequency and g/s_tuner The subdevs are supposed to receive a valid tuner type for the g_frequency and g/s_tuner subdev ops. Some drivers do this, others don't. So prefill this in v4l2-ioctl.c based on whether the device node from which this is called is a radio node or not. The spec does not require applications to fill in the type, and if they leave it at 0 then the 'check_mode' call in tuner-core.c will return an error and the ioctl does nothing. Cc: stable@kernel.org Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 9bf0ef060ebae452c07cf5b0616247780740bb50 Author: Hans Verkuil Date: Mon Jun 13 09:21:56 2011 -0300 [media] tuner-core: fix tuner_resume: use t->mode instead of t->type set_mode is called with t->type, which is the tuner type. Instead, use t->mode which is the actual tuner mode (i.e. radio vs tv). Cc: stable@kernel.org Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 4e4a31fb95d88518180517bae3098a23ebde9f9c Author: Hans Verkuil Date: Tue Jun 14 03:56:09 2011 -0300 [media] tuner-core: fix s_std and s_tuner Both s_std and s_tuner are broken because set_mode_freq is called before the new std (for s_std) and audmode (for s_tuner) are set. This patch splits set_mode_freq in a set_mode and a set_freq and in s_std/s_tuner first calls set_mode, and if that returns 0 (i.e. the mode is supported) then they set t->std/t->audmode and call set_freq. This fixes a bug where changing std or audmode would actually change it to the previous value. Discovered while testing analog TV standards for cx18 with a tda18271 tuner. Cc: stable@kernel.org Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 34459512ffa7236c849466e3bd604801389734e1 Author: Johannes Berg Date: Thu Jul 7 18:24:54 2011 +0200 mac80211: fix TKIP replay vulnerability Unlike CCMP, the presence or absence of the QoS field doesn't change the encryption, only the TID is used. When no QoS field is present, zero is used as the TID value. This means that it is possible for an attacker to take a QoS packet with TID 0 and replay it as a non-QoS packet. Unfortunately, mac80211 uses different IVs for checking the validity of the packet's TKIP IV when it checks TID 0 and when it checks non-QoS packets. This means it is vulnerable to this replay attack. To fix this, use the same replay counter for TID 0 and non-QoS packets by overriding the rx->queue value to 0 if it is 16 (non-QoS). This is a minimal fix for now. I caused this issue in commit 1411f9b531f0a910cd1c85a337737c1e6ffbae6a Author: Johannes Berg Date: Thu Jul 10 10:11:02 2008 +0200 mac80211: fix RX sequence number check while fixing a sequence number issue (there, a separate counter needs to be used). Cc: stable@kernel.org Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 1186980dafcd14d0e257a4dd6990cefdc6f3e362 Author: Luciano Coelho Date: Thu Jul 7 15:18:27 2011 +0300 mac80211: fix ie memory allocation for scheduled scans We were not allocating memory for the IEs passed in the scheduled_scan request and this was causing memory corruption (buffer overflow). Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 6ae8ec27868bfdbb815287bee8146acbefaee867 Author: Rafał Miłecki Date: Tue Jul 5 17:25:32 2011 +0200 ssb: fix init regression of hostmode PCI core Our workarounds seem to be clientmode PCI specific. Using SPROM workaround on SoC resulted in Oops: Data bus error, epc == 8017ed58, ra == 80225838 Oops[#1]: Cpu 0 $ 0 : 00000000 10008000 b8000000 00000001 $ 4 : 80293b5c 00000caa ffffffff 00000000 $ 8 : 0000000a 00000003 00000001 696d6d20 $12 : ffffffff 00000000 00000000 ffffffff $16 : 802d0140 b8004800 802c0000 00000000 $20 : 00000000 802c0000 00000000 802d04d4 $24 : 00000018 80151a00 $28 : 81816000 81817df8 8029bda0 80225838 Hi : 00000000 Lo : 00000000 epc : 8017ed58 ssb_ssb_read16+0x48/0x60 Not tainted ra : 80225838 ssb_pcicore_init+0x54/0x3b4 Reported-by: Hauke Mehrtens Signed-off-by: Rafał Miłecki Tested-by: Hauke Mehrtens Signed-off-by: John W. Linville commit bd7fdbcaa2d06d446577fd3c9b81847b04469e01 Author: Kuninori Morimoto Date: Wed Jul 6 17:58:56 2011 -0700 ASoC: ak4642: fixup snd_soc_update_bits mask for PW_MGMT2 mask didn't cover update-data Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit ee339fe63ac408e4604c1c88b1f9a428f2511b70 Author: Konrad Rzeszutek Wilk Date: Wed Jul 6 09:43:16 2011 -0400 xen/pci: Move check for acpi_sci_override_gsi to xen_setup_acpi_sci. Previously we would check for acpi_sci_override_gsi == gsi every time a PCI device was enabled. That works during early bootup, but later on it could lead to triggering unnecessarily the acpi_gsi_to_irq(..) lookup. The reason is that acpi_sci_override_gsi was declared in __initdata and after early bootup could contain bogus values. This patch moves the check for acpi_sci_override_gsi to the site where the ACPI SCI is preset. CC: stable@kernel.org Reported-by: Raghavendra D Prabhu Tested-by: Raghavendra D Prabhu [http://lists.xensource.com/archives/html/xen-devel/2011-07/msg00154.html] Suggested-by: Ian Campbell Signed-off-by: Konrad Rzeszutek Wilk commit 659fb32d1b67476f4ade25e9ea0e2642a5b9c4b5 Author: Simon Guinot Date: Wed Jul 6 12:41:31 2011 -0400 genirq: replace irq_gc_ack() with {set,clr}_bit variants (fwd) This fixes a regression introduced by e59347a "arm: orion: Use generic irq chip". Depending on the device, interrupts acknowledgement is done by setting or by clearing a dedicated register. Replace irq_gc_ack() with some {set,clr}_bit variants allows to handle both cases. Note that this patch affects the following SoCs: Davinci, Samsung and Orion. Except for this last, the change is minor: irq_gc_ack() is just renamed into irq_gc_ack_set_bit(). For the Orion SoCs, the edge GPIO interrupts support is currently broken. irq_gc_ack() try to acknowledge a such interrupt by setting the corresponding cause register bit. The Orion GPIO device expect the opposite. To fix this issue, the irq_gc_ack_clr_bit() variant is used. Tested on Network Space v2. Reported-by: Joey Oravec Signed-off-by: Simon Guinot Signed-off-by: Arnd Bergmann commit 60cfa098dc60a9988e18d0bbab735e10c744e6fe Author: Axel Lin Date: Wed Jun 29 11:43:30 2011 +0800 platform-drivers-x86: set backlight type to BACKLIGHT_PLATFORM Some newly added drivers do not set backlight type, as a result /sys/class/backlight//type shows incorrect backlight type. Signed-off-by: Axel Lin Cc: Corentin Chary Cc: Yin Kangkai Signed-off-by: Matthew Garrett commit a50245af782ea85b1d5ad23e1015e0ac52996b27 Author: Henrique de Moraes Holschuh Date: Sun Jun 5 16:22:35 2011 -0300 thinkpad-acpi: handle HKEY 0x4010, 0x4011 events Handle events 0x4010 and 0x4011 so that we do not pester users about them. These events report when the thinkpad is docked/undocked to a native hotplug dock (i.e. one that does not need ACPI handling, nor is represented in the ACPI device tree). Such docks are based on USB 2.0/3.0, and also work as port replicators. We really want a proper dock class to report these, or at least new input EV_SW events. Since it is not clear which one to use yet, keep reporting them as vendor-specific ThinkPad events. WARNING: As defined by the thinkpad-acpi sysfs ABI rules of engagement, the vendor-specific events will be REMOVED as soon as generic events are made available (duplicate events are a big problem), with an appropriate update to the thinkpad-acpi sysfs/event ABI versioning. Userspace is already prepared to provide easy backwards compatibility for such changes when convenient to the distro (see acpi-fakekey). * Event 0x4010: docking to hotplug dock/port replicator * Event 0x4011: undocking from hotplug dock/port replicator Typical usecase would be to trigger display reconfiguration. Reports mention T410, T510, and series 3 docks/port replicators. Special thanks to Robert de Rooy for his extensive report and analysis of the situation. http://www.thinkwiki.org/wiki/ThinkPad_Port_Replicator_Series_3 http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Series_3 http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Plus_Series_3 http://www.thinkwiki.org/wiki/ThinkPad_Mini_Dock_Plus_Series_3_for_Mobile_Workstations http://lenovoblogs.com/insidethebox/?p=290 Signed-off-by: Henrique de Moraes Holschuh Cc: Matthew Garrett Reported-by: Claudius Hubig Reported-by: Doctor Bill Reported-by: Korte Noack Reported-by: Robert de Rooy Reported-by: Sebastian Will Signed-off-by: Matthew Garrett commit 96b269c1b0e5a218096aa6ff240d2286e99ddd6d Author: Andre Bartke Date: Fri Jun 3 20:55:43 2011 +0200 drivers/platform/x86: Fix memory leak data is not freed in the error case of compal_probe(). Signed-off-by: Andre Bartke Signed-off-by: Matthew Garrett commit 2d43f671c8fb0fd72e896a8b31e15b98916f707d Author: Henrique de Moraes Holschuh Date: Sun Jun 5 16:22:34 2011 -0300 thinkpad-acpi: handle some new HKEY 0x60xx events Handle some user interface events from the newer Lenovo models. We are likely to do something smart with these events in the future, for now, hide the ones we are already certain about from the user and userspace both. * Events 0x6000 and 0x6005 are key-related. 0x6005 is not properly identified yet. Ignore these events, and do not report them. * Event 0x6040 has not been properly identified yet, and we don't know if it is important (looks like it isn't, but still...). Keep reporting it. * Change the message the driver outputs on unknown 0x6xxx events, as all recent events are not related to thermal alarms. Degrade log level from ALERT to WARNING. Thanks to all users who reported these events or asked about them in a number of mailing lists. Your help is highly appreciated, even if I did took a lot of time to act on them. For that I apologise. I will list those that identified the reasons for the events as "reported-by", and I apologise in advance if I leave anyone out: it was not done on purpose, I made the mistake of not properly tagging all event report emails separately, and might have missed some. Signed-off-by: Henrique de Moraes Holschuh Reported-by: Markus Malkusch Reported-by: Peter Giles Signed-off-by: Matthew Garrett commit ae821c1b2fff22a5b6002e093126156a6d7c8b7b Author: Lee, Chun-Yi Date: Tue May 31 14:20:11 2011 +0800 acer-wmi: fix bitwise bug when set device state Fix a bitwise bug that was found by Joern Heissler, it must be OR but not AND when we query current device state. Acked-by: Joern Heissler Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit 92530664bbe5a13aede4a8763459bbe560ad9221 Author: Seth Forshee Date: Tue Jun 21 12:00:33 2011 -0500 acer-wmi: Only update rfkill status for associated hotkey events acer-wmi is indiscriminately using the device state from hotkey events to update the various rfkill states. On the Aspire 1830 this can result in a soft block on the wlan when the touchpad hotkey is pressed, as it is reporting a non-zero device state that does not reflect the wireless status. To fix this, only update rfkill states when a wlan or bluetooth hotkey is pressed. Signed-off-by: Seth Forshee Signed-off-by: Matthew Garrett commit d30e1521b2afb5e6f21ca8bc1a4b6ec2afc93597 Author: Wolfram Sang Date: Wed Jul 6 21:07:07 2011 +0200 arm: mach-vt8500: add forgotten irq_data conversion This platform has not been converted to 'struct irq_data' when the big pile was done. It fails to compile nowadays, because the compatibility code has gone. CC arch/arm/mach-vt8500/irq.o arch/arm/mach-vt8500/irq.c:118:2: error: unknown field 'ack' specified in initializer arch/arm/mach-vt8500/irq.c:118:2: warning: initialization from incompatible pointer type arch/arm/mach-vt8500/irq.c:119:2: error: unknown field 'mask' specified in initializer arch/arm/mach-vt8500/irq.c:119:2: warning: initialization from incompatible pointer type arch/arm/mach-vt8500/irq.c:120:2: error: unknown field 'unmask' specified in initializer arch/arm/mach-vt8500/irq.c:120:2: warning: initialization from incompatible pointer type arch/arm/mach-vt8500/irq.c:121:2: error: unknown field 'set_type' specified in initializer arch/arm/mach-vt8500/irq.c:121:2: warning: initialization from incompatible pointer type make[1]: *** [arch/arm/mach-vt8500/irq.o] Error 1 Add the missing conversion. Tested on a JayPC-Tablet. Signed-off-by: Wolfram Sang Acked-by: Alexey Charkov Cc: Russell King Cc: Thomas Gleixner Cc: Andrew Morton Signed-off-by: Arnd Bergmann commit 90c5ffe592ff3b33afe2bdfe5e9ec630fc599e32 Author: Vitaly Kuzmichev Date: Thu Jul 7 14:56:05 2011 +0100 ARM: 6994/1: smp_twd: Fix typo in 'twd_timer_rate' printing To get hundredths of MHz the rate needs to be divided by 10'000. Here is an example: twd_timer_rate = 123456789 Before the patch: twd_timer_rate / 1000000 = 123 (twd_timer_rate / 1000000) % 100 = 23 Result: 123.23MHz. After being fixed: twd_timer_rate / 1000000 = 123 (twd_timer_rate / 10000) % 100 = 45 Result: 123.45MHz. Signed-off-by: Vitaly Kuzmichev Signed-off-by: Russell King commit 949123016a2ef578009b6aa3e98d45d1a154ebfb Author: Wei Yongjun Date: Sat Jul 2 09:28:04 2011 +0000 sctp: fix missing send up SCTP_SENDER_DRY_EVENT when subscribe it We forgot to send up SCTP_SENDER_DRY_EVENT notification when user app subscribes to this event, and there is no data to be sent or retransmit. This is required by the Socket API and used by the DTLS/SCTP implementation. Reported-by: Michael Tüxen Signed-off-by: Wei Yongjun Tested-by: Robin Seggelmann Signed-off-by: David S. Miller commit f70e957cda22d309c769805cbb932407a5232219 Author: Matthew Garrett Date: Wed Jul 6 16:52:37 2011 -0400 x86: Don't use the EFI reboot method by default Testing suggests that at least some Lenovos and some Intels will fail to reboot via EFI, attempting to jump to an unmapped physical address. In the long run we could handle this by providing a page table with a 1:1 mapping of physical addresses, but for now it's probably just easier to assume that ACPI or legacy methods will be present and reboot via those. Signed-off-by: Matthew Garrett Cc: Linus Torvalds Cc: Andrew Morton Cc: Alan Cox Link: http://lkml.kernel.org/r/1309985557-15350-1-git-send-email-mjg@redhat.com Signed-off-by: Ingo Molnar commit d61a06862ba8c14466e1dd718cac460da0465ddd Author: Ben Skeggs Date: Mon Jul 4 03:16:17 2011 +0000 drm/kms: allow drm_mode_group with no objects Sometimes we could be controlling a device (such as an NVIDIA Tesla) that has no crtcs/encoders/connectors. One could argue that the driver should unset DRIVER_MODESET in this case, but that changes a whole heap of the DRM's other behaviours, and it's much easier to just be a modesetting driver without any outputs. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit ccd6895d401efad0c0e41d0e93fba4ef3085e268 Author: Jerome Glisse Date: Wed Jul 6 18:30:09 2011 +0000 drm/radeon/kms: free ib pool on module unloading ib pool weren't free for various newer asic on module unload. This doesn't cause much arm but still could be candidate for stable. Signed-off-by: Jerome Glisse cc: stable@kernel.org Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit 37cba6c6f4687e694ac6e3adcf2c2b2974aa3aae Author: Alex Deucher Date: Wed Jul 6 19:37:47 2011 +0000 drm/radeon/kms: fix typo in evergreen disp int status register Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit fcb857abc4c0d512e99a08ba0415be9a6d65b4c0 Author: Alex Deucher Date: Wed Jul 6 19:52:27 2011 +0000 drm/radeon/kms: fix typo in IH_CNTL swap bitfield Only affects BE systems. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit f03d78db65085609938fdb686238867e65003181 Author: Eric Dumazet Date: Thu Jul 7 00:27:05 2011 -0700 net: refine {udp|tcp|sctp}_mem limits Current tcp/udp/sctp global memory limits are not taking into account hugepages allocations, and allow 50% of ram to be used by buffers of a single protocol [ not counting space used by sockets / inodes ...] Lets use nr_free_buffer_pages() and allow a default of 1/8 of kernel ram per protocol, and a minimum of 128 pages. Heavy duty machines sysadmins probably need to tweak limits anyway. References: https://bugzilla.stlinux.com/show_bug.cgi?id=38032 Reported-by: starlight Suggested-by: Andrew Morton Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9c7a083d94656ad6d6f2e03ba90194f2cc5bced5 Author: Takashi Iwai Date: Thu Jul 7 09:25:54 2011 +0200 ALSA: hda - Change all ADCs for dual-adc switching mode for Realtek When the dual-adc switching mode is active in Realtek auto-parser, we need to couple all ADCs as a single capture-volume. Currently, the volume control changes only the first ADC, thus others may remain silent. This patch fixes the problem. Signed-off-by: Takashi Iwai commit eebb02b1f03b3722d678bfcb560f3b26661ab0d2 Author: Shreyas Bhatewara Date: Thu Jul 7 00:25:52 2011 -0700 vmxnet3: round down # of queues to power of two vmxnet3 device supports only power-of-two number of queues. The driver therefore needs to check this and rounds down the number of queues to the nearest power of two. Signed-off-by: Yong Wang Signed-off-by: Shreyas N Bhatewara Reviewed-by: Dmitry Torokhov commit 7a3136666bc0f0419f7aaa7b1fabb4b0e0a7fb76 Author: Kees Cook Date: Wed Jul 6 18:10:34 2011 -0700 x86, suspend: Restore MISC_ENABLE MSR in realmode wakeup Some BIOSes will reset the Intel MISC_ENABLE MSR (specifically the XD_DISABLE bit) when resuming from S3, which can interact poorly with ebba638ae723d8a8fc2f7abce5ec18b688b791d7. In 32bit PAE mode, this can lead to a fault when EFER is restored by the kernel wakeup routines, due to it setting the NX bit for a CPU that (thanks to the BIOS reset) now incorrectly thinks it lacks the NX feature. (64bit is not affected because it uses a common CPU bring-up that specifically handles the XD_DISABLE bit.) The need for MISC_ENABLE being restored so early is specific to the S3 resume path. Normally, MISC_ENABLE is saved in save_processor_state(), but this happens after the resume header is created, so just reproduce the logic here. (acpi_suspend_lowlevel() creates the header, calls do_suspend_lowlevel, which calls save_processor_state(), so the saved processor context isn't available during resume header creation.) [ hpa: Consider for stable if OK in mainline ] Signed-off-by: Kees Cook Link: http://lkml.kernel.org/r/20110707011034.GA8523@outflux.net Signed-off-by: H. Peter Anvin Cc: Rafael J. Wysocki Cc: 2.6.38+ commit 4dd1b49c6d215dc41ce50c80b4868388b93f31a3 Merge: 9b61fc4 58956ba Author: Linus Torvalds Date: Wed Jul 6 18:36:53 2011 -0700 Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio: tps65910: add missing breaks in tps65910_gpio_init commit 149e2d76b4886c4c7ff5e077646a8ba3563c8026 Author: Miao Xie Date: Wed Jul 6 18:51:53 2011 -0400 btrfs: fix oops when doing space balance We need to make sure the data relocation inode doesn't go through the delayed metadata updates, otherwise we get an oops during balance: kernel BUG at fs/btrfs/relocation.c:4303! [SNIP] Call Trace: [] ? update_ref_for_cow+0x22d/0x330 [btrfs] [] __btrfs_cow_block+0x451/0x5e0 [btrfs] [] ? read_block_for_search+0x14d/0x4d0 [btrfs] [] btrfs_cow_block+0x10b/0x240 [btrfs] [] btrfs_search_slot+0x49e/0x7a0 [btrfs] [] btrfs_lookup_inode+0x2f/0xa0 [btrfs] [] ? mutex_lock+0x1e/0x50 [] btrfs_update_delayed_inode+0x71/0x160 [btrfs] [] ? __btrfs_release_delayed_node+0x67/0x190 [btrfs] [] btrfs_run_delayed_items+0xe8/0x120 [btrfs] [] btrfs_commit_transaction+0x250/0x850 [btrfs] [] ? find_get_pages+0x39/0x130 [] ? join_transaction+0x25/0x250 [btrfs] [] ? wake_up_bit+0x40/0x40 [] prepare_to_relocate+0xda/0xf0 [btrfs] [] relocate_block_group+0x4b/0x620 [btrfs] [] ? btrfs_clean_old_snapshots+0x35/0x150 [btrfs] [] btrfs_relocate_block_group+0x1b3/0x2e0 [btrfs] [] ? btrfs_tree_unlock+0x50/0x50 [btrfs] [] btrfs_relocate_chunk+0x8b/0x670 [btrfs] [] ? btrfs_set_path_blocking+0x3d/0x50 [btrfs] [] ? read_extent_buffer+0xd8/0x1d0 [btrfs] [] ? btrfs_previous_item+0xb1/0x150 [btrfs] [] ? read_extent_buffer+0xd8/0x1d0 [btrfs] [] btrfs_balance+0x21a/0x2b0 [btrfs] [] btrfs_ioctl+0x798/0xd20 [btrfs] [] ? handle_mm_fault+0x148/0x270 [] ? do_page_fault+0x1d8/0x4b0 [] do_vfs_ioctl+0x9a/0x540 [] sys_ioctl+0xa1/0xb0 [] system_call_fastpath+0x16/0x1b [SNIP] RIP [] btrfs_reloc_cow_block+0x22c/0x270 [btrfs] Signed-off-by: Miao Xie Signed-off-by: Chris Mason commit 508794eb5ec2a2b832742e78c6766844b10c0c94 Author: Josef Bacik Date: Sat Jul 2 21:24:41 2011 +0000 Btrfs: don't panic if we get an error while balancing V2 A user reported an error where if we try to balance an fs after a device has been removed it will blow up. This is because we get an EIO back and this is where BUG_ON(ret) bites us in the ass. To fix we just exit. Thanks, Reported-by: Anand Jain Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit 0942caa373c676dca614ea8352ac77e0270aba73 Author: David Sterba Date: Tue Jun 28 15:10:37 2011 +0000 btrfs: add missing options displayed in mount output There are three missed mount options settable by user which are not currently displayed in mount output. Signed-off-by: David Sterba Signed-off-by: Chris Mason commit 1316d4da3f632d5843d5a446203e73067dc40f09 Author: Dave Chinner Date: Mon Jul 4 05:27:36 2011 +0000 xfs: unpin stale inodes directly in IOP_COMMITTED When inodes are marked stale in a transaction, they are treated specially when the inode log item is being inserted into the AIL. It tries to avoid moving the log item forward in the AIL due to a race condition with the writing the underlying buffer back to disk. The was "fixed" in commit de25c18 ("xfs: avoid moving stale inodes in the AIL"). To avoid moving the item forward, we return a LSN smaller than the commit_lsn of the completing transaction, thereby trying to trick the commit code into not moving the inode forward at all. I'm not sure this ever worked as intended - it assumes the inode is already in the AIL, but I don't think the returned LSN would have been small enough to prevent moving the inode. It appears that the reason it worked is that the lower LSN of the inodes meant they were inserted into the AIL and flushed before the inode buffer (which was moved to the commit_lsn of the transaction). The big problem is that with delayed logging, the returning of the different LSN means insertion takes the slow, non-bulk path. Worse yet is that insertion is to a position -before- the commit_lsn so it is doing a AIL traversal on every insertion, and has to walk over all the items that have already been inserted into the AIL. It's expensive. To compound the matter further, with delayed logging inodes are likely to go from clean to stale in a single checkpoint, which means they aren't even in the AIL at all when we come across them at AIL insertion time. Hence these were all getting inserted into the AIL when they simply do not need to be as inodes marked XFS_ISTALE are never written back. Transactional/recovery integrity is maintained in this case by the other items in the unlink transaction that were modified (e.g. the AGI btree blocks) and committed in the same checkpoint. So to fix this, simply unpin the stale inodes directly in xfs_inode_item_committed() and return -1 to indicate that the AIL insertion code does not need to do any further processing of these inodes. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 9b61fc4cf3a7232ecc39f573a1e68148ef40ea49 Author: Andrea Righi Date: Wed Jul 6 11:26:26 2011 -0700 Documentation: fix cgroup blkio throttle filenames All the blkio.throttle.* file names are incorrectly reported without ".throttle" in the documentation. Fix it. Signed-off-by: Andrea Righi Signed-off-by: Randy Dunlap Acked-by: Vivek Goyal Signed-off-by: Linus Torvalds commit 316b3799880c55bb20f6d2db904245eccc30e25f Author: Jesper Juhl Date: Wed Jul 6 11:27:17 2011 -0700 Documentation: update CodingStyle memory allocators The list of available general purpose memory allocators in Documentation/CodingStyle chapter 14 is incomplete. This patch adds the missing vzalloc() to the list. Signed-off-by: Jesper Juhl Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 0dcb6d737c8d1a31476cbab4d640022b53070ffa Author: Randy Dunlap Date: Wed Jul 6 11:19:56 2011 -0700 MAINTAINERS: move kernel-doc patches location Move location of quilt series for kernel-doc patches. Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit f9e59bcba2cff580a3ccf62e89460f9eed295d89 Author: Jeff Layton Date: Wed Jul 6 08:10:37 2011 -0400 cifs: have cifs_cleanup_volume_info not take a double pointer ...as that makes for a cumbersome interface. Make it take a regular smb_vol pointer and rely on the caller to zero it out if needed. Signed-off-by: Jeff Layton Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit b2a0fa152072f0085fa8d8eb0dbf9b3b0c5952fc Author: Jeff Layton Date: Wed Jul 6 08:10:36 2011 -0400 cifs: fix build_unc_path_to_root to account for a prefixpath Regression introduced by commit f87d39d9513. Signed-off-by: Jeff Layton Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit 677d8537d875832019fa989186f084ba47ecd93d Author: Jeff Layton Date: Tue Jul 5 17:37:37 2011 -0400 cifs: remove bogus call to cifs_cleanup_volume_info This call to cifs_cleanup_volume_info is clearly wrong. As soon as it's called the following call to cifs_get_tcp_session will oops as the volume_info pointer will then be NULL. The caller of cifs_mount should clean up this data since it passed it in. There's no need for us to call this here. Regression introduced by commit 724d9f1cfba. Reported-by: Adam Williamson Cc: Pavel Shilovsky Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 38a8914f9ac2379293944f613e6ca24b61373de8 Author: Will Deacon Date: Fri Jul 1 14:36:19 2011 +0100 ARM: 6987/1: l2x0: fix disabling function to avoid deadlock The l2x0_disable function attempts to writel with the l2x0_lock held. This results in deadlock when the writel contains an outer_sync call for the platform since the l2x0_lock is already held by the disable function. A further problem is that disabling the L2 without flushing it first can lead to the spin_lock operation becoming visible after the spin_unlock, causing any subsequent L2 maintenance to deadlock. This patch replaces the writel with a call to writel_relaxed in the disabling code and adds a flush before disabling in the control register, preventing livelock from occurring. Acked-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Russell King commit 186dcaa448c0a7a99933efac2af225fc4fe82c53 Author: Petr Štetiar Date: Fri Jun 17 11:10:04 2011 +0100 ARM: 6966/1: ep93xx: fix inverted RTS/DTR signals on uart1 It was discovered by Roberto Bergo, that RTS/DTR signals are inverted after the boot, because it was causing him problems with hardware controlled modem connected on ttyAM0. Todd Valentic came with this patch for the issue. Discussion: http://tech.groups.yahoo.com/group/ts-7000/message/20259 Comments from Petr Štetiar: Sorry, but forget to add Acked-by[1]: 1. https://patchwork.kernel.org/patch/873052/ Cc: Ryan Mallon Cc: Hartley Sweeten Signed-off-by: Todd Valentic Tested-by: Roberto Bergo Signed-off-by: Petr Štetiar Acked-by: H Hartley Sweeten Signed-off-by: Russell King commit 757df746fc5db0020ddab45914617a19d149c252 Author: Linus Walleij Date: Thu Jun 30 15:10:21 2011 +0100 ARM: 6980/1: mmci: use StartBitErr to detect bad connections Stresstesting insert/remove of SD-cards can trigger a StartBitErr. This made the driver to hang in forever waiting for a non ocurring data timeout. This bit and interrupt is documented in the original PL180 TRM, just never implemented until now. Signed-off-by: Ulf Hansson Reviewed-by: Linus Walleij Reviewed-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 2eb5af44b1d22d7f7b715e0b9a4e516eb4451bf9 Author: Wolfram Sang Date: Tue Jun 28 09:53:20 2011 +0100 ARM: 6979/1: mach-vt8500: add forgotten irq_data conversion This platform has not been converted to 'struct irq_data' when the big pile was done and fails to compile nowadays. Tested on a JayPC-Tablet. Signed-off-by: Wolfram Sang Acked-by: Alexey Charkov Signed-off-by: Russell King commit de3796e77a587b28f0c9d8e04c02894d3939dc4e Merge: bcb65a7 98c32bc Author: Linus Torvalds Date: Wed Jul 6 12:16:49 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (46 commits) [media] rc: call input_sync after scancode reports [media] imon: allow either proto on unknown 0xffdc [media] imon: auto-config ffdc 7e device [media] saa7134: fix raw IR timeout value [media] rc: fix ghost keypresses with certain hw [media] [staging] lirc_serial: allocate irq at init time [media] lirc_zilog: fix spinning rx thread [media] keymaps: fix table for pinnacle pctv hd devices [media] ite-cir: 8709 needs to use pnp resource 2 [media] V4L: mx1-camera: fix uninitialized variable [media] omap_vout: Added check in reqbuf & mmap for buf_size allocation [media] OMAP_VOUT: Change hardcoded device node number to -1 [media] OMAP_VOUTLIB: Fix wrong resizer calculation [media] uvcvideo: Disable the queue when failing to start [media] uvcvideo: Remove buffers from the queues when freeing [media] uvcvideo: Ignore entities for terminals with no supported format [media] v4l: Don't access media entity after is has been destroyed [media] media: omap3isp: fix a potential NULL deref [media] media: vb2: fix allocation failure check [media] media: vb2: reset queued_count value during queue reinitialization ... Fix up trivial conflict in MAINTAINERS as per Mauro commit bcb65a797eb7c51e4f227dd19295f14d38738fee Author: Davidlohr Bueso Date: Wed Jul 6 12:26:05 2011 +0100 FDPIC: Fix memory leak The shdr4extnum variable isn't being freed in the cleanup process of elf_fdpic_core_dump(). Signed-off-by: Davidlohr Bueso Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 4d4cf23cdde2f8f9324f5684a7f349e182039529 Author: Rafael J. Wysocki Date: Wed Jul 6 20:15:23 2011 +0200 PM / Hibernate: Fix free_unnecessary_pages() There is a bug in free_unnecessary_pages() that causes it to attempt to free too many pages in some cases, which triggers the BUG_ON() in memory_bm_clear_bit() for copy_bm. Namely, if count_data_pages() is initially greater than alloc_normal, we get to_free_normal equal to 0 and "save" greater from 0. In that case, if the sum of "save" and count_highmem_pages() is greater than alloc_highmem, we subtract a positive number from to_free_normal. Hence, since to_free_normal was 0 before the subtraction and is an unsigned int, the result is converted to a huge positive number that is used as the number of pages to free. Fix this bug by checking if to_free_normal is actually greater than or equal to the number we're going to subtract from it. Signed-off-by: Rafael J. Wysocki Reported-and-tested-by: Matthew Garrett Cc: stable@kernel.org commit 23c570a67448e803408191f529ed9a83fd34a25a Author: Ram Pai Date: Tue Jul 5 23:44:30 2011 -0700 resource: ability to resize an allocated resource Provides the ability to resize a resource that is already allocated. This functionality is put in place to support reallocation needs of pci resources. Signed-off-by: Ram Pai Acked-by: Jesse Barnes Signed-off-by: Linus Torvalds commit a51cb91d81f8e6fc4e5e08b772cc3ceb13ac9d37 Author: Miklos Szeredi Date: Wed Jul 6 12:33:55 2011 +0200 fs: fix lock initialization locks_alloc_lock() assumed that the allocated struct file_lock is already initialized to zero members. This is only true for the first allocation of the structure, after reuse some of the members will have random values. This will for example result in passing random fl_start values to userspace in fuse for FL_FLOCK locks, which is an information leak at best. Fix by reinitializing those members which may be non-zero after freeing. Signed-off-by: Miklos Szeredi CC: stable@kernel.org Signed-off-by: Linus Torvalds commit 6662498e132dfa758925a160fd5ef80a083651c3 Author: Lei Wen Date: Tue Jun 21 05:37:47 2011 -0700 ARM: pxa168: correct nand pmu setting The original pair of <0x01db, 208000000> is invalid. Correct it to the valid value. The 6th bit of the NFC APMU register indicates NFC works whether at 156Mhz or 78Mhz. So 0x19b indicates NFC works at 156Mhz, and 0x1db indicates it works at 78Mhz. Signed-off-by: Lei Wen Cc: stable@kernel.org Signed-off-by: Eric Miao commit d204b2c5b16df935fa9a546c528e168859fddcc0 Author: Lei Wen Date: Tue Jun 21 02:54:18 2011 -0700 ARM: pxa910: correct nand pmu setting The original pair of <0x01db, 208000000> is invalid. Correct to the valid value. Signed-off-by: Lei Wen Cc: stable@kernel.org Signed-off-by: Eric Miao commit beb0c9b056b1c23d2029b46a425362e9ccbeba01 Author: Paul Parsons Date: Sun May 8 01:54:33 2011 +0000 ARM: pxa: fix PGSR register address calculation The file mfp-pxa2xx.c defines a macro, PGSR(), which translates a gpio bank number to a PGSR register address. The function pxa2xx_mfp_suspend() erroneously passed in a gpio number instead of a gpio bank number. Signed-off-by: Paul Parsons Cc: stable@kernel.org Signed-off-by: Eric Miao commit 6d999da4d2610460fc5f5ce498f1483b40cc6679 Author: Matthias Rosenfelder Date: Mon Jun 13 07:04:05 2011 +0000 sparc32,leon: Added __init declaration to leon_flush_needed() The function leon_flush_needed() is called only during bootup from another __init function. Therefore, we can also add __init to leon_flush_needed(). Signed-off-by: Matthias Rosenfelder Acked-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 18d85bc558edfa5de7f5b49b6a25fbfdc42628e0 Author: Steven Rostedt Date: Wed Jul 6 08:00:29 2011 -0700 sparc/irqs: Do not trace arch_local_{*,irq_*} functions Do not trace arch_local_save_flags(), arch_local_irq_*() and friends. Although they are marked inline, gcc may still make a function out of them and add it to the pool of functions that are traced by the function tracer. This can cause undesirable results (kernel panic, triple faults, etc). Add the notrace notation to prevent them from ever being traced. Signed-off-by: Steven Rostedt Signed-off-by: David S. Miller commit 5f27275edb7082505eaac1c85a15620207351b63 Author: Sylwester Nawrocki Date: Wed Jul 6 16:04:09 2011 +0900 ARM: EXYNOS4: Set appropriate I2C device variant Set up a correct I2C bus controller variant name for Exynos4. Without this change the I2C bus driver fails to acquire its clocks. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit d60c98c26ac9824211c3a1f729be52cb179a1157 Merge: 8fa9dd0 3075741 Author: Kukjin Kim Date: Wed Jul 6 15:46:41 2011 +0900 Merge branch 'for-spi' into s5p-fixes-for-linus commit 2e98e7974de208de0dab9e9969bd47576d07ff10 Author: Yoshihiro Shimoda Date: Tue Jul 5 20:33:57 2011 +0000 net: sh_eth: fix the parameter for the ETHER of SH7757 If the driver didn't set this parameter on the ETHER, the CPU will encounter the "data address error" exception. Signed-off-by: Yoshihiro Shimoda Signed-off-by: David S. Miller commit 91a5615203355bb34e0b9e68e94f27f24719a74c Author: Yoshihiro Shimoda Date: Tue Jul 5 20:33:51 2011 +0000 net: sh_eth: fix cannot work half-duplex mode When link was down, the bit of DM in ECMR was always set. So, we could not use half-duplex mode on the controller. Signed-off-by: Yoshihiro Shimoda Signed-off-by: David S. Miller commit 8fa9dd04b7f7ab1807ebcc274601dd8e2d215569 Author: Padmavathi Venna Date: Wed Jul 6 15:37:08 2011 +0900 ARM: S5PC100: Fix for compilation error S5PC100 Compilation fails without this patch Signed-off-by: Padmavathi Venna Signed-off-by: Kukjin Kim commit 3075741417d47cccc890ed30da9ece666006553a Author: Padmavathi Venna Date: Tue Jul 5 17:14:02 2011 +0900 spi/s3c64xx: Bug fix for SPI with different FIFO level The existing macro fails for following scenarios. 1) S5P64X0 channel 1 2) S5PV210 channel 1 The FIFO data level supported in the above SoCs either 64 or 256 bytes depending on the channel. Because of this the TX_DONE is the 25 bit in the status register. The existing macro works for the following scenarios 1) S3C6410 all channels 2) S5PC100 all channels The FIFO data level supported in the above SoCs 64 bytes on all the channels. Because of this the TX_DONE is the 21 bit in the status register. So when we use the existing macro for the non-working SoCs it is not anding with the TX_DONE bit for transmission status check. Signed-off-by: Padmavathi Venna Acked-by: Jassi Brar Acked-by: Grant Likely Signed-off-by: Kukjin Kim commit 8918034dfb7b0f625ba9eb0329d5750a9573f62e Author: Padmavathi Venna Date: Tue Jul 5 17:13:56 2011 +0900 ARM: SAMSUNG: Add tx_st_done variable tx_st_done is required for checking the transmission status of SPI channels with different fifo levels Signed-off-by: Padmavathi Venna Acked-by: Jassi Brar Signed-off-by: Kukjin Kim commit 58956ba23e2dce83e78cd212cc8305261647684f Author: Axel Lin Date: Wed Jul 6 10:08:27 2011 +0800 gpio: tps65910: add missing breaks in tps65910_gpio_init Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit a2fa83faf47b514ab947cea916d3691b66525073 Merge: 2d12a18 e534c5b Author: Linus Torvalds Date: Tue Jul 5 20:57:45 2011 -0700 Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: USB: fix regression occurring during device removal USB: fsl_udc_core: fix build breakage when building for ARM arch commit 2d12a18b89f5e3c0cce1981cc257228bfbf9039f Merge: 121782a 8509e14 Author: Linus Torvalds Date: Tue Jul 5 20:57:08 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: mfd: Add Makefile and Kconfig Entries for tps65911 comparator mfd: Fix build error for tps65911-comparator.c Revert "mfd: Add omap-usbhs runtime PM support" input: pmic8xxx-pwrkey: Do not use mfd_get_data() input: pmic8xxx-keypad: Do not use mfd_get_data() commit 712ae51afd55b20c04c5383d02ba5d10233313b1 Author: Shan Wei Date: Tue Jul 5 20:43:12 2011 -0700 net: vlan: enable soft features regardless of underlying device If gso/gro feature of underlying device is turned off, then new created vlan device never can turn gso/gro on. Although underlying device don't support TSO, we still should use software segments for vlan device. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit b49c78d4827be8d7e67e5b94adac6b30a4a9ad14 Author: Peter Chubb Date: Wed Jul 6 10:56:30 2011 +1000 x86, reboot: Acer Aspire One A110 reboot quirk Since git commit 660e34cebf0a11d54f2d5dd8838607452355f321 x86: reorder reboot method preferences, my Acer Aspire One hangs on reboot. It appears that its ACPI method for rebooting is broken. The attached patch adds a quirk so that the machine will reboot via the BIOS. [ hpa: verified that the ACPI control on this machine is just plain broken. ] Signed-off-by: Peter Chubb Link: http://lkml.kernel.org/r/w439iki5vl.wl%25peter@chubb.wattle.id.au Signed-off-by: H. Peter Anvin commit 5318d809d7b4975ce5e5303e8508f89a5458c2b6 Author: Shreyas Bhatewara Date: Tue Jul 5 14:34:05 2011 +0000 vmxnet3: fix starving rx ring whenoc_skb kb fails If the rx ring is completely empty, then the device may never fire an rx interrupt. Unfortunately, the rx interrupt is what triggers populating the rx ring with fresh buffers, so this will cause networking to lock up. This patch replenishes the skb in recv descriptor as soon as it is peeled off while processing rx completions. If the skb/buffer allocation fails, existing one is recycled and the packet in hand is dropped. This way none of the RX desc is ever left empty, thus avoiding starvation Signed-off-by: Scott J. Goldman Signed-off-by: Shreyas N Bhatewara Signed-off-by: David S. Miller commit 44661462ee1ee3c922754fc1f246867f0d01e7ea Author: Herbert Xu Date: Tue Jul 5 13:58:33 2011 +0000 bridge: Always flood broadcast packets As is_multicast_ether_addr returns true on broadcast packets as well, we need to explicitly exclude broadcast packets so that they're always flooded. This wasn't an issue before as broadcast packets were considered to be an unregistered multicast group, which were always flooded. However, as we now only flood such packets to router ports, this is no longer acceptable. Reported-by: Michael Guntsche Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit 152c036a8096ed219c965957acb63490a2c0c963 Author: MyungJoo Ham Date: Mon Jul 4 19:03:54 2011 +0900 ARM: EXYNOS4: Address a section mismatch w/ suspend issue. The section mismatch in headsmp.S made hotplug stop working after the first instance of suspend-to-RAM and its wakeup. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 27ea7fd2889eb93041480b18de655b1ff003e05d Author: Sangbeom Kim Date: Thu Jun 23 21:43:58 2011 +0900 ARM: S5P: Fix bug on init of PWMTimers for HRTimer This patch fixes following. <6>[ 0.000000] sched_clock: 32 bits at 33MHz, ... <6>[ 128.651309] Calibrating delay loop... There is a big jump. The reason is that PWM Timer which is for HRTimer was used before its initialization. So this patch changes its order and following is kernel boot log message after this. <6>[ 0.000000] sched_clock: 32 bits at 33MHz, ... <6>[ 0.000088] Calibrating delay loop... Signed-off-by: Sangbeom Kim Signed-off-by: Kukjin Kim commit bb8bb57b213f63ffba29b3a7f1c7974782b8127d Author: MyungJoo Ham Date: Wed Jun 22 18:03:21 2011 +0900 ARM: SAMSUNG: header file revised to prevent declaring duplicated There has been no #ifndef - #define - #endif protection for this header file. Signed-off-by: MyungJoo Ham Signed-off-by: Kukjin Kim commit a3df1d4811bb7710d6497334e3b6a37064527684 Author: Naveen Krishna Chatradhi Date: Thu Jun 16 19:33:29 2011 +0900 ARM: EXYNOS4: fix improper gpio configuration These pins are incorrectly configured for PCM2 configure them to SPDIF(_OUT & _EXT_CLK) Signed-off-by: Naveen Krishna Chatradhi Acked-by: Jassi Brar Signed-off-by: Kukjin Kim commit a0d8efedb203b5b908dd46cea38201761e2380f9 Author: Thomas Abraham Date: Thu Jun 16 16:12:35 2011 +0900 ARM: EXYNOS4: Fix card detection for sdhci 0 and 2 On SMDKV310 board, a card detect gpio pin is available that is directly connected to the io pad of the sdhci controller. Fix incorrect value of cd_type field in platform data for sdhci instance 0 and 2. Signed-off-by: Thomas Abraham Signed-off-by: Kukjin Kim commit 121782a248f11c63c7c0fc78d4a68a54e99ee37d Merge: a8728d3 d7f124f Author: Linus Torvalds Date: Tue Jul 5 13:15:57 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: ceph: fix sync and dio writes across stripe boundaries libceph: fix page calculation for non-page-aligned io ceph: fix page alignment corrections commit 0371d3f7e8f1cddaee1f215e42c09a40e235d810 Author: Russell King Date: Tue Jul 5 19:58:29 2011 +0100 ARM: move memory layout sanity checking before meminfo initialization Ensure that the meminfo array is sanity checked before we pass the memory to memblock. This helps to ensure that memblock and meminfo agree on the dimensions of memory, especially when more memory is passed than the kernel can deal with. Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 35cbcbc6f39da30c39bc0a1e679ec44506c4eb3d Author: Yoann DI-RUZZA Date: Fri Jul 1 08:47:17 2011 -0500 rtlwifi: rtl8192cu: Add new USB ID for Netgear WNA1000M Signed-off-by: Yoann DI-RUZZA Signed-off-by: Larry Finger Cc: Stable Signed-off-by: John W. Linville commit 4f6760b01bda625e9555e16d8e9ba8126a9c9498 Author: Rajkumar Manoharan Date: Fri Jul 1 18:37:33 2011 +0530 ath9k: Fix tx throughput drops for AR9003 chips with AES encryption While sending aggregated frames in AES, the AR5416 chips required additional padding b/w subframes. This workaround is not needed for edma (AR9003 family) chips. With this patch ~4Mbps thoughput improvement was observed in clear environment. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 06a86ddbf557cb8a0f7ded54e872e9d456002d52 Author: Christian Lamparter Date: Thu Jun 30 21:06:17 2011 +0200 carl9170: add NEC WL300NU-AG usbid Cc: stable@kernel.org Reported-by: Mark Davis Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit c10841ca722a0bc960dc541c51582773f9a24f98 Author: Luciano Coelho Date: Thu Jun 30 08:32:41 2011 +0300 cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex There was a deadlock when rfkill-blocking a wireless interface, because we were locking the rdev mutex on NETDEV_GOING_DOWN to stop sched_scans that were eventually running. The rfkill block code was already holding a mutex under rdev: kernel: ======================================================= kernel: [ INFO: possible circular locking dependency detected ] kernel: 3.0.0-rc1-00049-g1fa7b6a #57 kernel: ------------------------------------------------------- kernel: kworker/0:1/4525 is trying to acquire lock: kernel: (&rdev->mtx){+.+.+.}, at: [] cfg80211_netdev_notifier_call+0x131/0x5b0 kernel: kernel: but task is already holding lock: kernel: (&rdev->devlist_mtx){+.+.+.}, at: [] cfg80211_rfkill_set_block+0x4f/0xa0 kernel: kernel: which lock already depends on the new lock. To fix this, add a new mutex specifically for sched_scan, to protect the sched_scan_req element in the rdev struct, instead of using the global rdev mutex. Reported-by: Duane Griffin Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 37000b305bff81bb1ee2f7f37b1319b670a08f76 Author: Pavel Roskin Date: Wed Jun 29 15:39:43 2011 -0400 ath5k: fix incorrect use of drvdata in PCI suspend/resume code Signed-off-by: Pavel Roskin Cc: Signed-off-by: John W. Linville commit 95acbd432b4c6498c5b4b2f92e0e05e3c032d4f8 Author: Pavel Roskin Date: Wed Jun 29 15:39:37 2011 -0400 ath5k: fix incorrect use of drvdata in sysfs code Signed-off-by: Pavel Roskin Cc: Signed-off-by: John W. Linville commit f2529c2cc80b72fcf889a9399e522b9648ab4d9e Merge: a0b8de3 163f4da Author: John W. Linville Date: Tue Jul 5 14:33:09 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 commit 4c7c5374ce6876d3d2c7013ef815051df4258952 Author: Mark Brown Date: Mon Jul 4 10:27:51 2011 -0700 ASoC: Manage WM8731 ACTIVE bit as a supply widget Now we have supply widgets there's no need to open code the handling of the ACTIVE bit. Signed-off-by: Mark Brown Tested-by: Nicolas Ferre Acked-by: Liam Girdwood commit a8728d35549d3203a8cb0055b9d2c217a21ac7eb Merge: fe0d422 032016a Author: Linus Torvalds Date: Tue Jul 5 10:04:27 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hch/hfsplus: hfsplus: Fix double iput of the same inode in hfsplus_fill_super() hfsplus: add missing call to bio_put() commit 873bd4cb4fbba6a3e99f750e17ef2ba6ef96e9d3 Author: Takashi Iwai Date: Tue Jul 5 09:25:59 2011 +0200 ASoC: Don't set invalid name string to snd_card->driver field The snd_card->driver field contains a driver name string, and in general it shouldn't contain space or special letters. The commit 2b39535b9e54888649923beaab443af212b6c0fd changed the string copy from card->name, but the long name string may contain such letters, thus it may still lead to a segfault. A temporary fix is not to copy the long name string but just keep it empty as the earlier version did. Reported-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Takashi Iwai commit 6f96521fab978046070a697926cf351c2c37af29 Author: Will Deacon Date: Fri Jul 1 14:38:53 2011 +0100 ARM: 6990/1: MAINTAINERS: add entry for ARM PMU profiling and debugging Following a request from Russell King: http://lists.infradead.org/pipermail/linux-arm-kernel/2011-June/055031.html Add myself as the ARM PMU profiling and debugging maintainer. This covers the ARM implementations of perf, oprofile and hw_breakpoint along with the glue for this to work on different platforms. Cc: Jean Pihet Acked-by: Jamie Iles Acked-by: Linus Walleij Signed-off-by: Will Deacon Signed-off-by: Russell King commit f4f38430c94c38187db73a2cf3892cc8b12a2713 Author: Will Deacon Date: Fri Jul 1 14:38:12 2011 +0100 ARM: 6989/1: perf: do not start the PMU when no events are present armpmu_enable can be called in situations where no events are present (for example, from the event rotation tick after a profiled task has exited). In this case, we currently start the PMU anyway which may leave it active inevitably without any events being monitored. This patch adds a simple check to the enabling code so that we avoid starting the PMU when no events are present. Cc: Reported-by: Ashwin Chaugle Signed-off-by: Will Deacon Signed-off-by: Russell King commit e4c2fb0d5776b58049d2556b456144a4db3fe5a9 Author: Peter Zijlstra Date: Tue Jul 5 10:56:32 2011 +0200 sched: Disable (revert) SCHED_LOAD_SCALE increase Alex reported that commit c8b281161df ("sched: Increase SCHED_LOAD_SCALE resolution") caused a power usage regression under light load as it increases the number of load-balance operations and keeps idle cpus from staying idle. Time has run out to find the root cause for this release so disable the feature for v3.0 until we can figure out what causes the problem. Reported-by: "Alex, Shi" Signed-off-by: Peter Zijlstra Cc: Nikhil Rao Cc: Ming Lei Cc: Mike Galbraith Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/n/tip-m4onxn0sxnyn5iz9o88eskc3@git.kernel.org Signed-off-by: Ingo Molnar commit 8509e142567d69e170a184ecf27d7a6a3239fd72 Author: Axel Lin Date: Thu Jun 23 10:15:51 2011 +0800 mfd: Add Makefile and Kconfig Entries for tps65911 comparator Base on Mark's comment [1], I make the Kconfig entry invisible to users. [1] https://lkml.org/lkml/2011/5/14/136 Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit 1e8ece5cb85361ac01c95aecdfdbfa5f8b7242af Author: Axel Lin Date: Thu Jun 23 10:17:43 2011 +0800 mfd: Fix build error for tps65911-comparator.c Fix below build error: CC drivers/mfd/tps65911-comparator.o drivers/mfd/tps65911-comparator.c: In function 'tps65911_comparator_probe': drivers/mfd/tps65911-comparator.c:131: error: 'struct tps65910_platform_data' has no member named 'vmbch_threshold' drivers/mfd/tps65911-comparator.c:137: error: 'struct tps65910_platform_data' has no member named 'vmbch2_threshold' make[2]: *** [drivers/mfd/tps65911-comparator.o] Error 1 make[1]: *** [drivers/mfd] Error 2 make: *** [drivers] Error 2 Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit 8f2df0147fc78804a869150e6439be2605b5dc2d Author: Keshava Munegowda Date: Mon Jun 20 15:22:56 2011 +0200 Revert "mfd: Add omap-usbhs runtime PM support" This reverts commit 7e6502d577106fb5b202bbaac64c5f1b065e6daa. Oops are produced during initialization of ehci and ohci drivers. This is because the run time pm apis are used by the driver but the corresponding hwmod structures and initialization is not merged. hence revering back the commit id 7e6502d577106fb5b202bbaac64c5f1b065e6daa Signed-off-by: Keshava Munegowda Reported-by: Luciano Coelho Acked-by: Felipe Balbi Signed-off-by: Samuel Ortiz commit 63ef1124f1cb07836f232b8eaed1ae4c73899643 Author: Samuel Ortiz Date: Wed Jun 8 11:06:30 2011 +0200 input: pmic8xxx-pwrkey: Do not use mfd_get_data() mfd_get_data() has been removed from the MFD API. Cc: Anirudh Ghayal Signed-off-by: Samuel Ortiz commit 1d08382a0e8a272fed9517a1b39ae6be634a77d5 Author: Samuel Ortiz Date: Wed Jun 8 11:03:23 2011 +0200 input: pmic8xxx-keypad: Do not use mfd_get_data() mfd_get_data() has been removed from the MFD API. Cc: Anirudh Ghayal Signed-off-by: Samuel Ortiz commit 8d9afa08fe831ae521bf11a125b347bb0b578526 Merge: 63bc975 8e9ddf8 Author: Takashi Iwai Date: Tue Jul 5 08:20:00 2011 +0200 Merge branch 'for-3.0' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into fix/asoc commit 63bc9750167ac765827470aa5aed1e79aeaaad9e Merge: 53dea36 9fb352b Author: Takashi Iwai Date: Tue Jul 5 07:33:06 2011 +0200 Merge branch 'for-3.0' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into fix/asoc commit 9b9cfe7cf663c16c0d93349cc0094bb28ae7135a Author: Kristoffer Glembo Date: Mon Jul 4 21:39:10 2011 -0700 greth: greth_set_mac_add would corrupt the MAC address. The MAC address was set using the signed char sockaddr->sa_addr field and thus the address could be corrupted through sign extension. Signed-off-by: Kristoffer Glembo Signed-off-by: David S. Miller commit c349a528cd47e2272ded0ea358363855e86180da Author: Marcus Meissner Date: Mon Jul 4 01:30:29 2011 +0000 net: bind() fix error return on wrong address family Hi, Reinhard Max also pointed out that the error should EAFNOSUPPORT according to POSIX. The Linux manpages have it as EINVAL, some other OSes (Minix, HPUX, perhaps BSD) use EAFNOSUPPORT. Windows uses WSAEFAULT according to MSDN. Other protocols error values in their af bind() methods in current mainline git as far as a brief look shows: EAFNOSUPPORT: atm, appletalk, l2tp, llc, phonet, rxrpc EINVAL: ax25, bluetooth, decnet, econet, ieee802154, iucv, netlink, netrom, packet, rds, rose, unix, x25, No check?: can/raw, ipv6/raw, irda, l2tp/l2tp_ip Ciao, Marcus Signed-off-by: Marcus Meissner Cc: Reinhard Max Signed-off-by: David S. Miller commit fe0d42203cb5616eeff68b14576a0f7e2dd56625 Author: Linus Torvalds Date: Mon Jul 4 15:56:24 2011 -0700 Linux 3.0-rc6 commit 532df6f3faa66b28b9b053775f5fa33761b8104e Merge: fc52693 a5ec7f8 Author: Linus Torvalds Date: Mon Jul 4 15:54:37 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (277 commits) [SCSI] isci: fix checkpatch errors isci: Device reset should request sas_phy_reset(phy, true) isci: pare back error messsages isci: cleanup silicon revision detection isci: merge scu_unsolicited_frame.h into unsolicited_frame_control.h isci: merge sata.[ch] into request.c isci: kill 'get/set' macros isci: retire scic_sds_ and scic_ prefixes isci: unify isci_host and scic_sds_controller isci: unify isci_remote_device and scic_sds_remote_device isci: unify isci_port and scic_sds_port isci: fix scic_sds_remote_device_terminate_requests isci: unify isci_phy and scic_sds_phy isci: unify isci_request and scic_sds_request isci: rename / clean up scic_sds_stp_request isci: preallocate requests isci: combine request flags isci: unify can_queue tracking on the tci_pool, uplevel tag assignment isci: Terminate dev requests on FIS err bit rx in NCQ isci: fix frame received locking ... commit fc52693f8f54485af29be1adc90ce2bd54ad325f Merge: aababb9 64393b3 Author: Linus Torvalds Date: Mon Jul 4 15:54:18 2011 -0700 Merge branch 'at91/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-2.6-arm-soc * 'at91/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-2.6-arm-soc: AT91: Change nand buswidth logic to match hardware default configuration at91: Use "pclk" as con_id on at91cap9 and at91rm9200 at91: fix udc, ehci and mmc clock device name for cap9/9g45/9rl atmel_serial: fix internal port num at91: fix at91_set_serial_console: use platform device id commit aababb9766f0e874da26a17acbbec867bf9501f0 Merge: b2bc478 3e86f1d Author: Linus Torvalds Date: Mon Jul 4 15:53:53 2011 -0700 Merge branch 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x * 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x: vesafb: fix memory leak fbdev: amba: Link fb device to its parent fsl-diu-fb: remove check for pixel clock ranges udlfb: Correct sub-optimal resolution selection. hecubafb: add module_put on error path in hecubafb_probe() sm501fb: fix section mismatch warning gx1fb: Fix section mismatch warnings fbdev: sh_mobile_meram: Correct pointer check for YCbCr chroma plane commit b2bc4782191cb574924a1d09f48083ea8b33a93b Author: Goldwyn Rodrigues Date: Mon Jul 4 09:26:57 2011 -0700 RDMA: Check for NULL mode in .devnode methods Commits 71c29bd5c235 ("IB/uverbs: Add devnode method to set path/mode") and c3af0980ce01 ("IB: Add devnode methods to cm_class and umad_class") added devnode methods that set the mode. However, these methods don't check for a NULL mode, and so we get a crash when unloading modules because devtmpfs_delete_node() calls device_get_devnode() with mode == NULL. Add the missing checks. Signed-off-by: Goldwyn Rodrigues [ Also fix cm.c. - Roland ] Signed-off-by: Roland Dreier Signed-off-by: Linus Torvalds commit 64393b3ae4e3cc86e2d622f682d736ec973364b6 Author: Nicolas Ferre Date: Fri Jul 1 12:25:24 2011 +0200 AT91: Change nand buswidth logic to match hardware default configuration The recently modified nand buswitth configuration is not aligned with board reality: the double footprint on boards is always populated with 8bits buswidth nand flashes. So we have to consider that without particular configuration the 8bits buswidth is selected by default. Moreover, the previous logic was always using !board_have_nand_8bit(), we change it to a simpler: board_have_nand_16bit(). Signed-off-by: Nicolas Ferre Tested-by: Ludovic Desroches Signed-off-by: Arnd Bergmann commit 8e9ddf811ba021506d2316fcfe619faa0ab3f567 Author: Mark Brown Date: Fri Jul 1 17:24:46 2011 -0700 ASoC: Ensure we delay long enough for WM8994 FLL to lock when starting This delay is very conservative. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit 713d1369789f2a2336c3431b15276c968862bdb7 Author: Stephen Warren Date: Fri Jul 1 13:56:13 2011 -0600 ASoC: Tegra: I2S: Ensure clock is enabled when writing regs The I2S controller needs a clock to respond to register writes. Without this, register writes will at worst hang the CPU. In practice, I've only observed writes being dropped. Luckily, the dropped register writes historically had no effect: TEGRA_I2S_TIMING: The value we wrote was the reset default. TEGRA_I2S_FIFO_SCR: The default was for the FIFOs to request more data when one slot was empty. The requested value was for the FIFOs to request when four slots were empty. The DMA controller in the mainline kernel is configured to burst a single entry at a time into the FIFO, hence there was no issue. The only negative effect was on bus efficiency losses due to an increased number of arbitration attempts. However, in various non-upstream changes, the DMA controller now bursts four entries at a time into the FIFO. If there is only space for one entry, the data is simply dropped. In practice, this resulted in 3/4 of samples being dropped, and playback at 4x the expected rate and pitch. By fixing the clocking issue, this is solved. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 07ad6ab3d79ede41cd8a69499e81df7b405635d2 Author: Janusz Krzysztofik Date: Mon Jul 4 03:56:15 2011 -0700 omap: drop __initdata tags from static struct platform_device declarations Pointers to statically declared platform device structures which are registered with platform_device_register() are then used during run time to access these structure members, for example from platform_uevent() and much more. Therefore, these structures should never be placed inside sections which are dropped after boot. Fix platform devices incorrectly tagged with __initdata which happen to exist inside OMAP sub-trees. This bug has exhibited itself on my ARM/OMAP1 based Amstrad Delta videophone after commit 6d3163ce86dd386b4f7bda80241d7fea2bc0bb1d, "mm: check if any page in a pageblock is reserved before marking it MIGRATE_RESERVE", resulting in reading from several /sys/device/platform/*/uevent files always ending up with segmentation faults. Signed-off-by: Janusz Krzysztofik Acked-by: Felipe Balbi Cc: Varadarajan, Charulatha Cc: Jarkko Nikula Signed-off-by: Tony Lindgren commit 3e86f1d8e397b1ef59a97910089e16a99e8f31f7 Author: Daniel J Blueman Date: Mon Jun 27 23:08:53 2011 +0000 vesafb: fix memory leak When releasing framebuffer, free colourmap allocations. Signed-off-by: Daniel J Blueman Signed-off-by: Paul Mundt commit 2fb83cd618be34546fb526a9051eceaa95517026 Author: FUJITA Tomonori Date: Sun Jul 3 22:34:29 2011 -0700 natsemi: silence dma-debug warnings This silences dma-debug warnings: https://lkml.org/lkml/2011/6/30/341 ------------[ cut here ]------------ WARNING: at /home/jimc/projects/lx/linux-2.6/lib/dma-debug.c:820 check_unmap+0x1fe/0x56a() natsemi 0000:00:06.0: DMA-API: device driver frees DMA memory with different size [device address=0x0000000006ef0040] [map size=1538 bytes] [unmap size=1522 bytes] Modules linked in: pc8736x_gpio pc87360 hwmon_vid scx200_gpio nsc_gpio scx200_hrt scx200_acb i2c_core arc4 rtl8180 mac80211 eeprom_93cx6 cfg80211 pcspkr rfkill scx200 ide_gd_mod ide_pci_generic ohci_hcd usbcore sc1200 ide_core Pid: 870, comm: collector Not tainted 3.0.0-rc5-sk-00080-gca56a95 #1 Call Trace: [] warn_slowpath_common+0x4a/0x5f [] ? check_unmap+0x1fe/0x56a [] warn_slowpath_fmt+0x26/0x2a [] check_unmap+0x1fe/0x56a [] debug_dma_unmap_page+0x53/0x5b [] pci_unmap_single+0x4d/0x57 [] natsemi_poll+0x343/0x5ca [] ? try_to_wake_up+0xea/0xfc [] ? spin_unlock_irq.clone.28+0x18/0x23 [] net_rx_action+0x3f/0xe5 [] __do_softirq+0x5b/0xd1 [] ? local_bh_enable+0xa/0xa [] ? irq_exit+0x34/0x75 [] ? do_IRQ+0x66/0x79 [] ? common_interrupt+0x29/0x30 [] ? finish_task_switch.clone.118+0x31/0x72 [] ? schedule+0x3b2/0x3f1 [] ? hrtimer_start_range_ns+0x10/0x12 [] ? hrtimer_start_expires+0x1c/0x24 [] ? schedule_hrtimeout_range_clock+0x8e/0xb4 [] ? update_rmtp+0x68/0x68 [] ? schedule_hrtimeout_range+0xa/0xc [] ? poll_schedule_timeout+0x27/0x3e [] ? do_select+0x488/0x4cd [] ? finish_task_switch.clone.118+0x43/0x72 [] ? need_resched+0x14/0x1e [] ? poll_freewait+0x74/0x74 [] ? need_resched+0x14/0x1e [] ? schedule+0x3e1/0x3f1 [] ? irq_exit+0x47/0x75 [] ? need_resched+0x14/0x1e [] ? preempt_schedule_irq+0x44/0x4a [] ? need_resched+0x17/0x19 [] ? put_dec_full+0x7b/0xaa [] ? blkdev_ioctl+0x434/0x618 [] ? put_dec+0x2f/0x6d [] ? number.clone.1+0x10b/0x1d0 [] ? preempt_schedule_irq+0x44/0x4a [] ? need_resched+0x17/0x19 [] ? vsnprintf+0x225/0x264 [] ? vsnprintf+0x7f/0x264 [] ? seq_printf+0x22/0x40 [] ? do_task_stat+0x582/0x5a3 [] ? poll_schedule_timeout+0x27/0x3e [] ? core_sys_select+0x11f/0x1a3 [] ? poll_schedule_timeout+0x27/0x3e [] ? proc_tgid_stat+0xd/0xf [] ? recalc_sigpending+0x32/0x35 [] ? __set_task_blocked+0x64/0x6a [] ? timespec_add_safe+0x24/0x48 [] ? spin_unlock_irq.clone.16+0x18/0x23 [] ? sys_pselect6+0xe5/0x13e [] ? syscall_call+0x7/0xb [] ? rpc_clntdir_depopulate+0x26/0x30 ---[ end trace 180dcac41a50938b ]--- Reported-by: Jim Cromie Signed-off-by: FUJITA Tomonori Tested-by: Jim Cromie Signed-off-by: David S. Miller commit 60b677034fcb3e48ffa30d638b09ac925afb4b36 Author: Shan Wei Date: Fri Jul 1 22:06:44 2011 +0000 net: 8139too: Initial necessary vlan_features to support vlan Offload setting of vlan device requires vlan_features to be initialized. Signed-off-by: Shan Wei Acked-by: Francois Romieu Signed-off-by: David S. Miller commit 178783622ce0fd629fad21b33b8f8f56b64c5e45 Author: Russell King Date: Sun Jul 3 23:24:21 2011 +0100 ARM: dmabounce: fix map_single() error return value When map_single() is unable to obtain a safe buffer, we must return the dma_addr_t error value, which is ~0 rather than 0. Signed-off-by: Russell King commit ba466c74d99b91b2f390a09ad31bbc6cddd8cf4b Merge: 070f944 f5da24d Author: Linus Torvalds Date: Sun Jul 3 13:33:16 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM / Runtime: Update documentation regarding driver removal PM: Documentation: fix typo: pm_runtime_idle_sync() doesn't exist. commit a5ec7f86dc5432c44d8407a144e7617ec65da770 Author: James Bottomley Date: Sun Jul 3 14:14:45 2011 -0500 [SCSI] isci: fix checkpatch errors Signed-off-by: James Bottomley commit 5b45b69c0573b802a50ccad30e154b93d3b36ff8 Merge: db111e1 bc6f387 Author: James Bottomley Date: Sun Jul 3 14:19:29 2011 -0500 Merge git://git.kernel.org/pub/scm/linux/kernel/git/djbw/isci commit 070f944a0bb9dd27772fa232bd7648ccc5780548 Merge: b775c38 ee1b3ea Author: Linus Torvalds Date: Sun Jul 3 11:12:21 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: set socket send and receive timeouts before attempting connect commit b775c389252886b64f037a655934fa1df7c03006 Merge: 9508d80 af75d5b Author: Linus Torvalds Date: Sun Jul 3 11:12:06 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: hwmon: (k10temp) Update documentation for Fam12h hwmon-vid: Fix typo in VIA CPU name hwmon: (f71882fg) Add support for the F71869A hwmon: Use <> rather than () around my e-mail address hwmon: (emc6w201) Properly handle all errors commit af75d5b771269f764999a67511e7d0c995d1a185 Author: Clemens Ladisch Date: Sun Jul 3 13:32:54 2011 +0200 hwmon: (k10temp) Update documentation for Fam12h Add some CPU series IDs and links to the Fam12h datasheets. Signed-off-by: Clemens Ladisch Signed-off-by: Jean Delvare commit 014ab488e2ebdc65d2088a3ab6d4b8c4472c57fe Author: Jean Delvare Date: Sun Jul 3 13:32:54 2011 +0200 hwmon-vid: Fix typo in VIA CPU name It's Nehemiah, not Nemiah. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck commit 5da556e33fc53179a5bec10b5698e262cf68e26d Author: Hans de Goede Date: Sun Jul 3 13:32:53 2011 +0200 hwmon: (f71882fg) Add support for the F71869A The F71869A is almost the same as the F71869F/E, except that it has the normal number of temp and pwm zones for a F71882FG derived chip, rather then the limited number of the F71869F/E. Signed-off-by: Hans de Goede Tested-by: Max Baldwin Acked-by: Guenter Roeck Signed-off-by: Jean Delvare commit 7958e3b45dd03bf4bc35b3ec97b8a9a4d6c616a5 Author: Hans de Goede Date: Sun Jul 3 13:32:53 2011 +0200 hwmon: Use <> rather than () around my e-mail address Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit b6b2a1e8068684baf67307a994180976b7c443ed Author: Jean Delvare Date: Sun Jul 3 13:32:53 2011 +0200 hwmon: (emc6w201) Properly handle all errors Handle errors on 8-bit register reads and writes too. Also use likely and unlikely to make the functions faster on success. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck commit bc6f387d3156702a0430585b93c04934254c0de1 Author: Jeff Skirvin Date: Fri Jul 1 13:03:44 2011 -0700 isci: Device reset should request sas_phy_reset(phy, true) The hard_reset parameter passed to the LLDD in the direct-attached phy control case allows the LLDD to filter link failure events while the direct-attached device reset is executing. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit a8a0a133b03c6863d0f77229d19befca4de905fa Author: Dan Williams Date: Fri Jul 1 12:07:25 2011 -0700 isci: pare back error messsages The messages emitted from task.c and some from request.c likely duplicate (in a less undertandable way) what is reported by the midlayer. Signed-off-by: Dan Williams commit dc00c8b6940aa10ab1ce6a4d10b1bfe7b848781b Author: Dan Williams Date: Fri Jul 1 11:41:21 2011 -0700 isci: cleanup silicon revision detection Perform checking per-pci device (even though all systems will only have 1 pci device in this generation), and delete support for silicon that does not report a proper revision (i.e. A0). Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 4e4dca3de9658f364d34924e072f2b64e5c3d267 Author: Dan Williams Date: Fri Jul 1 11:15:12 2011 -0700 isci: merge scu_unsolicited_frame.h into unsolicited_frame_control.h Does not need its own file. Signed-off-by: Dan Williams commit 16ba77091b44af28b3ff3318b4a2aa4fbf7d4c24 Author: Dan Williams Date: Fri Jul 1 10:52:55 2011 -0700 isci: merge sata.[ch] into request.c Undo some needless separation. Signed-off-by: Dan Williams commit 34a991587a5cc9f78960c2c9beea217866458c41 Author: Dan Williams Date: Fri Jul 1 02:25:15 2011 -0700 isci: kill 'get/set' macros Most of these simple dereference macros are longer than their open coded equivalent. Deleting enum sci_controller_mode is thrown in for good measure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 89a7301f21fb00e753089671eb9e4132aab8ea08 Author: Dan Williams Date: Thu Jun 30 19:14:33 2011 -0700 isci: retire scic_sds_ and scic_ prefixes The distinction between scic_sds_ scic_ and sci_ are no longer relevant so just unify the prefixes on sci_. The distinction between isci_ and sci_ is historically significant, and useful for comparing the old 'core' to the current Linux driver. 'sci_' represents the former core as well as the routines that are closer to the hardware and protocol than their 'isci_' brethren. sci == sas controller interface. Also unwind the 'sds1' out of the parameter structs. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit d9dcb4ba791de2a06b19ac47cd61601cf3d4e208 Author: Dan Williams Date: Thu Jun 30 17:38:32 2011 -0700 isci: unify isci_host and scic_sds_controller Remove the distinction between these two implementations and unify on isci_host (local instances named ihost). Hmmm, we had two 'oem_parameters' instances, one was unused... nice. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 78a6f06e0e82125787d7aa308fe28c2c8381540c Author: Dan Williams Date: Thu Jun 30 16:31:37 2011 -0700 isci: unify isci_remote_device and scic_sds_remote_device Remove the distinction between these two implementations and unify on isci_remote_device (local instances named idev). Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit ffe191c92ff195d73f9130b1490045ca2dd4c5e0 Author: Dan Williams Date: Wed Jun 29 13:09:25 2011 -0700 isci: unify isci_port and scic_sds_port Remove the distinction between these two implementations and unify on isci_port (local instances named iport). The duplicate '->owning_port' and '->isci_port' in both isci_phy and isci_remote_device will be fixed in a later patch... this is just the straightforward rename/unification. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 76802ce6756d605fbd7a9a43c196e9a471b3e57c Author: Dan Williams Date: Wed Jun 29 09:45:48 2011 -0700 isci: fix scic_sds_remote_device_terminate_requests Commit 0815632 "isci: unify remote_device stop_handlers" introduced the possibility that not all requests get terminated if we reach the request_count. Now that we properly reference count devices we don't need this self-defense and can do the straightforward scan of all active requests. Reported-by: Jeff Skirvin Acked-by: Jeff Skirvin Signed-off-by: Dan Williams commit 852809559e4680ba4768262a6c3d21454fcd460e Author: Dan Williams Date: Tue Jun 28 15:05:53 2011 -0700 isci: unify isci_phy and scic_sds_phy They are one in the same object so remove the distinction. The near duplicate fields (owning_port, and isci_port) will be cleaned up after the scic_sds_port isci_port unification. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 5076a1a97e2fa61c847a5fdd4b1991faf7716da6 Author: Dan Williams Date: Mon Jun 27 14:57:03 2011 -0700 isci: unify isci_request and scic_sds_request They are one in the same object so remove the distinction. The near duplicate fields (owning_controller, and isci_host) will be cleaned up after the scic_sds_contoller isci_host unification. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit ba7cb22342a66505a831bb7e4541fef90e0193c9 Author: Dan Williams Date: Mon Jun 27 11:56:41 2011 -0700 isci: rename / clean up scic_sds_stp_request * Rename scic_sds_stp_request to isci_stp_request * Remove the unused fields and union indirection Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit db0562509800a2d4cb5cb14a66413c30484f165c Author: Dan Williams Date: Fri Jun 17 14:18:39 2011 -0700 isci: preallocate requests the dma_pool interface is optimized for object_size << page_size which is not the case with isci_request objects and the dma_pool routines show up in the top of the profile. The old io_request_table which tracked whether tci slots were in-flight or not is replaced with an IREQ_ACTIVE flag per request. Signed-off-by: Dan Williams commit 38d8879baeb61b6946052739e7c03fa79b3a57f0 Author: Dan Williams Date: Thu Jun 23 14:33:48 2011 -0700 isci: combine request flags Combine three bools into one unsigned long 'flags'. Doesn't increase the request size due to packing. (to do: optimize the structure layout). Signed-off-by: Dan Williams commit 312e0c2455c18716cf640d4336dcb1e9e5053818 Author: Dan Williams Date: Tue Jun 28 13:47:09 2011 -0700 isci: unify can_queue tracking on the tci_pool, uplevel tag assignment The tci_pool tracks our outstanding command slots which are also the 'index' portion of our tags. Grabbing the tag early in ->lldd_execute_task let's us drop the isci_host_can_queue() and ->was_tag_assigned_by_user infrastructure. ->was_tag_assigned_by_user required the task context to be duplicated in request-local buffer. With the tci established early we can build the task_context directly into its final location and skip a memcpy. With the task context buffer at a known address at request construction we have the opportunity/obligation to also fix sgl handling. This rework feels like it belongs in another patch but the sgl handling and task_context are too intertwined. 1/ fix the 'ab' pair embedded in the task context to point to the 'cd' pair in the task context (previously we were prematurely linking to the staging buffer). 2/ fix the broken iteration of pio sgls that assumes all sgls are relative to the request, and does a dangerous looking reverse lookup of physical address to virtual address. Signed-off-by: Dan Williams commit 9274f45ea551421cd3bf329de9dd8d1e6208285a Author: Jeff Skirvin Date: Thu Jun 23 17:09:02 2011 -0700 isci: Terminate dev requests on FIS err bit rx in NCQ When the remote device transitions to a not-ready state because of an NCQ error condition, all outstanding requests to that device are terminated and completed to libsas on the normal path. The device then waits for a READ LOG EXT command to issue on the task management path. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 4cffe13e0dfd00f90c86b0153c751dab61a1bf1d Author: Dan Williams Date: Thu Jun 23 23:44:52 2011 -0700 isci: fix frame received locking Updates to the frame_rcvd before need to be atomic with respect to when they are evaluated by libsas. Signed-off-by: Dan Williams commit 7cafbf1bd56be44038148bb8f733ea6e6a6a2d53 Author: Maciej Patelczyk Date: Tue Jun 21 22:03:13 2011 +0000 isci: possible buffer overflow in isci_parse_oem_parameters fixed scu_index is a parameter of isci_parse_eom_parameters and is an index in controller table. There is a check: scu_index > SCI_MAX_CONTROLLERS which is insufficient and should be: scu_index >= SCI_MAX_CONTROLLERS. scu_index is used as an index in the table which size is SCI_MAX_CONTROLLERS. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 086a0dabc5bf154e13604a6d71e2d051207f9718 Author: Dan Williams Date: Tue Jun 21 16:23:03 2011 -0700 isci: fix isci_task_execute_tmf completion 1/ fix the timeout for wait_for_completion_timeout 2/ In the tmf timeout case we need to wait for our termination callback 3/ Once the request is successfully started it will be freed according to the normal lifetime for requests. Signed-off-by: Dan Williams commit e9bf709564e90abea25ca7aeae8c3de5cc6468d7 Author: Dan Williams Date: Thu Jun 16 16:59:56 2011 -0700 isci: fix support for arbitrarily large smp requests Instead of duplicating the smp request buffer reuse the one provided by libsas. This future proofs the driver to support arbitrarily large smp requests, and shrinks the request structure size by ~700 bytes. Signed-off-by: Dan Williams commit ddcc7e347a891937be65358b43f40b7f81185f8f Author: Dan Williams Date: Fri Jun 17 10:40:43 2011 -0700 isci: fix dma_unmap_sg usage One bug and a cleanup: 1/ Fix cases where we were unmapping invalid addresses (smp requests were being unmapped) [ 604.662770] ------------[ cut here ]------------ [ 604.668026] WARNING: at lib/dma-debug.c:800 check_unmap+0x418/0x740() [ 604.675315] Hardware name: SandyBridge Platform [ 604.680465] isci 0000:03:00.0: DMA-API: device driver tries to free an invalid DMA memory address 2/ The unmap routine is too large to be an inline function, and isci_request_io_request_get_next_sge is unused. Signed-off-by: Dan Williams commit 5edc33480c1c363ab361a881f2957b9fba5185cf Author: Dan Williams Date: Thu Jun 16 17:20:35 2011 -0700 isci: fix smp response frame overrun Due to a typo we currently copy way too much when copying over the response data, but since a request is likely backed by a full page allocation we don't corrupt live data. Signed-off-by: Dan Williams commit ff60639dc9a461883db9192d2da0674a00339f12 Author: Dan Williams Date: Fri Jun 17 13:34:43 2011 -0700 isci: kill device_sequence Now that we have upleveled device reassignment protection to the isci_remote_device reference count we no longer need this level of self-defense. Signed-off-by: Dan Williams commit f2088267514b39af1a94409168101527769a911c Author: Dan Williams Date: Thu Jun 16 11:26:12 2011 -0700 isci: kill isci_remote_device_change_state() Now that "stopping/stopped" are one in the same and signalled by a NULL device pointer the rest of the device status infrastructure can be removed (->status and ->state_lock). The "not ready for i/o state" is replaced with a state flag, and is evaluated under scic_lock so that we don't see transients from taking the device reference to submitting the i/o. This also fixes a potential leakage of can_queue slots in the rare case that SAS_TASK_ABORTED is set at submission. Signed-off-by: Dan Williams commit 209fae14fabfd48525e5630bebbbd4ca15090c60 Author: Dan Williams Date: Mon Jun 13 17:39:44 2011 -0700 isci: atomic device lookup and reference counting We have unsafe references to remote devices that are notified to disappear at lldd_dev_gone. In order to clean this up we need a single canonical source for device lookups and stable references once a lookup succeeds. Towards that end guarantee that domain_device.lldd_dev is NULL as soon as we start the process of stopping a device. Any code path that wants to safely lookup a remote device must do so through task->dev->lldd_dev (isci_lookup_device()). For in-flight references outside of scic_lock we need reference counting to ensure that the device is not recycled before we are done with it. Simplify device back references to just scic_sds_request.target_device which is now the only permissible internal reference that is maintained relative to the reference count. There were two occasions where we wanted new i/o's to be treated as SAS_TASK_UNDELIVERED but where the domain_dev->lldd_dev link is still intact. Introduce a 'gone' flag to prevent i/o while waiting for libsas to take action on the port down event. One 'core' leftover is that we currently call scic_remote_device_destruct() from isci_remote_device_deconstruct() which is called when the 'core' says the device is stopped. It would be more natural for the final put to trigger isci_remote_device_deconstruct() but this implementation is deferred as it requires other changes. Signed-off-by: Dan Williams commit 360b03ed178a4fe3971b0a098d8feeb53333481b Author: Dan Williams Date: Wed Jun 15 11:11:03 2011 -0700 isci: fix ssp response iu buffer size in isci_tmf In isci_task_request_complete() we save the response/sense data from the command. Make sure isci_tmf has enough space to hold the full response. [ it does not look like we actually use this data, and response_data_len/sense_data_len should be specifying the byte count, in any event do the simple fix first so we don't corrupt memory ] Reported-by: Adam Gruchala Tested-by: Edmund Nadolski Signed-off-by: Dan Williams commit 0d0cf14c9bd2943ed5afd15df459f564d85eacde Author: Dan Williams Date: Mon Jun 13 00:51:30 2011 -0700 isci: cleanup request allocation Rather than return an error code and update a pointer that was passed by reference just return the request object directly (or null if allocation failed). Signed-off-by: Dan Williams commit 994a9303d33f8238d57f58c26067b6d4ac9af222 Author: Dan Williams Date: Thu Jun 9 16:04:28 2011 -0700 isci: cleanup/optimize queue increment macros Every single i/o or event completion incurs a test and branch to see if the cycle bit changed. For power-of-2 queue sizes the cycle bit can be read directly from the rollover of the queue pointer. Likely premature optimization, but the hidden if() and hidden assignments / side-effects in the macros were already asking to be cleaned up. Signed-off-by: Dan Williams commit dd047c8e2bca22856050dbe0378a37cf44eecc97 Author: Dan Williams Date: Thu Jun 9 11:06:58 2011 -0700 isci: cleanup tag macros A tag is a 16 bit number where the upper four bits is a sequence number and the remainder is the task context index (tci). Sanitize the macro names and shave 256-bytes out of scic_sds_controller by reducing the size of io_request_sequence. scic_sds_io_tag_construct --> ISCI_TAG scic_sds_io_tag_get_sequence --> ISCI_TAG_SEQ scic_sds_io_tag_get_index() --> ISCI_TAG_TCI scic_sds_io_sequence_increment() [delete / open code] Signed-off-by: Dan Williams commit ac668c69709c7d927015c5cf3d9e87bf4eaaf57d Author: Dan Williams Date: Tue Jun 7 18:50:55 2011 -0700 isci: cleanup/optimize pool implementation The circ_buf macros are ~6% faster, as measured by perf, because they take advantage of power-of-two math assumptions i.e. no test and branch for rollover. Their semantics are clearer than the hidden side effects in pool.h (like sci_pool_get() which hides an assignment). Signed-off-by: Dan Williams commit 9b917987fd16d0687afe550a02f68099419f5d43 Author: Jeff Skirvin Date: Mon Jun 20 14:09:31 2011 -0700 isci: Disable link layer hang detection Some targets exceed the hang detect timer. Use the OS timeout to catch hung tasks. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit fd0527ab15bfd96f04b084b1b2550f80cf151b60 Author: Jeff Skirvin Date: Mon Jun 20 14:09:26 2011 -0700 isci: Hard reset failure will link reset all phys in the port In the case where the hard reset process fails, each link in the port is put through a link reset sequence. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit fd53660120b5eda06539225de56755dc389a4e64 Author: Jeff Skirvin Date: Mon Jun 20 14:09:22 2011 -0700 isci: Explicitly decode remote node ready and suspended states The remote node context should only signal a device reset condition in a suspended state. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 980d3aeb3828b0fdf2a0b2e893d238130b014575 Author: Dan Williams Date: Mon Jun 20 15:11:22 2011 -0700 isci: fix isci_terminate_pending() list management Walk through the list of pending requests being careful to consider that multiple requests can be terminated when the lock is dropped (i.e. invalidating the 'next' reference established by list_for_each_entry_safe). Also noticed that all callers to isci_terminate_pending_requests() specifying terminating, so just drop the parameter. Signed-off-by: Dan Williams commit 77c852f312243192b1f2ce7fc56d678784786692 Author: Jeff Skirvin Date: Mon Jun 20 14:09:16 2011 -0700 isci: Handle timed-out request terminations correctly In the situation where a termination of an I/O times-out, make sure that the linkage from the request to the task is severed completely. Also make sure that the selection of tasks to terminate occurs under scic_lock. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit f53a3a32c1e799e27f63bff7b42b4c36749e5e6f Author: Jeff Skirvin Date: Mon Jun 20 14:09:11 2011 -0700 isci: Requests that do not start must be set to "complete" Requests that fail at start because of a reset pending condition must be set to complete in order to allow for later cleanup. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit cde76fbf1f27551a08860227765ae8d5026ac0d9 Author: Jeff Skirvin Date: Mon Jun 20 14:09:06 2011 -0700 isci: Add decode for SMP request retry error condition There are situations with slow expanders in which a first attempt to execute an SMP request will fail with a timeout. Immediate subsequent retries will generally succeed. This change makes sure SMP I/O failures are immediately failed to libsas so that retries happen with no discovery process timeout delay. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 61aaff49e20fdb700f1300a49962bc76effc77fc Author: Jeff Skirvin Date: Tue Jun 21 12:16:33 2011 -0700 isci: filter broadcast change notifications during SMP phy resets When resetting a sata device in the domain we have seen occasions where libsas prematurely marks a device gone in the time it takes for the device to re-establish the link. This plays badly with software raid arrays. Other libsas drivers have non-uniform delays in their reset handlers to try to cover this condition, but not sufficient to close the hole. Given that a sata device can take many seconds to recover we filter bcns and poll for the device reattach state before notifying libsas that the port needs the domain to be rediscovered. Once this has been proven out at the lldd level we can think about uplevelling this feature to a common implementation in libsas. Signed-off-by: Jeff Skirvin [ use kzalloc instead of kmem_cache ] Signed-off-by: Dave Jiang [ use eventq and time macros ] Signed-off-by: Dan Williams commit ff717ab05f0c33f93514eccea6dfe1a15983e1d1 Author: Jeff Skirvin Date: Mon Jun 20 14:08:51 2011 -0700 isci: Move the reset delay after the remote node resumption. Delay after bringing up the RNC to allow for resumption latency. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 7c78da3175177c905a75c54b5830029c778494ea Author: Dan Williams Date: Wed Jun 1 16:00:01 2011 -0700 isci: remove 'min memory' infrastructure The old 'core' had aspirations of running in severely memory constrained environments like bios option-rom, it's not needed for Linux and gets in the way of other cleanups (like unifying/reducing the number of structure members in scic_sds_controller/isci_host). This also fixes a theoretical bug in that the driver would blindly override the silicon advertised limits for number of ports, task contexts, and remote node contexts. Signed-off-by: Dan Williams commit dbb0743a58825d94f1b3fdfa90a8d61dfef88f7b Author: Adam Gruchala Date: Wed Jun 1 22:31:03 2011 +0000 isci: Added support for C0 to SCU Driver C0 silicon updates the pci revision id and requires new AFE parameters for phy signal integrity. Support for previous silicon revisions is deprecated (it's also broken for the theoretical case of multiple controllers at different silicon revisions, all the more reason to get it removed as soon as possible) Signed-off-by: Adam Gruchala [fixed up deprecated silicon support] Signed-off-by: Dan Williams commit 12ef65444de9d387a383b9991960848bed5bbe74 Author: Edmund Nadolski Date: Thu Jun 2 00:10:50 2011 +0000 isci: additional state machine cleanup Additional state machine cleanups: o Remove static functions sci_state_machine_exit_state() and sci_state_machine_enter_state() o Combines sci_base_state_machine_construct() and sci_base_state_machine_start() into a single function, sci_init_sm() o Remove sci_base_state_machine_stop() which is unused. o Kill state_machine.[ch] Signed-off-by: Edmund Nadolski [fixed too large to inline functions] Signed-off-by: Dan Williams commit e301370ac553a9a0ac0d1d25e769b86cf60395b3 Author: Edmund Nadolski Date: Thu Jun 2 00:10:43 2011 +0000 isci: state machine cleanup This cleans up several areas of the state machine mechanism: o Rename sci_base_state_machine_change_state to sci_change_state o Remove sci_base_state_machine_get_state function o Rename 'state_machine' struct member to 'sm' in client structs o Shorten the name of request states o Shorten state machine state names as follows: SCI_BASE_CONTROLLER_STATE_xxx to SCIC_xxx SCI_BASE_PHY_STATE_xxx to SCI_PHY_xxx SCIC_SDS_PHY_STARTING_SUBSTATE_xxx to SCI_PHY_SUB_xxx SCI_BASE_PORT_STATE_xxx to SCI_PORT_xxx and SCIC_SDS_PORT_READY_SUBSTATE_xxx to SCI_PORT_SUB_xxx SCI_BASE_REMOTE_DEVICE_STATE_xxx to SCI_DEV_xxx SCIC_SDS_STP_REMOTE_DEVICE_READY_SUBSTATE_xxx to SCI_STP_DEV_xxx SCIC_SDS_SMP_REMOTE_DEVICE_READY_SUBSTATE_xxx to SCI_SMP_DEV_xxx SCIC_SDS_REMOTE_NODE_CONTEXT_xxx_STATE to SCI_RNC_xxx Signed-off-by: Edmund Nadolski Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 8d2c65c09c9e0adc16070562e7944c1c3277f332 Author: Dave Jiang Date: Wed Jun 1 09:03:08 2011 +0000 isci: Removing unused variables compiler warnings Newer gcc's are better at identifying "set, but not used" variables. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit bf482c6069b514b7fe57a048ae1b6f11cf3bb10c Author: Dave Jiang Date: Wed May 25 05:04:35 2011 +0000 isci: Retrieve the EFI variable for OEM parameter We can call the EFI get_variable service routine directly to retrieve the EFI variable that holds the OEM parameters table. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 77d67385f7b4a630912fd567f104946be137f477 Author: Dave Jiang Date: Wed May 25 02:21:57 2011 +0000 isci: removing the kmalloc in smp request construct It doesn't look like there is any reason to do a kmalloc. We can do the byte swap in place and avoid the allocation. This allow us to remove a kmalloc and a memcpy. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 8db02da52895285e99d7eb2fa825fd393e61d9c5 Author: Edmund Nadolski Date: Thu May 19 12:00:22 2011 +0000 isci: remove isci_timer interface Delete code which is no longer used. Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit fd18388bc5820b3e7807302ac18e8e7de83c9f4c Author: Edmund Nadolski Date: Thu May 19 12:00:15 2011 +0000 isci: Remove tmf timeout_timer Replace the timeout_timer in the isci_tmf with a call to wait_for_completion_timeout Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit bb3dbdf6c835a145e46119ed18a920a774694583 Author: Edmund Nadolski Date: Thu May 19 20:26:02 2011 -0700 isci: convert phy_startup_timer to sci_timer Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 6cb5853d3e252015eaf72d3761491e3da959556d Author: Edmund Nadolski Date: Thu May 19 11:59:56 2011 +0000 isci: convert scic_timeout_timer to sci_timer Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 0473661a125905240879456567e117ed8a58cf5d Author: Edmund Nadolski Date: Thu May 19 20:17:47 2011 -0700 isci: convert power control timer to sci_timer Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit a628d478570d71fb8751ad09b8017139c5056002 Author: Edmund Nadolski Date: Thu May 19 11:59:36 2011 +0000 isci: convert phy sata_timeout_timer to sci_timer Convert the sata_timeout_timer in the scic_sds_phy struct to use a struct sci_timer Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit ac0eeb4f774261d1da21a68169f7ddd4f6c082fc Author: Edmund Nadolski Date: Thu May 19 20:00:51 2011 -0700 isci: convert port config agent timer to sci_timer Signed-off-by: Edmund Nadolski [squashed collateral cleanups] Signed-off-by: Dan Williams commit 5553ba2be0f3e3741e1a885a33d2b89921f9fd48 Author: Edmund Nadolski Date: Thu May 19 11:59:10 2011 +0000 isci: replace isci_timer list with proper embedded timers Rather than preallocating a list of timers and doling them out at runtime, embed a struct timerlist in each object that needs one. A struct sci_timer interface is introduced to manage the timer cancellation semantics which currently need to guarantee the timer is cancelled while holding spin_lock(ihost->scic_lock). Since the timeout functions also need to acquire the lock it currently prevents the driver from using del_timer_sync() for runtime cancellations. del_timer_sync() is used however before the objects go out of scope. Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 9269e0e898594c65dee6b20d4ed48e33dbbd4eeb Author: Dan Williams Date: Thu May 12 07:42:17 2011 -0700 isci: add some type safety to the state machine interface Now that any given object type only has one state_machine we can use container_of() to get back to the given state machine owner. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f34d9e5d3f34f395a497a8747316b04ef3e865b1 Author: Dan Williams Date: Thu May 12 09:27:52 2011 -0700 isci: unify rnc start{io|task} handlers Unify rnc start{io|task} handlers and delete the state handler infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit ed3efb7784cb0772558e9cc9440bd6c9a3139be4 Author: Dan Williams Date: Thu May 12 08:50:23 2011 -0700 isci: unify rnc suspend/resume handlers Unify rnc suspend/resume handlers and delete the state handlers. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit c845ae96bcb1625a093003248ffaf13b92a81ac2 Author: Dan Williams Date: Thu May 12 08:26:56 2011 -0700 isci: unify rnc destruct handlers Unify rnc destruct handlers and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 338e386d12c2440e39c987d35fda403d319a79a0 Author: Dan Williams Date: Thu May 12 07:46:59 2011 -0700 isci: unify rnc event handlers Unify rnc event handlers and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 6813820c7b892e1a5c2306808a5ccc8a27b7946d Author: Dan Williams Date: Thu May 12 07:16:06 2011 -0700 isci: unify port start_io and complete_io handlers Unify the handlers and kill the state handler infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 051266caaeb15719553c5316e3d43b533d3cd5a0 Author: Piotr Sawicki Date: Thu May 12 19:10:14 2011 +0000 isci: unify port link_up and link_down handlers Unify the handlers and kill the state handler implementations. Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit 13721e186fd31cd8475e635a89383853871fdbf1 Author: Piotr Sawicki Date: Thu May 12 19:10:08 2011 +0000 isci: remove port frame and event handlers Unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit bd6713b416bbfc7d7180114f7cc543b152cc1725 Author: Piotr Sawicki Date: Thu May 12 19:10:03 2011 +0000 isci: unify port reset, add_phy, and remove_phy handlers Unify the implementations and remove the state handlers. Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit e6ec5afde9794f50e60788bd10760fcd0d609252 Author: Piotr Sawicki Date: Wed May 11 23:52:37 2011 +0000 isci: remove port destruct handler The handler was never used. Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit 8bc80d303063d9540493be623df1c9a8dee9ccb8 Author: Piotr Sawicki Date: Wed May 11 23:52:31 2011 +0000 isci: unify port stop handlers Implement the stop handlers directly in scic_sds_port_stop() Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit d76f71d988ef48384593ad97ebc762d9257d96a8 Author: Piotr Sawicki Date: Wed May 11 23:52:26 2011 +0000 isci: remove port start handler remove the handler from the port state handler table and implement the logic directly in scic_sds_port_start(). Signed-off-by: Piotr Sawicki [remove a level of indirection] Signed-off-by: Dan Williams commit e91f41ef809a2d1b8cdba52ac380aecd706c93dd Author: Piotr Sawicki Date: Wed May 11 23:52:21 2011 +0000 isci: merge port ready substates into primary state machine This conversion was complicated by the fact that the ready state exit routine took unconditional action beyond just stopping the substate machine (like in previous conversions). In order to ensure identical behaviour every state transition needs to be instrumented to catch ready-->!ready transitions and execute scic_sds_port_invalidate_dummy_remote_node() Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki [fix ready state exit handling] Signed-off-by: Dan Williams commit c777c26ca2a06164e1b8c8ccf4cd76cd645a9bbb Author: Piotr Sawicki Date: Wed May 11 23:52:16 2011 +0000 isci: c99 port state handlers Name the table fields for consistancy and clarity. Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit 4f20ef4f57aa52fd3356c143a8f3d2bd18dc61fc Author: Dan Williams Date: Thu May 12 06:00:31 2011 -0700 isci: clarify phy to port lookups While cleaning up the driver it is very tempting to convert scic_sds_get_* macros to their open coded equivalent. They are all just pointer dereferences *except* scic_sds_phy_get_port() which returns NULL if the phy is assigned to the dummy port. Clarify this by renaming it to phy_get_non_dummy_port(). Signed-off-by: Dan Williams commit 5b1d4af25186f5d23dae7a538d8472dacd9486c8 Author: Dan Williams Date: Thu May 12 04:51:41 2011 -0700 isci: unify phy consume_power handlers Unify the implementations in scic_sds_phy_consume_power_handler(), and kill the state handler plus infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 23506a69e2ee761824c266f6e2cd541a7287c2a5 Author: Dan Williams Date: Thu May 12 04:27:29 2011 -0700 isci: unify phy event handlers Unify the implementations in scic_sds_phy_event_handler(), and kill the state handler Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit c4441abc25a33ab259f01dce4b4d63721013f86d Author: Dan Williams Date: Thu May 12 04:17:51 2011 -0700 isci: unify phy frame handlers Unify the implementations in scic_sds_phy_frame_handler(), and kill the state handler Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 35b317bec511b4a5f87a637bf78b6d1d635c617d Author: Dan Williams Date: Thu May 12 04:10:41 2011 -0700 isci: remove phy destruct handlers Unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 0cf36fa9f1197e669ac6f5efc51d0587bcc95e6e Author: Dan Williams Date: Thu May 12 04:02:07 2011 -0700 isci: unify phy reset handlers Unify the implementations in scic_sds_phy_reset(), and kill the state handler Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 931532364e7966f61683bdf40fa1698d6707f523 Author: Dan Williams Date: Thu May 12 04:01:03 2011 -0700 isci: unify phy stop handlers Merge all implementations in scic_sds_phy_stop(), and kill the state handler Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 966699b50c61940e06ff39fb1085bea813f9a51d Author: Dan Williams Date: Thu May 12 03:44:24 2011 -0700 isci: unify phy start handlers Implement all handlers in scic_sds_phy_start(), and kill the state handler Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 4a33c525f0e94b57602abd1e43644cbf6f5418f4 Author: Adam Gruchala Date: Tue May 10 23:54:23 2011 +0000 isci: merge phy substates Merged states and substates into one state machine, as we always unconditionally transitioned to the substate machine it was straightforward to enter that substate from the starting state. Reported-by: Christoph Hellwig Signed-off-by: Adam Gruchala [fixed construction, starting_state_enter, and starting check] Signed-off-by: Dan Williams commit 79e2b6b27699c916e3c7cda18a26d47fea6017fb Author: Dan Williams Date: Wed May 11 08:29:56 2011 -0700 isci: remove the completion and event state handlers With these handlers gone the rest of the state handler infrastructure is removed. Added some WARN_ONCEs where previously we would cause NULL pointer dereferences or silently run handlers from a previous state. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit a7e255a34220ba57eeeb75637c911974e54c08e7 Author: Dan Williams Date: Wed May 11 08:27:47 2011 -0700 isci: remove request task context completion state handler Unlike the other conversions this only updates scic_sds_io_request_tc_completion() to call the old state handlers directly (with less verbose names). This was done for future patch readability, the implementations have only minor differences for different completion codes. Without a reference to the function name it would be difficult to dicern which state is being updated. Considered changing the order to look up the completion code before the state but that was not a clean conversion either. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit d1c637c35b33ddd2b405956e04b50939bb10ed2a Author: Dan Williams Date: Wed May 11 08:27:47 2011 -0700 isci: unify request frame handlers Unify the implementation in scic_sds_io_request_frame_handler and kill the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f4636a7b2ab8288466b83a8459d47c43143a70dc Author: Piotr Sawicki Date: Tue May 10 23:50:32 2011 +0000 isci: unify request start handlers Unify the implementation in scic_sds_request_start and kill the state handler. Reported-by: Christoph Hellwig Signed-off-by: Piotr Sawicki [remove scic_sds_request_constructed_state_start_handler] Signed-off-by: Dan Williams commit f00e6ba4996a34f098fe50c78077f0568fd838ec Author: Dan Williams Date: Tue May 10 02:39:11 2011 -0700 isci: unify request abort handlers Unify the implementation in scic_sds_io_request_terminate and kill the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 5dec6f4e41340196d223caf922578c44dfe2295a Author: Dan Williams Date: Tue May 10 02:28:49 2011 -0700 isci: merge stp request substates into primary state machine Remove usage of the request substate machine for stp requests, and kill the request substate infrastructure. Similar to the previous conversions this adds the substates to the primary state machine and arranges for the 'started' state to transition to the proper stp substate. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit c72086e3c2897eaca5b99c005dd9844fdc784981 Author: Dan Williams Date: Tue May 10 02:28:48 2011 -0700 isci: merge smp request substates into primary state machine Remove usage of the request substate machine for smp requests identified by: task->task_proto == SAS_PROTOCOL_SMP While merging over the smp_request infrastructure noticed that all the assign buffer implementations are now equal, so moved it to scic_sds_general_request_construct. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f139303d17c47eff4c5b5407dee0a6d43e8fd146 Author: Dan Williams Date: Tue May 10 02:28:47 2011 -0700 isci: merge ssp task management substates into primary state machine Remove usage of the request substate machine for ssp task management requests identified by: ireq->ttype == tmf_task && dev->dev_type == SAS_END_DEV; The only routine that checks the base 'started' state is scic_sds_io_request_tc_completion which calls the substate machine handler if we are not in the 'started' state or we are 'started' and no substate machine is defined. This routine requires no conversion because we have transitioned out of 'started' and the substate routine will be called naturally as a result. There are also no side effects of this conversion on exiting the 'started', state because it only stops the substate machine, which is no longer relevant for this transaction type. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit e2f8db509fdd354bb7a68c86515e9d2d8909ccc9 Author: Dan Williams Date: Tue May 10 02:28:46 2011 -0700 isci: uplevel port infrastructure * Move port configuration agent implementation * Merge core/scic_sds_port.[ch] into port.[ch] Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit d35bc1bd18ab9e986cfb67c5a281a70cfd717f05 Author: Dan Williams Date: Tue May 10 02:28:45 2011 -0700 isci: uplevel phy infrastructure Merge core/scic_sds_phy.[ch] into phy.[ch] Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f1f52e75939b56c40b3d153ae99faf2720250242 Author: Dan Williams Date: Tue May 10 02:28:45 2011 -0700 isci: uplevel request infrastructure * Consolidate tiny header files * Move files out of core/ (drop core/scic_sds_ prefix) * Merge core/scic_sds_request.[ch] into request.[ch] * Cleanup request.c namespace (clean forward declarations and global namespace pollution) Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 3bff9d54ecba84e538da822349a9a6fd6e534539 Author: Dan Williams Date: Sun May 8 22:15:10 2011 -0700 isci: uplevel state machine unify core/sci_base_state.h and core/sci_base_state_machine.[ch] into state_machine.[ch] Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 63a3a15fb00ef49e50e98ff675094afcd92f113a Author: Dan Williams Date: Sun May 8 21:36:46 2011 -0700 isci: uplevel register hardware data structures and unsolicited frame handling Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit cc9203bf381a465cd115762b9cf7c9a313c874bc Author: Dan Williams Date: Sun May 8 17:34:44 2011 -0700 isci: move core/controller to host Now that the data structures are unified unify the implementation in host.[ch] and cleanup namespace pollution. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit ce2b3261b6765c3b80fda95426c73e8d3bb1b035 Author: Dan Williams Date: Sun May 8 15:49:15 2011 -0700 isci: unify constants cross driver constants are spread out over multiple header files, consolidate them into isci.h, and push some includes out to the source files that need them. TODO: remove SCI_MODE_SIZE infrastructure. TODO: task.h is full of inlines that are too large Signed-off-by: Dan Williams commit 67ea838d17acdad3331aeae848683c768df96aaa Author: Dan Williams Date: Sun May 8 11:47:15 2011 -0700 isci: unify request data structures Make scic_sds_request a proper member of isci_request. Also let's us get rid of the dma pool object size tracking since we now know that all requests are sizeof(isci_request). While cleaning up the construct routine incidentally replaced SCI_FIELD_OFFSET with offsetof. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit b7645818cff1536038c0b21407eefb6b9d5755e6 Author: Dan Williams Date: Sun May 8 02:35:32 2011 -0700 isci: make command/response iu explicit request object members Final elimination of the anonymous data at the end of the request structure. Signed-off-by: Dan Williams commit 26298264a5de6d46d6e872dfd4c5d14c3011666f Author: Dan Williams Date: Sat May 7 19:07:14 2011 -0700 isci: move task context alignment from run-time to compile time Remove usage of PTR_ALIGN by arranging for the task context to be aligned by the compiler. Another step towards unifying isci_request and scic_sds_request. Once this is complete the task context in the request can likely be removed in favor of building the task directly to tc memory (see: scic_sds_controller_copy_task_context). It's not clear why this needs to be cacheline aligned if we just end up copying before submission... Signed-off-by: Dan Williams commit 0d84366fbef557f92ef82ac9a224c57ffb3318bc Author: Dan Williams Date: Sun May 8 01:56:57 2011 -0700 isci: make sgl explicit/aligned request object member Towards unifying request objects we need all members to be defined in the object and not carved out of anonymous buffer space. Signed-off-by: Dan Williams commit 827a84d4e036b342b31abc2bcc3893505c2c7daa Author: Dan Williams Date: Sat May 7 15:59:09 2011 -0700 isci: move stp request info to scic_sds_request In preparation for unifying allocation of all request information make stp data available in all requests. Incidentally collapse indentation. Signed-off-by: Dan Williams commit e531381e2f8a68b8737c63c7bb890ad80b2470bd Author: Dan Williams Date: Sat May 7 10:11:43 2011 -0700 isci: unify port data structures Make scic_sds_port a member of isci_port and merge their lifetimes which means removing the port table from scic_sds_controller in favor of the one at the isci_host level. Merge ihost->sas_ports into ihost->ports. _ Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 4b33981ade7cf723f3f32809e34192376c9a10f8 Author: Dan Williams Date: Fri May 6 17:36:38 2011 -0700 isci: unify phy data structures Make scic_sds_phy a member of isci_phy and merge their lifetimes which means removing the phy table from scic_sds_controller in favor of the one at that isci_host level. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit a98a7426bc91700ac8613701daf8470efe2ad2d2 Author: Jacek Danecki Date: Tue May 3 04:21:07 2011 +0000 isci: rnc state machine table c99 conversion This makes the subsequent patches to delete rnc->state_handler more clear. Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit b9988b8e7fcd80404c60462dc223df8c1f31550d Author: Edmund Nadolski Date: Thu May 5 01:11:49 2011 +0000 isci: remove scic_sds_port_increment_request_count Removes excessive encapsulation function. Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit ed30c275dd9fc5c603081144db5df3110f258534 Author: Edmund Nadolski Date: Thu May 5 01:11:43 2011 +0000 isci: kill scic_controller_get_port_handle function This function is just overkill and its usage is inconsistent. Replace with inlined code. Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 9286a1959ce7f3df3c1a8e33eb9b210078318dc8 Author: Dave Jiang Date: Fri May 6 02:17:37 2011 +0000 isci: Removing unnecessary functions in request.c No need for wrappers, just access sas_task directly. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit cc3dbd0a9178865d4444f8e28b51715808e9ac85 Author: Artur Wojcik Date: Wed May 4 07:58:16 2011 +0000 isci: unify isci_host data structures Make it explicit that isci_host and scic_sds_controller are one in the same object. Signed-off-by: Artur Wojcik [removed ->ihost back pointer] Signed-off-by: Dan Williams commit d06b487b78f28a02efdcdcc9ec295bf230b9d0e8 Author: Dan Williams Date: Mon May 2 13:59:25 2011 -0700 isci: implement I_T_nexus_reset This is a requirement for 2.6.39's new libata eh. Still some questions about lldd_dev_gone racing against dev->lldd_dev lookups, but we are at least no more broken than mvsas in this regard. We also short-circuit I_T_nexus_reset invocations from the device discovery path (IDEV_EH similar to MVS_DEV_EH) to filter out the resulting domain rediscoveries triggered by the reset. Signed-off-by: Dan Williams commit 5b3f2bd877382eaf4b5a7d90fdec72ef14b9ec97 Author: Dan Williams Date: Thu May 5 17:47:44 2011 -0700 isci: fix ata locking Upstream commit a29b5dad "libata: fix locking for sas paths" switched libsas ata locking to the ata_host lock. We need to do the same when returning ata tasks from the execute path. Signed-off-by: Dan Williams commit 8694e79287ad92e351feceededeb6804babb6d9a Author: Dave Jiang Date: Wed May 4 19:01:01 2011 -0700 isci: removing intel_*.h headers Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 2d9c2240e0bad47e8d08091016b537287a263976 Author: Dave Jiang Date: Wed May 4 18:45:05 2011 -0700 isci: Using Linux SSP frame header Removing of struct sci_ssp_frame_header and migrate to struct ssp_frame_hdr. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 51a57cff7ca0549bcf87cbb36086269978f42568 Author: Dave Jiang Date: Wed May 4 18:28:32 2011 -0700 isci: Remove SCIC_SWAP_DWORD() Use Linux native swab32() call instead of SCIC_SWAP_DWORD(). We need to swab() because the hardware munges the data into a "big-endian dword" stream which is byte-swapped from the sas definition regardless of host endian. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit d7b90fc3436fa6d5b5251eec3128386af1a4d7b8 Author: Dave Jiang Date: Wed May 4 18:22:33 2011 -0700 isci: fixup SAS iaf protocols data structure Moved the actual data structure that's read from the phy register to phy header. Removed the parsing of identify address frame protocol bits as that seemed not necessary and we can use existing information. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit f700ad4331d55df729a36b2602c4abe2d855036f Author: Dave Jiang Date: Wed May 4 18:08:35 2011 -0700 isci: remove redundant copies of IAF We need to remove the extra copies of identify address frame that's being kept around. We only need the one copy that libsas is using. Signed-off-by: Dave Jiang [further cleanups] Signed-off-by: Dan Williams commit d20930a2b3271b233f4bef3c59ce602dfc9e5d83 Author: Dave Jiang Date: Wed May 4 18:07:09 2011 -0700 isci: Converting smp_response to Linux native smp_resp Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 2ec53eb4d5b301e5c9c386da5685894d572772a5 Author: Dave Jiang Date: Wed May 4 18:01:22 2011 -0700 isci: Fixup of smp request The struct smp_request data structure has be fixed up for Linux consumption. This probably should go to scsi/sas.h eventually. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit af5ae89350840b9d724fc4fb81d928673bffdd4d Author: Dave Jiang Date: Wed May 4 17:53:24 2011 -0700 isci: Convert of sci_ssp_response_iu to ssp_response_iu Converting to Linux native format. However the isci driver does a lot of the calculation based on the max size of this data structure and the Linux data structure only has a pointer to the response data. Thus the sizeof(struct ssp_response_iu) will be incorrect and we need to define the max size. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 0cfa890e5a8a9e3b01b75c17a7856cf96e026e27 Author: Dave Jiang Date: Wed May 4 17:44:54 2011 -0700 isci: Fixup SSP command IU and task IU Fixup of SSP command IU and SSP task IU to something that looks like Linux Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit ed0e24830e7b744d0d0ae5936740f1cdbd0ec5ba Author: Dave Jiang Date: Wed May 4 16:16:44 2011 -0700 isci: renaming sas_capabilities to scic_phy_cap This seems to be a data structure that represents the phy capabilities register from the hardware and has nothing to do with SAS data structs. Moving and fixup Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 1dea554fce698b7e8ad03cab1525f41cd6c28092 Author: Dave Jiang Date: Wed May 4 16:13:17 2011 -0700 isci: Collapsing of phy_type data structure Collapsing of struct scic_sds_phy phy_type data structure Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 4b7ebd05fc074ac2ffdc803232d83f3593d4f548 Author: Dave Jiang Date: Wed May 4 15:37:52 2011 -0700 isci: Convert SAS identify address frame to Linux Native format Convert struct sci_sas_identify_address_frame to struct sas_identify_frame Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit e76d6180da436edf2cc3538cbed1f5b02b614613 Author: Dave Jiang Date: Wed May 4 15:02:03 2011 -0700 isci: Convert ATA defines to Linux native defines * Removing all intel_sata and intel_ata defines * Removing the usage of SAT_PROTOCOL_*. We can get everything from sas_task * Moved SATA FIS types to local sas.h. These defines will have to go into include/scsi/sas.h eventually. * Added offsets for SATA FIS header in order to grab the values Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit f2f300806fe186a6c45020a444667755edcce672 Author: Dave Jiang Date: Wed May 4 15:02:02 2011 -0700 isci: Convert SATA fis data structures to Linux native Converting of sata_fis_reg_d2h to dev_to_host_fis Converting of sata_fis_reg_h2d to host_to_dev_fis Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit c6d42257899505ea1982eba4c5e8bc7981e63e07 Author: Dan Williams Date: Wed May 4 13:49:32 2011 -0700 isci: remove compile-time (Kconfig) silicon configuration Pre-production silicon support is deprecated, and will be removed completely in the future. Signed-off-by: Dan Williams commit d6f6404c038b004fdb93f0676db934d69c524f7e Author: Dave Jiang Date: Fri Apr 22 06:39:48 2011 +0000 isci: Removing unused define SCIC_SDS_4_ENABLED Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 971cc2ff90875a4ca28b7da5b91a408cc8151fdc Author: Dan Williams Date: Sun May 1 16:58:46 2011 -0700 isci: kill scic_sds_remote_device.state_handlers Remove the now unused state_handler infrastructure for remote_devices. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 01bec7788db9d1bb2c594d1f1916096ce6299f38 Author: Dan Williams Date: Sun May 1 16:51:11 2011 -0700 isci: unify remote_device frame_handlers Implement all states in scic_sds_remote_device_frame() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit e622571f0f05986b23eba566b73b3abeb5d847d3 Author: Dan Williams Date: Sun May 1 16:26:09 2011 -0700 isci: unify remote_device event_handlers Implement all states in scic_sds_remote_device_event() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 978edfef46415badd28974a3e85119e2b764d236 Author: Dan Williams Date: Sun May 1 16:20:54 2011 -0700 isci: kill remote_device resume_handler This is unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 323f0ec0fc72670f71210ba89611f6a1ec234394 Author: Dan Williams Date: Sun May 1 16:15:47 2011 -0700 isci: unify remote_device suspend_handlers Implement all states in scic_sds_remote_device_suspend() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit e4a867bb4a7617dc1067e1c41627782f3c6c284c Author: Dan Williams Date: Sun May 1 16:01:05 2011 -0700 isci: kill remote_device complete_task_handler This is unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 84b9b029bc4121c43294e27aeaa0350a6d07450c Author: Dan Williams Date: Sun May 1 15:53:25 2011 -0700 isci: unify remote_device start_task_handlers Implement all states in scic_sds_remote_device_start_task() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit c027a20bf3fa831fed70b1662e526be04447ab07 Author: Dan Williams Date: Sun May 1 15:46:18 2011 -0700 isci: kill remote_device continue_io_handler This is unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 10a09e64be2580ceef8539629fb953b7d94fa35f Author: Dan Williams Date: Sun May 1 15:33:43 2011 -0700 isci: unify remote_device complete_io_handlers Implement all states in scic_sds_remote_device_complete_io() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 1860655706ee5a7e3f3adeebd4927fed98860462 Author: Dan Williams Date: Sun May 1 14:57:11 2011 -0700 isci: unify remote_device start_io_handlers Implement all states in scic_sds_remote_device_start_io() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 815151826553f875846ebba9696777a424ee62e5 Author: Dan Williams Date: Sun May 1 14:53:00 2011 -0700 isci: unify remote_device reset_complete_handlers Implement all states in scic_remote_device_reset_complete() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 4fd0d2e9bf5152456952ad7c5b6f3d8565de7737 Author: Dan Williams Date: Sun May 1 14:48:54 2011 -0700 isci: unify remote_device reset_handlers Implement all states in scic_remote_device_reset() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit b8d82f6cdd0f04ddfa877d8d886e56ebd8526d25 Author: Dan Williams Date: Sun May 1 14:38:26 2011 -0700 isci: unify remote_device destruct_handlers Implement all states in scic_remote_device_destruct() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 1a6de2562b38e1e0e74c468554111ac54c062928 Author: Dan Williams Date: Sun May 1 14:35:43 2011 -0700 isci: kill remote_device fail_handler This is just unused infrastructure. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit ec5756699b705c179a0680985e3d18a093f93fae Author: Dan Williams Date: Sun May 1 14:19:25 2011 -0700 isci: unify remote_device stop_handlers Implement all states in scic_remote_device_stop() and delete the state handlers. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit eb229671b1310c996dba7b78e21a9a9474edccdc Author: Dan Williams Date: Sun May 1 14:05:57 2011 -0700 isci: unify remote_device start_handlers Implement all states in scic_remote_device_start() and delete the state handler. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f619fffb4070a577524fd9eb68cea484d86d2b97 Author: Dan Williams Date: Sun May 1 10:13:04 2011 -0700 isci: fix remote_device start_io regressions While reducing indentation commits 7ab92c9e "isci: make a remote_node_context a proper member of a remote_device", 0879e6a6 "isci: merge remote_device substates into a single state machine" broke handling of situations where i/o's successfully started at the port level need to terminated when the remote_node declines to start the i/o. Signed-off-by: Dan Williams commit 8f304c36ee415600c6bbc5de300e6fa3dbe59d6d Author: Dan Williams Date: Fri Apr 29 13:20:30 2011 -0700 isci: kill scic_remote_device_get_connection_rate A function call to dereference a pointer is a tad much. Signed-off-by: Dan Williams commit ab2e8f7d07f577ee39228fb3454b9f29eab0f312 Author: Dan Williams Date: Wed Apr 27 16:32:45 2011 -0700 isci: merge remote_device substates into a single state machine A substate is just a state, so uplevel the smp and stp device substates. Three tricks at work here: 1/ scic_sds_remote_device_ready_state_enter: needs to know the the device type so it can immediately transition to a stp or smp ready substate. 2/ scic_sds_remote_device_ready_state_exit: needs to know the device type. In the ssp case the device is no longer ready, in the stp, and smp case we have simply exited to a ready "substate". 3/ scic_sds_remote_device_resume_complete_handler: The one location where we directly check the current state against SCI_BASE_REMOTE_DEVICE_STATE_READY needed to comprehend the possible ready substates. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit be2f41c611b65353fa3ae0c155cf906b348dc864 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:36 2011 +0000 isci: Removed sci_object.h from project. The sci_object.h file was removed. No sci_base_object is now in the code. Reported-by: Christoph Hellwig Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 890cae9b8a7defd87feb1ec77a2affd25bd59cce Author: Maciej Patelczyk Date: Thu Apr 28 22:06:31 2011 +0000 isci: Removed sci_base_object from scic_sds_request. The 'struct sci_base_object' was removed from the struct scic_sds_request and was replaced by a pointer to struct isci_request. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit af23e85737253624cde84704008be40355ff6922 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:26 2011 +0000 isci: Removed sci_base_object from scic_sds_remote_node_context. The 'struct sci_base_object' was removed from the struct scic_sds_remote_node_context. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 5d937e966d383c4012c19b0e47dc196ba505eb19 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:21 2011 +0000 isci: Removed sci_base_object from scic_sds_remote_device. The 'struct sci_base_object' was removed from the struct scic_sds_remote_device. Signed-off-by: Maciej Patelczyk [cleaned up sci_dev_to_idev] Signed-off-by: Dan Williams commit 115bd1f9e8ee11744818e6eb5351d05ab6a8402e Author: Maciej Patelczyk Date: Thu Apr 28 22:06:16 2011 +0000 isci: Removed sci_base_object from scic_sds_port. The 'struct sci_base_object' was removed from the struct scic_sds_port and was replaced by a pointer to struct isci_port. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit e1e72a00dd9db0cd2b7d106916645626f53c0382 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:11 2011 +0000 isci: Removed sci_base_object from scic_sds_phy. The 'struct sci_base_object' was removed from the struct scic_sds_phy and was replaced by a pointer to struct isci_phy. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit d3757c3aeb75259e0b86a872e98841a2ea4cb5e8 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:06 2011 +0000 isci: Removed sci_base_object from scic_sds_controller. The 'struct sci_base_object' was removed from the struct scic_sds_controller and was replaced by a pointer to struct isci_host. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 9a0fff7bf0ffd4f57fc71d8075a92008b606eb61 Author: Maciej Patelczyk Date: Thu Apr 28 22:06:01 2011 +0000 isci: Removed struct sci_base_object from state machine. Changed any occurrence of struct sci_base_object into void. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit e76d80579c2b5b4ecac107b83c22ceeb9e23bd1b Author: Maciej Patelczyk Date: Wed Apr 27 17:50:50 2011 +0000 isci: Implement SCU AFE recipe 10. Updated SCU AFE initialization values accordingly to the recipe 10. Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit d2d61433a85f814c7bc0b20993bb39e97f2dde76 Author: Dave Jiang Date: Thu Apr 21 05:36:23 2011 +0000 isci: Remove excessive log noise with expander hot-unplug We are logging excessive output when hot unplug from expander. Moving that to debug. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit d37ee7e89a98a583d45fbc8bdd1943cbaf642fd0 Author: Dan Williams Date: Tue Apr 26 13:19:53 2011 -0700 isci: allow fallback to option-rom if efi variable retrieval fails If the scu efi driver is disabled but the option-rom is enabled (during an efi boot) allow the code to fallback to scanning legacy option-rom space for the parameters. Reported-by: Yinghai Lu Signed-off-by: Dan Williams commit 3d6e428c0cd8d234bab0ac93aff9ccffacc8bc7e Author: Dave Jiang Date: Tue Apr 26 12:31:37 2011 -0700 isci: removing non-working ATAPI code Removing not used / bit-rotten ATAPI code. This needs to go back and debugged at a later date. Signed-off-by: Dave Jiang [reflow against devel, delete dead sati headers] Signed-off-by: Dan Williams commit 1f4fa1f958ca678ea021b95c2799b018b2cebc9c Author: Dan Williams Date: Tue Apr 26 11:44:06 2011 -0700 isci: remove scic_sds_remote_device_get_port_index Longer to type than the open-coded equivalent. Signed-off-by: Dan Williams commit a3d568f0dfbb6bc786df04ad13e0b401f80e614c Author: Dan Williams Date: Tue Apr 26 09:41:52 2011 -0700 isci: remove usage of sci_sas_address in scic_sds_remote_device The sas address can be retrieved from the domain device and then converted to the always little-endian format in the remote node context. Signed-off-by: Dan Williams commit 00d680ef84570bc7aea023772d27e85b0052004c Author: Dan Williams Date: Mon Apr 25 14:29:29 2011 -0700 isci: kill smp_discover_response An lldd need never look at the contents of an smp_discover_response frame. Kill the remaining locations where isci is looking at it: 1/ covering for expanders that do not set the stp_attached bit (already handled by sas_ex_discover_end_dev) 2/ an overkill method to notifiy the rest of the driver about remote_device sas addresses Signed-off-by: Dan Williams commit a1a113b0a1ea437daf099b44f8a39e93a02a3f47 Author: Dan Williams Date: Thu Apr 21 18:44:45 2011 -0700 isci: kill smp_discover_response_protocols in favor of domain_device.dev_type This is step 1 of removing the contortions to: 1/ unparse expander phy data into a smp discover frame 2/ open-code-parse the smp discover fram into a domain_device.dev_type equivalent libsas has already spent cycles determining the dev_type, so now that scic_sds_remote_device is unified with isci_remote_device we can directly reference dev_type. This might also change multi-level expander detection as we previously only looked at dev_type == EDGE_DEV and we did not consider the FANOUT_DEV case. Signed-off-by: Dan Williams commit b87ee3075b090e1dd0bdf40b295142b606d55e64 Author: Dan Williams Date: Mon Apr 25 11:48:29 2011 -0700 isci: cleanup remote device construction and comments The construction routines scic_remote_device_[de]a_construct both reference the need to call scic_remote_device_construct first. Delete that comment and just have them call it explicitly, also: * move the comments from header to source * delete dead references to scic_[de]a_remote_device_add_phy Signed-off-by: Dan Williams commit 88f3b62ac131e2549b6c262cacbd47e8cca42d6e Author: Dan Williams Date: Fri Apr 22 19:18:03 2011 -0700 isci: move remote_device handling out of the core Now that the core/lldd remote_device data structures are nominally unified merge the corresponding sources into the top-level directory. Also move the remote_node_context infrastructure which has no analog at the lldd level. Signed-off-by: Dan Williams commit 57f20f4ed6fb702339be2ef4dea9d15e6a7d0d07 Author: Dan Williams Date: Thu Apr 21 18:14:45 2011 -0700 isci: unify remote_device data structures Make it explicit that isci_remote_device and scic_sds_remote_device are one in the same object. Signed-off-by: Dan Williams commit 9614395ea2eed076fa8341df422582b0017d330c Author: Dan Williams Date: Tue Apr 19 18:35:58 2011 -0700 isci: remove rnc->device back pointer Now that they are one in the same object remove the back pointer reference in favor of container_of. Signed-off-by: Dan Williams commit 7ab92c9ed22b49a50d9a10bbfdf4ee8ffe62c324 Author: Dan Williams Date: Tue Apr 19 13:48:49 2011 -0700 isci: make a remote_node_context a proper member of a remote_device A rnc object has the same lifetime as its associated remote_device. It might get re-initialized, but a remote device always has an rnc member. Preparation for unifying scic_sds_remote_device and isci_remote_device Signed-off-by: Dan Williams commit 31e824ed0d8c84c5232405167b2338ffc071ae8a Author: Dan Williams Date: Tue Apr 19 12:32:51 2011 -0700 isci: rely on irq core for intx multiplexing, and silence screaming intx Remove the extra logic to poll each controller for interrupts, that's the core's job for shared interrupts. While testing noticed that a number of interrupts fire while waiting for the completion tasklet to run, so added an irq-ack. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit e2023b8735956bb78f167d0fdc575364e69b02c4 Author: Dave Jiang Date: Thu Apr 21 05:34:49 2011 +0000 isci: replace this_* and the_* variables with more meaningful names Removed any instances of the_* and this_* to variable names that are more meaningful and tell us what they actually are. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 2d70de5a0f03072289015917b059c155936c894d Author: Dan Williams Date: Wed Apr 20 12:57:08 2011 -0700 isci: validate oem parameters early, and fallback If the platform specifies invalid parameters warn the user and fallback to internal defaults rather than fail the driver load altogether. Reported-by: Yinghai Lu Signed-off-by: Dan Williams commit f22be5d8386d9da67bfe02693806fbaff7b078da Author: Dan Williams Date: Tue Apr 19 15:29:25 2011 -0700 isci: fix oem parameter header definition The element_length is 2 bytes. Reported-by: Yinghai Lu Acked-by: Dave Jiang Signed-off-by: Dan Williams commit 6cb4d6b382be6345c2d0c4b1b90dfdf9af32da7e Author: Bartosz Barcinski Date: Tue Apr 12 17:28:43 2011 -0700 isci: audit usage of BUG_ON macro in isci driver Removes unnecessary usage of BUG_ON macro, excluding core directory. In some cases macro is unnecesary, check is done in caller function. In other cases macro is replaced by if construction with appropriate warning. Signed-off-by: Maciej Patelczyk [changed some survivable bug conditions to WARN_ONCE] Signed-off-by: Dan Williams commit 467e855a0331f619f41fbf7391bc29ec0ca923a0 Author: Bartosz Barcinski Date: Tue Apr 12 17:28:41 2011 -0700 isci: sparse warnings cleanup Clean warnings and errors reported by sparse tool. request.c:430:50: warning: mixing different enum types remote_device.c:534:39: warning: symbol 'flags' shadows an earlier one task.c:495:44: warning: mixing different enum types scic_sds_controller.c:2155:24: warning: mixing different enum types scic_sds_controller.c:2272:36: warning: mixing different enum types scic_sds_controller.c:2911:38: warning: incorrect type in initializer (different address spaces) scic_sds_controller.c:2913:25: warning: incorrect type in argument 2 (different address spaces) scic_sds_request.c:875:34: warning: cast removes address space of expression scic_sds_request.c:876:123: warning: incorrect type in argument 2 (different address spaces) scic_sds_port.c:585:51: warning: incorrect type in assignment (different address spaces) scic_sds_port.c:712:9: warning: incorrect type in argument 2 (different address spaces) scic_sds_port.c:1770:25: warning: incorrect type in argument 2 (different address spaces) Signed-off-by: Bartosz Barcinski Signed-off-by: Maciej Patelczyk [fixed up some false positives and misconversions] Signed-off-by: Dan Williams commit 26bace349ecd08b1d744f7067d24fd1bedb91020 Author: Dan Williams Date: Thu Apr 14 18:27:49 2011 -0700 isci: replace sci_sas_link_rate with sas_linkrate Drop duplicated enum definition. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit d857d9a0adf49e332413d918322405192aafc766 Author: Maciej Trela Date: Tue Apr 12 17:28:39 2011 -0700 isci: remove base_phy abstraction Merge struct sci_base_phy into scic_sds_phy. Until now sci_base_phy was referenced using scic_sds_phy->parent field. 'sci_base_phy' state machine handlers were also merged into scic_sds_phy state handlers. Reported-by: Christoph Hellwig Signed-off-by: Maciej Trela Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 41e2b90584695cf5ae3a29eaa115e31913fbefe0 Author: Maciej Trela Date: Tue Apr 12 17:28:37 2011 -0700 isci: remove base_port abstraction Merge struct sci_base_port into scic_sds_port. Until now sci_base_port was referenced indirectly with scic_sds_port->parent field. 'sci_base_port' state machine handlers were also incorporated into scic_sds_port handlers. Reported-by: Christoph Hellwig Signed-off-by: Maciej Trela Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit 0ea99d52cbcdb4bf5f5dd3097088a2919a115981 Author: Maciej Trela Date: Tue Apr 12 17:28:35 2011 -0700 isci: remove base_remote_device abstraction Merge struct sci_base_remote_device into scic_sds_remote_device. As for now sci_base_remote_device was accessed indirectly using scic_sds_remote_device->parent field. Both machine state handlers are also merged together. Reported-by: Christoph Hellwig Signed-off-by: Maciej Trela Signed-off-by: Maciej Patelczyk Signed-off-by: Dan Williams commit c629582d0dea42d8b3617f8c46ea2770b95e23aa Author: Christoph Hellwig Date: Sat Apr 2 08:15:20 2011 -0400 isci: remove scic_controller state handlers Remove the state handler indirections for the scic_controller, and replace them with procedural calls that check for the correct state first. Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit bc5c96748a5f2067193faa8131b2aa5f9775d309 Author: Christoph Hellwig Date: Sat Apr 2 08:15:04 2011 -0400 isci: simplify dma coherent allocation Remove the insane infrastructure for preallocating coheren DMA regions, and just allocate the memory where needed. This also gets rid of the aligment adjustments given that Documentation/DMA-API-HOWTO.txt sais: "The cpu return address and the DMA bus master address are both guaranteed to be aligned to the smallest PAGE_SIZE order which is greater than or equal to the requested size. This invariant exists (for example) to guarantee that if you allocate a chunk which is smaller than or equal to 64 kilobytes, the extent of the buffer you receive will not cross a 64K boundary." Signed-off-by: Christoph Hellwig [djbw: moved allocation from start to init, re-add memset] Signed-off-by: Dan Williams commit 524b5f723be8a1d966c1285d69810bc461f181c2 Author: Christoph Hellwig Date: Thu Mar 31 11:06:16 2011 -0400 isci: simplify request state handlers Instead of filling up tables with default handlers call the default handler in the only caller. IMHO the whole state handlers concept is not very suitable for the isci request. For example there is a single real instance of the start handler, and we'd be much better off just having a check for the right state in the only caller, than all this mess. It's quite similar for the abort handler as well. Even the actual state machine has a lot of states that are rather pointless. The initial and constructed states are not needed at all as the request is not reachable for calls before it's fully set up and started. And the abort state should be replaced with an abort actions and a state transition to the completed state. Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit 78141676784ed190ce2546f97a7d6368f21e450b Author: Christoph Hellwig Date: Thu Mar 31 11:01:39 2011 -0400 isci: kill dead data structurs in scic_io_request.h Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit 38aa74eb704c5886a5ded4085acd5f2895ab3511 Author: Christoph Hellwig Date: Mon Mar 28 09:21:14 2011 -0400 isci: remove base_request abstraction Merge struct sci_base_request into scic_sds_request, and also factor the two types of state machine handlers into one function. While we're at it also remove lots of duplicate incorrect kerneldoc comments for the state machine handlers. Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit ca841f0e862bccd61f537b76c94579c1bd391448 Author: Christoph Hellwig Date: Mon Mar 28 09:21:04 2011 -0400 isci: remove base_controller abstraction Merge struct sci_base_controller into scic_sds_controller, and also factor the two types of state machine handlers into one function. While we're at it also remove lots of duplicate incorrect kerneldoc comments for the state machine handlers. Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit bc99aa47108e9fd759071d4741c7abdf7b903579 Author: Christoph Hellwig Date: Sun Mar 27 20:07:54 2011 -0400 isci: remove mmio wrappers Remove a couple of layers around read/writel to make the driver readable. Signed-off-by: Christoph Hellwig Signed-off-by: Dan Williams commit 4393aa4e6b9517a666f0ef6b774fd421a9dc4c68 Author: Dan Williams Date: Thu Mar 31 13:10:44 2011 -0700 isci: fix fragile/conditional isci_host lookups A domain_device can always reference back to ->lldd_ha unlike local lldd structures. Fix up cases where the driver uses local objects to look up the isci_host. This also changes the calling conventions of some routines to expect a valid isci_host parameter rather than re-lookup the pointer on entry. Incidentally cleans up some macros that are longer to type than the open-coded equivalent: isci_host_from_sas_ha isci_dev_from_domain_dev Signed-off-by: Dan Williams commit 037afc7812e2b202fbc18218e6c0eff34dad36ed Author: Dan Williams Date: Thu Mar 31 13:10:42 2011 -0700 isci: cleanup isci_remote_device[_not]_ready interface Require a valid isci_host in support of the general cleanup to not re-lookup the host via potentially fragile methods when more robust methods are available. Also cleans up some more casting that should be using container_of() to up-cast a base structure in a more type-safe manner. Signed-off-by: Dan Williams commit ed8a72d108bd951909b28fa4a89aad6489f414e1 Author: Jeff Skirvin Date: Thu Mar 31 13:10:40 2011 -0700 isci: Qualify when the host lock is managed for STP/SATA callbacks. In the case of internal discovery related STP/SATA I/O started through sas_execute_task the host lock is not taken by libsas before calling lldd_execute_task, so the lock should not be managed before calling back to libsas through task->task_done or sas_task_abort. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 26e953bc6ec11c9e81ad8e9a59b14cf260776007 Author: Jeff Skirvin Date: Thu Mar 31 13:10:38 2011 -0700 isci: Fix use of SATA soft reset state machine. The driver SATA LUN reset function incorrectly sent an SRST deassert FIS, which is unnecessary because the core initiates the entire SATA soft reset state machine from the assert request. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit ce4f75def3999fbe454da9aa733ed322bc671b06 Author: Jeff Skirvin Date: Thu Mar 31 13:10:36 2011 -0700 isci: Free host lock for SATA/STP abort escalation at submission time. In the case of I/O requests that fail at submit time because of a pending reset condition, the host lock for SATA/STP devices must be managed for any SCSI-initiated I/O before sas_task_abort is called. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit f219f010a355487638bf2fff4724a420e7158fd2 Author: Jeff Skirvin Date: Thu Mar 31 13:10:34 2011 -0700 isci: Properly handle requests in the "aborting" state. When a TMF times-out, the request is set back to "aborting". Requests in the "aborting" state must be terminated when LUN and device resets occur. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit de728b7d72089330603819a74255a0469780fd0e Author: Dave Jiang Date: Sat Mar 26 17:14:07 2011 -0700 isci: Remove "screaming" data types Converting the all CAPS data types to lower case. Reported-by: Christoph Hellwig Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 2828dc0b55da8937439121eaa82e9ee80c520f53 Author: Dan Williams Date: Sat Mar 26 16:56:55 2011 -0700 isci: remove unused "remote_device_started" These routines are just stubs, re-add them when / if they are needed. Also cleanup remote_device_stopped. Signed-off-by: Dan Williams commit 35173d579a08c0d145b3020039d3ba33fbf2c184 Author: Dan Williams Date: Sat Mar 26 16:43:01 2011 -0700 isci: namespacecheck cleanups * mark needlessly global routines static * delete unused functions * move kernel-doc blocks from header files to source * reorder some functions to delete declarations * more default handler cleanups phy Signed-off-by: Dan Williams commit 068b2c03635bf50c9b408b21435e23e7a0b89b0f Author: Dan Williams Date: Sat Mar 26 16:30:35 2011 -0700 isci: kill some long macros Delete some macros that are longer to type than the open coded operation that they perform. scic_sds_phy_get_base_state_machine scic_sds_phy_get_starting_substate_machine scic_sds_port_get_base_state_machine scic_sds_port_get_ready_substate_machine scic_sds_remote_device_get_base_state_machine scic_sds_remote_device_get_ready_substate_machine scic_sds_remote_node_context_set_remote_node_index scic_sds_controller_get_base_state_machine Also performs some collateral cleanups like killing casts that assume structure member ordering, and consolidating a lot of duplicated default handler code (the primary callers of the *_get_base_state_machine macros) via a helper. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit f942f32ea05eff727c41e1a1112cab305b836377 Author: Dan Williams Date: Sat Mar 26 16:30:06 2011 -0700 isci: reorder init to cleanup unneeded declarations Just move isci_pci_driver below the function definitions and delete the declarations. A couple other whitespace fixups, and unused symbol deletions. Reported-by: Christoph Hellwig Signed-off-by: Dan Williams commit 09d7da135b34bc74a7996b5db373521557ddf3d4 Author: Dave Jiang Date: Sat Mar 26 16:11:51 2011 -0700 isci: Remove event_* calls as they are just wrappers Removed isci_event_* calls and call those functions directly. Reported-by: Christoph Hellwig Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 52ae18ac80fbdd268720b0daa27ac797a801500c Author: Dan Williams Date: Fri Mar 25 10:05:58 2011 -0700 isci: fix a build warning Use min_t to address: drivers/scsi/isci/probe_roms.c: In function ‘isci_get_efi_var’: drivers/scsi/isci/probe_roms.c:241: warning: comparison of distinct pointer types lacks a cast Reported-by: David Milburn Signed-off-by: Dan Williams commit 4eefd2518aa04e1c69118252dc23e3444e694bc1 Author: Dan Williams Date: Fri Mar 25 09:58:15 2011 -0700 isci: fix apc mode definition The original apc mode definition is the correct one, the fix from commit 4711ba10 "isci: fix oem parameter initialization and mode detection" was based on a typo from a specification update. Signed-off-by: Dan Williams commit b5f18a201ed82ed3776c9950646689b93713ae57 Author: Dave Jiang Date: Wed Mar 16 14:57:23 2011 -0700 isci: exposing user parameters via module params Exposing the user config parameters through the kernel module parameters. The kernel module params will have the default values set and we will no longer pulling the default values for user params from the core. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 4711ba10b13891edf228944a9d0a21dfe7fe90f0 Author: Dan Williams Date: Fri Mar 11 10:43:57 2011 -0800 isci: fix oem parameter initialization and mode detection 1/ Since commit 858d4aa7 "isci: Move firmware loading to per PCI device" we have been silently falling back to built-in defaults for the parameter settings by skipping the call to scic_oem_parameters_set(). 2/ The afe parameters from the firmware were not being honored 3/ The latest oem parameter definition flips the mode_type values which are now 0: for APC 1: for MPC. For APC we need to make sure all the phys default to the same address otherwise strict_wide_ports will cause duplicate domains. 4/ Fix up the driver announcement to indicate the source of the parameters. 5/ Fix up the sas addresses to be unique per controller (in the fallback case) Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 2e8320f751030a12efc3e64ee857bfa4647f81fe Author: Dave Jiang Date: Fri Mar 11 14:04:43 2011 -0800 isci: Fixup for OEM parameter EFI variable retrieval Updating the EFI variable OEM parameter retrieval after examining the EFI variable exported via sysfs. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 3b67c1f376acb24b7c6679f75275ac5a96792986 Author: Dan Williams Date: Tue Mar 8 09:53:51 2011 -0800 isci: fixup with testing from isci OROM in BIOS Added fixups for the OROM parsing code after testing with BIOS OROM Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 02839a8b51002d90e4b7c52bf37531834b063f71 Author: Dave Jiang Date: Thu Feb 24 17:45:57 2011 -0800 isci: copy the oem parameters instead of assign Since the data structure for oem from orom/efi/firmware is the same as what the core uses, we can just do a direct copy instead of assignment. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit ca507b98e65f539e0b3866b6aa8efd76c13be285 Author: Dave Jiang Date: Thu Feb 24 13:09:39 2011 -0700 isci: update efi variable name and guid These are the finalized values that the driver can expect to see in production. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 07373a5caa29e4159ef1ea5e72985ddaf013519a Author: Henryk Dembkowski Date: Wed Feb 23 16:55:11 2011 -0800 isci: add support for 2 more oem parmeters 1/ add OEM paramater support for mode_type (MPC vs APC) 2/ add OEM parameter support for max_number_concurrent_device_spin_up 3/ cleanup scic_sds_controller_start_next_phy todo: hook up the amp control afe parameters into the afe init code Signed-off-by: Henryk Dembkowski Signed-off-by: Jacek Danecki [cleaned up scic_sds_controller_start_next_phy] Signed-off-by: Dan Williams commit 8db37aabaceb3dcd18754c1e782d4474e4052c81 Author: Dave Jiang Date: Wed Feb 23 00:02:24 2011 -0800 isci: Adding EFI variable skeletal support Adding EFI variable retrieving for OEM parameters. Still need GUID and variable name. Also updated the data struct for oem parameters and hex file for firmware Signed-off-by: Dave Jiang [fix CONFIG_EFI=n compile error] Signed-off-by: Dan Williams commit d044af17aacd03a1f4fced1af4b7570d205c8fd9 Author: Dan Williams Date: Tue Mar 8 09:52:49 2011 -0800 isci: Add support for probing OROM for OEM params We need to scan the OROM for signature and grab the OEM parameters. We also need to do the same for EFI. If all fails then we resort to user binary blob, and if that fails then we go to the defaults. Share the format with the create_fw utility so that all possible sources of the parameters are in-sync. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 9affa289e2f9ef4721e85edbde86466524bfe957 Author: Dan Williams Date: Wed Mar 23 17:31:27 2011 -0700 isci: reset hardware at init Don't assume the hardware is in a known state at init. Signed-off-by: Dan Williams commit ce0b89f35636f3a69fbde851aff8a284c4b4c22b Author: Dan Williams Date: Thu Mar 17 08:04:43 2011 -0700 isci: task.h compile and checkpatch fixes A usage of "FALSE" leaked in as well as some checkpatch escapes. Signed-off-by: Dan Williams commit c4b9e24c4be67aeed44cd46ef5ea92948d02a426 Author: Jeff Skirvin Date: Wed Mar 16 09:41:59 2011 -0700 isci: don't hold scic_lock over calls to sas_task_abort() In the case where submitted I/Os fail with the status code SCI_FAILURE_REMOTE_DEVICE_RESET_REQUIRED, the execute function now waits until scic_lock is cleared before calling the helper function "isci_request_signal_device_reset" which sets the flag for the pending reset condition on the I/O. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 1077a574103177bff22b7cdd155d960f46ac1e8f Author: Dan Williams Date: Fri Mar 11 10:13:51 2011 -0800 isci: fix incorrect assumptions about task->dev and task->dev->port being NULL A domain_device has the same lifetime as its related scsi_target. The scsi_target is reference counted based on outstanding commands, therefore it is safe to assume that if we have a valid sas_task that the ->dev pointer is also valid. The asd_sas_port of a domain_device has the same lifetime as the driver so it can also never be NULL as long as the sas_task is valid and the driver is loaded. This also cleans up isci_task_complete_for_upper_layer(), renames it to isci_task_refuse() and notices that the isci_completion_selection parameter was set to isci_perform_normal_io_completion by all callers. Signed-off-by: Dan Williams commit 34cad85d18d6da1cc11e410046d7572e65b19fcf Author: Dan Williams Date: Thu Mar 10 00:01:43 2011 -0800 isci: add "isci_id" attribute Allow each controller to be identified via sysfs. # cat /sys/class/scsi_host/host13/isci_id 1 Signed-off-by: Dan Williams commit 6e2802a7fc246b53f919efbf1c011da2d0a4ff30 Author: Jeff Skirvin Date: Tue Mar 8 20:32:16 2011 -0700 isci: All pending requests are terminated before stopping the device. Make sure all pending I/O including any in the libsas error handler process is cleaned-up. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit aa14510295d3d87431c915c0b2bc5dd3af7f2c35 Author: Jeff Skirvin Date: Mon Mar 7 16:40:47 2011 -0700 isci: Always set response/status for requests going into the error path. In the case of I/O requests being failed because of a required device reset condition, set the response and status to indicate an I/O failure. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 50e7f9b5a9ae4a763b2c27500807cf237faca9b0 Author: Dan Williams Date: Wed Mar 9 21:27:46 2011 -0800 isci: Errors in the submit path for SATA devices manage the ap lock. Since libsas takes the domain device sata_dev.ap->lock before submitting a task, error completions in the submit path for SATA devices must unlock/relock when completing the sas_task back to libsas. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 70957a94d70cb82459bd3aea171c54d0a5cd6dbb Author: Jeff Skirvin Date: Fri Mar 4 14:06:58 2011 -0800 isci: Fixed BUG_ON in isci_abort_task_process_cb callback. The request may be in the "aborted" or the "completed" state when performing a task management operation on it. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit c3f42feb0c3d20dc7007336e7de949408b93afef Author: Jeff Skirvin Date: Fri Mar 4 14:06:56 2011 -0800 isci: Fix TMF build for SAS/SATA LUN reset cases. In the case where a SAS or SATA LUN reset TMF is built a NULL pointer dereference occurred because of the (unused) callback data pointer. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams Signed-off-by: Jacek Danecki commit 4dc043c41037fc6e369270daaa626465a8766565 Author: Jeff Skirvin Date: Fri Mar 4 14:06:52 2011 -0800 isci: Termination handling cleanup, added termination timeouts. Added a request "dead" state for use when a termination wait times-out. isci_terminate_pending_requests now detaches the device's pending list and terminates each entry on the detached list. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit cbb65c665b341e560b7a3b37cc616376031b3ee5 Author: Jeff Skirvin Date: Fri Mar 4 14:06:50 2011 -0800 isci: Code review change for completion pointer cleanup. Since the request structure contains a pointer to the completion to be used if the request is being aborted or terminated, there is no reason to pass the completion as a pointer to isci_terminate_request_core(). Signed-off-by: Jeff Skirvin Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit f0846c68912545d70da16b2fbedded37ea4394d8 Author: Jeff Skirvin Date: Tue Mar 8 19:22:07 2011 -0700 isci: Cleaning up task execute path. Made sure the device ready check accounts for all states. Moved the aborted task check into the loop of pulling task requests off of the submitted list. Signed-off-by: Jeff Skirvin Signed-off-by: Jacek Danecki [remove host and device starting state checks] Signed-off-by: Dan Williams commit 1fad9e934a43407c1ba397b1b6b8882aa8a2cafd Author: Jeff Skirvin Date: Fri Mar 4 14:06:46 2011 -0800 isci: save the i/o tag outside the scic request structure. The pointer to the core representation of a request is marked NULL at completion, but we need to save the i/o tag for task management. Signed-off-by: Jeff Skirvin Signed-off-by: Jacek Danecki [revise changelog] Signed-off-by: Dan Williams commit ec6c9638b0d0537430f78a3e20503b5e68a537b6 Author: Jeff Skirvin Date: Fri Mar 4 14:06:44 2011 -0800 isci: Any reset indicated on an I/O completion escalates it to the error path. If there is a pending device reset, the I/O is used to accomplish the reset by setting the RESET bit in the task status, and then putting the task into the error handler path using sas abort task. Signed-off-by: Jeff Skirvin Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit a5fde225364df30507ba1a5aafeec85e595000d3 Author: Jeff Skirvin Date: Fri Mar 4 14:06:42 2011 -0800 isci: fix completion / abort path. Corrected use of the request state_lock in the completion callback. In the case where an abort (or reset) thread is trying to terminate an I/O request, it sets the request state to "aborting" (or "terminating") if the state is still "starting". One of the bugs was to never set the state to "completed". Another was to not correctly recognize the situation where the I/O had completed but the sas_task was still pending callback to task_done - this was typically a problem in the LUN and device reset cases. It is now possible that we leave isci_task_abort_task() with request->io_request_completion pointing to localy allocated aborted_io_completion struct. It may result in a system crash. Signed-off-by: Jeff Skirvin Signed-off-by: Maciej Trela Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 11b00c194cfbd0eb0d90f32c096508b2bb8be6ec Author: Jeff Skirvin Date: Fri Mar 4 14:06:40 2011 -0800 isci: Changes in isci_host_completion_routine Changes to move management of the reqs_in_process entry for the request here. Made changes to note when the task is already in the abort path and cannot be completed through callbacks. Signed-off-by: Jeff Skirvin Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 18d3d72a42a846d46b71131982c51d63eba2b7b3 Author: Jeff Skirvin Date: Fri Mar 4 14:06:38 2011 -0800 isci: isci_request_cleanup_completed_loiterer checks task before task_done In the condition where outstanding I/Os are being cleaned from the device requests in process list, the cleanup function needs to check that the request is actually a sas-task and not a task management function. Signed-off-by: Jeff Skirvin Signed-off-by: Dan Williams commit 5409bc3a20b239d1b3919db451ee4f6513e64ed1 Author: Dan Williams Date: Tue Mar 8 21:30:28 2011 -0800 isci: cleanup debug leftovers in isci.h Reported-by: James Bottomley Signed-off-by: Dan Williams commit 1a38045ba88ed3bee6c57444670fb639c8b61be7 Author: Dan Williams Date: Thu Mar 3 18:01:43 2011 -0800 isci: replace remote_device_lock with scic_lock The remote_device_lock is currently used to protect a controller global resource (RNCs), but the remote_device_lock is per-port. Signed-off-by: Dan Williams commit d9c37390c4f02153188a64a7a89fa6798dc3ffc2 Author: Dan Williams Date: Thu Mar 3 17:59:32 2011 -0800 isci: preallocate remote devices Until we synchronize against device removal this limits the damage of use after free bugs to the driver's own objects. Unless we implement reference counting we need to ensure at least a subset of a remote device is valid at all times. We follow the lead of other libsas drivers that also preallocate devices. This also enforces maximum remote device accounting at the lldd layer, but the core may still run out of RNC's before we hit this limit. Signed-off-by: Dan Williams commit 6ad31fec306d532031b2f778f8656385df1b9d8f Author: Dan Williams Date: Fri Mar 4 12:10:29 2011 -0800 isci: replace isci_remote_device completion with event queue Replace the device completion infrastructure with the controller wide event queue. There was a potential for the stop and ready notifications to corrupt each other, now that cannot happen. The stop pending flag cannot be used until devices are statically allocated. We temporarily need to maintain a completion to handle waiting for an object that has disappeared, but we can at least stop scribbling on freed memory. A future change will also get rid of the "stopping" state as it should not be exposed to the rest of the driver. Signed-off-by: Dan Williams commit 8acaec1593526f922ff46812d99abf9aab5c8b43 Author: Dan Williams Date: Mon Mar 7 14:47:35 2011 -0800 isci: kill "host quiesce" mechanism The midlayer is already throttling i/o in the places where host_quiesce was trying to prevent further i/o to the device. It's also problematic in that it holds a lock over GFP_KERNEL allocations. Signed-off-by: Dan Williams commit 3a97eec6d7876c541950e23811efd40e0bcd04a0 Author: Dan Williams Date: Fri Mar 4 11:51:43 2011 -0800 isci: remove sci_device_handle It belies the fact that isci_remote_device and scic_sds_remote_device are one in same object with the same lifetime rules. Signed-off-by: Dan Williams commit b329aff107543c3c4db26c1572405034c3baf906 Author: Dan Williams Date: Mon Mar 7 16:02:25 2011 -0800 isci: kill isci_host list in favor of an array isci_host_by_id() should have been a clue that an array would have been a simpler approach. Reported-by: James Bottomley Signed-off-by: Dan Williams commit 52bed8eab5d392183b77426b96551011f3521ef8 Author: Dan Williams Date: Thu Mar 3 17:59:25 2011 -0800 isci: enable isci for dmar builds Now that phys_to_virt() and virt_to_phys() have been removed we are no longer violating the dma mapping (or kmap apis). Signed-off-by: Dan Williams commit fe9a643157747cf85ecc07cd341e448c5849364f Author: Dan Williams Date: Thu Mar 3 14:58:11 2011 -0800 isci: pad stp and smp request sizes Ross says: "The memory allocation for these requests doesn’t take into account the additional memory needed when the code in scic_sds_s[mst]p_request_assign_buffers() shifts the struct scu_task_context so that it is cache line aligned: In an example from my machine, total buffer that I’ve given to SCIC goes from 0x410024566f84 to 0x410024567308. From this same example, this call shifts my task_context_buffer from 0x410024567208 to 0x410024567240. This means that the task_context_buffer that used to range from 0x410024567208 to 0x410024567308 instead now goes from 0x410024567240 to 0x410024567340. When the memset() call at the end of scic_task_request_construct() clears out this task_context_buffer, it does so from 0x410024567240 to 0x410024567340, effectively killing whatever buffer follows this allocation in memory." djbw: Use the kernel's PTR_ALIGN instead of scic_sds_request_align_task_context_buffer() and SMP_CACHE_BYTES instead of the local CACHE_LINE_SIZE definition. TODO: These allocations really want to be better defined in a union rather than opaque buffers carved up by macros. Reported-by: Ross Zwisler Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 27ce51df9a333ca7e05e09f6d25becf26ac1ff45 Author: Dan Williams Date: Wed Mar 2 16:45:18 2011 -0800 isci: fix hang after target reset When aborting a task context we need to be sure that the hardware has acted on this request (retrieved the task context) before invalidating the remote node context. In the case of the "dummy" task context and remote node we do not have the full state machine that goes through the complete tc abort and rnc invalidate states. Instead we ensure the hardware has seen and acted on Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit d7628d052242d634dc1e2584c422e690578918a3 Author: Dave Jiang Date: Wed Mar 2 13:10:45 2011 -0800 isci: Cleanup warning messages for phy resets Moving some of the chattiness of warning messages to debug so only the Linux system messages are shown. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 4d07f7f367f2c2d5547684893e61a7a796c1547f Author: Dave Jiang Date: Wed Mar 2 12:31:24 2011 -0800 isci: Adding support for phy enable and disable Adding support for PHY_FUNC_LINK_RESET and PHY_FUNC_DISABLE. This allow the sysfs knob enable (both 0 and 1) and link_reset to work properly. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit c658b109d3a9444293700471a278a741a1e5033d Author: Pawel Marek Date: Tue Mar 1 12:31:06 2011 -0800 isci: controller stop/start fixes Core reworks to support stopping and re-starting the controller, lays the groundwork for phy disable / re-enable and fixes other bugs around port/phy setup/teardown. Signed-off-by: Pawel Marek Signed-off-by: Dan Williams commit 3ff0121a704172aa4bca9c4026b419ddfe1921c8 Author: Piotr Sawicki Date: Fri Feb 25 13:07:38 2011 -0800 isci: handle cases where a d2h fis is used report an ncq error Observed that some devices return a d2h fis, treat like an sdb error fis. Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit a8d4b9fe911c7d48f7a75c37eb1bfa3273547d97 Author: Tomasz Chudy Date: Fri Feb 25 02:25:09 2011 -0800 isci: workaround port task scheduler starvation issue There is a condition whereby TCs (task contexts) can jump to the head of the round robin queue causing indefinite starvation of pending tasks. Posting a TC to a suspended RNC (remote node context) causes the hardware to select that task first, but since the RNC is suspended the scheduler proceeds to the next task in the expected round robin fashion, restoring TC arbitration fairness. Signed-off-by: Tomasz Chudy Signed-off-by: Dan Williams commit 7c40a8035815479c7c12ab0cdcea71e0f4c3a9c8 Author: Dan Williams Date: Wed Mar 2 11:49:26 2011 -0800 isci: rework timer api Prepare the timer api for the arrival of dynamic creation and destruction events from the core. It pretended to do this previously but the core to date only used it in a static init-time only fashion. This is an interim fix until a cleaner event queue can be developed. 1/ make all locking external to the api (add WARN_ONCE to verify) 2/ add a timer_destroy interface (to be used by the core) 3/ use del_timer_sync() prior to deallocating timer data 4/ delete the "timer_list" indirection, we only have timers allocated for the isci_host 5/ fix detection of timer list allocation errors Signed-off-by: Dan Williams commit 150fc6fc725055b400a8865e6785dc8dd0a2225d Author: Dan Williams Date: Fri Feb 25 10:25:21 2011 -0800 isci: fix sas address reporting Undo the open coded and incorrect translation of the oem parameter sas address to its libsas expected format. Signed-off-by: Dan Williams commit 7392d27580df2d14b5c3b1a1d7989c06457a819d Author: Dave Jiang Date: Wed Feb 23 15:57:33 2011 -0800 isci: Removing deprecated functions Removed all callbacks in the deprecated.c. Core will call the appropriate functions directly. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit a1914059f1434b0cdf113ebf16df627fd85689d0 Author: Dave Jiang Date: Wed Feb 23 15:57:30 2011 -0800 isci: Change event notify calls from scic_cb_* to isci_event_* Renaming the callbacks to apparopriate event notify calls for the LLDD. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 6389a77596f36cf04ad8b1c7d43ec1d6cdfe89cb Author: Dave Jiang Date: Wed Feb 23 15:57:27 2011 -0800 isci: have the driver use native SG calls and DMA-API Remove abstraction for SG building and get rid of callbacks for getting DMA memory mapping. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 103a00c200ab3bb9e598923eb7ba3354fcb3de8d Author: Dave Jiang Date: Wed Feb 23 15:57:24 2011 -0800 isci: Make the driver copy data directly from and to sg for PIO We can copy the data directly to and from sg for SATA PIO read operations. There is no reason to involve the hardware SGL. In the process we also need to kmap the sg because we don't know where that can come from. We also do to not call phys_to_virt(). The driver already has the information. We can just calculcate the appropriate offets. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit f7885c8490717b010115d6413b339702c64d8a3b Author: Dave Jiang Date: Tue Feb 22 16:39:32 2011 -0700 isci: Removed special macros that does 64bit address math These macros are not necessary. We can do 64bit math directly. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit b3824292cb93d4e45b87fe76d8774cbde9e43200 Author: Piotr Sawicki Date: Wed Feb 23 00:09:14 2011 -0800 isci: fix for asserts during aborts/resets to SAS/SATA in APC mode Sending aborts/resets to SAS/SATA targets in APC mode eventually causes an assert in scic_sds_apc_agent_link_up(). We need to handle the hard reset case for apc mode ports. Signed-off-by: Piotr Sawicki Signed-off-by: Dan Williams commit 52b957c80c3be9bab2748b0ac59ed3c3e8ffe196 Author: Tomasz Chudy Date: Wed Feb 23 00:09:04 2011 -0800 isci: Add Support for new TC completion codes Update the SCI Core to comprehend the changes in the TC completion codes from A0 to B0. Specifically, there isnew R_ER code differences for command and data FISes. Changes are as follows: 1) 0x16 now additionally indicates an R_ERR received for a COMMAND FIS being sent to a SATA target. 0x16 for SSP still indicates a NAK received for a COMMAND frame. Fix is to retry TC to be compliant with SATA spec or ensure proper error handling of return value (not spec compliant I don't believe). 2) 0x1B was previously called DONE_BREAK_RCVD for STP and DONE_LL_ABORT_ERR for SSP. Now it is universally called DONE_LL_ABORT_ERR. This is purely a superficial change. 3) 0x32 is no longer a reserved code. Now it indicates DONE_CMD_SDMA_ERR for STP/SSP. There was a fatal error on the SDMA for a command IU (includes Raw frames). Consider retry, but at a minimum gracefully fail the request. 4) 0x33 is no longer a reserved code. Now it indicates DONE_CMD_LL_ABORT_ERR for SSP. There was a break receivd during transmission of a command IU. Consider retry, but at a minimum gracefully fail the request. Signed-off-by: Tomasz Chudy Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 3c06c2839dac6db56a1e6bd11924db38eddfb2ed Author: Dan Williams Date: Wed Feb 23 00:09:01 2011 -0800 isci: clean up remaining silicon revision ifdefs in phy init Use the dynamic revision detection code in scic_sds_phy_link_layer_initialization() and apply some coding style fixups (long deref chains). The compile time max link rate setting is removed in favor of honoring the user-parameter max. Reported-by: Krzysztof Wierzbicki Signed-off-by: Dan Williams commit d9def184b39b966b7496dfbfad126808d3cd701b Author: Jacek Danecki Date: Wed Feb 23 00:08:58 2011 -0800 isci: Add support for user parameters in SCIC layer Add support for the following parameters in SCIC: /** * This field specifies the NOTIFY (ENABLE SPIN UP) primitive * insertion frequency for this phy index. */ u32 notify_enable_spin_up_insertion_frequency; /** * This method specifies the number of transmitted DWORDs within which * to transmit a single ALIGN primitive. This value applies regardless * of what type of device is attached or connection state. A value of * 0 indicates that no ALIGN primitives will be inserted. */ u16 align_insertion_frequency; /** * This method specifies the number of transmitted DWORDs within which * to transmit 2 ALIGN primitives. This applies for SAS connections * only. A minimum value of 3 is required for this field. */ u16 in_connection_align_insertion_frequency; Signed-off-by: Krzysztof Wierzbicki Signed-off-by: Dan Williams commit 246214667f275a952b05a42b3c45a6fcb520bd28 Author: Henryk Dembkowski Date: Wed Feb 23 00:08:52 2011 -0800 isci: Move transport layer registers from port to phy At init and RNC resume we need to touch every phy in a port to be sure we have initialized STP properties in the case where port_index != phy_index. Also add some missing __iomem annotations. Signed-off-by: Henryk Dembkowski Signed-off-by: Dan Williams commit 06fdb3286270a45d05b15db46416b2fe2f52583a Author: Tomasz Chudy Date: Wed Feb 23 00:08:49 2011 -0800 isci: fix "no outbound task timeout" default value The default should be 5us. The hardware encodes it in 256ns increments, so the value should be 20 to approximate a 5us timeout. Signed-off-by: Tomasz Chudy Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 8f31550c77849250ec49d1509b6bb63b4ddc59e4 Author: Dan Williams Date: Wed Feb 23 00:14:06 2011 -0800 isci: phy state machine cleanup step1 c99 the struct initializers: 1/ allows grep to consistently show method name associations. The naming is mostly consistent (except when it isn't) so this guarantees coverage of present and future exception cases. 2/ let's the compiler guarantee that the state table array entry correlates with an actual state name and detect accidental reordering or deletion of states. / allows default handler's to be identified easily Signed-off-by: Jacek Danecki Signed-off-by: Dan Williams commit 858d4aa741c80fb7579cda3517853f0cffc73772 Author: Dave Jiang Date: Tue Feb 22 01:27:03 2011 -0800 isci: Move firmware loading to per PCI device Moved the firmware loading from per adapter to per PCI device. This should prevent firmware from being loaded twice becuase of 2 SCU controller per PCI device. We do have to do it per PCI device because request_firmware() requires a struct device passed in. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit 92cd51153d5c18af027ddf42547d59ba4167873c Author: Havard Skinnemoen Date: Fri Feb 18 18:32:08 2011 -0800 isci: Initialize proc_name field in scsi_host_template The proc_name field in struct scsi_host_template is exported through sysfs and allows userspace tools to identify the driver behind a particular SCSI host controller. Initialize this field so that userspace tools can easily identify isci host controllers through sysfs. Signed-off-by: Havard Skinnemoen Signed-off-by: Dan Williams commit 5d147e73836723b81fd72b078e78887598999d5a Author: Edmund Nadolski Date: Fri Feb 18 09:25:17 2011 -0800 isci: remove scic_controller_get_handler_methods and ilk This removes scic_controller_get_handler_methods and its associated unused code. Signed-off-by: Edmund Nadolski [djbw: kill off the legacy handler, now that we have basic error isr support] Signed-off-by: Dan Williams commit 83f5eeef59581faed6f002432bafe24da8cbf401 Author: Dan Williams Date: Fri Feb 18 09:25:15 2011 -0800 isci: debug fixes Some of the chain walks to get back to our dev are invalid. isci_remote_device_change_state: delete rather than adding conditional deref chain walking isci_request_change_state: fix, it was being called too early isci_request_ssp_io_request_get_lun: fix compile breakage hidden by ifdef DEBUG Signed-off-by: Maciej Trela Signed-off-by: Dan Williams commit 83e514301ec73b16fb258618c9f9b443cca3744a Author: Dan Williams Date: Fri Feb 18 09:25:13 2011 -0800 isci: advertise linkrate Inform libsas of the linkrate of direct attached links. Reported-by: Haavard Skinnemoen Signed-off-by: Dan Williams commit 92f4f0f544a6a75979bace0c43fee9c4fb95830c Author: Dan Williams Date: Fri Feb 18 09:25:11 2011 -0800 isci: implement error isr Add basic support for handling/reporting error interrupts. Signed-off-by: Dan Williams commit 77950f51f5299c1b4f4fa4a19974128da720d199 Author: Edmund Nadolski Date: Fri Feb 18 09:25:09 2011 -0800 isci: enable interrupts during controller start, and flush discovery Polling the event queue during scan is an unneeded holdover from the original driver. Signed-off-by: Edmund Nadolski [djbw: ensure we flush all port events and domain discovery] Signed-off-by: Dan Williams commit 0cf89d1d27c1bdd0abf1714096f98ea44704dcff Author: Dan Williams Date: Fri Feb 18 09:25:07 2011 -0800 isci: cleanup "starting" state handling The lldd actively disallows requests in the "starting" state. Retrying or holding off commands in this state is sub-optimal: 1/ it adds another state check to the fast path 2/ retrying can cause libsas to give up However, isci's ->lldd_dev_found() routine already waits for controller start to complete before allowing further progress. Checking the "starting" state in isci_task_execute_task and the isr is redundant and misleading. Clean this up and introduce a controller-wide event queue to start reeling in "completion" proliferation in the driver. The "stopping" state cleanups are in a similar vein, rely on the the isr and other paths being precluded from occurring rather than implementing state checking logic. Reported-by: Christoph Hellwig Cc: Jeff Garzik Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit c7ef4031f01301298bbaba2666740183cd399f8c Author: Dan Williams Date: Fri Feb 18 09:25:05 2011 -0800 isci: bypass scic_controller_get_handler_methods() The indirection is unecessary and broken in the current case that assigns the handlers based on a not up-to-date pdev->msix_enabled value. Route the handlers directly to the requisite core routines. Todo: hook up error interrupt handling Reported-by: Jeff Garzik Cc: Christoph Hellwig Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 11c88986290712fc3ae6993af85a0f9a15886278 Author: Dan Williams Date: Thu Feb 17 15:01:46 2011 -0800 isci: remove SCIC_DEBUG_ENABLED, and fixup an odd macro This will be replaced by state machine tracepoints and should have been a part of the logger removal. Ran across scic_sds_port_decrement_request_count() which is an ugly macro which silently hides accounting errors. Turn it into a WARN_ONCE to see if it ever triggers. Signed-off-by: Dan Williams commit f7d36e1872c0d79ea9e31445c3b1b70602dbac4b Author: Dan Williams Date: Sat Feb 12 11:50:15 2011 -0800 isci: kill a callback cast Callbacks are already type unsafe, obfuscating things further by casting the callback routine is less safe because now function argument number changes will not be caught by the compiler. Signed-off-by: Dan Williams commit 27d42e3e794523c3cec02a17fb221ade00e98648 Author: Henryk Dembkowski Date: Sat Feb 12 11:50:13 2011 -0800 isci: coding style changes for remote device Change names from upper to low letters Signed-off-by: Henryk Dembkowski Signed-off-by: Dan Williams commit e574a8c18069bcc04537c4a3d7c5dbab2265007c Author: Dan Williams Date: Sat Feb 12 11:50:11 2011 -0800 isci: cleanup core consolidation leftovers Remove duplicated license and header file includes that were leftover from commit 4c1db2d0 "isci: consolidate core" (in the isci.git historical branch). Signed-off-by: Dan Williams commit db48255b32a2664d8b321a51f46084a669e11ac6 Author: Henryk Dembkowski Date: Sat Feb 12 11:50:09 2011 -0800 isci: c99 tables cleanup step1 scic_sds_stp_remote_device_ready_substate_handler_table[] scic_sds_smp_remote_device_ready_substate_handler_table[] c99 the struct initializers: 1/ allows grep to consistently show method name associations. The naming is mostly consistent (except when it isn't) so this guarantees coverage of present and future exception cases. 2/ let's the compiler guarantee that the state table array entry correlates with an actual state name and detect accidental reordering or deletion of states. 3/ allows default handler's to be identified easily Signed-off-by: Henryk Dembkowski Signed-off-by: Dan Williams commit 2f02f556abd4411d4d348b3bd9ce4d21c316f447 Author: Henryk Dembkowski Date: Sat Feb 12 11:50:07 2011 -0800 isci: coding style changes for remote device Change names from upper to low letters Signed-off-by: Henryk Dembkowski Signed-off-by: Dan Williams commit 7fbafaa51960cd2f2a7afa63829b4135c9682a75 Author: Henryk Dembkowski Date: Sat Feb 12 11:50:05 2011 -0800 isci: remote device and node cleanup step1 c99 the struct initializers (scic_sds_remote_device_state_handler_table[]): 1/ allows grep to consistently show method name associations. The naming is mostly consistent (except when it isn't) so this guarantees coverage of present and future exception cases. 2/ let's the compiler guarantee that the state table array entry correlates with an actual state name and detect accidental reordering or deletion of states. 3/ allows default handler's to be identified easily Change names from upper to low letters Cleanup empty lines Signed-off-by: Henryk Dembkowski Signed-off-by: Dan Williams commit 6e473dd112f95806a4bfd12eced5b73632d6c032 Author: Dave Jiang Date: Fri Feb 11 18:04:28 2011 -0800 isci: removing unused loglevel module param We no longer use the loglevel parameter. Remove. Signed-off-by: Dave Jiang Signed-off-by: Dan Williams commit b5739b60507af0607fe99f1582b2dce4aa70e0b8 Author: Edmund Nadolski Date: Tue Feb 8 09:31:55 2011 -0700 isci: kill sci_types.h Signed-off-by: Edmund Nadolski [rebased after killing SCI_IO_REQUEST_DATA_DIRECTION] Signed-off-by: Dan Williams commit 82d29928c1c1c6a6605895f8240a9943394244d7 Author: Dan Williams Date: Tue Feb 8 17:53:10 2011 -0800 isci: kill SCI_IO_REQUEST_DATA_DIRECTION It's an unnecessary typedef that mirrors the kernel's enum dma_data_direction. Also cleanup some long variable names along the way. Signed-off-by: Dan Williams commit a7e536c7d6f1796e8727f5c90d33765ae7cfd8d8 Author: Edmund Nadolski Date: Tue Feb 8 09:28:42 2011 -0700 isci: remove SCI_INVALID_HANDLE Replace SCI_INVALID_HANDLE with NULL Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 74ea9c163a5c09638b453208cd129b686b85e91e Author: Edmund Nadolski Date: Tue Feb 8 08:09:10 2011 -0700 isci: remove unused SC_LIBRARY_HANDLE_T typedef Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 6f231dda68080759f1aed3769896e94c73099f0f Author: Dan Williams Date: Sat Jul 2 22:56:22 2011 -0700 isci: Intel(R) C600 Series Chipset Storage Control Unit Driver Support for the up to 2x4-port 6Gb/s SAS controllers embedded in the chipset. This is a snapshot of the first publicly available version of the driver, commit 4c1db2d0 in the 'historical' branch. git://git.kernel.org/pub/scm/linux/kernel/git/djbw/isci.git historical Signed-off-by: Maciej Trela Signed-off-by: Dave Jiang Signed-off-by: Edmund Nadolski Signed-off-by: Dan Williams commit 9508d80530add1281ac4d5032ab650eaf0b41aa4 Merge: 8aa7ad9 0e502ec Author: Linus Torvalds Date: Sat Jul 2 16:39:50 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (pmbus) Auto-detect temp2 and temp3 registers/attributes hwmon: (pmbus) Improve fan detection hwmon: (adm1275) Free allocated memory if probe function fails hwmon: (pmbus) Drop check for PMBus revision register in probe function commit 8aa7ad9018d7fa1e52d2ee350a2f62c5485d3fec Merge: 6e13904 4f3c7a1 Author: Linus Torvalds Date: Sat Jul 2 09:26:53 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: sb16 - Fix build errors on MIPS and others with 13bit ioctl size ALSA: hdspm - Fix compile warnings with PPC ALSA: cs5535 - Fix invalid big-endian conversions ALSA: HDMI - fix ELD monitor name length ALSA: atmel - update author email for ABDAC, AC97C and AT73C213 ALSA: HDA: Add model=auto quirk for Acer Aspire 3830TG ALSA: HDA: Add a new Conexant codec ID (506c) commit 6e139047e2eecd0ccf8bc2f1564e82747cb6e56c Merge: c66a86d 6002525 Author: Linus Torvalds Date: Sat Jul 2 09:08:56 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: Revert "drm/nvc0: recognise 0xdX chipsets as NV_C0" drm/radeon/kms: fix typo in cayman reg offset drm/radeon/kms: use correct reg on fusion when reading back mem config commit f5da24dbed213d103f00aa9ef26e010b50d2db24 Author: Rafael J. Wysocki Date: Sat Jul 2 14:27:11 2011 +0200 PM / Runtime: Update documentation regarding driver removal Commit e1866b33b1e89f077b7132daae3dfd9a594e9a1a (PM / Runtime: Rework runtime PM handling during driver removal) forgot to update the documentation in Documentation/power/runtime_pm.txt to match the new code in drivers/base/dd.c. Update that documentation to match the code it describes. Signed-off-by: Rafael J. Wysocki Reviewed-by: Kevin Hilman commit 5efb54cc3fc104585cda81c44676f05115bd9ddd Author: Kevin Hilman Date: Thu Jun 30 15:07:31 2011 -0700 PM: Documentation: fix typo: pm_runtime_idle_sync() doesn't exist. Replace reference to pm_runtime_idle_sync() in the driver core with pm_runtime_put_sync() which is used in the code. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 5f77898de17ff983ff0e2988b73a6bdf4b6f9f8b Author: Shyam Iyer Date: Tue Jun 28 08:58:05 2011 +0000 Fix call trace when interrupts are disabled while sleeping function kzalloc is called request_threaded irq will call kzalloc that can sleep. Initializing the flags variable outside of spin_lock_irqsave/restore in bnad_mbox_irq_alloc will avoid call traces like below. Jun 27 08:15:24 home-t710 kernel: [11735.634550] Brocade 10G Ethernet driver Jun 27 08:15:24 home-t710 kernel: [11735.634590] bnad_pci_probe : (0xffff880427f3d000, 0xffffffffa020f3e0) PCI Func : (2) Jun 27 08:15:24 home-t710 kernel: [11735.637677] bna 0000:82:00.2: PCI INT A -> GSI 66 (level, low) -> IRQ 66 Jun 27 08:15:24 home-t710 kernel: [11735.638290] bar0 mapped to ffffc90014980000, len 262144 Jun 27 08:15:24 home-t710 kernel: [11735.638732] BUG: sleeping function called from invalid context at mm/slub.c:847 Jun 27 08:15:24 home-t710 kernel: [11735.638736] in_atomic(): 0, irqs_disabled(): 1, pid: 11243, name: insmod Jun 27 08:15:24 home-t710 kernel: [11735.638740] Pid: 11243, comm: insmod Not tainted 3.0.0-rc4+ #6 Jun 27 08:15:24 home-t710 kernel: [11735.638743] Call Trace: Jun 27 08:15:24 home-t710 kernel: [11735.638755] [] __might_sleep+0xeb/0xf0 Jun 27 08:15:24 home-t710 kernel: [11735.638766] [] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638773] [] kmem_cache_alloc_trace+0x43/0xd8 Jun 27 08:15:24 home-t710 kernel: [11735.638782] [] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638787] [] request_threaded_irq+0xa1/0x113 Jun 27 08:15:24 home-t710 kernel: [11735.638798] [] bnad_pci_probe+0x612/0x8e5 [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638807] [] ? netif_wake_queue+0x3d/0x3d [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638816] [] ? _raw_spin_unlock_irqrestore+0x17/0x19 Jun 27 08:15:24 home-t710 kernel: [11735.638822] [] local_pci_probe+0x44/0x75 Jun 27 08:15:24 home-t710 kernel: [11735.638826] [] pci_device_probe+0xd0/0xff Jun 27 08:15:24 home-t710 kernel: [11735.638832] [] driver_probe_device+0x131/0x213 Jun 27 08:15:24 home-t710 kernel: [11735.638836] [] __driver_attach+0x5a/0x7e Jun 27 08:15:24 home-t710 kernel: [11735.638840] [] ? driver_probe_device+0x213/0x213 Jun 27 08:15:24 home-t710 kernel: [11735.638844] [] bus_for_each_dev+0x53/0x89 Jun 27 08:15:24 home-t710 kernel: [11735.638848] [] driver_attach+0x1e/0x20 Jun 27 08:15:24 home-t710 kernel: [11735.638852] [] bus_add_driver+0xd1/0x224 Jun 27 08:15:24 home-t710 kernel: [11735.638858] [] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638862] [] driver_register+0x98/0x105 Jun 27 08:15:24 home-t710 kernel: [11735.638866] [] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638871] [] __pci_register_driver+0x56/0xc1 Jun 27 08:15:24 home-t710 kernel: [11735.638875] [] ? 0xffffffffa01b7fff Jun 27 08:15:24 home-t710 kernel: [11735.638884] [] bnad_module_init+0x40/0x60 [bna] Jun 27 08:15:24 home-t710 kernel: [11735.638892] [] do_one_initcall+0x7f/0x136 Jun 27 08:15:24 home-t710 kernel: [11735.638899] [] sys_init_module+0x88/0x1d0 Jun 27 08:15:24 home-t710 kernel: [11735.638906] [] system_call_fastpath+0x16/0x1b Jun 27 08:15:24 home-t710 kernel: [11735.639642] bnad_pci_probe : (0xffff880427f3e000, 0xffffffffa020f3e0) PCI Func : (3) Jun 27 08:15:24 home-t710 kernel: [11735.639665] bna 0000:82:00.3: PCI INT A -> GSI 66 (level, low) -> IRQ 66 Jun 27 08:15:24 home-t710 kernel: [11735.639735] bar0 mapped to ffffc90014400000, len 262144 Signed-off-by: Shyam Iyer Acked-by: Rasesh Mody Signed-off-by: David S. Miller commit b4e4fe848c25af645a069bb2f21ba6456246e5de Author: Jitendra Kalsaria Date: Thu Jun 30 10:02:07 2011 +0000 qlge:Version change to v1.00.00.29 Signed-off-by: Jitendra Kalsaria Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 5069ee555eb41192e7a5003ba3b1f91880cfec06 Author: Jitendra Kalsaria Date: Thu Jun 30 10:02:06 2011 +0000 qlge: Fix printk priority so chip fatal errors are always reported. Precedence of the printk should be at higher level so chip fatal errors are always reported. Signed-off-by: Jitendra Kalsaria Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit da92b393e0bfc8e6d056885453201b0e7d8190dd Author: Jitendra Kalsaria Date: Thu Jun 30 10:02:05 2011 +0000 qlge:Fix crash caused by mailbox execution on wedged chip. When we are in a recover process from a chip fatal error, driver should skip over execution of mailbox commands during resetting chip. Signed-off-by: Jitendra Kalsaria Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit b00897b881f775040653955fda99dcf7c167b382 Author: Steffen Klassert Date: Wed Jun 29 23:20:41 2011 +0000 xfrm4: Don't call icmp_send on local error Calling icmp_send() on a local message size error leads to an incorrect update of the path mtu. So use ip_local_error() instead to notify the socket about the error. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit c146066ab80267c3305de5dda6a4083f06df9265 Author: Steffen Klassert Date: Wed Jun 29 23:19:32 2011 +0000 ipv4: Don't use ufo handling on later transformed packets We might call ip_ufo_append_data() for packets that will be IPsec transformed later. This function should be used just for real udp packets. So we check for rt->dst.header_len which is only nonzero on IPsec handling and call ip_ufo_append_data() just if rt->dst.header_len is zero. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit 12fdb4d3babcde43834c54dee22a69bb73adbae7 Author: Steffen Klassert Date: Wed Jun 29 23:18:20 2011 +0000 xfrm: Remove family arg from xfrm_bundle_ok The family arg is not used any more, so remove it. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit 957c665f37007de93ccbe45902a23143724170d0 Author: David S. Miller Date: Fri Jun 24 15:25:00 2011 -0700 ipv6: Don't put artificial limit on routing table size. IPV6, unlike IPV4, doesn't have a routing cache. Routing table entries, as well as clones made in response to route lookup requests, all live in the same table. And all of these things are together collected in the destination cache table for ipv6. This means that routing table entries count against the garbage collection limits, even though such entries cannot ever be reclaimed and are added explicitly by the administrator (rather than being created in response to lookups). Therefore it makes no sense to count ipv6 routing table entries against the GC limits. Add a DST_NOCOUNT destination cache entry flag, and skip the counting if it is set. Use this flag bit in ipv6 when adding routing table entries. Signed-off-by: David S. Miller commit 11d53b4990226247a950e2b1ccfa4cf93bfbc822 Author: David S. Miller Date: Fri Jun 24 15:23:34 2011 -0700 ipv6: Don't change dst->flags using assignments. This blows away any flags already set in the entry. Signed-off-by: David S. Miller commit 6e4e2f811bade330126d4029c88c831784a7efd9 Author: Arnd Bergmann Date: Fri Jul 1 17:30:00 2011 -0700 6pack,mkiss: fix lock inconsistency Lockdep found a locking inconsistency in the mkiss_close function: > kernel: [ INFO: inconsistent lock state ] > kernel: 2.6.39.1 #3 > kernel: --------------------------------- > kernel: inconsistent {IN-SOFTIRQ-R} -> {SOFTIRQ-ON-W} usage. > kernel: ax25ipd/2813 [HC0[0]:SC0[0]:HE1:SE1] takes: > kernel: (disc_data_lock){+++?.-}, at: [] mkiss_close+0x1b/0x90 [mkiss] > kernel: {IN-SOFTIRQ-R} state was registered at: The message hints that disc_data_lock is aquired with softirqs disabled, but does not itself disable softirqs, which can in rare circumstances lead to a deadlock. The same problem is present in the 6pack driver, this patch fixes both by using write_lock_bh instead of write_lock. Reported-by: Bernard F6BVP Tested-by: Bernard F6BVP Signed-off-by: Arnd Bergmann Acked-by: Ralf Baechle Cc: stable@kernel.org Signed-off-by: David S. Miller commit c66a86d0cdce3bad2da794f114cc37377d242c3d Merge: c9e0b84 2b1ecb7 Author: Linus Torvalds Date: Fri Jul 1 16:38:59 2011 -0700 Merge branch 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915: apply HWSTAM writes to Ivy Bridge as well drm/i915: move IRQ function table init to i915_irq.c drm/i915/overlay: Fix unpinning along init error paths drm/i915: Don't call describe_obj on NULL pointers drm/i915: Hold struct_mutex during i915_save_state/i915_restore_state commit 0e502ec889d33bfcb348e420d7e105bc61c45eb4 Author: Guenter Roeck Date: Thu Jun 30 06:57:41 2011 -0700 hwmon: (pmbus) Auto-detect temp2 and temp3 registers/attributes Additional temperature attribute support is easy to detect, so do it. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson Cc: stable.kernel.org # 2.6.39 commit 81ae68142a0483b3791cba99eab268859858f508 Author: Guenter Roeck Date: Thu Jun 30 06:54:05 2011 -0700 hwmon: (pmbus) Improve fan detection Some PMBus devices return no error when reading fan speed registers, but don't really support fans. Strengthen fan detection by also checking if fan configuration registers exist. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson Cc: stable.kernel.org # 2.6.39 commit 3b33ca41227a54a78446fb0d7a6fdb9862f563db Author: Guenter Roeck Date: Thu Jun 30 02:30:03 2011 -0700 hwmon: (adm1275) Free allocated memory if probe function fails Probe function did not free allocated memory if it failed. Fix it. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson commit 7f2c0662e5cfd05f12ca49109e8f787bf2d87b66 Author: Guenter Roeck Date: Sat Jun 25 12:42:14 2011 -0700 hwmon: (pmbus) Drop check for PMBus revision register in probe function Some PMBus devices do not support the PMBus revision register, so don't check if it exists. Signed-off-by: Guenter Roeck Reviewed-by: Robert Coulson Cc: stable.kernel.org # 2.6.39 commit e534c5b831c8b8e9f5edee5c8a37753c808b80dc Author: Alan Stern Date: Fri Jul 1 16:43:02 2011 -0400 USB: fix regression occurring during device removal This patch (as1476) fixes a regression introduced by fccf4e86200b8f5edd9a65da26f150e32ba79808 (USB: Free bandwidth when usb_disable_device is called). usb_disconnect() grabs the bandwidth_mutex before calling usb_disable_device(), which calls down indirectly to usb_set_interface(), which tries to acquire the bandwidth_mutex. The fix causes usb_set_interface() to return early when it is called for an interface that has already been unregistered, which is what happens in usb_disable_device(). Signed-off-by: Alan Stern Tested-by: Sarah Sharp Cc: stable Signed-off-by: Greg Kroah-Hartman commit 3140d5b2664309253ba465a14c89fe4f59c0359b Author: Anatolij Gustschin Date: Sat Jun 25 23:37:29 2011 +0200 USB: fsl_udc_core: fix build breakage when building for ARM arch Commit 09ba0def (USB: fsl_udc_core: prepare for SoCs with BE registers and descriptors) introduced build breakage on ARM arch. Fix it by setting accessors using a static inline function which is a nop when compiling the driver for ARM arch. Commit 2ea6698 (USB: fsl_udc_core: support device mode of MPC5121E DR USB Controller) caused another breakage on ARM by using flush_dcache_range(). Don't use it, convert to the DMA API usage instead. USB2.0CV Halt Endpoint Test succeeds on PPC. Tested both on ARM i.MX31 and mpc5121 PPC, also with CONFIG_DMA_API_DEBUG enabled. Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit 6002525170df5f72c92ab946b6ebf1656aaec74d Author: Ben Skeggs Date: Fri Jul 1 18:00:51 2011 +1000 Revert "drm/nvc0: recognise 0xdX chipsets as NV_C0" Oh boy. That was a bad gamble. PDISP has changed. This reverts commit cdf81a235f11c8a55023c6b181d21d519a8a5967. Signed-off-by: Dave Airlie commit 2498c41e1b6aaa1929d13cae9ff1cb6226887078 Author: Alex Deucher Date: Fri Jul 1 12:58:54 2011 -0400 drm/radeon/kms: fix typo in cayman reg offset Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 8208441be21eb3df448e171c4e5cf92756f287da Author: Alex Deucher Date: Fri Jul 1 13:18:28 2011 -0400 drm/radeon/kms: use correct reg on fusion when reading back mem config Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 2b1ecb7337592a7bf0989efac46a5b52daab769e Author: Jesse Barnes Date: Fri Jul 1 11:08:56 2011 -0700 drm/i915: apply HWSTAM writes to Ivy Bridge as well In an attempt to fix 38862 and 38863. Signed-off-by: Jesse Barnes Tested-by: Kenneth Graunke Signed-off-by: Keith Packard commit c9e0b8454582b413bc64c16693c7979417cad3eb Merge: 0466dcb 155a16f Author: Linus Torvalds Date: Fri Jul 1 13:25:56 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/pci: Use the INT_SRC_OVR IRQ (instead of GSI) to preset the ACPI SCI IRQ. xen/mmu: Fix for linker errors when CONFIG_SMP is not defined. commit 0466dcbeda72e6a2753cd7e81f0a190054bd2233 Author: Jesper Juhl Date: Fri Jul 1 12:46:56 2011 +0200 Update version number references in README When 3.0 is released I believe the README should reflect the new numbering. Signed-off-by: Jesper Juhl Signed-off-by: Linus Torvalds commit 98c32bcded0e249fd48726930ae9f393e0e318b4 Author: Jarod Wilson Date: Thu Jun 23 10:40:55 2011 -0300 [media] rc: call input_sync after scancode reports Due to commit cdda911c34006f1089f3c87b1a1f31ab3a4722f2, evdev only becomes readable when the buffer contains an EV_SYN/SYN_REPORT event. If we get a repeat or a scancode we don't have a mapping for, we never call input_sync, and thus those events don't get reported in a timely fashion. For example, take an mceusb transceiver with a default rc6 keymap. Press buttons on an rc5 remote while monitoring with ir-keytable, and you'll see nothing. Now press a button on the rc6 remote matching the keymap. You'll suddenly get the rc5 key scancodes, the rc6 scancode and the rc6 key spit out all at the same time. Pressing and holding a button on a remote we do have a keymap for also works rather unreliably right now, due to repeat events also happening without a call to input_sync (we bail from ir_do_keydown before getting to the point where it calls input_sync). Easy fix though, just add two strategically placed input_sync calls right after our input_event calls for EV_MSC, and all is well again. Technically, we probably should have been doing this all along, its just that it never caused any functional difference until the referenced change went into the input layer. input_sync once per IR signal. There was another hidden bug in the code where we were calling input_report_key using last_keycode instead of our just discovered keycode, which manifested with the reordering of calling input_report_key and setting last_keycode. Reported-by: Stephan Raue CC: Stephan Raue CC: Mauro Carvalho Chehab CC: Jeff Brown Acked-by: Dmitry Torokhov Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 372b4249243d1e7c12a0f2b67e7badc608fcff45 Author: Jarod Wilson Date: Mon Jun 20 00:07:13 2011 -0300 [media] imon: allow either proto on unknown 0xffdc While 0xffdc devices have their IR protocol hard-coded into the firmware of the device, we have no known way of telling what it is if we don't have the device's config byte already in the driver. Unknown devices default to the imon native protocol, but might actually be rc6, so we should set the driver up such that the user can load the rc6 keytable from userspace and still have a working device ahead of its config byte being added to the driver. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 842071c9ea021a42256386cb0cbe3735af33c4db Author: Jarod Wilson Date: Mon Jun 20 00:04:05 2011 -0300 [media] imon: auto-config ffdc 7e device Another device with the 0xffdc device id, this one with 0x7e in the config byte. Its an iMON VFD + RC6 IR, in a CoolerMaster 260 case. Reported-by: Filip Streibl Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 9800b5b619cd9a013a6f0c7d5da0dbbc17a5af30 Author: Jarod Wilson Date: Thu Jun 16 17:30:48 2011 -0300 [media] saa7134: fix raw IR timeout value The comment says "wait 15ms", but the code says jiffies_to_msecs(15) instead of msecs_to_jiffies(15). Fix that. Tested, works fine with both rc5 and rc6 decode, in-kernel and via lirc userspace, with an HVR-1150. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 3f5c4c73322e4d6f3d40b697dac3073d2adffe41 Author: Jarod Wilson Date: Thu Jun 16 16:18:37 2011 -0300 [media] rc: fix ghost keypresses with certain hw With hardware that has to use ir_raw_event_store_edge to collect IR sample durations, we were not doing an event reset unless IR_MAX_DURATION had passed. That's around 4 seconds. So if someone presses up, then down, with less than 4 seconds in between, they'd get the initial up, then up and down upon pressing down. To fix this, I've lowered the "send a reset event" logic's threshold to the input device's REP_DELAY (defaults to 500ms), and with an saa7134-based GPIO-driven IR receiver in a Hauppauge HVR-1150, I get *much* better behavior out of the remote now. Special thanks to Devin for providing the hardware to investigate this issue. CC: stable@kernel.org CC: Devin Heitmueller Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit c4b0afee3c1730cf9b0f6ad21729928d23d3918e Author: Jarod Wilson Date: Mon Jun 13 15:32:26 2011 -0300 [media] [staging] lirc_serial: allocate irq at init time There's really no good reason not to just grab the desired IRQ at driver init time, instead of every time the lirc device node is accessed. This also improves the speed and reliability with which a serial transmitter can operate, as back-to-back transmission attempts (i.e., channel change to a multi-digit channel) don't have to spend time acquiring and then releasing the IRQ for every digit, sometimes multiple times, if lircd has been told to use the min_repeat parameter. CC: devel@driverdev.osuosl.org Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 6a8c97ac92461ec57e36b10572e78d4221e8faa8 Author: Jarod Wilson Date: Wed Jun 8 18:56:56 2011 -0300 [media] lirc_zilog: fix spinning rx thread We were calling schedule_timeout with the rx thread's task state still at TASK_RUNNING, which it shouldn't be. Make sure we call set_current_state(TASK_INTERRUPTIBLE) *before* schedule_timeout, and we're all good here. I believe this problem was mistakenly introduced in commit 5bd6b0464b68d429bc8a3fe6595d19c39dfc4d95, and I'm not sure how I missed it before, as I swear I tested the patchset that was included in, but alas, stuff happens... Acked-by: Andy Walls CC: stable@kernel.org Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 1ba9268c2bfeebfd70193145685e12faeae92882 Author: Jarod Wilson Date: Wed Jun 8 15:00:01 2011 -0300 [media] keymaps: fix table for pinnacle pctv hd devices Both consumers of RC_MAP_PINNACLE_PCTV_HD send along full RC-5 scancodes, so this update makes this keymap actually *have* full scancodes, heisted from rc-dib0700-rc5.c. This should fix out of the box remote functionality for the Pinnacle PCTV HD 800i (cx88 pci card) and PCTV HD Pro 801e (em28xx usb stick). CC: stable@kernel.org Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 35d136c8dab034ee14aa00d6082229b4b74607da Author: Jarod Wilson Date: Tue Jun 7 18:45:17 2011 -0300 [media] ite-cir: 8709 needs to use pnp resource 2 Thanks to the intrepid testing and debugging of Matthijs van Drunen, it was uncovered that at least some variants of the ITE8709 need to use pnp resource 2, rather than 0, for things to function properly. Resource 0 has a length of only 1, and if you try to bypass the pnp_port_len check and use it anyway (with either a length of 1 or 2), the system in question's trackpad ceased to function. The circa lirc 0.8.7 lirc_ite8709 driver used resource 2, but the value was (amusingly) changed to 0 by way of a patch from ITE themselves, so I don't know if there may be variants where 0 actually *is* correct, but at least in this case and in the original lirc_ite8709 driver author's case, it sure looks like 2 is the right value. This fix should probably be applied to all stable kernels with the ite-cir driver, lest we nuke more people's trackpads. Tested-by: Matthijs van Drunen CC: Juan Jesús García de Soria CC: stable@kernel.org Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 258c05637d6b6df2478a2808a3d2350c3c6782d6 Author: Andre Bartke Date: Fri Jun 10 07:57:54 2011 -0300 [media] V4L: mx1-camera: fix uninitialized variable mx1_camera_add_device() can return an uninitialized value of ret. Signed-off-by: Andre Bartke [g.liakhovetski@gmx.de: modified the fix to remove "ret" completely] Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 383e4f69879d11c86ebdd38b3356f6d0690fb4cc Author: Vaibhav Hiremath Date: Thu Apr 14 13:42:34 2011 -0300 [media] omap_vout: Added check in reqbuf & mmap for buf_size allocation The usecase where, user allocates small size of buffer through bootargs (video1_bufsize/video2_bufsize) and later from application tries to set the format which requires larger buffer size, driver doesn't check for insufficient buffer size and allows application to map extra buffer. This leads to kernel crash, when user application tries to access memory beyond the allocation size. Added check in both mmap and reqbuf call back function, and return error if the size of the buffer allocated by user through bootargs is less than the S_FMT size. Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit 8f3a307b9afd8c2ebde46ef317df4df3813301a7 Author: Vaibhav Hiremath Date: Thu Jun 16 15:32:07 2011 -0300 [media] OMAP_VOUT: Change hardcoded device node number to -1 With addition of media-controller framework, now we have various device nodes (/dev/videoX) getting created, so hardcoding minor number in video_register_device() is not recommended. So let V4L2 framework choose free minor number for the device. Signed-off-by: Mauro Carvalho Chehab commit e8bb10b82f3d9fff79751ee392c1c499e3d68365 Author: Vladimir Pantelic Date: Tue Apr 26 04:28:11 2011 -0300 [media] OMAP_VOUTLIB: Fix wrong resizer calculation The omap_vout_new_crop() function has possible bug, uses uninitialized variable "crop.width/height" which is actually output of the function. Instead we should be using "try_crop.width/height" to calculate the resizer value. Signed-off-by: Vladimir Pantelic Signed-off-by: Vaibhav Hiremath Signed-off-by: Mauro Carvalho Chehab commit ee1b3ea9e6171d7a842527a44873f9f51e6f239b Author: Jeff Layton Date: Tue Jun 21 07:18:26 2011 -0400 cifs: set socket send and receive timeouts before attempting connect Benjamin S. reported that he was unable to suspend his machine while it had a cifs share mounted. The freezer caused this to spew when he tried it: -----------------------[snip]------------------ PM: Syncing filesystems ... done. Freezing user space processes ... (elapsed 0.01 seconds) done. Freezing remaining freezable tasks ... Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0): cifsd S ffff880127f7b1b0 0 1821 2 0x00800000 ffff880127f7b1b0 0000000000000046 ffff88005fe008a8 ffff8800ffffffff ffff880127cee6b0 0000000000011100 ffff880127737fd8 0000000000004000 ffff880127737fd8 0000000000011100 ffff880127f7b1b0 ffff880127736010 Call Trace: [] ? sk_reset_timer+0xf/0x19 [] ? tcp_connect+0x43c/0x445 [] ? tcp_v4_connect+0x40d/0x47f [] ? schedule_timeout+0x21/0x1ad [] ? _raw_spin_lock_bh+0x9/0x1f [] ? release_sock+0x19/0xef [] ? inet_stream_connect+0x14c/0x24a [] ? autoremove_wake_function+0x0/0x2a [] ? ipv4_connect+0x39c/0x3b5 [cifs] [] ? cifs_reconnect+0x1fc/0x28a [cifs] [] ? cifs_demultiplex_thread+0x397/0xb9f [cifs] [] ? perf_event_exit_task+0xb9/0x1bf [] ? cifs_demultiplex_thread+0x0/0xb9f [cifs] [] ? cifs_demultiplex_thread+0x0/0xb9f [cifs] [] ? kthread+0x7a/0x82 [] ? kernel_thread_helper+0x4/0x10 [] ? kthread+0x0/0x82 [] ? kernel_thread_helper+0x0/0x10 Restarting tasks ... done. -----------------------[snip]------------------ We do attempt to perform a try_to_freeze in cifs_reconnect, but the connection attempt itself seems to be taking longer than 20s to time out. The connect timeout is governed by the socket send and receive timeouts, so we can shorten that period by setting those timeouts before attempting the connect instead of after. Adam Williamson tested the patch and said that it seems to have fixed suspending on his laptop when a cifs share is mounted. Reported-by: Benjamin S Tested-by: Adam Williamson Signed-off-by: Jeff Layton Signed-off-by: Steve French commit a26474e8649643e82d71e3a386d5c4bcc0b207ef Author: Tejun Heo Date: Tue Jun 28 11:41:07 2011 +0200 x86-32, NUMA: Fix boot regression caused by NUMA init unification on highmem machines During 32/64 NUMA init unification, commit 797390d855 ("x86-32, NUMA: use sparse_memory_present_with_active_regions()") made 32bit mm init call memory_present() automatically from active_regions instead of leaving it to each NUMA init path. This commit description is inaccurate - memory_present() calls aren't the same for flat and numaq. After the commit, memory_present() is only called for the intersection of e820 and NUMA layout. Before, on flatmem, memory_present() would be called from 0 to max_pfn. After, it would be called only on the areas that e820 indicates to be populated. This is how x86_64 works and should be okay as memmap is allowed to contain holes; however, x86_32 DISCONTIGMEM is missing early_pfn_valid(), which makes memmap_init_zone() assume that memmap doesn't contain any hole. This leads to the following oops if e820 map contains holes as it often does on machine with near or more 4GiB of memory by calling pfn_to_page() on a pfn which isn't mapped to a NUMA node, a reported by Conny Seidel: BUG: unable to handle kernel paging request at 000012b0 IP: [] memmap_init_zone+0x6c/0xf2 *pdpt =3D 0000000000000000 *pde =3D f000eef3f000ee00 Oops: 0000 [#1] SMP last sysfs file: Modules linked in: Pid: 0, comm: swapper Not tainted 2.6.39-rc5-00164-g797390d #1 To Be Filled By O.E.M. To Be Filled By O.E.M./E350M1 EIP: 0060:[] EFLAGS: 00010012 CPU: 0 EIP is at memmap_init_zone+0x6c/0xf2 EAX: 00000000 EBX: 000a8000 ECX: 000a7fff EDX: f2c00b80 ESI: 000a8000 EDI: f2c00800 EBP: c19ffe54 ESP: c19ffe34 DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 Process swapper (pid: 0, ti=3Dc19fe000 task=3Dc1a07f60 task.ti=3Dc19fe000) Stack: 00000002 00000000 0023f000 00000000 10000000 00000a00 f2c00000 f2c00b58 c19ffeb0 c1a80f24 000375fe 00000000 f2c00800 00000800 00000100 00000030 c1abb768 0000003c 00000000 00000000 00000004 00207a02 f2c00800 000375fe Call Trace: [] free_area_init_node+0x358/0x385 [] free_area_init_nodes+0x420/0x487 [] paging_init+0x114/0x11b [] setup_arch+0xb37/0xc0a [] start_kernel+0x76/0x316 [] i386_start_kernel+0xa8/0xb0 This patch fixes the bug by defining early_pfn_valid() to be the same as pfn_valid() when DISCONTIGMEM. Reported-bisected-and-tested-by: Conny Seidel Signed-off-by: Tejun Heo Cc: hans.rosenfeld@amd.com Cc: Christoph Lameter Cc: Conny Seidel Link: http://lkml.kernel.org/r/20110628094107.GB3386@htj.dyndns.org Signed-off-by: Ingo Molnar commit 60c2ce2b4facf28f569115a55e1f479eb12bd0f1 Merge: 0e90ed0 690b0ca Author: David S. Miller Date: Fri Jul 1 01:52:02 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit cd62287e364c0d15d517c6ced4e4808b54711475 Author: Mike Galbraith Date: Sat Jun 4 15:03:20 2011 +0200 sched, cgroups: Fix MIN_SHARES on 64-bit boxen Commit c8b28116 ("sched: Increase SCHED_LOAD_SCALE resolution") intended to have no user-visible effect, but allows setting cpu.shares to < MIN_SHARES, which the user then sees. Signed-off-by: Mike Galbraith Signed-off-by: Peter Zijlstra Cc: Nikhil Rao Link: http://lkml.kernel.org/r/1307192600.8618.3.camel@marge.simson.net Signed-off-by: Ingo Molnar commit aa122d424b14b4a4c5ba302e668366717e9cac7b Author: Sjoerd Simons Date: Mon May 30 15:02:00 2011 -0300 [media] uvcvideo: Disable the queue when failing to start When failing to start the camera we should disable the queue again, to rollback into the same initial state. Otherwise re-trying will always hit -EBUSY Signed-off-by: Sjoerd Simons Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 8ca2c80b170c47eeb55f0c2a0f2b8edf85f35d49 Author: Sjoerd Simons Date: Tue May 24 12:22:03 2011 -0300 [media] uvcvideo: Remove buffers from the queues when freeing When freeing memory for the video buffers also remove them from the irq & main queues. This fixes an oops when doing the following: open ("/dev/video", ..) VIDIOC_REQBUFS VIDIOC_QBUF VIDIOC_REQBUFS close () As the second VIDIOC_REQBUFS will cause the list entries of the buffers to be cleared while they still hang around on the main and irc queues Signed-off-by: Sjoerd Simons Acked-by: Laurent Pinchart Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab commit a96aa5342d575980e5b572cde88036f3a878ebee Author: Laurent Pinchart Date: Tue Jun 28 18:17:48 2011 -0300 [media] uvcvideo: Ignore entities for terminals with no supported format If a streaming interface has no supported format, the driver won't create a video device for the associated terminal. Fix an oops by ignoring that terminal when creating links between entities. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit c064b8eac8da5d494fd221f14219c4f39502deb2 Author: Laurent Pinchart Date: Wed Jun 15 05:20:34 2011 -0300 [media] v4l: Don't access media entity after is has been destroyed Entities associated with video device nodes are unregistered in video_unregister_device(). This destroys the entity even though it can still be accessed through open video device nodes. Move the media_device_unregister_entity() call from video_unregister_device() to v4l2_device_release() to ensure that the entity isn't unregistered until the last reference to the video device is released. Also remove the media_entity_get()/put() calls from v4l2-dev.c. Those functions were designed for subdevs, to avoid a parent module from being removed while still accessible through board code. They're not currently needed for video device nodes, and will oops when a hotpluggable device is disconnected during streaming, as media_entity_put() called in v4l2_device_release() tries to access entity->parent->dev->driver which is set to NULL when the device is disconnected. Signed-off-by: Laurent Pinchart Acked-by: Sakari Ailus Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit ca4186f06fecbf2b692a42cdea54b7ef23b2496c Author: Ohad Ben-Cohen Date: Wed Jun 1 13:39:46 2011 -0300 [media] media: omap3isp: fix a potential NULL deref Fix a potential NULL pointer dereference by skipping registration of external entities in case none are provided. This is useful at least when testing mere memory-to-memory scenarios. Signed-off-by: Ohad Ben-Cohen Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 66072d4fa7cb644f1f064e290f8fddfbd8ccd478 Author: Marek Szyprowski Date: Tue Jun 28 08:29:02 2011 -0300 [media] media: vb2: fix allocation failure check __vb2_queue_alloc function returns the number of successfully allocated buffers. There is no point in checking if the returned value is negative. If this function returns 0, videobuf2 should just return -ENOMEM to userspace, because no driver can work without memory buffers. Reported-by: Jonathan Corbet Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park CC: Pawel Osciak Signed-off-by: Mauro Carvalho Chehab commit afdea8bac5e80362459940e18e705d792e677a57 Author: Marek Szyprowski Date: Fri Jun 10 08:58:42 2011 -0300 [media] media: vb2: reset queued_count value during queue reinitialization queued_count variable was left untouched during the queue reinitialization in __vb2_queue_cancel, what might lead to mismatch between the real number of queued buffers and queued_count variable. Reported-by: Uwe Kleine-König Signed-off-by: Marek Szyprowski CC: Pawel Osciak Signed-off-by: Mauro Carvalho Chehab commit bf7b73efb7f52abf56b512546c3bbc35001dd696 Author: Marek Szyprowski Date: Wed Jun 8 06:15:05 2011 -0300 [media] Revert "[media] v4l2: vb2: one more fix for REQBUFS()" This reverts commit 31901a078af29c33c736dcbf815656920e904632. Queue should be reinitialized on each REQBUFS() call even if the memory access method and buffer count have not been changed. The user might have changed the format and if we go the short path introduced in that commit, the memory buffer will not be reallocated to fit with new format. The previous patch was just over-engineered optimization, which just introduced a bug to videobuf2. Reported-by: Uwe Kleine-König Signed-off-by: Marek Szyprowski CC: Pawel Osciak Signed-off-by: Mauro Carvalho Chehab commit a52a82fc3a397261ecbcbd441498be58997379c8 Author: Marek Szyprowski Date: Wed Jun 1 12:57:37 2011 -0300 [media] media: vb2: add __GFP_NOWARN to dma-sg allocator Add __GFP_NOWARN parameter to videobuf2 dma-sg allocator to prevent kernel warning and stack dump if there is not enough memory available. Videobuf2 and drivers should correctly handle no memory case, so there is no need for stack dump and extensive log. Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 724d4c03066cec0e23b44344ad384fb4ebb7419d Author: Henrik Ahlgren Date: Fri Jul 1 01:48:35 2011 +0300 CREDITS: Fix typo David Brownell's CREDITS entry should have N: (name) instead of M: (email). Signed-off-by: Henrik Ahlgren Signed-off-by: Linus Torvalds commit daf54f1f363a61c618662ef66d4bf09d2b090941 Author: Alex Deucher Date: Thu Jun 30 08:59:55 2011 -0400 drm/radeon/kms: Fix chremap setup on RV770 CE CE variant requires a different chremap setup. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=35472 Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 163f4dabea4e3be485c17e8f08e3a6468ad31cbf Author: Tomas Targownik Date: Thu Jun 30 16:30:44 2011 -0300 Bluetooth: Fix memory leak under page timeouts If the remote device is not present, the connections attemp fails and the struct hci_conn was not freed Signed-off-by: Tomas Targownik Signed-off-by: Gustavo F. Padovan commit 9fa7e4f76f3658ba1f44fbdb95c77e7df3f53f95 Author: Gustavo F. Padovan Date: Thu Jun 30 16:11:30 2011 -0300 Bluetooth: Fix regression with incoming L2CAP connections PTS test A2DP/SRC/SRC_SET/TC_SRC_SET_BV_02_I revealed that ( probably after the df3c3931e commit ) the l2cap connection could not be established in case when the "Auth Complete" HCI event does not arive before the initiator send "Configuration request", in which case l2cap replies with "Command rejected" since the channel is still in BT_CONNECT2 state. Based on patch from: Ilia Kolomisnky Signed-off-by: Gustavo F. Padovan commit 7bb59df83b190817f56c4e2fec3078d99d906ad4 Author: Peter Hurley Date: Thu Jun 30 13:53:53 2011 -0400 Bluetooth: Fix hidp disconnect deadlocks and lost wakeup Partial revert of commit aabf6f89. When the hidp session thread was converted from kernel_thread to kthread, the atomic/wakeups were replaced with kthread_stop. kthread_stop has blocking semantics which are inappropriate for the hidp session kthread. In addition, the kthread signals itself to terminate in hidp_process_hid_control() - it cannot do this with kthread_stop(). Lastly, a wakeup can be lost if the wakeup happens between checking for the loop exit condition and setting the current state to TASK_INTERRUPTIBLE. (Without appropriate synchronization mechanisms, the task state should not be changed between the condition test and the yield - via schedule() - as this creates a race between the wakeup and resetting the state back to interruptible.) Signed-off-by: Peter Hurley Signed-off-by: Gustavo F. Padovan commit 0e90ed0e8b9b1c25040442f1d20c799751b1e727 Merge: 5fc3054 16adf5d Author: Linus Torvalds Date: Thu Jun 30 10:44:52 2011 -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: (24 commits) usbnet: Remove over-broad module alias from zaurus. MAINTAINERS: drop Michael from bfin_mac driver net/can: activate bit-timing calculation and netlink based drivers by default rionet: fix NULL pointer dereference in rionet_remove net+crypto: Use vmalloc for zlib inflate buffers. netfilter: Fix ip_route_me_harder triggering ip_rt_bug ipv4: Fix IPsec slowpath fragmentation problem ipv4: Fix packet size calculation in __ip_append_data cxgb3: skb_record_rx_queue now records the queue index relative to the net_device. bridge: Only flood unregistered groups to routers qlge: Add maintainer. MAINTAINERS: mark socketcan-core lists as subscribers-only MAINTAINERS: Remove Sven Eckelmann from BATMAN ADVANCED r8169: fix wrong register use. net/usb/kalmia: signedness bug in kalmia_bind() net/usb: kalmia: Various fixes for better support of non-x86 architectures. rtl8192cu: Fix missing firmware load udp/recvmsg: Clear MSG_TRUNC flag when starting over for a new packet ipv6/udp: Use the correct variable to determine non-blocking condition netconsole: fix build when CONFIG_NETCONSOLE_DYNAMIC is turned on ... commit 5fc3054d76a05633ae7341163b8c22a51e63483e Merge: 3b775e2 e336f61 Author: Linus Torvalds Date: Thu Jun 30 10:44:13 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/avr32-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/avr32-2.6: MAINTAINERS: update AVR32 and AT32AP maintainers commit 3b775e2246ae861daec276d3229a7de2af69b7db Merge: c8618d1 aeb0aea Author: Linus Torvalds Date: Thu Jun 30 10:43:57 2011 -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: update author email for at32ap700x_wdt watchdog: gef_wdt: fix MODULE_ALIAS watchdog: Intel SCU Watchdog: Fix build and remove duplicate code watchdog: mtx1-wdt: fix section mismatch watchdog: mtx1-wdt: fix GPIO toggling watchdog: mtx1-wdt: request gpio before using it watchdog: Handle multiple wm831x watchdogs being registered commit c8618d16f91f58c01be4bdbec4d724efe426a081 Merge: 427e3df 9ab3a15 Author: Linus Torvalds Date: Thu Jun 30 10:43:22 2011 -0700 Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x * 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x: sh: use printk_ratelimited instead of printk_ratelimit sh: Fix up unmet dependency warnings with USB EHCI/OHCI selects. sh: fix the value of sh_dmae_slave_config in setup-sh7757 sh: fix the INTC vector for IRQ and IRL in setup-sh7757 sh: add to select the new configuration for USB EHCI/OHCI sh: add platform_device of EHCI/OHCI to setup-sh7757 sh: fix compile error using sh7757lcr_defconfig commit 427e3df6f22f919134adec42e5c9c889b7397196 Merge: ca56a95 4d4d6fb Author: Linus Torvalds Date: Thu Jun 30 10:43:04 2011 -0700 Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x * 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x: ARM: mach-shmobile: make a struct in board-ap4evb.c static ARM: mach-shmobile: ag5evm: consistently name sdhi info structures ARM: mach-shmobile: mackerel: change usbhs devices order commit 690b0cacb6dbbbcb06b76139ab65e1bf3f63e7f1 Merge: 16adf5d a0b8de3 Author: John W. Linville Date: Thu Jun 30 11:26:04 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit 155a16f21923bc2f04161ac92acca986371ef27b Author: Konrad Rzeszutek Wilk Date: Thu Jun 30 09:18:27 2011 -0400 xen/pci: Use the INT_SRC_OVR IRQ (instead of GSI) to preset the ACPI SCI IRQ. In the past we would use the GSI value to preset the ACPI SCI IRQ which worked great as GSI == IRQ: ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level) While that is most often seen, there are some oddities: ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 20 low level) which means that GSI 20 (or pin 20) is to be overriden for IRQ 9. Our code that presets the interrupt for ACPI SCI however would use the GSI 20 instead of IRQ 9 ending up with: xen: sci override: global_irq=20 trigger=0 polarity=1 xen: registering gsi 20 triggering 0 polarity 1 xen: --> pirq=20 -> irq=20 xen: acpi sci 20 .. snip.. calling acpi_init+0x0/0xbc @ 1 ACPI: SCI (IRQ9) allocation failed ACPI Exception: AE_NOT_ACQUIRED, Unable to install System Control Interrupt handler (20110413/evevent-119) ACPI: Unable to start the ACPI Interpreter as the ACPI interpreter made a call to 'acpi_gsi_to_irq' which got nine. It used that value to request an IRQ (request_irq) and since that was not present it failed. The fix is to recognize that for interrupts that are overriden (in our case we only care about the ACPI SCI) we should use the IRQ number to present the IRQ instead of the using GSI. End result is that we get: xen: sci override: global_irq=20 trigger=0 polarity=1 xen: registering gsi 20 triggering 0 polarity 1 xen: --> pirq=20 -> irq=9 (gsi=9) xen: acpi sci 9 which fixes the ACPI interpreter failing on startup. CC: stable@kernel.org Reported-by: Liwei Tested-by: Liwei [http://lists.xensource.com/archives/html/xen-devel/2011-06/msg01727.html] Signed-off-by: Konrad Rzeszutek Wilk commit 4f3c7a18d9e8a287d31f828a259d713fe4859471 Author: Takashi Iwai Date: Thu Jun 30 15:08:04 2011 +0200 ALSA: sb16 - Fix build errors on MIPS and others with 13bit ioctl size One of ioctl definition in sound/sb16_csp.h contains the data size over 8kB, and this causes build errors on architectures like MIPS, which define _IOC_SIZEBITS=13. For avoiding this build errors but keeping the compatibility, manually expand with _IOC() instead of using _IOW() for the problematic ioctl. Signed-off-by: Takashi Iwai commit 32dd11942aeb47f91209a446d6b10063c5b69389 Author: Konrad Rzeszutek Wilk Date: Thu Jun 30 09:12:40 2011 -0400 xen/mmu: Fix for linker errors when CONFIG_SMP is not defined. Simple enough - we use an extern defined symbol which is not defined when CONFIG_SMP is not defined. This fixes the linker dying. CC: stable@kernel.org Signed-off-by: Konrad Rzeszutek Wilk commit 032016a56a1e9c83646435b32e4416d499e1f1ce Author: Alexey Khoroshilov Date: Fri Jun 24 01:15:02 2011 +0400 hfsplus: Fix double iput of the same inode in hfsplus_fill_super() There is a misprint in resource deallocation code on error path in hfsplus_fill_super(): the sbi->alloc_file inode is iput twice, while the root inode in not iput at all. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Christoph Hellwig commit 50176ddefa4a942419cb693dd2d8345bfdcde67c Author: Seth Forshee Date: Tue May 31 16:35:50 2011 -0500 hfsplus: add missing call to bio_put() hfsplus leaks bio objects by failing to call bio_put() on the bios it allocates. Add the missing call to fix the leak. Signed-off-by: Seth Forshee Cc: # .38.x, .39.x Signed-off-by: Christoph Hellwig commit 286bed0f0c447b6660e72093d7e778784fdd9ee6 Author: Takashi Iwai Date: Thu Jun 30 12:45:36 2011 +0200 ALSA: hdspm - Fix compile warnings with PPC The char can be unsigned on some architectures. Since the code checks the negative values, they should be declared as signed char explicitly. sound/pci/rme9652/hdspm.c:5449: warning: comparison is always false due to limited range of data type sound/pci/rme9652/hdspm.c:5462: warning: comparison is always false due to limited range of data type Signed-off-by: Takashi Iwai commit 71276410e17653cfacfa238a363475cde9e18fb3 Author: Takashi Iwai Date: Thu Jun 30 12:31:23 2011 +0200 ALSA: cs5535 - Fix invalid big-endian conversions Fix the wrongly converted short values: sound/pci/cs5535audio/cs5535audio_pcm.c:152: warning: large integer implicitly truncated to unsigned type sound/pci/cs5535audio/cs5535audio_pcm.c:160: warning: large integer implicitly truncated to unsigned type Signed-off-by: Takashi Iwai commit 7b28afe01ab6ffb5f152f47831b44933facd2328 Merge: 726e99a 86e1e98 Author: Jens Axboe Date: Thu Jun 30 10:10:50 2011 +0200 Merge branch 'for-3.0-important' of git://git.drbd.org/linux-2.6-drbd into for-linus commit 86e1e98e5c6b4edab97e2b058466ef553cfd878e Author: Lars Ellenberg Date: Tue Jun 28 13:22:48 2011 +0200 drbd: we should write meta data updates with FLUSH FUA We used to write these with BIO_RW_BARRIER aka REQ_HARDBARRIER (unless disabled in the configuration). The correct semantic now would be to write with FLUSH/FUA. For example, with activity log transactions, FUA alone is not enough, we need the corresponding bitmap update (and all related application updates) on stable storage as well. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 15b493d11fcce3c5547e3d7fb6d90e11ffe12777 Author: Lars Ellenberg Date: Tue Jun 28 09:48:48 2011 +0200 drbd: fix limit define, we support 1 PiByte now Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit cb6518cbef5e3e36b7ae90fcab610a52ea7e9fc0 Author: Lars Ellenberg Date: Mon Jun 20 14:44:45 2011 +0200 drbd: when receive times out on meta socket, also check last receive time on data socket If we have an asymetrically congested network, we may send P_PING, but due to congestion, the corresponding P_PING_ACK would time out, and we would drop a (congested, but otherwise) healthy connection ("PingAck did not arrive in time.") Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 5a8b424276f7ba50c51e7caf485b2be23739e5b8 Author: Lars Ellenberg Date: Tue Jun 14 14:18:23 2011 +0200 drbd: account bitmap IO during resync as resync-(related-)-io If we have a good resync rate, we will frequently update the on-disk bitmap, which, if not accounted for as resync io, may let an otherwise idle device appear to be "busy", and cause us to throttle resync. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 8ccee20e3ef4e12dbf02a18f17d386569b1f73ee Author: Lars Ellenberg Date: Mon Jun 6 11:31:42 2011 +0200 drbd: don't cond_resched_lock with IRQs disabled The last commit, drbd: add missing spinlock to bitmap receive, introduced a cond_resched_lock(), where the lock in question is taken with irqs disabled. As we must not schedule with IRQs disabled, and cond_resched_lock_irq() does not exist, yet, we re-aquire the spin_lock_irq() for each bitmap page processed in turn. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 829c60878626be290a4c248e8f1b86a0d5cbd38b Author: Lars Ellenberg Date: Fri Jun 3 21:18:13 2011 +0200 drbd: add missing spinlock to bitmap receive During bitmap exchange, when using the RLE bitmap compression scheme, we have a code path that can set the whole bitmap at once. To avoid holding spin_lock_irq() for too long, we used to lock out other bitmap modifications during bitmap exchange by other means, and then, knowing we have exclusive access to the bitmap, modify it without the spinlock, and with IRQs enabled. Since we now allow local IO to continue, potentially setting additional bits during the bitmap receive phase, this is no longer true, and we get uncoordinated updates of bitmap members, causing bm_set to no longer accurately reflect the total number of set bits. To actually see this, you'd need to have a large bitmap, use RLE bitmap compression, and have busy IO during sync handshake and bitmap exchange. Fix this by taking the spin_lock_irq() in this code path as well, but calling cond_resched_lock() after each page worth of bits processed. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 0cfdd247d1779d5ffc8f685b172a526ecdc6773f Author: Philipp Reisner Date: Wed May 25 11:14:35 2011 +0200 drbd: Use the correct max_bio_size when creating resync requests Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit e336f61fe238ade68eca7850d64fd6c194bdc998 Author: Hans-Christian Egtvedt Date: Tue Jun 28 08:43:29 2011 +0200 MAINTAINERS: update AVR32 and AT32AP maintainers This alters the maintenance of the AVR32 architecture and the AT32AP machine code to be shared between Haavard Skinnemoen and me. The status is also changed to maintained, as we no longer are being paid to look after this architecture. Signed-off-by: Hans-Christian Egtvedt Acked-by: Haavard Skinnemoen commit 9ab3a15d95809a5d4feecda58b3749c53590e1b2 Author: Paul Mundt Date: Thu Jun 30 15:10:06 2011 +0900 sh: use printk_ratelimited instead of printk_ratelimit Follows the powerpc change, for much the same rationale. Signed-off-by: Paul Mundt commit 7b61ca5d94baf2c31971871fa875750f90fce098 Author: Paul Mundt Date: Thu Jun 30 15:04:38 2011 +0900 sh: Fix up unmet dependency warnings with USB EHCI/OHCI selects. Signed-off-by: Paul Mundt commit 4d4d6fbb7c3125f17a4864215191e54b975cfb4f Author: Guennadi Liakhovetski Date: Wed Jun 29 10:13:04 2011 +0000 ARM: mach-shmobile: make a struct in board-ap4evb.c static struct soc_camera_link imx074_link in board-ap4evb.c doesn't have to be global. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit f71d4af4cd475aced6d9ec9730b03885ac80b833 Author: Jesse Barnes Date: Tue Jun 28 13:00:41 2011 -0700 drm/i915: move IRQ function table init to i915_irq.c This lets us make the various IRQ functions static and helps avoid problems like the one fixed in "drm/i915: Use chipset-specific irq installers" where one of the exported functions was called rather than the chipset specific version. This also fixes a UMS-mode bug -- the correct irq functions for IRL and later chips were only getting loaded in the KMS path. Signed-off-by: Jesse Barnes Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit 79d2427338e8da362678de32a1c8af1dc8a9810a Author: Chris Wilson Date: Tue Jun 28 11:27:47 2011 +0100 drm/i915/overlay: Fix unpinning along init error paths As pointed out by Dan Carpenter, it was seemingly possible to hit an error whilst mapping the buffer for the regs (except the only likely error returns should not happen during init) and so leak a pin count on the bo. To handle this we would need to reacquire the struct mutex, so for simplicity rearrange for the lock to be held for the entire function. For extra pedagogy, test that we only call init once. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit ca56a95eedcc95f8fea7b49c87565cd961d74fe2 Merge: 0e47427 b271a98 Author: Linus Torvalds Date: Wed Jun 29 18:18:48 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: increase rom size for atrm method commit 0e47427bc50bd34bd405e207ccf5235f3b78b551 Merge: c017d0d a18b989 Author: Linus Torvalds Date: Wed Jun 29 18:10:54 2011 -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: caam - fix operator precedence in shared descriptor allocation commit b271a988eb9c3944c50fb62c21ac61860090d3ba Author: Alex Deucher Date: Fri Jun 24 13:15:38 2011 +0000 drm/radeon/kms: increase rom size for atrm method The vbios rom is >64k on a lot of modern asics. Increase the fetch size for atrm to make sure we don't miss part of a larger rom. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit a18b989a5c12ca82ed37f94279273ddbc073758a Author: Kim Phillips Date: Thu May 26 13:30:34 2011 +1000 crypto: caam - fix operator precedence in shared descriptor allocation setkey allocates 16 bytes (CAAM_CMD_SZ * DESC_AEAD_SHARED_TEXT_LEN) shy of what is needed to store the shared descriptor, resulting in memory corruption. Fix this. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit dc501fbc4389f6c15a8da14684b5926e0d9553da Author: Ben Widawsky Date: Wed Jun 29 11:41:51 2011 -0700 drm/i915: Don't call describe_obj on NULL pointers Reported-by: Pavel Roskin Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38777 Cc: Chris Wilson Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit a0b8de350be458b33248e48b2174d9af8a4c4798 Author: Eugene A. Shatokhin Date: Tue Jun 28 23:04:51 2011 -0400 ath5k: fix memory leak when fewer than N_PD_CURVES are in use We would free the proper number of curves, but in the wrong slots, due to a missing level of indirection through the pdgain_idx table. It's simpler just to try to free all four slots, so do that. Cc: stable@kernel.org Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit c31eb8e926835582cd186b33a7a864880a4c0c79 Author: Rajkumar Manoharan Date: Tue Jun 28 18:21:19 2011 +0530 ath9k: Fix suspend/resume when no interface is UP When no interface has been brought up, the chip's power state continued as AWAKE. So during resume, the chip never been powered up. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit d70bed1947772f34d66ada3bd923bfc12ea2452b Author: Keith Packard Date: Wed Jun 29 00:30:34 2011 -0700 drm/i915: Hold struct_mutex during i915_save_state/i915_restore_state Lots of register access in these functions, some of which requires the struct mutex. These functions now hold the struct mutex across the calls to i915_save_display and i915_restore_display, and so the internal mutex calls in those functions have been removed. To ensure that no-one else was calling them (and hence violating the new required locking invarient), those functions have been made static. gen6_enable_rps locks the struct mutex, and so i915_restore_state unlocks the mutex around calls to that function. Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit c017d0d1351f916c0ced3f358afc491fdcf490b4 Merge: c773547 cb16c34 Author: Linus Torvalds Date: Wed Jun 29 11:07:20 2011 -0700 Merge branch 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: x86 emulator: fix %rip-relative addressing with immediate source operand commit c7735471837b35a6205f6052a34ded3bdc1db505 Merge: 78a3cc3 cd823db Author: Linus Torvalds Date: Wed Jun 29 11:07:02 2011 -0700 Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: i2c/pca954x: Initialize the mux to disconnected state i2c-taos-evm: Fix log messages commit 78a3cc38f72cb0e6938ed8e796041d6d1beb8a28 Merge: 4974317 7646223 Author: Linus Torvalds Date: Wed Jun 29 11:03:27 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: arch/powerpc: use printk_ratelimited instead of printk_ratelimit powerpc/rtas-rtc: remove sideeffects of printk_ratelimit powerpc/pseries: remove duplicate SCSI_BNX2_ISCSI in pseries_defconfig powerpc/e500: fix breakage with fsl_rio_mcheck_exception powerpc/p1022ds: fix audio-related properties in the device tree powerpc/85xx: fix NAND_CMD_READID read bytes number commit 49743170556e13156a64f8f20fa412805771b4e1 Author: Linus Torvalds Date: Wed Jun 29 10:10:07 2011 -0700 ahci: change 'masking port_map' printk to KERN_WARNING level It's not so much an error as a warning about normal Marvell crazines. So don't use KERN_ERR that ends up spamming the console even in quiet mode, it's not _that_ critical. Explained by Jeff: "Long explanation, it's a mess: Marvell took standard AHCI, and bastardized it to include a weird mode whereby PATA devices appear inside the AHCI DMA and interrupt infrastructure you're familiar with. So, PATA devices appear via pata_marvell driver, using basic legacy IDE programming interface. But SATA devices, which might also be attached to this chip, either work in under-performing mode or simply don't work at all (e.g. newer 6 Gbps devices or port multiplier attachments, NCQ, ...) On the other hand, 'ahci' driver loads and works with the chip's attached SATA devices quite beautifully, but is completely unable to drive any attached PATA devices, due to the Marvell-specific PATA-under-AHCI interface. The "masking port_map 0x7 -> 0x3" message is the ahci driver "hiding" the PATA port(s) from itself, making sure it will only drive the SATA ports it knows how to drive." Acked-by: Jeff Garzik Signed-off-by: Linus Torvalds commit db111e18ec19bbadbf44a60f73bf2ff5991dc915 Author: Stephen M. Cameron Date: Fri Jun 3 09:57:34 2011 -0500 [SCSI] hpsa: fix potential overrun while memcpy'ing sense data This memcpy: memcpy(cmd->sense_buffer, ei->SenseInfo, ei->SenseLen > SCSI_SENSE_BUFFERSIZE ? SCSI_SENSE_BUFFERSIZE : ei->SenseLen); The ei->SenseLen field is filled in by the Smart Array. For requests to logical drives, it will not exceed 32 bytes, so should be ok, but for physical requests it depends on the target device, not the Smart Array. It's conceivable that this could exceed the 32 byte size of ei->SenseInfo. In that case, the memcpy would read past the end of ei->SenseInfo, copying data from the next command, as if it were sense data, or, if it happened to be the very last command in the block of allocated commands, could fall off the end of the allocated area and crash. I'm not aware of anyone ever encountering this behavior, but it could conceivably happen. This bug was found by Coverity. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit c2dd32e02648d77466f320d6edd157b5080e7c99 Author: Stephen M. Cameron Date: Fri Jun 3 09:57:29 2011 -0500 [SCSI] hpsa: fix dma unmap error in hpsa_passthru_ioctl Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley commit 38553564dc1052640515ed86be3ccb76cda6eee7 Author: Brian King Date: Fri Jun 3 08:23:20 2011 -0500 [SCSI] ibmvfc: Fix Virtual I/O failover hang If a Virtual I/O server fails in a dual virtual I/O server multipath configuration, ensure we delete all remote ports so that path failover can occur. For a single path configuration, the remote ports will go into devloss state. Signed-off-by: Brian King Signed-off-by: James Bottomley commit e999dc50404d401150a5429b6459473a691fd1a0 Author: Mark Brown Date: Mon Jun 13 12:14:07 2011 +0100 ASoC: Fix Blackfin I2S _pointer() implementation return in bounds values The Blackfin DMA controller can report one frame beyond the end of the buffer in the wraparound case but ALSA requires that the pointer always be in the buffer. Do the wraparound to handle this. A similar bug is likely to apply to the other Blackfin PCM drivers but the code is less obvious to inspection and I don't have a user to test. Reported-by: Kieran O'Leary Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 140fe3b1ab9c082182ef13359fab4ddba95c24c3 Author: Xiao Guangrong Date: Tue Jun 21 10:35:55 2011 +0800 jump_label: Fix jump_label update for modules The jump labels entries for modules do not stop at __stop__jump_table, but after mod->jump_entries + mod_num_jump_entries. By checking the wrong end point, module trace events never get enabled. Cc: Ingo Molnar Acked-by: Jason Baron Tested-by: Avi Kivity Tested-by: Johannes Berg Signed-off-by: Xiao Guangrong Link: http://lkml.kernel.org/r/4E00038B.2060404@cn.fujitsu.com Signed-off-by: Steven Rostedt commit 16adf5d07987d93675945f3cecf0e33706566005 Author: Dave Jones Date: Fri Jun 17 20:02:10 2011 -0400 usbnet: Remove over-broad module alias from zaurus. This module and a bunch of dependancies are getting loaded on several of laptops I have (probably picking up the mobile broadband device), that have nothing to do with zaurus. Matching by class without any vendor/device pair isn't the right thing to do here, as it will prevent any other driver from correctly binding to it. (Or in the absense of a driver, will just waste time & memory by unnecessarily loading modules) Signed-off-by: Dave Jones Signed-off-by: David S. Miller commit 1a8690aa50a00670f254282a92caf1401bd30528 Author: Mike Frysinger Date: Mon Jun 27 08:24:07 2011 +0000 MAINTAINERS: drop Michael from bfin_mac driver We want people to just use the list now rather than hitting up people who are no longer responsible for it. Signed-off-by: Mike Frysinger Acked-by: Michael Hennerich Signed-off-by: David S. Miller commit a30d5155a4f80af3cbe1fe0366e9f0c6fdbfd8dd Author: Marc Kleine-Budde Date: Sun Jun 26 21:39:51 2011 +0000 net/can: activate bit-timing calculation and netlink based drivers by default The two options "CAN bit-timing calculation" and "Platform CAN drivers with Netlink support" have a "default Y". In order to activate them by default, change to "default y". Signed-off-by: Marc Kleine-Budde Acked-by: Wolfgang Grandegger Acked-by: Kurt Van Dijck Signed-off-by: David S. Miller commit 55caa9241ece1c07a930e3d05a624061adcf2653 Author: Yinglin Luan Date: Sat Jun 25 18:12:12 2011 +0000 rionet: fix NULL pointer dereference in rionet_remove Function rionet_remove initializes local variable 'ndev' to NULL and do nothing changes before the call to unregister_netdev(ndev), this could cause a NULL pointer dereference. Reported-by: Jesper Juhl Signed-off-by: Yinglin Luan Signed-off-by: David S. Miller commit 7ab24bfdf9a9a9f87ac8e5ad9a25f80b5b947be7 Author: David S. Miller Date: Wed Jun 29 05:48:41 2011 -0700 net+crypto: Use vmalloc for zlib inflate buffers. They are 64K and result in order-4 allocations, even with SLUB. Therefore, just like we always have for the deflate buffers, use vmalloc. Reported-by: Martin Jackson Acked-by: Herbert Xu Signed-off-by: David S. Miller commit ed6e4ef836d425bc35e33bf20fcec95e68203afa Author: Julian Anastasov Date: Sat Jun 18 07:53:59 2011 +0000 netfilter: Fix ip_route_me_harder triggering ip_rt_bug Avoid creating input routes with ip_route_me_harder. It does not work for locally generated packets. Instead, restrict sockets to provide valid saddr for output route (or unicast saddr for transparent proxy). For other traffic allow saddr to be unicast or local but if callers forget to check saddr type use 0 for the output route. The resulting handling should be: - REJECT TCP: - in INPUT we can provide addr_type = RTN_LOCAL but better allow rejecting traffic delivered with local route (no IP address => use RTN_UNSPEC to allow also RTN_UNICAST). - FORWARD: RTN_UNSPEC => allow RTN_LOCAL/RTN_UNICAST saddr, add fix to ignore RTN_BROADCAST and RTN_MULTICAST - OUTPUT: RTN_UNSPEC - NAT, mangle, ip_queue, nf_ip_reroute: RTN_UNSPEC in LOCAL_OUT - IPVS: - use RTN_LOCAL in LOCAL_OUT and FORWARD after SNAT to restrict saddr to be local Signed-off-by: Julian Anastasov Signed-off-by: David S. Miller commit cd823db8b1161ef0d756514d280715a576d65cc3 Author: Petri Gynther Date: Wed Jun 29 11:36:11 2011 +0200 i2c/pca954x: Initialize the mux to disconnected state pca954x power-on default is channel 0 connected. If multiple pca954x muxes are connected to the same physical I2C bus, the parent bus will see channel 0 devices behind both muxes by default. This is bad. Scenario: -- pca954x @ 0x70 -- ch 0 (I2C-bus-101) -- EEPROM @ 0x50 | I2C-bus-1 --- | -- pca954x @ 0x71 -- ch 0 (I2C-bus-111) -- EEPROM @ 0x50 1. Load I2C bus driver: creates I2C-bus-1 2. Load pca954x driver: creates virtual I2C-bus-101 and I2C-bus-111 3. Load eeprom driver 4. Try to read EEPROM @ 0x50 on I2C-bus-101. The transaction will also bleed onto I2C-bus-111 because pca954x @ 0x71 channel 0 is connected by default. Fix: Initialize pca954x to disconnected state in pca954x_probe() Signed-off-by: Petri Gynther Signed-off-by: Jean Delvare Cc: stable@kernel.org commit 9b640f2e154268cb516efcaf9c434f2e73c6783e Author: Jean Delvare Date: Wed Jun 29 11:36:10 2011 +0200 i2c-taos-evm: Fix log messages * Print all error and information messages even when debugging is disabled. * Don't use adapter device to log messages before it is ready. Signed-off-by: Jean Delvare Cc: stable@kernel.org commit 6afba9e7fca5ad6a701c13760639faa0906fe487 Author: Yoshihiro Shimoda Date: Wed Jun 29 04:23:42 2011 +0000 sh: fix the value of sh_dmae_slave_config in setup-sh7757 Fix the value of chcr for SCIF[2-4]_RX and RIIC[0-9]_RX and the value of mid_rid for some RIIC. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit b00c2c79d9ceac49d8b3ba3b097e5df33f802d9a Author: Yoshihiro Shimoda Date: Wed Jun 29 04:23:47 2011 +0000 sh: fix the INTC vector for IRQ and IRL in setup-sh7757 Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit cb16c348760ad2bc79b67b20aefac05529569ed7 Author: Avi Kivity Date: Sun Jun 19 19:21:11 2011 +0300 KVM: x86 emulator: fix %rip-relative addressing with immediate source operand %rip-relative addressing is relative to the first byte of the next instruction, so we need to add %rip only after we've fetched any immediate bytes. Based on original patch by Li Xin . Signed-off-by: Avi Kivity Acked-by: Li Xin Signed-off-by: Marcelo Tosatti commit f5b2d0ef631bb0647ae8ed1752d2127b8fb6da70 Author: Wu Fengguang Date: Wed Jun 29 14:26:07 2011 +0800 ALSA: HDMI - fix ELD monitor name length I noticed that the last character of the ELD monitor name is lost, this fixes the issue. This fix should be confirming to the HDA spec, and works together with the DRM part of the ELD patch. The HDA spec does not mention that Monitor_Name_String is an '\0' ending string, and it allows NML to be 1, which is only valid when MNL does not count the possible ending '\0'. Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 76462232c21dc011462522387ddad0598a4f11e4 Author: Christian Dietrich Date: Sat Jun 4 05:36:54 2011 +0000 arch/powerpc: use printk_ratelimited instead of printk_ratelimit Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited. Signed-off-by: Christian Dietrich Signed-off-by: Benjamin Herrenschmidt commit 9a8f99fab02db296815d7f0ae8ba8ce169df0063 Author: Christian Dietrich Date: Sat Jun 4 05:35:47 2011 +0000 powerpc/rtas-rtc: remove sideeffects of printk_ratelimit Don't use printk_ratelimit() as an additional condition for returning on an error. Because when the ratelimit is reached, printk_ratelimit will return 0 and e.g. in rtas_get_boot_time won't check for an error condition. Signed-off-by: Christian Dietrich Signed-off-by: Benjamin Herrenschmidt commit 937c190ccdd29855828529fc2b4b3e5f1282ff23 Author: Michael Neuling Date: Mon Jun 27 19:55:30 2011 +0000 powerpc/pseries: remove duplicate SCSI_BNX2_ISCSI in pseries_defconfig Remove duplicate assignment of SCSI_BNX2_ISCSI in pseries_defconfig introduced by: 37e0c21e powerpc/pseries: Enable iSCSI support for a number of cards causes warning: arch/powerpc/configs/pseries_defconfig:151:warning: override: reassigning to symbol SCSI_BNX2_ISCSI Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit aeb0aea143e958d5218162d73b1ed4d6ff0ed7c4 Author: Hans-Christian Egtvedt Date: Tue Jun 28 17:01:14 2011 +0200 watchdog: update author email for at32ap700x_wdt This patch updates the email address of the at32ap700x_wdt driver supported by me to an email account I will use on a more regular basis in the future. Signed-off-by: Hans-Christian Egtvedt Signed-off-by: Wim Van Sebroeck commit 0d72c6fcb5cd215eeab824fac216ea42c5b574aa Merge: c89b857 f01c22f Author: Linus Torvalds Date: Tue Jun 28 11:15:57 2011 -0700 Merge branch 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915: Use chipset-specific irq installers drm/i915: forcewake fix after reset drm/i915: add Ivy Bridge page flip support drm/i915: split page flip queueing into per-chipset functions commit c89b857ce6d803905b2c9d71bc9effdd286c45ed Merge: 2e34b42 663dd6d Author: Linus Torvalds Date: Tue Jun 28 11:15:36 2011 -0700 Merge branch 'driver-core-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 * 'driver-core-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: Connector: Correctly set the error code in case of success when dispatching receive callbacks Connector: Set the CN_NETLINK_USERS correctly pti: PTI semantics fix in pti_tty_cleanup. pti: ENXIO error case memory leak PTI fix. pti: double-free security PTI fix drivers:misc: ti-st: fix skipping of change remote baud drivers/base/platform.c: don't mark platform_device_register_resndata() as __init_or_module st_kim: Handle case of no device found for ID 0 firmware: fix GOOGLE_SMI kconfig dependency warning commit 2e34b429a404675dc4fc4ad2ee339eea028da3ca Merge: 04b9059 857aab3 Author: Linus Torvalds Date: Tue Jun 28 11:15:17 2011 -0700 Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: MAINTAINERS: add myself as maintainer of USB/IP usb: r8a66597-hcd: fix cannot detect low/full speed device USB: ehci-ath79: fix a NULL pointer dereference USB: Add new FT232H chip to drivers/usb/serial/ftdi_sio.c usb/isp1760: Fix bug preventing the unlinking of control urbs USB: Fix up URB error codes to reflect implementation. xhci: Always set urb->status to zero for isoc endpoints. xhci: Add reset on resume quirk for asrock p67 host xHCI 1.0: Incompatible Device Error USB: don't let errors prevent system sleep USB: don't let the hub driver prevent system sleep USB: change maintainership of ohci-hcd and ehci-hcd xHCI 1.0: Force Stopped Event(FSE) xhci: Don't warn about zeroed bMaxBurst descriptor field. USB: Free bandwidth when usb_disable_device is called. xhci: Reject double add of active endpoints. USB: TI 3410/5052 USB Serial Driver: Fix mem leak when firmware is too big. usb: musb: gadget: clear TXPKTRDY flag when set FLUSHFIFO usb: musb: host: compare status for negative error values commit 04b905942b482092a547798a2477f21e32a8f65d Merge: d90ce87 3bc46b3 Author: Linus Torvalds Date: Tue Jun 28 11:14:55 2011 -0700 Merge branch 'tty-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6 * 'tty-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: serial: bcm63xx_uart: fix irq storm after rx fifo overrun. amba pl011: platform data for reg lockup and glitch v2 amba pl011: workaround for uart registers lockup tty: n_gsm: improper skb_pull() use was leaking framed data tty: n_gsm: Fixed logic to decode break signal from modem status TTY: ntty, add one more sanity check TTY: ldisc, do not close until there are readers 8250: Fix capabilities when changing the port type 8250_pci: Fix missing const from merges ARM: SAMSUNG: serial: Fix on handling of one clock source for UART serial: ioremap warning fix for jsm driver. 8250_pci: add -ENODEV code for Intel EG20T PCH commit d90ce8711ceb516de823ae878270e5a21d11dede Merge: 505cb6b a73738e Author: Linus Torvalds Date: Tue Jun 28 11:14:22 2011 -0700 Merge branch 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 * 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: Staging: comedi: fix build breakages on some platforms Staging: brcm80211: disable drivers except for X86 or MIPS platforms Staging: brcm80211: disable drivers for PPC platforms Staging: iio: Make IIO depend on GENERIC_HARDIRQS Staging: mei: fix suspend failure Staging: fix iio builds when IIO_RING_BUFFER is not enabled Staging: Comedi: Build only on arches providing PAGE_KERNEL_NOCACHE Staging: fix more iio builds when IIO_RING_BUFFER is not enabled commit 505cb6bc027ea8ae3782d2fdc47aa1915924ba80 Merge: 1d1221f 4274215 Author: Linus Torvalds Date: Tue Jun 28 11:14:00 2011 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: md: avoid endless recovery loop when waiting for fail device to complete. commit 2bea038c52e88badbbd5b420c1de918f7f2579e9 Author: Boaz Harrosh Date: Thu Jun 16 11:35:46 2011 -0400 pnfs: write: Set mds_offset in the generic layer - it is needed by all LDs In current pnfs tree, all the layouts set mds_offset in their .write_pagelist member. mds_offset is only used by generic layer and should be handled by it. This patch is for upstream. It is needed in this -rc series to fix a bug in objects layout_commit. I'll send patches for objects and blocks to be squashed into current pnfs tree. TODO: It looks like the read path needs the same patch. Signed-off-by: Boaz Harrosh Signed-off-by: Trond Myklebust commit 7ac28817536797fd40e9646452183606f9e17f71 Author: Dan Rosenberg Date: Fri Jun 24 08:38:05 2011 -0400 Bluetooth: Prevent buffer overflow in l2cap config request A remote user can provide a small value for the command size field in the command header of an l2cap configuration request, resulting in an integer underflow when subtracting the size of the configuration request header. This results in copying a very large amount of data via memcpy() and destroying the kernel heap. Check for underflow. Signed-off-by: Dan Rosenberg Cc: stable Signed-off-by: Gustavo F. Padovan commit f01c22fd59aa10a3738ede20fd4b9b6fd1e2eac3 Author: Chris Wilson Date: Tue Jun 28 11:48:51 2011 +0100 drm/i915: Use chipset-specific irq installers Konstantin Belousov pointed out that 4697995b98417 replaced the generic i915_driver_irq_*install() functions with chipset specific routines accessible only through driver->irq_*install(). So update the sanity check in i915_request_wait() to match. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 25732821cb965f00475922ca46e84f78e4bada95 Author: Ben Widawsky Date: Fri Jun 24 14:31:47 2011 -0700 drm/i915: forcewake fix after reset The failure is as follows: 1. Userspace gets forcewake lock, lock count >=1 2. GPU hang/reset occurs (forcewake bit is reset) 3. count is now incorrect The failure can only occur when using the forcewake userspace lock. This has the unfortunate consequence of messing up the driver as well as userspace, unless userspace closes the debugfs file, the kernel will never end up waking the GT since the refcount will be > 1. The solution is to try to recover the correct forcewake state based on the refcount. There is a period of time where userspace reads/writes may occur after the reset, before the GT has been forcewaked. The interface was never designed to be a perfect solution for userspace reads/writes, and the kernel portion is fixed by this patch. Suggested-by: Chris Wilson Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit 1d1221f375c94ef961ba8574ac4f85c8870ddd51 Author: Vasiliy Kulikov Date: Fri Jun 24 16:08:38 2011 +0400 proc: restrict access to /proc/PID/io /proc/PID/io may be used for gathering private information. E.g. for openssh and vsftpd daemons wchars/rchars may be used to learn the precise password length. Restrict it to processes being able to ptrace the target process. ptrace_may_access() is needed to prevent keeping open file descriptor of "io" file, executing setuid binary and gathering io information of the setuid'ed process. Signed-off-by: Vasiliy Kulikov Signed-off-by: Linus Torvalds commit 5ee0a58d8ca443e80ed8712c86c9938360b79cac Author: John W. Linville Date: Mon Jun 27 15:38:05 2011 -0400 iwlagn: use PCI_DMA_* for pci_* operations "iwlagn: map command buffers BIDI" uses the DMA_* enumerations for DMA directions, even though the pci_* DMA API is still in use. That patch was undoubtedly developed on top of "iwlagn: don't use the PCI wrappers for DMA operation", which is due in the next release. Signed-off-by: John W. Linville commit 0cfae7c9378cf77434f6be89b5fb65d8f9a5031f Author: Hans-Christian Egtvedt Date: Tue Jun 28 16:59:14 2011 +0200 ALSA: atmel - update author email for ABDAC, AC97C and AT73C213 This patch updates the email address of the sound drivers supported by me to an email account I will use on a more regular basis in the future. Signed-off-by: Hans-Christian Egtvedt Signed-off-by: Takashi Iwai commit 9966db22caf8f74c0e6d84a569e6d7d56332e127 Author: David Henningsson Date: Tue Jun 21 21:01:52 2011 +0200 ALSA: HDA: Add model=auto quirk for Acer Aspire 3830TG Since we're not using the new auto parser as a fallback yet, add it manually as a quirk. Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit f0ca89b031d327b80b612a0608d31b8e13e6dc33 Author: David Henningsson Date: Tue Jun 21 20:51:34 2011 +0200 ALSA: HDA: Add a new Conexant codec ID (506c) Conexant ID 506c was found on Acer Aspire 3830TG. As users report no playback, sending to stable should be safe. Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/783582 Reported-by: andROOM Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit ae2a00607463ceb647ada550d7f34ba33177ef38 Author: Axel Lin Date: Mon Jun 27 22:37:16 2011 +0800 watchdog: gef_wdt: fix MODULE_ALIAS Remove the space between "platform:" prefix and the driver name. Signed-off-by: Axel Lin Acked-by: Martyn Welch Signed-off-by: Wim Van Sebroeck commit e376fd664b1547e29e264e3cfb97553a1be9054b Author: Jesper Juhl Date: Thu May 26 11:12:53 2011 +0200 watchdog: Intel SCU Watchdog: Fix build and remove duplicate code Trying to build the Intel SCU Watchdog fails for me with gcc 4.6.0 - $ gcc --version | head -n 1 gcc (GCC) 4.6.0 20110513 (prerelease) like this : CC drivers/watchdog/intel_scu_watchdog.o In file included from drivers/watchdog/intel_scu_watchdog.c:49:0: /home/jj/src/linux-2.6/arch/x86/include/asm/apb_timer.h: In function ‘apbt_time_init’: /home/jj/src/linux-2.6/arch/x86/include/asm/apb_timer.h:65:42: warning: ‘return’ with a value, in function returning void [enabled by default] drivers/watchdog/intel_scu_watchdog.c: In function ‘intel_scu_watchdog_init’: drivers/watchdog/intel_scu_watchdog.c:468:2: error: implicit declaration of function ‘sfi_get_mtmr’ [-Werror=implicit-function-declaration] drivers/watchdog/intel_scu_watchdog.c:468:32: warning: assignment makes pointer from integer without a cast [enabled by default] cc1: some warnings being treated as errors make[1]: *** [drivers/watchdog/intel_scu_watchdog.o] Error 1 make: *** [drivers/watchdog/intel_scu_watchdog.o] Error 2 Additionally, linux/types.h is needlessly being included twice in drivers/watchdog/intel_scu_watchdog.c Signed-off-by: Jesper Juhl Signed-off-by: Wim Van Sebroeck commit db98f89a2807966c6e82601f5c57e1a9c214c91a Author: Florian Fainelli Date: Wed Jun 15 19:15:52 2011 +0200 watchdog: mtx1-wdt: fix section mismatch Fix section mismatch and remove unused variable 'tmp'. Signed-off-by: Florian Fainelli Signed-off-by: Wim Van Sebroeck commit 2ea4e76e997019ae25ac3417aa46e31ddf7ecb17 Author: Florian Fainelli Date: Wed Jun 15 19:15:41 2011 +0200 watchdog: mtx1-wdt: fix GPIO toggling Commit e391be76 (MIPS: Alchemy: Clean up GPIO registers and accessors) changed the way the GPIO was toggled. Prior to this patch, we would always actively drive the GPIO output to either 0 or 1, this patch drove the GPIO active to 0, and put the GPIO in tristate to drive it to 1, unfortunately this does not work, revert back to active driving. Using a signed variable (gstate) to hold the gpio state and using a bit- wise operation on it also resulted in toggling value from 1 to -2 since the variable is signed. This value was then passed on to gpio_direction_ output, which always perform a if (value) ... to set the value to the gpio, so we were always writing a 1 to this GPIO instead of 1 -> 0 -> 1 ... Signed-off-by: Florian Fainelli Signed-off-by: Wim Van Sebroeck Cc: stable commit 9b19d40aa3ebaf1078779da10555da2ab8512422 Author: Florian Fainelli Date: Wed Jun 15 19:15:23 2011 +0200 watchdog: mtx1-wdt: request gpio before using it Otherwise, the gpiolib autorequest feature will produce a WARN_ON(): WARNING: at drivers/gpio/gpiolib.c:101 0x8020ec6c() autorequest GPIO-215 [...] Signed-off-by: Florian Fainelli Signed-off-by: Wim Van Sebroeck Cc: stable commit 076bad7c4d2c51d9484f0ac60d68838139d2bf72 Author: Mark Brown Date: Tue May 31 14:46:55 2011 +0100 watchdog: Handle multiple wm831x watchdogs being registered Due to the whole single instance based watchdog API we use static data for the wm831x watchdog which means that if the system tries to register a second one we end up trying to register the same miscdevice again, corrupting the miscdevice list. Work around this by checking for duplicate registrations until we get a watchdog core. Signed-off-by: Mark Brown Signed-off-by: Wim Van Sebroeck commit 4274215d24633df7302069e51426659d4759c5ed Author: NeilBrown Date: Tue Jun 28 16:59:42 2011 +1000 md: avoid endless recovery loop when waiting for fail device to complete. If a device fails in a way that causes pending request to take a while to complete, md will not be able to immediately remove it from the array in remove_and_add_spares. It will then incorrectly look like a spare device and md will try to recover it even though it is failed. This leads to a recovery process starting and instantly aborting over and over again. We should check if the device is faulty before considering it to be a spare. This will avoid trying to start a recovery that cannot proceed. This bug was introduced in 2.6.26 so that patch is suitable for any kernel since then. Cc: stable@kernel.org Reported-by: Jim Paradis Signed-off-by: NeilBrown commit 353e5c9abd900de3d1a40925386ffe4abf76111e Author: Steffen Klassert Date: Wed Jun 22 01:05:37 2011 +0000 ipv4: Fix IPsec slowpath fragmentation problem ip_append_data() builds packets based on the mtu from dst_mtu(rt->dst.path). On IPsec the effective mtu is lower because we need to add the protocol headers and trailers later when we do the IPsec transformations. So after the IPsec transformations the packet might be too big, which leads to a slowpath fragmentation then. This patch fixes this by building the packets based on the lower IPsec mtu from dst_mtu(&rt->dst) and adapts the exthdr handling to this. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit 33f99dc7fd948bbc808a24a0989c167f8973b643 Author: Steffen Klassert Date: Wed Jun 22 01:04:37 2011 +0000 ipv4: Fix packet size calculation in __ip_append_data Git commit 59104f06 (ip: take care of last fragment in ip_append_data) added a check to see if we exceed the mtu when we add trailer_len. However, the mtu is already subtracted by the trailer length when the xfrm transfomation bundles are set up. So IPsec packets with mtu size get fragmented, or if the DF bit is set the packets will not be send even though they match the mtu perfectly fine. This patch actually reverts commit 59104f06. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit b0af8dfdd67699e25083478c63eedef2e72ebd85 Author: Linus Torvalds Date: Mon Jun 27 19:12:22 2011 -0700 Linux 3.0-rc5 commit ecbec53b1d00ba582f71b210ed96cafc05ebd189 Author: Hugh Dickins Date: Mon Jun 27 16:18:20 2011 -0700 drm/i915: more struct_mutex locking When auditing the locking in i915_gem.c (for a prospective change which I then abandoned), I noticed two places where struct_mutex is not held across GEM object manipulations that would usually require it. Since one is in initial setup and the other in driver unload, I'm guessing the mutex is not required for either; but post a patch in case it is. Signed-off-by: Hugh Dickins Cc: Chris Wilson Cc: Keith Packard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2377fe0b65e3c7577ff6df1701c56ef477d336f Author: Hugh Dickins Date: Mon Jun 27 16:18:19 2011 -0700 drm/i915: use shmem_truncate_range The interface to ->truncate_range is changing very slightly: once "tmpfs: take control of its truncate_range" has been applied, this can be applied. For now there is only a slight inefficiency while this remains unapplied, but it will soon become essential for managing shmem's use of swap. Change i915_gem_object_truncate() to use shmem_truncate_range() directly: which should also spare i915 later change if we switch from inode_operations->truncate_range to file_operations->fallocate. Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Cc: Chris Wilson Cc: Keith Packard Cc: Dave Airlie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5949eac4d9b5bf936c12cb7ec3a09084c1326834 Author: Hugh Dickins Date: Mon Jun 27 16:18:18 2011 -0700 drm/i915: use shmem_read_mapping_page Soon tmpfs will stop supporting ->readpage and read_cache_page_gfp(): once "tmpfs: add shmem_read_mapping_page_gfp" has been applied, this patch can be applied to ease the transition. Make i915_gem_object_get_pages_gtt() use shmem_read_mapping_page_gfp() in the one place it's needed; elsewhere use shmem_read_mapping_page(), with the mapping's gfp_mask properly initialized. Forget about __GFP_COLD: since tmpfs initializes its pages with memset, asking for a cold page is counter-productive. Include linux/shmem_fs.h also in drm_gem.c: with shmem_file_setup() now declared there too, we shall remove the prototype from linux/mm.h later. Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Cc: Chris Wilson Cc: Keith Packard Cc: Dave Airlie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3142b651ad2232cf0e375c291ee4b893c8559df5 Author: Hugh Dickins Date: Mon Jun 27 16:18:17 2011 -0700 drm/ttm: use shmem_read_mapping_page Soon tmpfs will stop supporting ->readpage and read_mapping_page(): once "tmpfs: add shmem_read_mapping_page_gfp" has been applied, this patch can be applied to ease the transition. ttm_tt_swapin() and ttm_tt_swapout() use shmem_read_mapping_page() in place of read_mapping_page(), since their swap_space has been created with shmem_file_setup(). Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Cc: Thomas Hellstrom Cc: Dave Airlie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a39bce7bf60e728cb33b6b0415c3f44e7f1a102b Author: Andrew Morton Date: Mon Jun 27 16:18:16 2011 -0700 drivers/tty/serial/8250_pci.c: fix warning Fis the warning drivers/tty/serial/8250_pci.c:1457: warning: initialization from incompatible pointer type Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1fc6e987d8f606371337211f52ff74c6753298a6 Author: Ralf Baechle Date: Mon Jun 27 16:18:15 2011 -0700 drivers/misc/ioc4.c: fix section mismatch / race condition Fix this section mismatch: WARNING: drivers/misc/ioc4.o(.data+0x144): Section mismatch in reference from the variable ioc4_load_modules_work to the function .devinit.text:ioc4_load_modules() The variable ioc4_load_modules_work references the function __devinit ioc4_load_modules() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console This one is potentially fatal; by the time ioc4_load_modules is invoked it may already have been freed. For that reason ioc4_load_modules_work can't be turned to __devinitdata but also because it's referenced in ioc4_exit. Signed-off-by: Ralf Baechle Acked-by: Brent Casavant Cc: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33721bd3d00e7a235f70ba4ec19eb64bcd060c0b Author: Ralf Baechle Date: Mon Jun 27 16:18:14 2011 -0700 drivers/leds/leds-lp5523.c: fix section mismatches Fix this section mismatch: WARNING: drivers/leds/leds-lp5523.o(.text+0x12f4): Section mismatch in reference from the function lp5523_probe() to the function .init.text:lp5523_init_led() The function lp5523_probe() references the function __init lp5523_init_led(). This is often because lp5523_probe lacks a __init annotation or the annotation of lp5523_init_led is wrong. Fixing this one triggers one more mismatch, fix that one as well. Signed-off-by: Ralf Baechle Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5286bd953645408634daa880d04c73dd18d0224a Author: Ralf Baechle Date: Mon Jun 27 16:18:13 2011 -0700 drivers/leds/leds-lp5521.c: fix section mismatches Fix this section mismatch: WARNING: drivers/leds/leds-lp5521.o(.text+0xf2c): Section mismatch in reference from the function lp5521_probe() to the function .init.text:lp5521_init_led() The function lp5521_probe() references the function __init lp5521_init_led(). This is often because lp5521_probe lacks a __init annotation or the annotation of lp5521_init_led is wrong. Fixing this mismatch triggers one more mismatch, fix that one as well. Signed-off-by: Ralf Baechle Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac34a1a3c39da0a1b9188d12a9ce85506364ed2a Author: KAMEZAWA Hiroyuki Date: Mon Jun 27 16:18:12 2011 -0700 memcg: fix direct softlimit reclaim to be called in limit path Commit d149e3b25d7c ("memcg: add the soft_limit reclaim in global direct reclaim") adds a softlimit hook to shrink_zones(). By this, soft limit is called as try_to_free_pages() do_try_to_free_pages() shrink_zones() mem_cgroup_soft_limit_reclaim() Then, direct reclaim is memcg softlimit hint aware, now. But, the memory cgroup's "limit" path can call softlimit shrinker. try_to_free_mem_cgroup_pages() do_try_to_free_pages() shrink_zones() mem_cgroup_soft_limit_reclaim() This will cause a global reclaim when a memcg hits limit. This is bug. soft_limit_reclaim() should be called when scanning_global_lru(sc) == true. And the commit adds a variable "total_scanned" for counting softlimit scanned pages....it's not "total". This patch removes the variable and update sc->nr_scanned instead of it. This will affect shrink_slab()'s scan condition but, global LRU is scanned by softlimit and I think this change makes sense. TODO: avoid too much scanning of a zone when softlimit did enough work. Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Cc: Ying Han Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26c4caea9d697043cc5a458b96411b86d7f6babd Author: Vasiliy Kulikov Date: Mon Jun 27 16:18:11 2011 -0700 taskstats: don't allow duplicate entries in listener mode Currently a single process may register exit handlers unlimited times. It may lead to a bloated listeners chain and very slow process terminations. Eg after 10KK sent TASKSTATS_CMD_ATTR_REGISTER_CPUMASKs ~300 Mb of kernel memory is stolen for the handlers chain and "time id" shows 2-7 seconds instead of normal 0.003. It makes it possible to exhaust all kernel memory and to eat much of CPU time by triggerring numerous exits on a single CPU. The patch limits the number of times a single process may register itself on a single CPU to one. One little issue is kept unfixed - as taskstats_exit() is called before exit_files() in do_exit(), the orphaned listener entry (if it was not explicitly deregistered) is kept until the next someone's exit() and implicit deregistration in send_cpu_listeners(). So, if a process registered itself as a listener exits and the next spawned process gets the same pid, it would inherit taskstats attributes. Signed-off-by: Vasiliy Kulikov Cc: Balbir Singh Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 08142579b6ca35883c1ed066a2681de6f6917062 Author: Jan Kara Date: Mon Jun 27 16:18:10 2011 -0700 mm: fix assertion mapping->nrpages == 0 in end_writeback() Under heavy memory and filesystem load, users observe the assertion mapping->nrpages == 0 in end_writeback() trigger. This can be caused by page reclaim reclaiming the last page from a mapping in the following race: CPU0 CPU1 ... shrink_page_list() __remove_mapping() __delete_from_page_cache() radix_tree_delete() evict_inode() truncate_inode_pages() truncate_inode_pages_range() pagevec_lookup() - finds nothing end_writeback() mapping->nrpages != 0 -> BUG page->mapping = NULL mapping->nrpages-- Fix the problem by doing a reliable check of mapping->nrpages under mapping->tree_lock in end_writeback(). Analyzed by Jay , lost in LKML, and dug out by Miklos Szeredi . Cc: Jay Cc: Miklos Szeredi Signed-off-by: Jan Kara Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b679320a5fbf46454011e5c62e0b8991b0956d1 Author: Peter Zijlstra Date: Mon Jun 27 16:18:09 2011 -0700 mm/memory-failure.c: fix spinlock vs mutex order We cannot take a mutex while holding a spinlock, so flip the order and fix the locking documentation. Signed-off-by: Peter Zijlstra Acked-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit aa2c96d6f329e66cc59352b0f12e8f04e6a9593b Author: Josh Hunt Date: Mon Jun 27 16:18:08 2011 -0700 drivers/misc/lkdtm.c: fix race when crashpoint is hit multiple times before checking count We observed the crash point count going negative in cases where the crash point is hit multiple times before the check of "count == 0" is done. Because of this we never call lkdtm_do_action(). This patch just adds a spinlock to protect count. Reported-by: Tapan Dhimant Signed-off-by: Josh Hunt Acked-by: Ankita Garg Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 507c5f1224014f9956e604ee8703b3bbea7da4a4 Author: Chris Metcalf Date: Mon Jun 27 16:18:07 2011 -0700 include/linux/compat.h: declare compat_sys_sendmmsg() This is required for tilegx to be able to use the compat unistd.h header where compat_sys_sendmmsg() is now mentioned. Signed-off-by: Chris Metcalf Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b4b2482e70eba10dd98653a3a5ac68126565e24 Author: Bob Liu Date: Mon Jun 27 16:18:06 2011 -0700 romfs: fix romfs_get_unmapped_area() argument check romfs_get_unmapped_area() checks argument `len' without considering PAGE_ALIGN which will cause do_mmap_pgoff() return -EINVAL error after commit f67d9b1576c ("nommu: add page_align to mmap"). Fix the check by changing it in same way ramfs_nommu_get_unmapped_area() was changed in ramfs/file-nommu.c. Signed-off-by: Bob Liu Cc: David Howells Cc: Paul Mundt Acked-by: Greg Ungerer Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8c95aa60d2ae3c4e63705ee0f18e155898b09662 Author: Richard Weinberger Date: Mon Jun 27 16:18:05 2011 -0700 um: add asm/percpu.h To make SLUB work on UML we need this_cpu_cmpxchg from asm-generic/percpu.h. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31c1771cdbf0edea96e109e24dae387d331b6d96 Author: Priyanka Jain Date: Mon Jun 27 16:18:04 2011 -0700 drivers/rtc/rtc-ds1307.c: add support for RTC device pt7c4338 PT7C4338 chip is being manufactured by Pericom Technology Inc. It is a serial real-time clock which provides: 1) Low-power clock/calendar. 2) Programmable square-wave output. It has 56 bytes of nonvolatile RAM. Its register set is same as that of rtc device: DS1307. Signed-off-by: Priyanka Jain Acked-by: Timur Tabi Reviewed-by: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9d90e5eb70e09903dadff42099b6c948f814050 Author: Hugh Dickins Date: Mon Jun 27 16:18:04 2011 -0700 tmpfs: add shmem_read_mapping_page_gfp Although it is used (by i915) on nothing but tmpfs, read_cache_page_gfp() is unsuited to tmpfs, because it inserts a page into pagecache before calling the filesystem's ->readpage: tmpfs may have pages in swapcache which only it knows how to locate and switch to filecache. At present tmpfs provides a ->readpage method, and copes with this by copying pages; but soon we can simplify it by removing its ->readpage. Provide shmem_read_mapping_page_gfp() now, ready for that transition, Export shmem_read_mapping_page_gfp() and add it to list in shmem_fs.h, with shmem_read_mapping_page() inline for the common mapping_gfp case. (shmem_read_mapping_page_gfp or shmem_read_cache_page_gfp? Generally the read_mapping_page functions use the mapping's ->readpage, and the read_cache_page functions use the supplied filler, so I think read_cache_page_gfp was slightly misnamed.) Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 94c1e62df4494b79782cb9c7279f827212d1de70 Author: Hugh Dickins Date: Mon Jun 27 16:18:03 2011 -0700 tmpfs: take control of its truncate_range 2.6.35's new truncate convention gave tmpfs the opportunity to control its file truncation, no longer enforced from outside by vmtruncate(). We shall want to build upon that, to handle pagecache and swap together. Slightly redefine the ->truncate_range interface: let it now be called between the unmap_mapping_range()s, with the filesystem responsible for doing the truncate_inode_pages_range() from it - just as the filesystem is nowadays responsible for doing that from its ->setattr. Let's rename shmem_notify_change() to shmem_setattr(). Instead of calling the generic truncate_setsize(), bring that code in so we can call shmem_truncate_range() - which will later be updated to perform its own variant of truncate_inode_pages_range(). Remove the punch_hole unmap_mapping_range() from shmem_truncate_range(): now that the COW's unmap_mapping_range() comes after ->truncate_range, there is no need to call it a third time. Export shmem_truncate_range() and add it to the list in shmem_fs.h, so that i915_gem_object_truncate() can call it explicitly in future; get this patch in first, then update drm/i915 once this is available (until then, i915 will just be doing the truncate_inode_pages() twice). Though introduced five years ago, no other filesystem is implementing ->truncate_range, and its only other user is madvise(,,MADV_REMOVE): we expect to convert it to fallocate(,FALLOC_FL_PUNCH_HOLE,,) shortly, whereupon ->truncate_range can be removed from inode_operations - shmem_truncate_range() will help i915 across that transition too. Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 072441e21ddcd1140606b7d4ef6eab579a86b0b3 Author: Hugh Dickins Date: Mon Jun 27 16:18:02 2011 -0700 mm: move shmem prototypes to shmem_fs.h Before adding any more global entry points into shmem.c, gather such prototypes into shmem_fs.h. Remove mm's own declarations from swap.h, but for now leave the ones in mm.h: because shmem_file_setup() and shmem_zero_setup() are called from various places, and we should not force other subsystems to update immediately. Signed-off-by: Hugh Dickins Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b8ba10198a109f8a02380648c5d29000caa9c55 Author: Hugh Dickins Date: Mon Jun 27 16:18:01 2011 -0700 mm: move vmtruncate_range to truncate.c You would expect to find vmtruncate_range() next to vmtruncate() in mm/truncate.c: move it there. Signed-off-by: Hugh Dickins Acked-by: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4d258b25d947521c8b913154db61ec55198243f8 Author: Vitaliy Ivanov Date: Mon Jun 27 19:07:08 2011 +0300 Fix some kernel-doc warnings Fix 'make htmldocs' warnings: Warning(/include/linux/hrtimer.h:153): No description found for parameter 'clockid' Warning(/include/linux/device.h:604): Excess struct/union/enum/typedef member 'of_match' description in 'device' Warning(/include/net/sock.h:349): Excess struct/union/enum/typedef member 'sk_rmem_alloc' description in 'sock' Signed-off-by: Vitaliy Ivanov Acked-by: Grant Likely Acked-by: David S. Miller Signed-off-by: Linus Torvalds commit 69f81e86540716e68e98e401bb91f339d6a0d31f Merge: 4a65163 b90ea76 5afa9d3 Author: Ben Dooks Date: Mon Jun 27 23:07:24 2011 +0100 Merge branches 'for-30-rc4/i2c-bfin', 'for-30-rc4/i2c-omap', 'for-30-rc4/i2c-s3c' and 'for-30-rc4/i2c-tegra' into for-30-rc5/all-i2c commit 4a65163e3b2190445c1d94daa21d09c5af604d97 Author: Sonic Zhang Date: Thu Jun 23 17:07:54 2011 -0400 i2c-bfin-twi: abort transfer is MEM bit is reset unexpectedly Sometimes, the first I2C transmit interrupt is not serviced in time (like when higher priority interrupts take too long). Since the RESTART bit is not set before the next I2C clock, when the TWI handler is finally called, the I2C session is aborted (MEM bit is reset) and both SMITSERV and MCOMP int status bits are set. So when this happens, abort the transfer. Reported-by: Isabelle Leonardi Signed-off-by: Sonic Zhang Signed-off-by: Mike Frysinger Signed-off-by: Ben Dooks commit b90ea76542c53300d39e76f72cf583cd0e0b1f68 Author: Jonghwan Choi Date: Thu Jun 23 21:37:20 2011 +0900 i2c-s3c2410: Remove useless break code Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim Signed-off-by: Ben Dooks commit 19820510c504d5ba572959c67a72d913afc187a6 Author: Huisung Kang Date: Thu Jun 23 21:37:33 2011 +0900 i2c-s3c2410: Fix typo 'i2s' -> 'i2c' Signed-off-by: Huisung Kang Signed-off-by: Kukjin Kim Signed-off-by: Ben Dooks commit 5afa9d35782890e8fbd972f12ee5183ba5feb81d Author: Stephen Warren Date: Mon Jun 6 11:25:19 2011 -0600 i2c: tegra: Assign unused slave address On Tegra, we should always use the "new" I2C slave controller, to avoid issues with the old controller. This was implemented in commit 65a1a0a "i2c: tegra: Enable new slave mode." There is currently no driver for the Tegra I2C slave controller upstream. Additionally, the controller cannot be completely disabled. Instead, we need to: a) Set I2C_SL_CNFG_NACK to make the controller automatically NACK any incoming transactions. b) The controller's definition of NACK isn't identical to the I2C protocol's definition. Specifically, it will perform a standard NACK, but *also* continue to hold the clock line low in expectation of receiving more data. This can hang the bus, or at least cause transaction timeouts, if something starts a transaction that matches the controller's slave address. Since the default address is 0x00, the general call address, this does occur in practice. To avoid this, we explicitly program a slave address that is reserved for future expansion. For current boards, this guarantees the address will never be used. If a future board ever needs to use this address, we can add platform data to determine a board-specific safe address. 0xfc is picked by this patch. This patch is based on a change previously posted by: Wei Ni http://www.spinics.net/lists/linux-i2c/msg05437.html In turned based on internal changes by: Bharat Nihalani A semantically equivalent change has been contained in the various ChromeOS kernels for a while. I tested this change on top of 3.0-rc2 on Harmony, and interacted with the WM8903 I2C-based audio codec. Signed-off-by: Stephen Warren Signed-off-by: Ben Dooks commit a64227b0855c42b5c037011afa80580ca3228527 Merge: c6830c2 c31b55c Author: Linus Torvalds Date: Mon Jun 27 14:55:43 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: mmc: queue: bring discard_granularity/alignment into line with SCSI mmc: queue: append partition subname to queue thread name mmc: core: make erase timeout calculation allow for gated clock mmc: block: switch card to User Data Area when removing the block driver mmc: sdio: reset card during power_restore mmc: cb710: fix #ifdef HAVE_EFFICIENT_UNALIGNED_ACCESS mmc: sdhi: DMA slave ID 0 is invalid mmc: tmio: fix regression in TMIO_MMC_WRPROTECT_DISABLE handling mmc: omap_hsmmc: use original sg_len for dma_unmap_sg mmc: omap_hsmmc: fix ocr mask usage mmc: sdio: fix runtime PM path during driver removal mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader mmc: sdhi: fix module unloading mmc: of_mmc_spi: add NO_IRQ define to of_mmc_spi.c mmc: vub300: fix null dereferences in error handling commit a73738e9f85fa6ba3f1f9a6ea95b5e5fa99579a2 Author: Greg Kroah-Hartman Date: Mon Jun 27 14:43:34 2011 -0700 Staging: comedi: fix build breakages on some platforms Some platforms do not have virt_to_bus(), so properly depend on CONFIG_VIRT_TO_BUS for the Comedi drivers that need this function. Reported-by: Stephen Rothwell Signed-off-by: Greg Kroah-Hartman commit d4620396d7e9759dd3f37a8155827477cf2b5309 Author: Greg Kroah-Hartman Date: Mon Jun 27 14:34:42 2011 -0700 Staging: brcm80211: disable drivers except for X86 or MIPS platforms As David points out, the driver is also broken on SPARC, so might as well just only enable it on platforms where people have reported it working, instead of trying to list all of the ones where it doesn't work, as the working platform list is much smaller... Reported-by: David Miller Reported-by: Stephen Rothwell Cc: Henry Ptasinski Cc: Brett Rudley Cc: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 15e5201dfd4eebfce5e50b068ed40cb5f574fee6 Author: Greg Kroah-Hartman Date: Thu Jun 9 13:16:13 2011 -0700 Staging: brcm80211: disable drivers for PPC platforms Right now, bad things happen if you try to build these drivers for the PPC platform as it seems that the code only has been tested and built on the MIPS big endian platform. So disable it on the PPC32 and PPC64 platforms for now, hopefully this will be resolved in the future as I'm sure someone will want to use these chips with that platform someday. Reported-by: Stephen Rothwell Cc: Henry Ptasinski Cc: Brett Rudley Cc: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 928f9111662574c1ac1dfa221c4e502ec713aed9 Author: Geert Uytterhoeven Date: Tue May 31 11:37:40 2011 +0200 Staging: iio: Make IIO depend on GENERIC_HARDIRQS On m68k (which doesn't support generic hardirqs yet): drivers/staging/iio/industrialio-trigger.c: In function ‘iio_trigger_poll’: drivers/staging/iio/industrialio-trigger.c:180: error: implicit declaration of function ‘generic_handle_irq’ drivers/staging/iio/industrialio-trigger.c: In function ‘iio_trigger_poll_chained’: drivers/staging/iio/industrialio-trigger.c:200: error: implicit declaration of function ‘handle_nested_irq’ drivers/staging/iio/industrialio-trigger.c: In function ‘iio_trig_release’: drivers/staging/iio/industrialio-trigger.c:379: error: implicit declaration of function ‘irq_modify_status’ drivers/staging/iio/industrialio-trigger.c:382: error: implicit declaration of function ‘irq_set_chip’ drivers/staging/iio/industrialio-trigger.c:384: error: implicit declaration of function ‘irq_set_handler’ drivers/staging/iio/industrialio-trigger.c:388: error: implicit declaration of function ‘irq_free_descs’ drivers/staging/iio/industrialio-trigger.c: In function ‘iio_trig_subirqmask’: drivers/staging/iio/industrialio-trigger.c:402: error: implicit declaration of function ‘irq_data_get_irq_chip’ drivers/staging/iio/industrialio-trigger.c:402: warning: initialization makes pointer from integer without a cast drivers/staging/iio/industrialio-trigger.c: In function ‘iio_trig_subirqunmask’: drivers/staging/iio/industrialio-trigger.c:411: warning: initialization makes pointer from integer without a cast drivers/staging/iio/industrialio-trigger.c: In function ‘iio_allocate_trigger’: drivers/staging/iio/industrialio-trigger.c:432: error: implicit declaration of function ‘irq_alloc_descs’ drivers/staging/iio/industrialio-trigger.c:455: error: ‘handle_simple_irq’ undeclared (first use in this function) drivers/staging/iio/industrialio-trigger.c:455: error: (Each undeclared identifier is reported only once drivers/staging/iio/industrialio-trigger.c:455: error: for each function it appears in.) Hence IIO_TRIGGER should depend on GENERIC_HARDIRQS. But as IIO_TRIGGER and IIO_RING_BUFFER form a maze of dependencies and selects, just make the whole IIO subsystem depend on GENERIC_HARDIRQS. This dependency also covers !S390, so that one can be removed again. Signed-off-by: Geert Uytterhoeven Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a534bb6eea72c0d082dd2faab85450e5554ba1c8 Author: Tomas Winkler Date: Mon Jun 13 16:39:31 2011 +0300 Staging: mei: fix suspend failure wait_event_interruptible_timeout return value was wrongly used. The remaining timeout was used as the error code. This fix translated wait_event_interruptible_timeout return value into error code that can be propagated. [10291.674121] pci_pm_suspend(): mei_pci_suspend+0x0/0x8b [mei] returns 2500 It's thinkpad t400 with 00:03.0 Communication controller [0780]: Intel Corporation Mobile 4 Series Chipset MEI Controller [8086:2a44] (rev 07) Reported-by: Arkadiusz Miskiewicz Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit fdf2df0e8ce634c9ee5f740a9303e8518ca78932 Author: Randy Dunlap Date: Tue Jun 14 15:00:18 2011 -0700 Staging: fix iio builds when IIO_RING_BUFFER is not enabled Fix build by moving enum list outside of #ifdef CONFIG_IIO_RING_BUFFER. drivers/staging/iio/accel/adis16201_core.c:413: error: 'ADIS16201_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:417: error: 'ADIS16201_SCAN_TEMP' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:422: error: 'ADIS16201_SCAN_ACC_X' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:427: error: 'ADIS16201_SCAN_ACC_Y' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:432: error: 'ADIS16201_SCAN_AUX_ADC' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:436: error: 'ADIS16201_SCAN_INCLI_X' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:441: error: 'ADIS16201_SCAN_INCLI_Y' undeclared here (not in a function) vers/staging/iio/accel/adis16203_core.c:374: error: 'ADIS16203_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/accel/adis16203_core.c:378: error: 'ADIS16203_SCAN_AUX_ADC' undeclared here (not in a function) drivers/staging/iio/accel/adis16203_core.c:382: error: 'ADIS16203_SCAN_INCLI_X' undeclared here (not in a function) drivers/staging/iio/accel/adis16203_core.c:388: error: 'ADIS16203_SCAN_INCLI_Y' undeclared here (not in a function) drivers/staging/iio/accel/adis16203_core.c:392: error: 'ADIS16203_SCAN_TEMP' undeclared here (not in a function) Signed-off-by: Randy Dunlap Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6fab3e1fbc83e6d61e8c28ceab513274183a96f6 Author: Ralf Baechle Date: Thu Jun 23 12:45:37 2011 +0100 Staging: Comedi: Build only on arches providing PAGE_KERNEL_NOCACHE On architectures that don't define PAGE_KERNEL_NOCACHE, the Comedi driver turns into tragedy: CC [M] drivers/staging/comedi/drivers.o drivers/staging/comedi/drivers.c: In function ‘comedi_buf_alloc’: drivers/staging/comedi/drivers.c:505:41: error: ‘PAGE_KERNEL_NOCACHE’ undeclared (first use in this function) drivers/staging/comedi/drivers.c:505:41: note: each undeclared identifier is rep orted only once for each function it appears in make[3]: *** [drivers/staging/comedi/drivers.o] Error 1 Restrict the driver to only those architectures that define PAGE_KERNEL_NOCACHE. PAGE_KERNEL_NOCACHE is a kludge - some system architectures such as SGI IP27 are even uable to offer uncached operation - at least in the way an unwitting driver might assume. I haven't looked in details how the driver is using the area vmaped with PAGE_KERNEL_NOCACHE but maybe doing it XFS-style using cached memory and the flush_kernel_vmap_range / invalidate_kernel_vmap_range APIs in conjunction with the DMA API is a practical alternative. Signed-off-by: Ralf Baechle Reported-by: David Miller Reported-by: Stephen Rothwell Acked-by: Geert Uytterhoeven Cc: Martyn Welch Signed-off-by: Greg Kroah-Hartman commit 89089158d191ba0195b33ebf35f91ed217d44848 Author: Randy Dunlap Date: Fri Jun 24 09:28:32 2011 -0700 Staging: fix more iio builds when IIO_RING_BUFFER is not enabled Fix lots more build errors in staging/iio when CONFIG_IIO_RING_BUFFER is not enabled by moving enums and defines outside of the CONFIG_IIO_RING_BUFFER ifdef block. Examples (one from each driver; there were 116 total errors): drivers/staging/iio/accel/adis16204_core.c:437: error: 'ADIS16204_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/accel/adis16209_core.c:410: error: 'ADIS16209_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/gyro/adis16260_core.c:420: error: 'ADIS16260_SCAN_GYRO' undeclared here (not in a function) drivers/staging/iio/imu/adis16400_core.c:565: error: 'ADIS16400_SCAN_SUPPLY' undeclared here (not in a function) Signed-off-by: Randy Dunlap Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c6830c22603aaecf65405af23f6da2d55892f9cb Author: KAMEZAWA Hiroyuki Date: Thu Jun 16 17:28:07 2011 +0900 Fix node_start/end_pfn() definition for mm/page_cgroup.c commit 21a3c96 uses node_start/end_pfn(nid) for detection start/end of nodes. But, it's not defined in linux/mmzone.h but defined in /arch/???/include/mmzone.h which is included only under CONFIG_NEED_MULTIPLE_NODES=y. Then, we see mm/page_cgroup.c: In function 'page_cgroup_init': mm/page_cgroup.c:308: error: implicit declaration of function 'node_start_pfn' mm/page_cgroup.c:309: error: implicit declaration of function 'node_end_pfn' So, fixiing page_cgroup.c is an idea... But node_start_pfn()/node_end_pfn() is a very generic macro and should be implemented in the same manner for all archs. (m32r has different implementation...) This patch removes definitions of node_start/end_pfn() in each archs and defines a unified one in linux/mmzone.h. It's not under CONFIG_NEED_MULTIPLE_NODES, now. A result of macro expansion is here (mm/page_cgroup.c) for !NUMA start_pfn = ((&contig_page_data)->node_start_pfn); end_pfn = ({ pg_data_t *__pgdat = (&contig_page_data); __pgdat->node_start_pfn + __pgdat->node_spanned_pages;}); for NUMA (x86-64) start_pfn = ((node_data[nid])->node_start_pfn); end_pfn = ({ pg_data_t *__pgdat = (node_data[nid]); __pgdat->node_start_pfn + __pgdat->node_spanned_pages;}); Changelog: - fixed to avoid using "nid" twice in node_end_pfn() macro. Reported-and-acked-by: Randy Dunlap Reported-and-tested-by: Ingo Molnar Acked-by: Mel Gorman Signed-off-by: KAMEZAWA Hiroyuki Signed-off-by: Linus Torvalds commit 857aab34f04ff86666aa80e751ee696eff0113dd Author: matt mooney Date: Fri Jun 17 15:50:46 2011 -0700 MAINTAINERS: add myself as maintainer of USB/IP Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 87abd0a92c72eea71542d6c972c67e39e584e989 Author: Yoshihiro Shimoda Date: Tue Jun 21 13:24:42 2011 +0900 usb: r8a66597-hcd: fix cannot detect low/full speed device This controller can control "Transaction Translators", but the hcd->has_tt is not set. Since the commit d199c96d41d80a567493e12b8e96ea056a1350c1 ("USB: prevent buggy from crashing the USB stack") has checked it, the driver could not work the low/full speed device. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Greg Kroah-Hartman commit c27d5368ef1f7ea40bcd1fb2626f4c99d77e0080 Author: Gabor Juhos Date: Mon Jun 20 17:22:36 2011 +0200 USB: ehci-ath79: fix a NULL pointer dereference Loading the ehci-hcd module on the ath79 platform causes a NULL pointer dereference: CPU 0 Unable to handle kernel paging request at virtual address 00000000, epc == c0252928, ra == c00de968 Oops[#1]: Cpu 0 $ 0 : 00000000 00000070 00000001 00000000 $ 4 : 802cf870 0000117e ffffffff 8019c7bc $ 8 : 0000000a 00000002 00000001 fffffffb $12 : 8026ef20 0000000f ffffff80 802dad3c $16 : 8077a2d4 8077a200 c00f3484 8019ed84 $20 : c00f0000 00000003 000000a0 80262c2c $24 : 00000002 80079da0 $28 : 80788000 80789c80 80262b14 c00de968 Hi : 00000000 Lo : b61f0000 epc : c0252928 __mod_vermagic5+0xc260/0xc7e8 [ehci_hcd] Not tainted ra : c00de968 usb_add_hcd+0x2a4/0x858 [usbcore] Status: 1000c003 KERNEL EXL IE Cause : 00800008 BadVA : 00000000 PrId : 00019374 (MIPS 24Kc) Modules linked in: ehci_hcd(+) pppoe pppox ipt_REJECT xt_TCPMSS ipt_LOG xt_comment xt_multiport xt_mac xt_limit iptable_mangle iptable_filte r ip_tables xt_tcpudp x_tables ppp_async ppp_generic slhc ath mac80211 usbcore nls_base input_polldev crc_ccitt cfg80211 compat input_core a rc4 aes_generic crypto_algapi Process insmod (pid: 379, threadinfo=80788000, task=80ca2180, tls=77fe52d0) Stack : c0253184 80c57d80 80789cac 8077a200 00000001 8019edc0 807fa800 8077a200 8077a290 c00f3484 8019ed84 c00f0000 00000003 000000a0 80262c2c c00de968 802d0000 800878cc c0253228 c02528e4 c0253184 80c57d80 80bf6800 80ca2180 8007b75c 00000000 8077a200 802cf830 802d0000 00000003 fffffff4 00000015 00000348 00000124 800b189c c024bb4c c0255000 801a27e8 c0253228 c02528e4 ... Call Trace: [] __mod_vermagic5+0xc260/0xc7e8 [ehci_hcd] It is caused by: commit c430131a02d677aa708f56342c1565edfdacb3c0 Author: Jan Andersson Date: Tue May 3 20:11:57 2011 +0200 USB: EHCI: Support controllers with big endian capability regs The two first HC capability registers (CAPLENGTH and HCIVERSION) are defined as one 8-bit and one 16-bit register. Most HC implementations have selected to treat these registers as part of a 32-bit register, giving the same layout for both big and small endian systems. This patch adds a new quirk, big_endian_capbase, to support controllers with big endian register interfaces that treat HCIVERSION and CAPLENGTH as individual registers. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman The reading of the HC capability register has been moved by that commit to a place where the ehci->caps field is not initialized yet. This patch moves the reading of the register back to the original place. Acked-by: Jan Andersson Cc: Alan Stern Signed-off-by: Gabor Juhos Signed-off-by: Greg Kroah-Hartman commit 309427b6351b763917caac3e4b2ab5651df99823 Author: Uwe Bonnes Date: Fri Jun 17 17:30:23 2011 +0200 USB: Add new FT232H chip to drivers/usb/serial/ftdi_sio.c appended patch adds support for the new FTDI FT232H chip. This chip is a single channel version of the dual FT2232H/quad FT4232H, coming with it's own default PID 0x6014 (FT2232H uses the same PID 0x6010 like FT2232C, FT4232H has also it's own PID). The patch was checked on an UM232H module and a terminal program with TX/RX shorted to that typing in the terminal reproduced the characters. Signed-off-by: Uwe Bonnes Cc: stable Signed-off-by: Greg Kroah-Hartman commit 8b1ab60c767f33d79894ef66037ef851a7a88fc8 Author: Arvid Brodin Date: Fri Jun 17 18:45:37 2011 +0200 usb/isp1760: Fix bug preventing the unlinking of control urbs Both control and bulk transfers use isp1760 slots of type ATL, but the driver unlink code for ATL slots only acts on urbs describing a bulk transfer, letting the code for INT slots take care of the unlink instead, which often ended up removing the interrupt transfer for root hub events instead. That's not good, and gets fixed by this patch. Signed-off-by: Arvid Brodin Cc: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit 95a2424ff9221624c3944f3732f6cfacbb522ae4 Merge: 0af212b a9e7586 Author: Greg Kroah-Hartman Date: Mon Jun 27 13:35:23 2011 -0700 Merge branch 'for-usb-linus' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-linus * 'for-usb-linus' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: USB: Fix up URB error codes to reflect implementation. xhci: Always set urb->status to zero for isoc endpoints. xhci: Add reset on resume quirk for asrock p67 host xHCI 1.0: Incompatible Device Error xHCI 1.0: Force Stopped Event(FSE) xhci: Don't warn about zeroed bMaxBurst descriptor field. USB: Free bandwidth when usb_disable_device is called. xhci: Reject double add of active endpoints. commit af4087e0e682df12bdffec5cfafc2fec9208716e Merge: 4699d44 2f7e33d Author: Linus Torvalds Date: Mon Jun 27 13:32:14 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: btrfs: fix inconsonant inode information Btrfs: make sure to update total_bitmaps when freeing cache V3 Btrfs: fix type mismatch in find_free_extent() Btrfs: make sure to record the transid in new inodes commit a66b98db570a638afd909459e1e6bfa272344bd3 Author: Arik Nemtsov Date: Thu Jun 23 00:00:24 2011 +0300 mac80211: fix rx->key NULL dereference during mic failure Sometimes when reporting a MIC failure rx->key may be unset. This code path is hit when receiving a packet meant for a multicast address, and decryption is performed in HW. Fortunately, the failing key_idx is not used for anything up to (and including) usermode, so we allow ourselves to drop it on the way up when a key cannot be retrieved. Signed-off-by: Arik Nemtsov Cc: stable@kernel.org Signed-off-by: John W. Linville commit 8fcbd4dc7a1b338b393dcd6869deb1725cf1a9f3 Author: Evgeni Golov Date: Sun Jun 12 05:34:31 2011 -0700 iwlagn: fix *_UCODE_API_MAX output in the firmware field Currently (3.0-rc2), modinfo iwlagn shows: firmware: iwlwifi-5150-IWL5150_UCODE_API_MAX.ucode firmware: iwlwifi-5000-IWL5000_UCODE_API_MAX.ucode firmware: iwlwifi-6000g2b-IWL6000G2_UCODE_API_MAX.ucode firmware: iwlwifi-6000g2a-IWL6000G2_UCODE_API_MAX.ucode firmware: iwlwifi-6050-IWL6050_UCODE_API_MAX.ucode firmware: iwlwifi-6000-IWL6000_UCODE_API_MAX.ucode firmware: iwlwifi-100-IWL100_UCODE_API_MAX.ucode firmware: iwlwifi-1000-IWL1000_UCODE_API_MAX.ucode firmware: iwlwifi-105-IWL105_UCODE_API_MAX.ucode firmware: iwlwifi-2030-IWL2030_UCODE_API_MAX.ucode firmware: iwlwifi-2000-IWL2000_UCODE_API_MAX.ucode which is obviously wrong, the user should not see the *_UCODE_API_MAX macros but the actual ucode API versions here. The problem are the #define *_MODULE_FIRMWARE(api) *_FW_PRE #api ".ucode" which do not expand api correctly (because this is a macro itself). Fixed by using __stringify() from linux/stringify.h. Further information about macro stringification can be found here: http://gcc.gnu.org/onlinedocs/cpp/Stringification.html Signed-off-by: Evgeni Golov Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit ed9ed3b82b12ac70aaa654ef32ebf393ec3179e0 Merge: 9935d12 e815407 Author: John W. Linville Date: Mon Jun 27 14:26:04 2011 -0400 Merge branch 'wireless-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 4699d4423c07a1db35ea9453eac3a07e818338f9 Merge: 375ac3e 4a33821 Author: Linus Torvalds Date: Mon Jun 27 09:01:29 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: prevent bogus assert when trying to remove non-existent attribute xfs: clear XFS_IDIRTY_RELEASE on truncate down xfs: reset inode per-lifetime state when recycling it commit 375ac3e09640fb16b6e6f1a1f1ee8aec30183fdf Merge: edcda26 c3ead6d Author: Linus Torvalds Date: Mon Jun 27 09:00:50 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: HID: hid-multitouch: add support for a new Lumio dual-touch panel HID: hid-multitouch: correct VID for Stantum panels HID: hid-multitouch: ensure slots are initialized commit edcda265225b90c8700b21758fffcba61d19e046 Merge: 9c317b3 111b20d Author: Linus Torvalds Date: Mon Jun 27 08:58:23 2011 -0700 Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm * 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm: ARM: pm: ensure ARMv7 CPUs save and restore the TLS register ARM: pm: proc-v7: fix missing struct processor pointers for suspend code ARM: 6969/1: plat-iop: fix build error ARM: 6961/1: zImage: Add build-time check for correctly-sized proc_type entries ARM: SMP: wait for CPU to be marked active ARM: 6963/1: Thumb-2: Relax relocation requirements for non-function symbols ARM: 6962/1: mach-h720x: fix build error ARM: 6959/1: SMP build fix for entry-macro-multi.S commit 9c317b3bed40fed07e2ed536afca3b58952ac432 Merge: 258e43f 859c965 Author: Linus Torvalds Date: Mon Jun 27 08:57:46 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] allow setting of upper 32 bit in smp_ctl_set_bit [S390] hwsampler: Set a sane default sampling rate [S390] s390: enforce HW limits for the initial sampling rate [S390] kvm-s390: fix kconfig dependencies commit 2f7e33d432d097a2a7f467b031bf18be91cb3d49 Author: Miao Xie Date: Thu Jun 23 07:27:13 2011 +0000 btrfs: fix inconsonant inode information When iputting the inode, We may leave the delayed nodes if they have some delayed items that have not been dealt with. So when the inode is read again, we must look up the relative delayed node, and use the information in it to initialize the inode. Or we will get inconsonant inode information, it may cause that the same directory index number is allocated again, and hit the following oops: [ 5447.554187] err add delayed dir index item(name: pglog_0.965_0) into the insertion tree of the delayed node(root id: 262, inode id: 258, errno: -17) [ 5447.569766] ------------[ cut here ]------------ [ 5447.575361] kernel BUG at fs/btrfs/delayed-inode.c:1301! [SNIP] [ 5447.790721] Call Trace: [ 5447.793191] [] btrfs_insert_dir_item+0x189/0x1bb [btrfs] [ 5447.800156] [] btrfs_add_link+0x12b/0x191 [btrfs] [ 5447.806517] [] btrfs_add_nondir+0x31/0x58 [btrfs] [ 5447.812876] [] btrfs_create+0xf9/0x197 [btrfs] [ 5447.818961] [] vfs_create+0x72/0x92 [ 5447.824090] [] do_last+0x22c/0x40b [ 5447.829133] [] path_openat+0xc0/0x2ef [ 5447.834438] [] ? __perf_event_task_sched_out+0x24/0x44 [ 5447.841216] [] ? perf_event_task_sched_out+0x59/0x67 [ 5447.847846] [] do_filp_open+0x3d/0x87 [ 5447.853156] [] ? strncpy_from_user+0x43/0x4d [ 5447.859072] [] ? getname_flags+0x2e/0x80 [ 5447.864636] [] ? do_getname+0x14b/0x173 [ 5447.870112] [] ? audit_getname+0x16/0x26 [ 5447.875682] [] ? spin_lock+0xe/0x10 [ 5447.880882] [] do_sys_open+0x69/0xae [ 5447.886153] [] sys_open+0x20/0x22 [ 5447.891114] [] system_call_fastpath+0x16/0x1b Fix it by reusing the old delayed node. Reported-by: Jim Schutt Signed-off-by: Miao Xie Tested-by: Jim Schutt Signed-off-by: Chris Mason commit e815407d395e0b7fd1aa9145d9d0c391191b833c Author: Johannes Berg Date: Mon Jun 27 07:54:49 2011 -0700 iwlagn: map command buffers BIDI Evidently, the device sometimes wants to write back to command buffers, even if I see no reason why it should. Allow it to do that. Tested-by: Andy Lutomirski Tested-by: Kyle McMartin Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 1107a08a1a3e0f54d535d37ee0c4192acce6a7f3 Author: Johannes Berg Date: Mon Jun 27 07:48:52 2011 -0700 iwlagn: fix cmd queue unmap When we stop the device while a command is in flight that uses multiple TBs, we can leak the DMA buffers for the second and higher TBs. Fix this by using iwlagn_unmap_tfd() as we do when we normally recover the entry. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 726e99ab88db059fe1422e15376ae404f8c66eb4 Author: Shaohua Li Date: Mon Jun 27 09:03:48 2011 +0200 cfq-iosched: make code consistent ioc->ioc_data is rcu protectd, so uses correct API to access it. This doesn't change any behavior, but just make code consistent. Signed-off-by: Shaohua Li Cc: stable@kernel.org # after ab4bd22d Signed-off-by: Jens Axboe commit 3181faa85bda3dc3f5e630a1846526c9caaa38e3 Author: Shaohua Li Date: Mon Jun 27 09:03:47 2011 +0200 cfq-iosched: fix a rcu warning I got a rcu warnning at boot. the ioc->ioc_data is rcu_deferenced, but doesn't hold rcu_read_lock. Signed-off-by: Shaohua Li Cc: stable@kernel.org # after ab4bd22d Signed-off-by: Jens Axboe commit 258e43fdb00c73d424b114ae3850accd55b27cbb Merge: 804a007 daf6c45 Author: Linus Torvalds Date: Sun Jun 26 19:40:31 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN cifs: free blkcipher in smbhash commit 804a007f5401f87fc6e7da1e8884dc32912e35d0 Merge: 8abf558 9403c9c Author: Linus Torvalds Date: Sun Jun 26 19:39:22 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: cifs: propagate errors from cifs_get_root() to mount(2) cifs: tidy cifs_do_mount() up a bit cifs: more breakage on mount failures cifs: close sget() races cifs: pull freeing mountdata/dropping nls/freeing cifs_sb into cifs_umount() cifs: move cifs_umount() call into ->kill_sb() cifs: pull cifs_mount() call up sanitize cifs_umount() prototype cifs: initialize ->tlink_tree in cifs_setup_cifs_sb() cifs: allocate mountdata earlier cifs: leak on mount if we share superblock cifs: don't pass superblock to cifs_mount() cifs: don't leak nls on mount failure cifs: double free on mount failure take bdi setup/destruction into cifs_mount/cifs_umount Acked-by: Steve French commit 7c9017e5b77118439952fe8dc22809bae4fae4b6 Author: Jesse Barnes Date: Thu Jun 16 12:18:54 2011 -0700 drm/i915: add Ivy Bridge page flip support Use the blit ring for submitting flips since the render ring doesn't generate flip complete interrupts. Fixes bugs: https://bugs.freedesktop.org/show_bug.cgi?id=38362 https://bugs.freedesktop.org/show_bug.cgi?id=38392 https://bugs.freedesktop.org/show_bug.cgi?id=38393 Signed-off-by: Jesse Barnes Reviewed-by: Daniel Vetter Reviewed-by: Kenneth Graunke Reviewed-by: Ben Widawsky Tested-by: Jian J Zhao Signed-off-by: Keith Packard commit 8c9f3aaf8e174ca914889ab7a916586f8fd1e641 Author: Jesse Barnes Date: Thu Jun 16 09:19:13 2011 -0700 drm/i915: split page flip queueing into per-chipset functions This makes things a little clearer and prevents us from running old code on a new chipset that may not be supported. Signed-off-by: Jesse Barnes Reviewied-by: Ben Widawsky Signed-off-by: Keith Packard commit c31b55cd4eaf050bb5a15bd8251da1b3c7edeb1c Author: Adrian Hunter Date: Thu Jun 23 13:40:29 2011 +0300 mmc: queue: bring discard_granularity/alignment into line with SCSI SCSI defines discard alignment as the offset to the first optimal discard. In the case of SD/MMC, that is always zero which is the default. SCSI defines discard granularity as a hint of a optimal discard size. That is much better expressed by the MMC "preferred erase size" (pref_erase) field. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit d09408ade08a08a710a247fb52aa50101e73ebf7 Author: Adrian Hunter Date: Thu Jun 23 13:40:28 2011 +0300 mmc: queue: append partition subname to queue thread name For example, an eMMC with 2 boot partitions will have 3 threads. The names change from: 40 ? 00:00:00 mmcqd/0 41 ? 00:00:00 mmcqd/0 42 ? 00:00:00 mmcqd/0 to: 40 ? 00:00:00 mmcqd/0 41 ? 00:00:00 mmcqd/0boot0 42 ? 00:00:00 mmcqd/0boot1 Signed-off-by: Adrian Hunter Cc: Andrei Warkentin Signed-off-by: Chris Ball commit 4cf8c6dd2e261da94b87c4deadcc136ab022b6ac Author: Adrian Hunter Date: Thu Jun 23 13:40:27 2011 +0300 mmc: core: make erase timeout calculation allow for gated clock The erase timeout calculation may depend on clock rate which is zero if the clock is gated, so use mmc_host_clk_rate() which allows for that case. Signed-off-by: Adrian Hunter Signed-off-by: Chris Ball commit ddd6fa7e794e62af3ec3eb4ffdc78489885701f2 Author: Adrian Hunter Date: Thu Jun 23 13:40:26 2011 +0300 mmc: block: switch card to User Data Area when removing the block driver The MMC block driver and other drivers (e.g. mmc-test) will expect the card to be switched to the User Data Area eMMC partition when they start. Hence the MMC block driver should ensure it is that way when it is removed. Signed-off-by: Adrian Hunter Cc: Andrei Warkentin Signed-off-by: Chris Ball commit c6e633ad916e2af244dbfd11abd2bc077870bdfd Author: Daniel Drake Date: Sat Jun 25 19:20:11 2011 +0100 mmc: sdio: reset card during power_restore mmc_sdio_power_restore() skips some steps that are performed in other power-related codepaths which are necessary to fully reset the card. Without this, runtime PM fails for SD8686 SDIO wifi on OLPC XO-1.5. Signed-off-by: Daniel Drake Signed-off-by: Chris Ball commit e9e8bcb8178e197d889ec31e79fa1ddc1732c8f9 Author: James Hogan Date: Tue Jun 21 10:55:34 2011 +0100 mmc: cb710: fix #ifdef HAVE_EFFICIENT_UNALIGNED_ACCESS HAVE_EFFICIENT_UNALIGNED_ACCESS is a config option, therefore it needs the CONFIG_ before it when used by the preprocessor. Signed-off-by: James Hogan Acked-by: Michał Mirosław Signed-off-by: Chris Ball commit 3e713373ce07b9f59c3901e7d39bc1edccda28da Author: Guennadi Liakhovetski Date: Tue May 24 12:24:07 2011 +0200 mmc: sdhi: DMA slave ID 0 is invalid Don't try to allocate DMA resources if the platform didn't specify positive DMA slave IDs. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 7d8b4c2a4b73da8e3632603691838ca5b2a8c26d Author: Guennadi Liakhovetski Date: Mon Jun 20 16:51:10 2011 +0200 mmc: tmio: fix regression in TMIO_MMC_WRPROTECT_DISABLE handling Commit b6147490e6aac82 ("mmc: tmio: split core functionality, DMA and MFD glue") broke handling of the TMIO_MMC_WRPROTECT_DISABLE flag by the tmio-mmc driver. This patch restores the original behaviour. Signed-off-by: Guennadi Liakhovetski Cc: Signed-off-by: Chris Ball commit a9120c33ffbb0b3448d833dae392edc90d6cfac2 Author: Per Forlin Date: Fri Jun 17 20:14:21 2011 +0200 mmc: omap_hsmmc: use original sg_len for dma_unmap_sg Don't use the returned sg_len from dma_map_sg() as inparameter to dma_unmap_sg(). Use the original sg_len for both dma_map_sg and dma_unmap_sg according to the documentation in DMA-API.txt. Signed-off-by: Per Forlin Reviewed-by: Venkatraman S Signed-off-by: Chris Ball commit 4a3dc6ef344ccfe80bf986aec0b05f51af000720 Author: Anand Gadiyar Date: Tue Jun 14 15:59:59 2011 +0530 mmc: omap_hsmmc: fix ocr mask usage The OMAP HSMMC driver uses an ocr_mask to determine the list of voltages supported by the card. It populates this mask based on the list of voltages supported by the regulator that supplies the voltage. Commit 64be97822b (omap4 hsmmc: Update ocr mask for MMC2 for regulator to use) passed a fixed ocr_mask from the OMAP4 SDP board file to limit the voltage to 2.9-3.0 Volts, and updated the driver to use this mask if provided, instead of using the regulator's supported voltages. However the commit is buggy - the ocr_mask is overridden by the regulator's capabilities anyway. Fix this. (The bug shows up when a system-wide suspend is attempted on the OMAP4 SDP/Blaze platforms. The eMMC card comes up at 3V, but drops to 1.65V after the system resumes). Signed-off-by: Anand Gadiyar Acked-by: Balaji T K Acked-by: Venkatraman S Tested-by: Kishore Kadiyala Signed-off-by: Sourav Poddar Signed-off-by: Chris Ball commit 297c7f2f158f7dfa9ab5813260ff954f9c2f83d2 Author: Ohad Ben-Cohen Date: Thu Jun 9 23:40:27 2011 +0000 mmc: sdio: fix runtime PM path during driver removal After commit e1866b3 "PM / Runtime: Rework runtime PM handling during driver removal" was introduced, the driver core stopped incrementing the runtime PM usage counter of the device during the invocation of the ->remove() callback. This indirectly broke SDIO's runtime PM path during driver removal, because no one calls _put_sync() anymore after ->remove() completes. This means that the power of runtime-PM-managed SDIO cards is kept high after their driver is removed (even if it was powered down beforehand). Fix that by directly calling _put_sync() when the last usage counter is downref'ed by the SDIO bus. Reported-and-tested-by: Daniel Drake Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit daf6c4501e048eed56b256401d030d6b28e92ff1 Merge: 9b8e072a 8abf558 Author: Steve French Date: Sat Jun 25 19:22:28 2011 +0000 Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6 commit 8abf55883431a91d4877933240c8419b7fc17274 Merge: 4d362ad b1eb085 Author: Linus Torvalds Date: Sat Jun 25 07:23:59 2011 -0700 Merge branch 'timer-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timer-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rtc: vt8500: Fix build error & cleanup rtc_class_ops->update_irq_enable() alarmtimers: Return -ENOTSUPP if no RTC device is present alarmtimers: Handle late rtc module loading commit 4d362ad280fca0f2e098de607534f72f2c243e12 Merge: 536142f e093811 Author: Linus Torvalds Date: Sat Jun 25 07:23:27 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: Remove unneeded version.h includes from sound/ ASoC: pxa-ssp: Correct check for stream presence ASoC: imx: add missing module informations ASoC: imx: Remove unused Kconfig SND_MXC_SOC_SSI entry ALSA: HDA: Pinfix quirk for HP Z200 Workstation ALSA: VIA HDA: Create a master amplifier control for VT1718S. ALSA: VIA HDA: Mute/unmute mixer conncted to Headphone for VT1718S. ALSA: VIA HDA: Modify initial verbs list for VT1718S. ALSA: hda - Remove ALC268 model override for CPR2000 ALSA: HDA: Remove quirk for an HP device ASoC: Remove unused and about to be broken SND_SOC_CUSTOM I/O bus commit 9b90f5135320bc74dc6c9a8c74d69fd4821d9282 Author: Josef Bacik Date: Fri Jun 24 16:02:51 2011 +0000 Btrfs: make sure to update total_bitmaps when freeing cache V3 A user reported this bug again where we have more bitmaps than we are supposed to. This is because we failed to load the free space cache, but don't update the ctl->total_bitmaps counter when we remove entries from the tree. This patch fixes this problem and we should be good to go again. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit e0f5406727f1dfdc47b8ba4a0ff6eae4b0b5ed4c Author: Ilya Dryomov Date: Sat Jun 18 20:26:38 2011 +0000 Btrfs: fix type mismatch in find_free_extent() data parameter should be u64 because a full-sized chunk flags field is passed instead of 0/1 for distinguishing data from metadata. All underlying functions expect u64. Signed-off-by: Ilya Dryomov Signed-off-by: Chris Mason commit b1eb085c064d0843826d7402db7fc5f3032e01fc Merge: 1c6b39a 03ad2d5 Author: Thomas Gleixner Date: Sat Jun 25 10:30:00 2011 +0200 Merge branch 'fortglx/3.0/tip/timers/rtc' of git://git.linaro.org/people/jstultz/linux into timers/urgent * rtc: vt8500: Fix build error & cleanup rtc_class_ops->update_irq_enable() commit c5efefac659870744f6e203e28abd095ac0f590b Author: Joachim Eastwood Date: Thu Jun 2 01:36:09 2011 +0200 at91: Use "pclk" as con_id on at91cap9 and at91rm9200 Hello, I am not 100% sure this is the right thing to do, but it makes the atmel-ssc driver happy on my at91rm9200 board. This unifies the con_id across all at91 machines. The atmel-ssc driver expects the con_id to be "pclk" or it will fail probing. Signed-off-by: Joachim Eastwood Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD commit 9d87159e571d73ccf87adf1ee3691b861253d900 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue Jun 21 14:24:33 2011 +0800 at91: fix udc, ehci and mmc clock device name for cap9/9g45/9rl Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Nicolas Ferre commit deba1a0d58b54905a5201cb9e1aa878cfc74ff70 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue Jun 21 12:17:00 2011 +0800 atmel_serial: fix internal port num the atmel_ports is link to the console number and not the device id this was not detected on at91 as we always register the dbgu on the console as ttyS0 tested on at91sam9263 by setting the dbgu as ttyS1 and use as console diff --git a/arch/arm/mach-at91/board-sam9263ek.c b/arch/arm/mach-at91/board-sam9263ek.c index 70e5646..9b8a14f 100644 - a/arch/arm/mach-at91/board-sam9263ek.c + b/arch/arm/mach-at91/board-sam9263ek.c @@ -58,14 +58,14 @@ static void __init ek_init_early(void) /* Initialize processor: 16.367 MHz crystal */ at91_initialize(16367660); - /* DBGU on ttyS0. (Rx & Tx only) */ - at91_register_uart(0, 0, 0); + /* DBGU on ttyS1. (Rx & Tx only) */ + at91_register_uart(0, 1, 0); - /* USART0 on ttyS1. (Rx, Tx, RTS, CTS) */ - at91_register_uart(AT91SAM9263_ID_US0, 1, ATMEL_UART_CTS | ATMEL_UART_RTS); + /* USART0 on ttyS0. (Rx, Tx, RTS, CTS) */ + at91_register_uart(AT91SAM9263_ID_US0, 0, ATMEL_UART_CTS | ATMEL_UART_RTS); - /* set serial console to ttyS0 (ie, DBGU) */ - at91_set_serial_console(0); + /* set serial console to ttyS1 (ie, DBGU) */ + at91_set_serial_console(1); } /* Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Alan Cox Cc: Hans-Christian Egtvedt commit 5c1f9668692061b97125e343721c7514ca05a8bb Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue Jun 21 11:24:33 2011 +0800 at91: fix at91_set_serial_console: use platform device id Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD commit 536142f950f7ea4f3d146a138ad6938f28a34f33 Merge: 5220cc9 483f179 Author: Linus Torvalds Date: Fri Jun 24 22:01:40 2011 -0700 Merge branch 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6 * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/keithp/linux-2.6: drm/i915: save/resume forcewake lock fixes Revert "drm/i915: Kill GTT mappings when moving from GTT domain" drm/i915: Apply HWSTAM workaround for BSD ring on SandyBridge drm/i915: Call intel_enable_plane from i9xx_crtc_mode_set (again) commit d6fe5f4eccc2a7d2ad885ecb26a192b08dcc7cd1 Author: John (Jay) Hernandez Date: Thu Jun 23 14:39:12 2011 +0000 cxgb3: skb_record_rx_queue now records the queue index relative to the net_device. Fixed call to skb_record_rx_queue where we were passing the queue index relative to the adapter when it should have been relative to the net_device. Signed-off-by: John (Jay) Hernandez Signed-off-by: Divy Le Ray Reported-by: Shawn Bohrer Signed-off-by: David S. Miller commit bd4265fe365c0f3945dd5ff1527e52bbe2bedfa2 Author: Herbert Xu Date: Thu Jun 23 02:39:12 2011 +0000 bridge: Only flood unregistered groups to routers The bridge currently floods packets to groups that we have never seen before to all ports. This is not required by RFC4541 and in fact it is not desirable in environment where traffic to unregistered group is always present. This patch changes the behaviour so that we only send traffic to unregistered groups to ports marked as routers. The user can always force flooding behaviour to any given port by marking it as a router. Note that this change does not apply to traffic to 224.0.0.X as traffic to those groups must always be flooded to all ports. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit b997d79a91f7b6be952b98cf9d9585b124558f5b Author: Ron Mercer Date: Wed Jun 22 06:35:45 2011 +0000 qlge: Add maintainer. Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 7cacd43cdd2e4ebba9574635f05538f4053fd725 Author: Mike Frysinger Date: Fri Jun 24 17:42:14 2011 -0700 MAINTAINERS: mark socketcan-core lists as subscribers-only The socketcan-core lists require subscription, so mark them as such. Signed-off-by: Mike Frysinger Signed-off-by: David S. Miller commit a6b3ff9f0d7275e9e2ba3295f585d01f99aeb295 Author: Sven Eckelmann Date: Tue Jun 21 03:13:03 2011 +0000 MAINTAINERS: Remove Sven Eckelmann from BATMAN ADVANCED I cannot speak on behalf of the batman-adv developers due to conflicts in the opinion about the ongoing development. The batman-adv module is still maintained by Marek Lindner and Simon Wunderlich. Those are the main persons behind the visions of batman-adv. Therefore, the state of module hasn't changed. Signed-off-by: Sven Eckelmann Cc: b.a.t.m.a.n@lists.open-mesh.org Signed-off-by: David S. Miller commit 9403c9c598e91d473c0582066e47ed2289292e45 Author: Al Viro Date: Fri Jun 17 10:02:59 2011 -0400 cifs: propagate errors from cifs_get_root() to mount(2) ... instead of just failing with -EINVAL Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 5c4f1ad7c6aa3b729bd3a93b80f9417d7e978c32 Author: Al Viro Date: Fri Jun 17 09:56:55 2011 -0400 cifs: tidy cifs_do_mount() up a bit Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit fa18f1bdce898f0efd0c8639c901d826d01be04f Author: Al Viro Date: Fri Jun 17 09:50:44 2011 -0400 cifs: more breakage on mount failures if cifs_get_root() fails, we end up with ->mount() returning NULL, which is not what callers expect. Moreover, in case of superblock reuse we end up leaking a superblock reference... Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit ee01a14d9ddcf3f832f9ceb837888501cb496e27 Author: Al Viro Date: Fri Jun 17 09:47:23 2011 -0400 cifs: close sget() races have ->s_fs_info set by the set() callback passed to sget() Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit d757d71bfc30669a500b72792067e8d1c5d401a5 Author: Al Viro Date: Fri Jun 17 09:42:43 2011 -0400 cifs: pull freeing mountdata/dropping nls/freeing cifs_sb into cifs_umount() all callers of cifs_umount() proceed to do the same thing; pull it into cifs_umount() itself. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 98ab494dd1d25388981114057cf9446250cc7dc7 Author: Al Viro Date: Fri Jun 17 09:32:10 2011 -0400 cifs: move cifs_umount() call into ->kill_sb() instead of calling it manually in case if cifs_read_super() fails to set ->s_root, just call it from ->kill_sb(). cifs_put_super() is gone now *and* we have cifs_sb shutdown and destruction done after the superblock is gone from ->s_instances. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 97d1152acec0647b72f8c6ecc57da0d6fed574de Author: Al Viro Date: Fri Jun 17 09:29:57 2011 -0400 cifs: pull cifs_mount() call up ... to the point prior to sget(). Now we have cifs_sb set up early enough. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 2a9b99516c662d1713d58648e4a4c9aef72051bc Author: Al Viro Date: Fri Jun 17 09:27:16 2011 -0400 sanitize cifs_umount() prototype a) superblock argument is unused b) it always returns 0 Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 2ced6f693581357b2a5bf8b031a702c624b12d0d Author: Al Viro Date: Fri Jun 17 09:20:04 2011 -0400 cifs: initialize ->tlink_tree in cifs_setup_cifs_sb() no need to wait until cifs_read_super() and we need it done by the time cifs_mount() will be called. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 5d3bc605cafe3f367b1c43b673bf643245c81626 Author: Al Viro Date: Fri Jun 17 09:17:28 2011 -0400 cifs: allocate mountdata earlier pull mountdata allocation up, so that it won't stand in the way when we lift cifs_mount() to location before sget(). Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit d687ca380f1a8f3043f42efd2403cbe58c846e70 Author: Al Viro Date: Fri Jun 17 09:14:27 2011 -0400 cifs: leak on mount if we share superblock cifs_sb and nls end up leaked... Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 2c6292ae4be00454882246d07f38cdf15a823c2a Author: Al Viro Date: Fri Jun 17 09:05:48 2011 -0400 cifs: don't pass superblock to cifs_mount() To close sget() races we'll need to be able to set cifs_sb up before we get the superblock, so we'll want to be able to do cifs_mount() earlier. Fortunately, it's easy to do - setting ->s_maxbytes can be done in cifs_read_super(), ditto for ->s_time_gran and as for putting MS_POSIXACL into ->s_flags, we can mirror it in ->mnt_cifs_flags until cifs_read_super() is called. Kill unused 'devname' argument, while we are at it... Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit ca171baaad1420a29cca98be5bdf5596cd70b294 Author: Al Viro Date: Fri Jun 17 08:49:12 2011 -0400 cifs: don't leak nls on mount failure if cifs_sb allocation fails, we still need to drop nls we'd stashed into volume_info - the one we would've copied to cifs_sb if we could allocate the latter. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 6d6861757dfadb7d6aec6bb34acd471210a755f9 Author: Al Viro Date: Fri Jun 17 08:34:57 2011 -0400 cifs: double free on mount failure if we get to out_super with ->s_root already set (e.g. with cifs_get_root() failure), we'll end up with cifs_put_super() called and ->mountdata freed twice. We'll also get cifs_sb freed twice and cifs_sb->local_nls dropped twice. The problem is, we can get to out_super both with and without ->s_root, which makes ->put_super() a bad place for such work. Switch to ->kill_sb(), have all that work done there after kill_anon_super(). Unlike ->put_super(), ->kill_sb() is called by deactivate_locked_super() whether we have ->s_root or not. Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit dd8544661947ad6d8d87b3c9d4333bfa1583d1bc Author: Al Viro Date: Fri Jun 17 08:24:42 2011 -0400 take bdi setup/destruction into cifs_mount/cifs_umount Acked-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Al Viro commit 4d03b446d2f09469cb731200577322eff660b204 Merge: acc468f 1e4e82b Author: David S. Miller Date: Fri Jun 24 14:33:01 2011 -0700 Merge branch 'davem.r8169' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 commit 5306c0807491e891125f4fb08b04340c91530f57 Author: Johannes Berg Date: Tue Jun 21 08:28:31 2011 -0700 iwlagn: fix change_interface for P2P types When an interface changes type to a P2P type, iwlagn will erroneously set vif->type to the P2P type and not the reduced/split type. Fix this by keeping "newtype" in another variable for the assignment to vif->type. Cc: stable@kernel.org [2.6.38+] Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 77e569edf5a33cd94dac67c714cf736675b0e2da Author: Emmanuel Grumbach Date: Tue Jun 21 11:03:01 2011 -0700 iwlagn: Fix a bug introduced by the HUGE command removal Since we don't have HUGE command any more, there is no point in adding 1 to the num of slots in the command queue. Doing so is buggy and might corrupt memory. Bug introduced by 4ce7cc2b09553a91d4aea014c39674685715173a iwlagn: support multiple TBs per command Cc: Johannes Berg Signed-off-by: Emmanuel Grumbach Signed-off-by: Wey-Yi Guy commit acc468f5f9616ba564b772ac8a3aef218bff6bb3 Merge: 5c18e80 9935d12 Author: John W. Linville Date: Fri Jun 24 14:00:24 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit 1e4e82baee8c2a8d753cbf6aa1a77326b71e59f0 Author: Francois Romieu Date: Fri Jun 24 19:52:13 2011 +0200 r8169: fix wrong register use. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 9b8e072a31180eb5cd6991d08524d9c4fa235ade Author: Jeff Layton Date: Tue Jun 21 07:18:26 2011 -0400 cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN This does not work properly with CIFS as current servers do not enable support for the FILE_OPEN_BY_FILE_ID on SMB NTCreateX and not all NFS clients handle ESTALE. For now, it just plain doesn't work. Mark it BROKEN to discourage distros from enabling it. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 1973f0faeb4a5f35597793c65d3c94d8fd386e10 Author: Chris Mason Date: Fri Jun 24 13:13:29 2011 -0400 Btrfs: make sure to record the transid in new inodes When we create a new inode, we aren't filling in the field that records the transaction that last changed this inode. If we then go to fsync that inode, it will be skipped because the field isn't filled in. Signed-off-by: Chris Mason commit e4fb0edb7c03e5ec19b6f732f1dfbe911212dbde Author: Jeff Layton Date: Mon Jun 20 14:33:16 2011 -0400 cifs: free blkcipher in smbhash This is currently leaked in the rc == 0 case. Reported-by: J. Bruce Fields Signed-off-by: Jeff Layton Reviewed-by: Shirish Pargaonkar Signed-off-by: Steve French commit 5220cc9382e11ca955ce946ee6a5bac577bb14ff Merge: 726ce06 155d109 Author: Linus Torvalds Date: Fri Jun 24 08:42:35 2011 -0700 Merge branch 'for-linus' of git://git.kernel.dk/linux-block * 'for-linus' of git://git.kernel.dk/linux-block: block: add REQ_SECURE to REQ_COMMON_MASK block: use the passed in @bdev when claiming if partno is zero block: Add __attribute__((format(printf...) and fix fallout block: make disk_block_events() properly wait for work cancellation block: remove non-syncing __disk_block_events() and fold it into disk_block_events() block: don't use non-syncing event blocking in disk_check_events() cfq-iosched: fix locking around ioc->ioc_data assignment commit 726ce0656b99ac6436b590d83613fe8447b4769e Merge: d963280 f920fe1 Author: Linus Torvalds Date: Fri Jun 24 08:41:36 2011 -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: pata_marvell: Add support for 88SE91A0, 88SE91A4 libata/sas: only set FROZEN flag if new EH is supported libata: apply NOSETXFER horkage to the affected Pioneer drives regardless of firmware revision drivers/ata/sata_dwc_460ex: Fix typo 'corrresponding' commit d96328055c8501f0ac4a6c343215fa8a2a140306 Merge: 7a1f7b3 ee4017f Author: Linus Torvalds Date: Fri Jun 24 08:39:43 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: handle special cases for vddc drm/radeon/kms: fix num_banks tiling config for fusion commit 7a1f7b3d68174f99d01d52b585088b2eaee758a6 Merge: 12f1ba5 95efa28 Author: Linus Torvalds Date: Fri Jun 24 08:38:51 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/scsi-post-merge-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/scsi-post-merge-2.6: tcm_fc: Fix conversion spec warning tcm_fc: Fix possible lock to unlock type deadlock tcm_fc: Fix ft_send_tm LUN lookup OOPs target: Fix incorrect strlen() NULL terminator checks target: Drop bogus ERR_PTR usage in target_fabric_configfs_init target: Fix ERR_PTR dereferencing bugs target: Convert transport_deregister_session_configfs nacl_sess_lock to save irq state target: Fix transport_get_lun_for_tmr failure cases [SCSI] target: Convert TASK_ATTR to scsi_tcq.h definitions [SCSI] target: Convert REPORT_LUNs to use int_to_scsilun [SCSI] target: Fix task->task_execute_queue=1 clear bug + LUN_RESET OOPs [SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks release [SCSI] target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req [SCSI] target: Fix multi task->task_sg[] chaining logic bug commit 12f1ba5a7dac4caf8b4e6ccd6453f0a095e74c7c Merge: 143e859 6e33a85 Author: Linus Torvalds Date: Fri Jun 24 08:36:16 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: x86/PCI/ACPI: fix type mismatch PCI: fix new kernel-doc warning PCI: Fix warning in drivers/pci/probe.c on sparc64 commit 143e859d05d0abf4c3b67c64c93695d59fd41342 Merge: 46e4edb 1190f6a Author: Linus Torvalds Date: Fri Jun 24 08:35:04 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: fix wsize negotiation to respect max buffer size and active signing (try #4) CIFS: Fix problem with 3.0-rc1 null user mount failure commit 46e4edbf7ea9cf26665eb9f90c0fc7688d1a51ed Author: Jesper Juhl Date: Thu Jun 23 23:59:32 2011 +0200 Remove unneeded version.h includes from fs/ It was pointed out by 'make versioncheck' that some includes of linux/version.h were not needed in fs/ (fs/btrfs/ctree.h and fs/omfs/file.c). This patch removes them. Signed-off-by: Jesper Juhl Acked-by: Bob Copeland Signed-off-by: Linus Torvalds commit c3ead6de4f6bd1c08a81f84e629e3dbf4a9078f0 Author: Benjamin Tissoires Date: Tue Jun 21 15:01:55 2011 +0200 HID: hid-multitouch: add support for a new Lumio dual-touch panel Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 85a600825b425d52e466c6093dcdfeba85eb0044 Author: Benjamin Tissoires Date: Tue Jun 21 15:01:54 2011 +0200 HID: hid-multitouch: correct VID for Stantum panels while merging hid-stantum into hid-multitouch, I did not correctly copy/paste the VIDs for those devices. This patch fixes it. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 50bc03ab5c7529fdfe4e01621efca7d26439ea00 Author: Benjamin Tissoires Date: Tue Jun 21 15:01:53 2011 +0200 HID: hid-multitouch: ensure slots are initialized In case a device does not provide the feature "Maximum Contact Count", or set it at 0, the maxcontacts field may be at 0 while calling input_mt_init_slots. This patch ensures that hid-multitouch will allways report ABS_MT_SLOT and ABS_MT_TRACKING_ID to the user space. This corrects a bug found with some Ilitek devices that has been integrated in 3.0-rc0. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit e0938118576954ac4deafbdb9950cebd34f726c6 Merge: 1686674 53dea36 Author: Takashi Iwai Date: Fri Jun 24 12:36:25 2011 +0200 Merge branch 'fix/asoc' into for-linus commit 16866741bda5d16f3d30d1656ce941faf5dad34c Author: Jesper Juhl Date: Thu Jun 23 23:54:40 2011 +0200 ALSA: Remove unneeded version.h includes from sound/ In the sound/ directory there are two files (flagged by 'make versioncheck'); sound/pci/asihpi/asihpi.c and sound/soc/codecs/wm8991.c that include linux/version.h although they don't need it. This patch removes the unneeded includes. Signed-off-by: Jesper Juhl Signed-off-by: Takashi Iwai commit 6935d131dec9a85afe80512b5a12541592802e48 Author: Yoshihiro Shimoda Date: Tue Mar 1 07:58:47 2011 +0000 sh: add to select the new configuration for USB EHCI/OHCI Because the USB EHCI/OHCI driver has new configuration for SH, the patch enables the EHCI and/or OHCI driver of the on-chip for some CPUs. Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit 17e8c4e1ebf139743e3830439fa65fd906af4a43 Author: Loïc Minier Date: Mon Jun 20 20:44:17 2011 +0000 fbdev: amba: Link fb device to its parent Some pieces of userspace like debian-installer expect to find the fb0 driver name by readlink-ing /sys/class/graphics/fb0/device/driver but this was broken with amba-clcd as it sets up fb_info manually and missed the .device parent pointer. Signed-off-by: Loïc Minier Cc: Russell King Signed-off-by: Paul Mundt commit 39785eb1d3e6c58cc8bf8f6990956a58037ecc75 Author: Timur Tabi Date: Thu Jun 23 20:20:26 2011 +0000 fsl-diu-fb: remove check for pixel clock ranges The Freescale DIU framebuffer driver defines two constants, MIN_PIX_CLK and MAX_PIX_CLK, that are supposed to represent the lower and upper limits of the pixel clock. These values, however, are true only for one platform clock rate (533MHz) and only for the MPC8610. So the actual range for the pixel clock is chip-specific, which means the current values are almost always wrong. The chance of an out-of-range pixel clock being used are also remote. Rather than try to detect an out-of-range clock in the DIU driver, we depend on the board-specific pixel clock function (e.g. p1022ds_set_pixel_clock) to clamp the pixel clock to a supported value. Signed-off-by: Timur Tabi Signed-off-by: Paul Mundt commit 9377c51752970c305fae29ac634501fde44378cb Author: William Katsak Date: Thu Jun 23 13:16:29 2011 +0000 udlfb: Correct sub-optimal resolution selection. The situation in which the problem occurred was with a Plugable UGA-2K-A connected to a Samsung EX2220X display. The driver indicates that 1920x1080 is a valid mode (the first mode available, in fact), but proceeds to set the framebuffer size to 1600x1200. The patch corrects what seems to be a logic error, regarding unsetting the FB_MISC_1ST_DETAIL flag, if the first (top/best) mode is invalid. The existing code unset the flag if ANY mode was invalid. Signed-off-by: William Katsak Signed-off-by: Paul Mundt commit 2bceec57fa7d660dffd4fbe423d84411cafb1acf Merge: 2916001 06c8a6a Author: Paul Mundt Date: Fri Jun 24 17:00:57 2011 +0900 Merge branch 'common/fbdev-meram' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x into fbdev-fixes-for-linus commit 291600193e5c0c3f0a9af1f23a8076dd7417c02a Author: Pavel Shved Date: Fri Jun 17 16:25:12 2011 +0000 hecubafb: add module_put on error path in hecubafb_probe() In hecubafb_probe(), after a successful try_module_get, vzalloc may fail and make the hecubafb_probe return, but the module is not put on this error path. This patch adds an exit point that calls module_put in such situation. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Pavel Shved Signed-off-by: Paul Mundt commit 9845afc8fa32de145d56c8e69b7900e10371255d Author: Randy Dunlap Date: Thu Jun 16 19:32:40 2011 +0000 sm501fb: fix section mismatch warning Fix section mismatch warning in sm501fb: WARNING: drivers/video/sm501fb.o(.text+0x21d6): Section mismatch in reference from the function sm501fb_init_fb() to the variable .devinit.data:sm501_default_mode The function sm501fb_init_fb() references the variable __devinitdata sm501_default_mode. This is often because sm501fb_init_fb lacks a __devinitdata annotation or the annotation of sm501_default_mode is wrong. Signed-off-by: Randy Dunlap Signed-off-by: Paul Mundt commit 3535ed3fa7a87244410696880000e03bc224315d Author: Randy Dunlap Date: Thu Jun 16 19:31:19 2011 +0000 gx1fb: Fix section mismatch warnings Fix a chain of section mismatches in geode driver, beginning with: WARNING: drivers/video/geode/gx1fb.o(.data+0x70): Section mismatch in reference from the variable gx1fb_driver to the function .init.text:gx1fb_probe() The variable gx1fb_driver references the function __init gx1fb_probe() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console Making the changes that Paul pointed out resulted in a few more changes being needed, so they are all included here. Signed-off-by: Randy Dunlap Signed-off-by: Paul Mundt commit 111b20d01346b9635b3223c7af4e40e43bee8dc6 Author: Russell King Date: Wed Jun 22 15:41:58 2011 +0100 ARM: pm: ensure ARMv7 CPUs save and restore the TLS register Ensure that the TLS register is saved and restored over a suspend cycle, so that userspace programs don't see a corrupted TLS value. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 7a0ee92b4a510bc2dd026333f90031e883e0cde0 Author: Russell King Date: Thu Jun 23 22:00:20 2011 +0100 ARM: pm: proc-v7: fix missing struct processor pointers for suspend code Add the missing suspend/resume pointers for the suspend code. This is needed when building for multiple CPUs. Tested-by: Kevin Hilman Acked-by: Jean Pihet Signed-off-by: Russell King commit 06c8a6a3e40265ff580428bbf51991617477f65b Author: Damian Hobson-Garcia Date: Wed Jun 22 07:46:25 2011 +0000 fbdev: sh_mobile_meram: Correct pointer check for YCbCr chroma plane The check was intended to test if we have a valid pointer to write into, but it mistakenly checks the pointer contents instead. Since a valid pointer is mandatory for the chroma data if a YCbCr format is used, the pointer check has been removed. Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit f920fe1cb74191a780d88937f36994231a8faba1 Author: Paweł Drewniak Date: Fri Jun 24 02:07:35 2011 -0400 pata_marvell: Add support for 88SE91A0, 88SE91A4 This patch enables support for Marvell IDE PATA controllers found on Asus P8P67LE motherboard. The formatting has been corrected and I also received a report from two users of this motherboard that the patch works. Signed-off-by: Paweł Drewniak Signed-off-by: Jeff Garzik commit 4a33821236f2ef3af0081e8a5eec1301cbed3125 Author: Dave Chinner Date: Thu Jun 23 01:35:01 2011 +0000 xfs: prevent bogus assert when trying to remove non-existent attribute If the attribute fork on an inode is in btree format and has multiple levels (i.e node format rather than leaf format), then a lookup failure will trigger an assert failure in xfs_da_path_shift if the flag XFS_DA_OP_OKNOENT is not set. This flag is used to indicate to the directory btree code that not finding an entry is not a fatal error. In the case of doing a lookup for a directory name removal, this is valid as a user cannot insert an arbitrary name to remove from the directory btree. However, in the case of the attribute tree, a user has direct control over the attribute name and can ask for any random name to be removed without any validation. In this case, fsstress is asking for a non-existent user.selinux attribute to be removed, and that is causing xfs_da_path_shift() to fall off the bottom of the tree where it asserts that a lookup failure is allowed. Because the flag is not set, we die a horrible death on a debug enable kernel. Prevent this assert from firing on attribute removes by adding the op_flag XFS_DA_OP_OKNOENT to atribute removal operations. Discovered when testing on a SELinux enabled system by fsstress in test 070 by trying to remove a non-existent user.selinux attribute. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit df4368a146d2b350b8398babfe11e2088f741d67 Author: Dave Chinner Date: Thu Jun 23 01:35:00 2011 +0000 xfs: clear XFS_IDIRTY_RELEASE on truncate down When an inode is truncated down, speculative preallocation is removed from the inode. This should also reset the state bits for controlling whether preallocation is subsequently removed when the file is next closed. The flag is not being cleared, so repeated operations on a file that first involve a truncate (e.g. multiple repeated dd invocations on a file) give different file layouts for the second and subsequent invocations. Fix this by clearing the XFS_IDIRTY_RELEASE state bit when the XFS_ITRUNCATED bit is detected in xfs_release() and hence ensure that speculative delalloc is removed on files that have been truncated down. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 778e24bb6dd8682318bb496d4bfdc32b501a6420 Author: Dave Chinner Date: Thu Jun 23 01:34:59 2011 +0000 xfs: reset inode per-lifetime state when recycling it XFS inodes has several per-lifetime state fields that determine the behaviour of the inode. These state fields are not all reset when an inode is reused from the reclaimable state. This can lead to unexpected behaviour of the new inode such as speculative preallocation not being truncated away in the expected manner for local files until the inode is subsequently truncated, freed or cycles out of the cache. It can also lead to an inode being considered to be a filestream inode or having been truncated when that is not the case. Rework the reinitialisation of the inode when it is recycled to ensure that it is pristine before it is reused. While there, also fix the resetting of state flags in the recycling error paths so the inode does not become unreclaimable. Signed-off-by: Dave Chinner Signed-off-by: Alex Elder commit ee4017f4ac8163737793cc64df535cd246792887 Author: Alex Deucher Date: Thu Jun 23 12:19:32 2011 -0400 drm/radeon/kms: handle special cases for vddc A voltage value of 0xff01 requires that the driver look up the max voltage for the board based using the atom SetVoltage command table. Setting the proper voltage should fix stability on some newer asics. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d698a34da7c5626c3c16a6311c6290522e902e7f Author: Alex Deucher Date: Thu Jun 23 00:49:29 2011 -0400 drm/radeon/kms: fix num_banks tiling config for fusion The field is encoded: 0 = 4 banks 1 = 8 banks 2 = 16 banks Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 95efa2863996b643083957079b9304fb3c01130f Author: Nicholas Bellinger Date: Thu Jun 23 23:28:46 2011 +0000 tcm_fc: Fix conversion spec warning This patch fixes the following conversion specification warning for size_t drivers/target/tcm_fc/tfc_io.c: In function ‘ft_queue_data_in’: drivers/target/tcm_fc/tfc_io.c:209: warning: format ‘%x’ expects type ‘unsigned int’, but argument 5 has type ‘size_t’ Reported-by: Randy Dunlap Reported-by: Stephen Rothwell Signed-off-by: Nicholas Bellinger commit 7c7cf3b9c31ed09822e5c186297991093ee13c49 Author: Dan Carpenter Date: Mon Jun 13 23:08:46 2011 +0300 tcm_fc: Fix possible lock to unlock type deadlock There is a typo here, it should be an unlock instead of a lock. The original code will deadlock. Signed-off-by: Dan Carpenter Signed-off-by: Nicholas Bellinger commit 61db952713a8bc1b18515db3f2eac354ec8990bd Author: Kiran Patil Date: Wed Jun 22 16:30:22 2011 -0700 tcm_fc: Fix ft_send_tm LUN lookup OOPs This patch fixes a bug in ft_send_tm() that was incorrectly calling ft_get_lun_for_cmd() -> transport_get_lun_for_cmd(), instead of using transport_get_lun_for_tmr() for the proper struct se_lun lookup that was triggering an OOPs in the se_cmd->tmr_req failure path. This patch fixes the issue by re-arranging the codepath where transport_get_lun_for_tmr() is called after tmr request is allocated and made it available as part of se_cmd. It also drops the now unnecessary ft_get_lun_for_cmd() unpacking code, and uses scsilun_to_int() directly ahead of transport_get_lun_for_cmd() and transport_get_lun_for_tmr() usage. Signed-off-by: Patil, Kiran Signed-off-by: Robert Love Signed-off-by: Nicholas A. Bellinger commit 60d645a4e9e7e7ddc20e534fea82aa4e6947f911 Author: Dan Carpenter Date: Wed Jun 15 10:03:05 2011 -0700 target: Fix incorrect strlen() NULL terminator checks This patch fixes a number of cases in target core using an incorrectly if (strlen(foo) > SOME_MAX_SIZE) As strlen() returns the number of characters in the string not counting the NULL character at the end. So if you do something like: char buf[10]; if (strlen("0123456789") > 10) return -ETOOLONG; snprintf(buf, 10, "0123456789"); printf("%s\n", buf); then the last "9" gets chopped off and only "012345678" is printed. Plus I threw in one small related cleanup. Signed-off-by: Dan Carpenter Signed-off-by: Nicholas Bellinger commit 5eff5be0b1993f4291f2b8c6d035b408010f96c5 Author: Dan Carpenter Date: Mon Jun 13 23:10:49 2011 +0300 target: Drop bogus ERR_PTR usage in target_fabric_configfs_init In the original code, there were several places inside the target_fabric_configfs_init() function that returned NULL on error and one place the returned an ERR_PTR. There are two places that call this function and they only check for NULL returns; they don't check for ERR_PTRs. So I've changed the ERR_PTR so now the function only returns NULL on error. Signed-off-by: Dan Carpenter Signed-off-by: Nicholas Bellinger commit 552523dcbf0f33d44d816da310be8227a2c1502a Author: Dan Carpenter Date: Wed Jun 15 09:41:33 2011 -0700 target: Fix ERR_PTR dereferencing bugs transport_init_session() and core_tmr_alloc_req() never return NULL, they only return ERR_PTRs on error. v2: Fix patch to return PTR_ERR(tl_nexus->se_sess) from Ankit Jain's feedback. Signed-off-by: Dan Carpenter Signed-off-by: Ankit Jain Signed-off-by: Nicholas Bellinger commit 233888644d80cc44330062e5e978c9e3a14c9cb9 Author: Roland Dreier Date: Wed Jun 22 01:02:21 2011 -0700 target: Convert transport_deregister_session_configfs nacl_sess_lock to save irq state This patch converts transport_deregister_session_configfs() to save/restore spinlock IRQ state for struct se_node_acl->nacl_sess_lock access as tcm_qla2xxx logic expects to call transport_deregister_session_configfs() code with irq save already held for struct qla_hw_data. Reported-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 7fd29aa920273b70be50c14c4b7e2213fb6623ce Author: Nicholas Bellinger Date: Thu Jun 23 23:48:32 2011 +0000 target: Fix transport_get_lun_for_tmr failure cases This patch fixes two possible NULL pointer dereferences in target v4.0 code where se_tmr release path in core_tmr_release_req() can OOPs upon transport_get_lun_for_tmr() failure by attempting to access se_device or se_tmr->tmr_list without a valid member of se_device->tmr_list during transport_free_se_cmd() release. This patch moves the se_tmr->tmr_dev pointer assignment in transport_get_lun_for_tmr() until after possible -ENODEV failures during unpacked_lun lookup. This addresses an OOPs originally reported with LIO v4.1 upstream on .39 code here: TARGET_CORE[qla2xxx]: Detected NON_EXISTENT_LUN Access for 0x00000000 BUG: unable to handle kernel NULL pointer dereference at 0000000000000550 IP: [] __ticket_spin_trylock+0x4/0x20 PGD 0 Oops: 0000 [#1] SMP last sysfs file: /sys/devices/system/cpu/cpu23/cache/index2/shared_cpu_map CPU 1 Modules linked in: netconsole target_core_pscsi target_core_file tcm_qla2xxx target_core_iblock tcm_loop target_core_mod configfs ipmi_devintf ipmi_si ipmi_msghandler serio_raw i7core_edac ioatdma dca edac_core ps_bdrv ses enclosure usbhid usb_storage ahci qla2xxx hid uas e1000e mpt2sas libahci mlx4_core scsi_transport_fc scsi_transport_sas raid_class scsi_tgt [last unloaded: netconsole] Pid: 0, comm: kworker/0:0 Tainted: G W 2.6.39+ #1 Xyratex Storage Server RIP: 0010:[] []__ticket_spin_trylock+0x4/0x20 RSP: 0018:ffff88063e803c08 EFLAGS: 00010286 RAX: ffff880619ab45e0 RBX: 0000000000000550 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000550 RBP: ffff88063e803c08 R08: 0000000000000002 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000568 R13: 0000000000000001 R14: 0000000000000000 R15: ffff88060cd96a20 FS: 0000000000000000(0000) GS:ffff88063e800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000550 CR3: 0000000001a03000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process kworker/0:0 (pid: 0, threadinfo ffff880619ab8000, task ffff880619ab45e0) Stack: ffff88063e803c28 ffffffff812cf039 0000000000000550 0000000000000568 ffff88063e803c58 ffffffff8157071e ffffffffa028a1dc ffff88060f7e4600 0000000000000550 ffff880616961480 ffff88063e803c78 ffffffffa028a1dc Call Trace: [] do_raw_spin_trylock+0x19/0x50 [] _raw_spin_lock+0x3e/0x70 [] ? core_tmr_release_req+0x2c/0x60 [target_core_mod] [] core_tmr_release_req+0x2c/0x60 [target_core_mod] [] transport_free_se_cmd+0x22/0x50 [target_core_mod] [] transport_release_cmd_to_pool+0x20/0x40 [target_core_mod] [] transport_generic_free_cmd+0xa5/0xb0 [target_core_mod] [] tcm_qla2xxx_handle_tmr+0xc4/0xd0 [tcm_qla2xxx] [] __qla24xx_handle_abts+0xd3/0x150 [qla2xxx] [] qla_tgt_response_pkt+0x171/0x520 [qla2xxx] [] qla_tgt_response_pkt_all_vps+0x2d/0x220 [qla2xxx] [] qla24xx_process_response_queue+0x1a3/0x670 [qla2xxx] [] ? qla24xx_atio_pkt+0x81/0x120 [qla2xxx] [] ? qla24xx_msix_default+0x45/0x2a0 [qla2xxx] [] qla24xx_msix_default+0x1b8/0x2a0 [qla2xxx] [] handle_irq_event_percpu+0x54/0x210 [] handle_irq_event+0x48/0x70 [] ? handle_edge_irq+0x1e/0x110 [] handle_edge_irq+0x77/0x110 [] handle_irq+0x22/0x40 [] do_IRQ+0x5d/0xe0 [] common_interrupt+0x13/0x13 [] ? intel_idle+0xd7/0x130 [] ? intel_idle+0xd0/0x130 [] cpuidle_idle_call+0xab/0x1c0 [] cpu_idle+0xab/0xf0 [] start_secondary+0x1cb/0x1d2 Reported-by: Roland Dreier Signed-off-by: Nicholas Bellinger commit 03ad2d501e7189245bf6bf9dfc2a30511dd50602 Author: Alexey Charkov Date: Wed Jun 22 23:20:13 2011 +0200 rtc: vt8500: Fix build error & cleanup rtc_class_ops->update_irq_enable() Now that the generic code handles UIE mode irqs via periodic alarm interrupts, no one calls the rtc_class_ops->update_irq_enable() method anymore. Further the rtc_class_ops doesn't have a update_irq_enable element anymore, so this causes a build error. This patch removes the driver hooks and implementations of update_irq_enable and the associated setup. [wsa: updated commit-message and removed update_irq_enable-function, too] [jstultz: improve commit message, clarifying build issue] Signed-off-by: Alexey Charkov Signed-off-by: Wolfram Sang Signed-off-by: John Stultz commit 3f1e046ad3370d22d39529103667354eb50abc08 Author: Nishanth Aravamudan Date: Thu Jun 16 08:28:36 2011 -0700 libata/sas: only set FROZEN flag if new EH is supported On 16.06.2011 [08:28:39 -0500], Brian King wrote: > On 06/16/2011 02:51 AM, Tejun Heo wrote: > > On Wed, Jun 15, 2011 at 04:34:17PM -0700, Nishanth Aravamudan wrote: > >>> That looks like the right thing to do. For ipr's usage of > >>> libata, we don't have the concept of a port frozen state, so this flag > >>> should really never get set. The alternate way to fix this would be to > >>> only set ATA_PFLAG_FROZEN in ata_port_alloc if ap->ops->error_handler > >>> is not NULL. > >> > >> It seemed like ipr is as you say, but I wasn't sure if it was > >> appropriate to make the change above in the common libata-scis code or > >> not. I don't want to break some other device on accident. > >> > >> Also, I tried your suggestion, but I don't think that can happen in > >> ata_port_alloc? ata_port_alloc is allocated ap itself, and it seems like > >> ap->ops typically gets set only after ata_port_alloc returns? > > > > Maybe we can test error_handler in ata_sas_port_start()? > > Good point. Since libsas is converted to the new eh now, we would need to have > this test. Commit 7b3a24c57d2eeda8dba9c205342b12689c4679f9 ("ahci: don't enable port irq before handler is registered") caused a regression for CD-ROMs attached to the IPR SATA bus on Power machines: ata_port_alloc: ENTER ata_port_probe: ata1: bus probe begin ata1.00: ata_dev_read_id: ENTER ata1.00: failed to IDENTIFY (I/O error, err_mask=0x40) ata1.00: ata_dev_read_id: ENTER ata1.00: failed to IDENTIFY (I/O error, err_mask=0x40) ata1.00: limiting speed to UDMA7:PIO5 ata1.00: ata_dev_read_id: ENTER ata1.00: failed to IDENTIFY (I/O error, err_mask=0x40) ata1.00: disabled ata_port_probe: ata1: bus probe end scsi_alloc_sdev: Allocation failure during SCSI scanning, some SCSI devices might not be configured The FROZEN flag added in that commit is only cleared by the new EH code, which is not used by ipr. Clear this flag in the SAS code if we don't support new EH. Reported-by: Benjamin Herrenschmidt Signed-off-by: Nishanth Aravamudan Signed-off-by: Jeff Garzik commit cd691876d73e24b4c0a2e96993251abbe3a320df Author: Tejun Heo Date: Wed Jun 22 12:13:10 2011 +0200 libata: apply NOSETXFER horkage to the affected Pioneer drives regardless of firmware revision It's unlikely NOSETXFER works for a revision of drive but doesn't for another and pioneer doesn't seem to be fixing firmwares for the affected drives. Apply NOSETXFER to the affected pioneer drives regardless of firmware revision. http://article.gmane.org/gmane.linux.ide/49734 Signed-off-by: Tejun Heo Reported-by: fl-00@gmx.de Signed-off-by: Jeff Garzik commit 8618ccd352dcd01628f39eb1fca4f9a7bc077ea1 Author: Justin P. Mattock Date: Wed Jun 22 23:29:20 2011 -0700 drivers/ata/sata_dwc_460ex: Fix typo 'corrresponding' The patch below fixes a typo. Signed-off-by: Justin P. Mattock Signed-off-by: Jeff Garzik commit 74d83b7eedab14e4b963a2220ff76f98fa6d4cb8 Merge: 61db180 5629937 Author: Nicholas Bellinger Date: Thu Jun 23 20:20:51 2011 +0000 Merge tag 'v3.0-rc4' of /pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus commit 53dea36c70c1857149a8c447224e3936eb8b5339 Author: Daniel Mack Date: Wed Jun 22 20:48:25 2011 +0200 ASoC: pxa-ssp: Correct check for stream presence Don't rely on the codec's channels_min information to decide wheter or not allocate a substream's DMA buffer. Rather check if the substream itself was allocated previously. Signed-off-by: Daniel Mack Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 96dcabb99b9f63f2b65f2b0bfe5d4eb48f11b177 Author: Arnaud Patard (Rtp) Date: Wed Jun 22 22:21:49 2011 +0200 ASoC: imx: add missing module informations - add some modules aliases - add module license to avoid tainted kernel when loading the imx-pcm-audio driver Signed-off-by: Arnaud Patard Acked-by: Sascha Hauer Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f6d96e0da1ee3cfe67b719570fba3bb2ea057131 Author: Arnaud Patard (Rtp) Date: Wed Jun 22 22:21:48 2011 +0200 ASoC: imx: Remove unused Kconfig SND_MXC_SOC_SSI entry SND_MXC_SOC_SSI looks to be unused, so kill it. Signed-off-by: Arnaud Patard Acked-by: Sascha Hauer Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 1190f6a067bf27b2ee7e06ec0776a17fe0f6c4d8 Author: Jeff Layton Date: Wed Jun 22 17:33:57 2011 -0400 cifs: fix wsize negotiation to respect max buffer size and active signing (try #4) Hopefully last version. Base signing check on CAP_UNIX instead of tcon->unix_ext, also clean up the comments a bit more. According to Hongwei Sun's blog posting here: http://blogs.msdn.com/b/openspecification/archive/2009/04/10/smb-maximum-transmit-buffer-size-and-performance-tuning.aspx CAP_LARGE_WRITEX is ignored when signing is active. Also, the maximum size for a write without CAP_LARGE_WRITEX should be the maxBuf that the server sent in the NEGOTIATE request. Fix the wsize negotiation to take this into account. While we're at it, alter the other wsize definitions to use sizeof(WRITE_REQ) to allow for slightly larger amounts of data to potentially be written per request. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 1b19ca9f0bdab7d5035821e1ec8f39df9a6e3ee0 Author: Russell King Date: Wed Jun 22 11:55:50 2011 +0100 Fix CPU spinlock lockups on secondary CPU bringup Secondary CPU bringup typically calls calibrate_delay() during its initialization. However, calibrate_delay() modifies a global variable (loops_per_jiffy) used for udelay() and __delay(). A side effect of 71c696b1 ("calibrate: extract fall-back calculation into own helper") introduced in the 2.6.39 merge window means that we end up with a substantial period where loops_per_jiffy is zero. This causes the spinlock debugging code to malfunction: u64 loops = loops_per_jiffy * HZ; for (;;) { for (i = 0; i < loops; i++) { if (arch_spin_trylock(&lock->raw_lock)) return; __delay(1); } ... } by never calling arch_spin_trylock() - resulting in the CPU locking up in an infinite loop inside __spin_lock_debug(). Work around this by only writing to loops_per_jiffy only once we have completed all the calibration decisions. Tested-by: Santosh Shilimkar Signed-off-by: Russell King Cc: (2.6.39-stable) -- Better solutions (such as omitting the calibration for secondary CPUs, or arranging for calibrate_delay() to return the LPJ value and leave it to the caller to decide where to store it) are a possibility, but would be much more invasive into each architecture. I think this is the best solution for -rc and stable, but it should be revisited for the next merge window. init/calibrate.c | 14 ++++++++------ 1 files changed, 8 insertions(+), 6 deletions(-) Signed-off-by: Linus Torvalds commit 33b1e6939f5c37ab8e64280fd3d54046607b5c80 Author: Mika Westerberg Date: Thu Jun 23 13:39:00 2011 +0100 serial: mrst_max3110: initialize waitqueue earlier The driver went to initialize its waitqueue at the start of the main processing thread. However, it is possible that this thread is not scheduled on a CPU before the write function is called which leads to a following error: BUG: spinlock bad magic on CPU#1, swapper/1 lock: f5f3ebdc, .magic: 00000000, .owner: /-1, .owner_cpu: 0 Pid: 1, comm: swapper Not tainted 3.0.0-rc2+ #67 Call Trace: [] spin_bug+0xa3/0xf0 [] do_raw_spin_lock+0x7d/0x150 [] _raw_spin_lock_irqsave+0x4e/0x60 [] __wake_up+0x1b/0x50 [] serial_m3110_con_write+0x55/0x60 [] __call_console_drivers+0x75/0x90 [] _call_console_drivers+0x49/0x80 [] console_unlock+0xca/0x1f0 [] vprintk+0x18f/0x4f0 [] printk+0x18/0x1a [] register_console+0x2e0/0x350 [] uart_add_one_port+0x33e/0x3d0 [] serial_m3110_probe+0x1c2/0x1df [] spi_drv_probe+0x17/0x20 ... Fix this by initializing the waitqueue before the main thread is created. Signed-off-by: Mika Westerberg Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 0bb04bf3dfdfe1c981087cdfb0d9d772c3a0ba55 Author: William Douglas Date: Thu Jun 23 13:38:36 2011 +0100 mrst_max3110: Change max missing message priority. Change print message to notice instead of error to clean up non critical messages showing on startup. The MAX3111 not being present is a normal path for end user systems. Signed-off-by: William Douglas [rebased on 3.0, switched to dev_dbg()] Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 5c18e80be9ff362f6523b097d495bb2e2f939946 Author: Dan Carpenter Date: Thu Jun 23 03:15:39 2011 -0700 net/usb/kalmia: signedness bug in kalmia_bind() "status" should be an int here for the error handling to work. Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit d2a19da79d3ea5b7859248b0f132c479ed4505e2 Author: David Henningsson Date: Wed Jun 22 09:58:37 2011 +0200 ALSA: HDA: Pinfix quirk for HP Z200 Workstation BIOS lists the internal speaker as an internal line-out. Change to internal speaker + model=auto for better auto-mute capabilities. BugLink: http://bugs.launchpad.net/bugs/754964 Reported-by: Marc Legris Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit bccaeafd7c117acee36e90d37c7e05c19be9e7bf Merge: 68d0080 ecc9046 Author: Linus Torvalds Date: Wed Jun 22 21:49:07 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6: jfs: agstart field must be 64 bits JFS: Don't save agno in the inode jfs: Update agstart when resizing volume jfs: old_agsize should be 64 bits in jfs_extendfs commit 68d0080f1e222757c85606d3eaf81b5c4aa7719f Merge: f957db4 a5f76d5 Author: Linus Torvalds Date: Wed Jun 22 21:08:52 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PCI / PM: Block races between runtime PM and system sleep PM / Domains: Update documentation PM / Runtime: Handle clocks correctly if CONFIG_PM_RUNTIME is unset PM: Fix async resume following suspend failure PM: Free memory bitmaps if opening /dev/snapshot fails PM: Rename dev_pm_info.in_suspend to is_prepared PM: Update documentation regarding sysdevs PM / Runtime: Update doc: usage count no longer incremented across system PM commit f957db4fcdd8f03e186aa8f041f4049e76ab741c Author: David Rientjes Date: Wed Jun 22 18:13:04 2011 -0700 mm, hotplug: protect zonelist building with zonelists_mutex Commit 959ecc48fc75 ("mm/memory_hotplug.c: fix building of node hotplug zonelist") does not protect the build_all_zonelists() call with zonelists_mutex as needed. This can lead to races in constructing zonelist ordering if a concurrent build is underway. Protecting this with lock_memory_hotplug() is insufficient since zonelists can be rebuild though sysfs as well. Signed-off-by: David Rientjes Reviewed-by: KOSAKI Motohiro Signed-off-by: Linus Torvalds commit 7553e8f2d5161a2b7a9b7a9f37be1b77e735552f Author: David Rientjes Date: Wed Jun 22 18:13:01 2011 -0700 mm, hotplug: fix error handling in mem_online_node() The error handling in mem_online_node() is incorrect: hotadd_new_pgdat() returns NULL if the new pgdat could not have been allocated and a pointer to it otherwise. mem_online_node() should fail if hotadd_new_pgdat() fails, not the inverse. This fixes an issue when memoryless nodes are not onlined and their sysfs interface is not registered when their first cpu is brought up. The bug was introduced by commit cf23422b9d76 ("cpu/mem hotplug: enable CPUs online before local memory online") iow v2.6.35. Signed-off-by: David Rientjes Reviewed-by: KOSAKI Motohiro Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 446b23a75804d7ffa4cca2d4d8f0afb822108c7e Author: Pavel Shilovsky Date: Mon Jun 20 12:33:16 2011 +0400 CIFS: Fix problem with 3.0-rc1 null user mount failure Figured it out: it was broken by b946845a9dc523c759cae2b6a0f6827486c3221a commit - "cifs: cifs_parse_mount_options: do not tokenize mount options in-place". So, as a quick fix I suggest to apply this patch. [PATCH] CIFS: Fix kfree() with constant string in a null user case Signed-off-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 7cdfa4a348b6b199a3189604f2085f1b214b6458 Author: Marius B. Kotsbak Date: Wed Jun 22 05:26:16 2011 +0000 net/usb: kalmia: Various fixes for better support of non-x86 architectures. -Support for big endian. -Do not use USB buffers at the stack. -Safer/more efficient code for local constants. Signed-off-by: Marius B. Kotsbak Signed-off-by: David S. Miller commit 9935d12651c9e54ad266e17cd542ec717ccd0fc8 Author: Larry Finger Date: Tue Jun 21 10:48:31 2011 -0500 rtl8192cu: Fix missing firmware load In commit 3ac5e26a1e935469a8bdae1d624bc3b59d1fcdc5 entitled "rtlwifi: rtl8192c-common: Change common firmware routines for addition of rtl8192se and rtl8192de", the firmware loading code was moved. Unfortunately, some necessary code was dropped for rtl8192cu. The dmesg output shows the following: rtl8192c: Loading firmware file rtlwifi/rtl8192cufw.bin rtl8192c_common:_rtl92c_fw_free_to_go():<0-0> Polling FW ready fail!! REG_MCUFWDL:0x00000006 . rtl8192c_common:rtl92c_download_fw():<0-0> Firmware is not ready to run! In addition, the interface will authenticate and associate, but cannot transfer data. This is reported as Kernel Bug #38012. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 483f1798998ede75b2575cc1813c3d89ba64a34e Author: Ben Widawsky Date: Wed Jun 22 09:55:01 2011 -0700 drm/i915: save/resume forcewake lock fixes The lock must be held for the saving and restoring of VGA state. Signed-off-by: Ben Widawsky CC: Alexander Zhaunerchyk CC: Andrey Rahmatullin Reviewed-by: Chris Wilson Signed-off-by: Keith Packard commit debf1d4948bccf58fa172acb1a7306792d77705d Merge: e08f6d4 8fe7e94 Author: Ingo Molnar Date: Wed Jun 22 16:25:34 2011 +0200 Merge branch 'for-tip' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent commit 859c965149ab5004b58b1fffd98190b6664cb717 Author: Jan Glauber Date: Wed Jun 22 16:24:10 2011 +0200 [S390] allow setting of upper 32 bit in smp_ctl_set_bit The bit shift operation in smp_ctl_set_bit does not specify the type of the shifted bit so integer is used as default. Therefore it is not possible to set bits in the upper 32 bit of the control register if the kernel runs in 64 bit mode. Fix this by specifying the type as unsigned long. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 6815823431296082fa20c2f14007e194424660b8 Author: Christian Borntraeger Date: Wed Jun 22 16:24:09 2011 +0200 [S390] hwsampler: Set a sane default sampling rate The sampling interval for the hardware sampler is specified in cycles. (see SA23-2260-01 The Load-Program-Parameter and the CPU-Measurement Facilities) The current default value will therefore result in millions of samples. This patch changes the default sampling interval to 4M, which will result in ~1500 samples per second on a z196 reducing the overhead of sampling. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit b530ce7a1af5a9355be518557d86b33c6d2cf088 Author: Christian Borntraeger Date: Wed Jun 22 16:24:08 2011 +0200 [S390] s390: enforce HW limits for the initial sampling rate On specific configurations with hwsampler opcontrol --start returns an error on "echo 1 >/dev/oprofile/enable". Turns out that the hw sampling interval is not checked against the hardware limits. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 80629b0b0fd5ca868dc8eced28e6101e39ac2ef6 Author: Christian Borntraeger Date: Wed Jun 22 16:24:07 2011 +0200 [S390] kvm-s390: fix kconfig dependencies A user can create the Kconfig combination !VIRTUALIZATION, S390_GUEST which results in the following warnings: warning: (S390_GUEST) selects VIRTIO which has unmet direct dependencies (VIRTUALIZATION) warning: (S390_GUEST && VIRTIO_PCI && VIRTIO_BALLOON) selects VIRTIO_RING which has unmet direct dependencies (VIRTUALIZATION && VIRTIO) warning: (S390_GUEST) selects VIRTIO which has unmet direct dependencies (VIRTUALIZATION) warning: (S390_GUEST && VIRTIO_PCI && VIRTIO_BALLOON) selects VIRTIO_RING which has unmet direct dependencies (VIRTUALIZATION && VIRTIO) S390_GUEST has to select VIRTUALIZATION before selecting VIRTIO and friends. Reported-by: Jan Glauber Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 82a9a4809f4cb4ce3f17da99a8150df8455fa096 Author: Scott Wood Date: Thu Jun 16 14:09:17 2011 -0500 powerpc/e500: fix breakage with fsl_rio_mcheck_exception The wrong MCSR bit was being used on e500mc. MCSR_BUS_RBERR only exists on e500v1/v2. Use MCSR_LD on e500mc, and remove all MCSR checking in fsl_rio_mcheck_exception as we now no longer call that function if the appropriate bit in MCSR is not set. If RIO support was enabled at compile-time, but was never probed, just return from fsl_rio_mcheck_exception rather than dereference a NULL pointer. TODO: There is still a remaining, though comparitively minor, issue in that this recovery mechanism will falsely engage if there's an unrelated MCSR_LD event at the same time as a RIO error. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit f3fed682f78dfab384d3dc3f9ca7a7338a93c142 Author: Timur Tabi Date: Wed Jun 8 14:03:05 2011 -0500 powerpc/p1022ds: fix audio-related properties in the device tree On the Freescale P1022DS reference board, the SSI audio controller is connected in "asynchronous" mode to the codec's clocks, so the device tree needs an "fsl,ssi-asynchronous" property. Also remove the clock-frequency property from the wm8776 node, because the clock is enabled only if U-Boot enables it, and U-Boot will set the property if the clock is enabled. A future version of the P1022DS audio driver will configure the clock itself, but for now, the driver should not be told that the clock is running when it isn't. Also fix the FIFO depth to 15, instead of 16. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit c02a02ee4db5cd8b95ee3cc705b535f443612583 Author: Shaohui Xie Date: Mon Jun 13 10:23:12 2011 +0800 powerpc/85xx: fix NAND_CMD_READID read bytes number when nand_get_flash_type() is called, it will read 8 bytes of ID instead of 5, but the driver only read 5 bytes, so kernel will dump error messages like: fsl-lbc ffe124000.localbus: read_byte beyond end of buffer fsl-lbc ffe124000.localbus: read_byte beyond end of buffer fsl-lbc ffe124000.localbus: read_byte beyond end of buffer Signed-off-by: Shaohui Xie Acked-by: Scott Wood Signed-off-by: Kumar Gala commit 9cfaa8def1c795a512bc04f2aec333b03724ca2e Author: Xufeng Zhang Date: Tue Jun 21 10:43:40 2011 +0000 udp/recvmsg: Clear MSG_TRUNC flag when starting over for a new packet Consider this scenario: When the size of the first received udp packet is bigger than the receive buffer, MSG_TRUNC bit is set in msg->msg_flags. However, if checksum error happens and this is a blocking socket, it will goto try_again loop to receive the next packet. But if the size of the next udp packet is smaller than receive buffer, MSG_TRUNC flag should not be set, but because MSG_TRUNC bit is not cleared in msg->msg_flags before receive the next packet, MSG_TRUNC is still set, which is wrong. Fix this problem by clearing MSG_TRUNC flag when starting over for a new packet. Signed-off-by: Xufeng Zhang Signed-off-by: Paul Gortmaker Signed-off-by: David S. Miller commit 32c90254ed4a0c698caa0794ebb4de63fcc69631 Author: Xufeng Zhang Date: Tue Jun 21 10:43:39 2011 +0000 ipv6/udp: Use the correct variable to determine non-blocking condition udpv6_recvmsg() function is not using the correct variable to determine whether or not the socket is in non-blocking operation, this will lead to unexpected behavior when a UDP checksum error occurs. Consider a non-blocking udp receive scenario: when udpv6_recvmsg() is called by sock_common_recvmsg(), MSG_DONTWAIT bit of flags variable in udpv6_recvmsg() is cleared by "flags & ~MSG_DONTWAIT" in this call: err = sk->sk_prot->recvmsg(iocb, sk, msg, size, flags & MSG_DONTWAIT, flags & ~MSG_DONTWAIT, &addr_len); i.e. with udpv6_recvmsg() getting these values: int noblock = flags & MSG_DONTWAIT int flags = flags & ~MSG_DONTWAIT So, when udp checksum error occurs, the execution will go to csum_copy_err, and then the problem happens: csum_copy_err: ............... if (flags & MSG_DONTWAIT) return -EAGAIN; goto try_again; ............... But it will always go to try_again as MSG_DONTWAIT has been cleared from flags at call time -- only noblock contains the original value of MSG_DONTWAIT, so the test should be: if (noblock) return -EAGAIN; This is also consistent with what the ipv4/udp code does. Signed-off-by: Xufeng Zhang Signed-off-by: Paul Gortmaker Signed-off-by: David S. Miller commit b1d7dd80aadb9042e83f9778b484a2f92e0b04d4 Author: David Howells Date: Tue Jun 21 14:32:05 2011 +0100 KEYS: Fix error handling in construct_key_and_link() Fix error handling in construct_key_and_link(). If construct_alloc_key() returns an error, it shouldn't pass out through the normal path as the key_serial() called by the kleave() statement will oops when it gets an error code in the pointer: BUG: unable to handle kernel paging request at ffffffffffffff84 IP: [] request_key_and_link+0x4d7/0x52f .. Call Trace: [] request_key+0x41/0x75 [] cifs_get_spnego_key+0x206/0x226 [cifs] [] CIFS_SessSetup+0x511/0x1234 [cifs] [] cifs_setup_session+0x90/0x1ae [cifs] [] cifs_get_smb_ses+0x34b/0x40f [cifs] [] cifs_mount+0x13f/0x504 [cifs] [] cifs_do_mount+0xc4/0x672 [cifs] [] mount_fs+0x69/0x155 [] vfs_kern_mount+0x63/0xa0 [] do_kern_mount+0x4d/0xdf [] do_mount+0x63c/0x69f [] sys_mount+0x88/0xc2 [] system_call_fastpath+0x16/0x1b Signed-off-by: David Howells Acked-by: Jeff Layton Signed-off-by: Linus Torvalds commit 35052cffe0081904f3362c05818db900dd9dc7de Author: David Howells Date: Tue Jun 21 10:29:51 2011 +0100 MN10300: asm/uaccess.h needs to #include linux/kernel.h for might_sleep() MN10300's asm/uaccess.h needs to #include linux/kernel.h to get might_sleep() otherwise it fails to build on MN10300 allyesconfig. This fails in a few places with messages like the following: In file included from security/keys/trusted.c:14: include/linux/uaccess.h: In function '__copy_from_user_nocache': include/linux/uaccess.h:52: error: implicit declaration of function 'might_sleep' Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 2992c4bd5742b31a0ee00a76eee9c1c284507418 Merge: e08f6d4 1650add Author: Linus Torvalds Date: Tue Jun 21 18:20:55 2011 -0700 Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: NFS: Fix decode_secinfo_maxsz NFSv4.1: Fix an off-by-one error in pnfs_generic_pg_test NFSv4.1: Fix some issues with pnfs_generic_pg_test NFSv4.1: file layout must consider pg_bsize for coalescing pnfs-obj: No longer needed to take an extra ref at add_device SUNRPC: Ensure the RPC client only quits on fatal signals NFSv4: Fix a readdir regression nfs4.1: mark layout as bad on error path in _pnfs_return_layout nfs4.1: prevent race that allowed use of freed layout in _pnfs_return_layout NFSv4.1: need to put_layout_hdr on _pnfs_return_layout error path NFS: (d)printks should use %zd for ssize_t arguments NFSv4.1: fix break condition in pnfs_find_lseg nfs4.1: fix several problems with _pnfs_return_layout NFSv4.1: allow zero fh array in filelayout decode layout NFSv4.1: allow nfs_fhget to succeed with mounted on fileid NFSv4.1: Fix a refcounting issue in the pNFS device id cache NFSv4.1: deprecate headerpadsz in CREATE_SESSION NFS41: do not update isize if inode needs layoutcommit NLM: Don't hang forever on NLM unlock requests NFS: fix umount of pnfs filesystems commit 1c6b39ad3f01514fd8dd84b5b412bafb75c19388 Author: John Stultz Date: Thu Jun 16 18:47:37 2011 -0700 alarmtimers: Return -ENOTSUPP if no RTC device is present Toralf Förster and Richard Weinberger noted that if there is no RTC device, the alarm timers core prints out an annoying "ALARM timers will not wake from suspend" message. This warning has been removed in a previous patch, however the issue still remains: The original idea was to support alarm timers even if there was no rtc device, as long as the system didn't go into suspend. However, after further consideration, communicating to the application that alarmtimers are not fully functional seems like the better solution. So this patch makes it so we return -ENOTSUPP to any posix _ALARM clockid calls if there is no backing RTC device on the system. Further this changes the behavior where when there is no rtc device we will check for one on clock_getres, clock_gettime, timer_create, and timer_nsleep instead of on suspend. CC: Toralf Förster CC: Richard Weinberger CC: Thomas Gleixner Reported-by: Toralf Förster Reported by: Richard Weinberger Signed-off-by: John Stultz commit 58fa45973117ab7a79d5b6818275a887867fc4d7 Author: Randy Dunlap Date: Tue Jun 21 08:01:20 2011 +0000 netconsole: fix build when CONFIG_NETCONSOLE_DYNAMIC is turned on When NETCONSOLE_DYNAMIC=y and CONFIGFS_FS=m, there are build errors in netconsole: drivers/built-in.o: In function `drop_netconsole_target': netconsole.c:(.text+0x1a100f): undefined reference to `config_item_put' drivers/built-in.o: In function `make_netconsole_target': netconsole.c:(.text+0x1a10b9): undefined reference to `config_item_init_type_name' drivers/built-in.o: In function `write_msg': netconsole.c:(.text+0x1a11a4): undefined reference to `config_item_get' netconsole.c:(.text+0x1a1211): undefined reference to `config_item_put' drivers/built-in.o: In function `netconsole_netdev_event': netconsole.c:(.text+0x1a12cc): undefined reference to `config_item_put' netconsole.c:(.text+0x1a12ec): undefined reference to `config_item_get' netconsole.c:(.text+0x1a1366): undefined reference to `config_item_put' drivers/built-in.o: In function `init_netconsole': netconsole.c:(.init.text+0x953a): undefined reference to `config_group_init' netconsole.c:(.init.text+0x9560): undefined reference to `configfs_register_subsystem' drivers/built-in.o: In function `dynamic_netconsole_exit': netconsole.c:(.exit.text+0x809): undefined reference to `configfs_unregister_subsystem' so fix the NETCONSOLE_DYNAMIC depends clause to prevent this. Based on email suggestion from Ben Hutchings. Thanks. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=37992 Reported-by: David Hill Signed-off-by: Randy Dunlap Cc: Ben Hutchings Signed-off-by: David S. Miller commit c008ba58af24dc5d0d8e9fe6e59d876910254761 Author: John Stultz Date: Thu Jun 16 18:27:09 2011 -0700 alarmtimers: Handle late rtc module loading The alarmtimers code currently picks a rtc device to use at late init time. However, if your rtc driver is loaded as a module, it may be registered after the alarmtimers late init code, leaving the alarmtimers nonfunctional. This patch moves the the rtcdevice selection to when we actually try to use it, allowing us to make use of rtc modules that may have been loaded at any point since bootup. CC: Thomas Gleixner CC: Meelis Roos Reported-by: Meelis Roos Signed-off-by: John Stultz commit a5f76d5eba157bf637beb2dd18026db2917c512e Author: Rafael J. Wysocki Date: Tue Jun 21 23:47:15 2011 +0200 PCI / PM: Block races between runtime PM and system sleep After commit e8665002477f0278f84f898145b1f141ba26ee26 (PM: Allow pm_runtime_suspend() to succeed during system suspend) it is possible that a device resumed by the pm_runtime_resume(dev) in pci_pm_prepare() will be suspended immediately from a work item, timer function or otherwise, defeating the very purpose of calling pm_runtime_resume(dev) from there. To prevent that from happening it is necessary to increment the runtime PM usage counter of the device by replacing pm_runtime_resume() with pm_runtime_get_sync(). Moreover, the incremented runtime PM usage counter has to be decremented by the corresponding pci_pm_complete(), via pm_runtime_put_sync(). Signed-off-by: Rafael J. Wysocki Cc: stable@kernel.org Acked-by: Jesse Barnes commit ca9c6890b598997165a7c85c001f382c910f12b0 Author: Rafael J. Wysocki Date: Tue Jun 21 23:25:32 2011 +0200 PM / Domains: Update documentation Commit 4d27e9dcff00a6425d779b065ec8892e4f391661 (PM: Make power domain callbacks take precedence over subsystem ones) forgot to update the device power management documentation to take changes made by it into account. Correct that mistake. Signed-off-by: Rafael J. Wysocki commit 4d1518f5668ef1b3dff6c3b30fa761fe5573cdaa Author: Rafael J. Wysocki Date: Tue Jun 21 23:24:33 2011 +0200 PM / Runtime: Handle clocks correctly if CONFIG_PM_RUNTIME is unset Commit 85eb8c8d0b0900c073b0e6f89979ac9c439ade1a (PM / Runtime: Generic clock manipulation rountines for runtime PM (v6)) converted the shmobile platform to using generic code for runtime PM clock management, but it changed the behavior for CONFIG_PM_RUNTIME unset incorrectly. Specifically, for CONFIG_PM_RUNTIME unset pm_runtime_clk_notify() should enable clocks for action equal to BUS_NOTIFY_BIND_DRIVER and it should disable them for action equal to BUS_NOTIFY_UNBOUND_DRIVER (instead of BUS_NOTIFY_ADD_DEVICE and BUS_NOTIFY_DEL_DEVICE, respectively). Make this function behave as appropriate. Signed-off-by: Rafael J. Wysocki Acked-by: Magnus Damm commit 6d0e0e84f66d32c33511984dd3badd32364b863c Author: Alan Stern Date: Sat Jun 18 22:42:09 2011 +0200 PM: Fix async resume following suspend failure The PM core doesn't handle suspend failures correctly when it comes to asynchronously suspended devices. These devices are moved onto the dpm_suspended_list as soon as the corresponding async thread is started up, and they remain on the list even if they fail to suspend or the sleep transition is cancelled before they get suspended. As a result, when the PM core unwinds the transition, it tries to resume the devices even though they were never suspended. This patch (as1474) fixes the problem by adding a new "is_suspended" flag to dev_pm_info. Devices are resumed only if the flag is set. [rjw: * Moved the dev->power.is_suspended check into device_resume(), because we need to complete dev->power.completion and clear dev->power.is_prepared too for devices whose dev->power.is_suspended flags are unset. * Fixed __device_suspend() to avoid setting dev->power.is_suspended if async_error is different from zero.] Signed-off-by: Alan Stern Signed-off-by: Rafael J. Wysocki Cc: stable@kernel.org commit 8440f4b19494467883f8541b7aa28c7bbf6ac92b Author: Michal Kubecek Date: Sat Jun 18 20:34:01 2011 +0200 PM: Free memory bitmaps if opening /dev/snapshot fails When opening /dev/snapshot device, snapshot_open() creates memory bitmaps which are freed in snapshot_release(). But if any of the callbacks called by pm_notifier_call_chain() returns NOTIFY_BAD, open() fails, snapshot_release() is never called and bitmaps are not freed. Next attempt to open /dev/snapshot then triggers BUG_ON() check in create_basic_memory_bitmaps(). This happens e.g. when vmwatchdog module is active on s390x. Signed-off-by: Michal Kubecek Signed-off-by: Rafael J. Wysocki Cc: stable@kernel.org commit f76b168b6f117a49d36307053e1acbe30580ea5b Author: Alan Stern Date: Sat Jun 18 20:22:23 2011 +0200 PM: Rename dev_pm_info.in_suspend to is_prepared This patch (as1473) renames the "in_suspend" field in struct dev_pm_info to "is_prepared", in preparation for an upcoming change. The new name is more descriptive of what the field really means. Signed-off-by: Alan Stern Signed-off-by: Rafael J. Wysocki Cc: stable@kernel.org commit 78420884e680da8fbc3240de2d3106437042381e Author: Rafael J. Wysocki Date: Sat Jun 18 19:53:57 2011 +0200 PM: Update documentation regarding sysdevs The part of Documentation/power/devices.txt regarding sysdevs is not valid any more after commit 2e711c04dbbf7a7732a3f7073b1fc285d12b369d (PM: Remove sysdev suspend, resume and shutdown operations), so remove it. Signed-off-by: Rafael J. Wysocki commit 129b656a0de9a229a72fe4bb6bacd134a1477b44 Author: Kevin Hilman Date: Fri Jun 10 16:05:51 2011 -0700 PM / Runtime: Update doc: usage count no longer incremented across system PM Commit e8665002477f0278f84f898145b1f141ba26ee26 (PM: Allow pm_runtime_suspend() to succeed during system suspend) removed usage count increment across system PM. Update doc to reflect this. Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit e92d03bff9a0d0bcbb812c9b1290ca96c9338d45 Author: Eric Anholt Date: Tue Jun 14 16:43:09 2011 -0700 Revert "drm/i915: Kill GTT mappings when moving from GTT domain" This reverts commit 4a684a4117abd756291969336af454e8a958802f. Userland has always been required to set the object's domain to GTT before using it through a GTT mapping, it's not something that the kernel is supposed to enforce. (The pagefault support is so that we can handle multiple mappings without userland having to pin across them, not so that userland can use GTT after GPU domains without telling the kernel). Fixes 19.2% +/- 0.8% (n=6) performance regression in cairo-gl firefox-talos-gfx on my T420 latop. Signed-off-by: Keith Packard commit ec6a890dfed7dd245beba5e5bcdfcffbd934c284 Author: Chris Wilson Date: Tue Jun 21 18:37:59 2011 +0100 drm/i915: Apply HWSTAM workaround for BSD ring on SandyBridge ...we need to apply exactly the same workaround for missing interrupts from BSD as for the BLT ring, apparently. See also commit 498e720b96379d8ee9c294950a01534a73defcf3 (drm/i915: Fix gen6 (SNB) missed BLT ring interrupts). Reported-and-tested-by: nkalkhof@web.de Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=38529 Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit efc2924e733631a64c0afed8dbba2741d186998c Author: Keith Packard Date: Mon Jun 6 17:12:49 2011 -0700 drm/i915: Call intel_enable_plane from i9xx_crtc_mode_set (again) This change got placed in the ironlake path instead of the 9xx path during a recent code shuffle. Signed-off-by: Keith Packard commit e08f6d4131ab964420f0bcabecc68d75fb49df79 Merge: 890879c c7d74b0 Author: Linus Torvalds Date: Tue Jun 21 10:36:06 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/qib: Ensure that LOS and DFE are being turned off RDMA/cxgb4: Couple of abort fixes RDMA/cxgb4: Don't truncate MR lengths RDMA/cxgb4: Don't exceed hw IQ depth limit for user CQs commit 890879cfa08f5ceaa09810611f46e890f7d57ff6 Merge: 5629937 de1b794 Author: Linus Torvalds Date: Tue Jun 21 10:22:35 2011 -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: jbd2: Fix oops in jbd2_journal_remove_journal_head() jbd2: Remove obsolete parameters in the comments for some jbd2 functions ext4: fixed tracepoints cleanup ext4: use FIEMAP_EXTENT_LAST flag for last extent in fiemap ext4: Fix max file size and logical block counting of extent format file ext4: correct comments for ext4_free_blocks() commit 9a7b2d1f0eb0a6b674726c9a9d77ce83fd0b27fe Author: Hans de Goede Date: Mon Jun 6 14:43:39 2011 -0300 [media] pwc: better usb disconnect handling Unplugging a pwc cam while an app has the /dev/video# node open leads to an oops in pwc_video_close when the app closes the node, because the disconnect handler has free-ed the pdev struct pwc_video_close tries to use. Instead of adding some sort of bandaid for this. fix it properly using the v4l2 core's new(ish) behavior of keeping the v4l2_dev structure around until both unregister has been called, and all file handles referring to it have been closed: Embed the v4l2_dev structure in the pdev structure and define a v4l2 dev release callback releasing the pdev structure (and thus also the embedded v4l2 dev structure. Signed-off-by: Hans de Goede Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab commit 1650add23578b5ca35c1f1e863987180a8c03779 Author: Bryan Schumaker Date: Thu Jun 2 15:07:35 2011 -0400 NFS: Fix decode_secinfo_maxsz I initially did the calculation in bytes, and not words Signed-off-by: Bryan Schumaker Signed-off-by: Trond Myklebust commit 19982ba8562e33083cb5bbb59a74855d8a9624ea Author: Trond Myklebust Date: Fri Jun 10 13:30:23 2011 -0400 NFSv4.1: Fix an off-by-one error in pnfs_generic_pg_test And document what is going on there... Signed-off-by: Trond Myklebust commit 8f7d5efbef8718a774ac5e347b4ec069f17fd9b4 Author: Trond Myklebust Date: Fri Jun 10 13:30:22 2011 -0400 NFSv4.1: Fix some issues with pnfs_generic_pg_test 1. If the intention is to coalesce requests 'prev' and 'req' then we have to ensure at least that we have a layout starting at req_offset(prev). 2. If we're only requesting a minimal layout of length desc->pg_count, we need to test the length actually returned by the server before we allow the coalescing to occur. 3. We need to deal correctly with (pgio->lseg == NULL) 4. Fixup the test guarding the pnfs_update_layout. Signed-off-by: Trond Myklebust commit 082763a80ad11adbe8418fff1cfe466343035b7a Author: Linus Walleij Date: Mon Jun 20 08:13:00 2011 +0100 ARM: 6969/1: plat-iop: fix build error The iop13xx_defconfig didn't build since the platform code uses defines from . Simply add the include so it compiles. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 946a105e16651c35e9cc670bff23812761f1ad35 Author: Dave Martin Date: Tue Jun 14 14:20:44 2011 +0100 ARM: 6961/1: zImage: Add build-time check for correctly-sized proc_type entries It is easy to mis-maintain the proc_types table such that the entries become wrongly-sized and misaligned when the kernel is built in Thumb-2. This patch adds an assembly-time check which will turn most common size/alignment mistakes in this table into build failures, to avoid having to debug the boot-time kernel hang which would happen if the resulting kernel were actually booted. Signed-off-by: Dave Martin Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 573619d165b85152eeddd3b3871002c48cd94e42 Author: Russell King Date: Mon Jun 20 16:46:01 2011 +0100 ARM: SMP: wait for CPU to be marked active When we bring a CPU online, we should wait for it to become active before entering the idle thread, so we know that the scheduler and thread migration is going to work. Signed-off-by: Russell King commit 9e05cdde0c6bb8c3c3ee12e6d6123c6f9f85eea6 Author: Simon Horman Date: Mon Jun 20 23:00:11 2011 +0000 ARM: mach-shmobile: ag5evm: consistently name sdhi info structures Name the SDHI1 instance sh_sdhi1_info to be consistent with sh_sdhi0_info. Signed-off-by: Simon Horman Signed-off-by: Paul Mundt commit 5a5685525dbadbe31b8efb113c0d41be8cddda09 Author: Kuninori Morimoto Date: Fri Jun 17 04:33:13 2011 +0000 ARM: mach-shmobile: mackerel: change usbhs devices order USB1 can use IRQ interrupt and notify function for usbhs driver, but USB0 is using polling for it. The priority of usbhs devices order USB1 > USB0 is good idea Signed-off-by: Kuninori Morimoto Reviewed-by: Simon Horman Signed-off-by: Paul Mundt commit f2b9726105824fdeea32a339e5072a358f89a25b Author: Yoshihiro Shimoda Date: Tue Jun 21 08:28:27 2011 +0000 sh: add platform_device of EHCI/OHCI to setup-sh7757 Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit bf69d8484cbba2a59dd73cdd20b8d5e79cedce1f Author: Yoshihiro Shimoda Date: Tue Jun 21 08:03:25 2011 +0000 sh: fix compile error using sh7757lcr_defconfig Fix the complie error in ehci-hcd.c because it needs an additional configuration. CC drivers/usb/host/ehci-hcd.o drivers/usb/host/ehci-hcd.c:1288:2: error: #error "missing bus glue for ehci-hcd" make[3]: *** [drivers/usb/host/ehci-hcd.o] Error 1 make[2]: *** [drivers/usb/host] Error 2 make[1]: *** [drivers/usb] Error 2 make: *** [drivers] Error 2 Signed-off-by: Yoshihiro Shimoda Signed-off-by: Paul Mundt commit e905a83acd7bf8989c3d5ba3099b72675f5d7d29 Author: Lydia Wang Date: Mon Jun 20 14:17:56 2011 +0800 ALSA: VIA HDA: Create a master amplifier control for VT1718S. Create a master volume and mute control of playback for VT1718S. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit ba31a60d0fd8a3976d44d32f2b82491c62646b2a Author: Lydia Wang Date: Mon Jun 20 14:16:33 2011 +0800 ALSA: VIA HDA: Mute/unmute mixer conncted to Headphone for VT1718S. When switch HP independent mode, mute/unmute connctions of mixer which is connected to headphone for VT1718S. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 42467b32ce4f1ba933673b396f807110e3618ff5 Author: Lydia Wang Date: Mon Jun 20 14:14:37 2011 +0800 ALSA: VIA HDA: Modify initial verbs list for VT1718S. Remove some invalid initial verbs and correct some wrong initial verbs for VT1718S codec. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit c933790614529c06b221f73ff36e2456aecee30d Author: Tony Vroon Date: Mon Jun 20 22:11:11 2011 +0100 ALSA: hda - Remove ALC268 model override for CPR2000 The "diverse" Quanta ID 0x0763 is overridden to ALC268_ACER. This keeps headphone automute and microphone input from operating on at least one laptop from Opti Systems. Without the override, the BIOS parser does a fine job setting the card up and everything works. Tested-By: Peter Schneider Signed-off-by: Tony Vroon Signed-off-by: Takashi Iwai commit 56299378726d5f2ba8d3c8cbbd13cb280ba45e4f Author: Linus Torvalds Date: Mon Jun 20 20:25:46 2011 -0700 Linux 3.0-rc4 commit 79568f5be06c91071697c065f01f3ebfbeb25a61 Author: Linus Torvalds Date: Mon Jun 20 20:13:49 2011 -0700 vfs: i_state needs to be 'unsigned long' for now Commit 13e12d14e2dc ("vfs: reorganize 'struct inode' layout a bit") moved things around a bit changed i_state to be unsigned int instead of unsigned long. That was to help structure layout for the 64-bit case, and shrink 'struct inode' a bit (admittedly that only happened when spinlock debugging was on and i_flags didn't pack with i_lock). However, Meelis Roos reports that this results in unaligned exceptions on sprc, and it turns out that the bit-locking primitives that we use for the I_NEW bit want to use the bitops. Which want 'unsigned long', not 'unsigned int'. We really should fix the bit locking code to not have that kind of requirement, but that's a much bigger change. So for now, revert that field back to 'unsigned long' (but keep the other re-ordering changes from the commit that caused this). Andi points out that we have played games with this in 'struct page', so it's solvable with other hacks too, but since right now the struct inode size advantage only happens with some rare config options, it's not worth fighting. It _would_ be worth fixing the bitlocking code, though. Especially since there is no type safety in the bitlocking code (this never caused any warnings, and worked fine on x86-64, because the bitlocks take a 'void *' and x86-64 doesn't care that deeply about alignment). So it's currently a very easy problem to trigger by mistake and never notice. Reported-by: Meelis Roos Cc: Andi Kleen Cc: David Miller Signed-off-by: Linus Torvalds commit f5fc5567dd24c15b1d95aa9ee2aaada04d835a0c Merge: 85d45ad a377e18 Author: Linus Torvalds Date: Mon Jun 20 20:12:48 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms/r6xx+: voltage fixes drm/nouveau: drop leftover debugging drm/radeon: avoid warnings from r600/eg irq handlers on powered off card. drm/radeon/kms: add missing param for dce3.2 DP transmitter setup drm/radeon/kms/atom: fix duallink on some early DCE3.2 cards drm/nouveau: fix assumption that semaphore dmaobj is valid in x-chan sync drm/nv50/disp: fix gamma with page flipping overlay turned on drm/nouveau/pm: Prevent overflow in nouveau_perf_init() drm/nouveau: fix big-endian switch commit 85d45adef06caa988506686527a5fedf856dc550 Merge: eda0841 fdb9c3c Author: Linus Torvalds Date: Mon Jun 20 20:11:34 2011 -0700 Merge branch 'msm-fix' of git://codeaurora.org/quic/kernel/davidb/linux-msm * 'msm-fix' of git://codeaurora.org/quic/kernel/davidb/linux-msm: msm: timer: Fix DGT rate on 8960 and 8660 msm: timer: compensate for timer shift in msm_read_timer_count msm: timer: Fix SMP build error commit eda0841094a3a232357ca10a24b40da461db3fcf Merge: 6e158d2 105f462 Author: Linus Torvalds Date: Mon Jun 20 20:10:52 2011 -0700 Merge branch 'for-2.6.40' of git://linux-nfs.org/~bfields/linux * 'for-2.6.40' of git://linux-nfs.org/~bfields/linux: nfsd4: fix break_lease flags on nfsd open nfsd: link returns nfserr_delay when breaking lease nfsd: v4 support requires CRYPTO nfsd: fix dependency of nfsd on auth_rpcgss commit 6e158d21986fa15d21fd32cf241d167d4d741ae3 Merge: 3669820 3844204 Author: Linus Torvalds Date: Mon Jun 20 20:10:18 2011 -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: (40 commits) pxa168_eth: fix race in transmit path. ipv4, ping: Remove duplicate icmp.h include netxen: fix race in skb->len access sgi-xp: fix a use after free hp100: fix an skb->len race netpoll: copy dev name of slaves to struct netpoll ipv4: fix multicast losses r8169: fix static initializers. inet_diag: fix inet_diag_bc_audit() gigaset: call module_put before restart of if_open() farsync: add module_put to error path in fst_open() net: rfs: enable RFS before first data packet is received fs_enet: fix freescale FCC ethernet dp buffer alignment netdev: bfin_mac: fix memory leak when freeing dma descriptors vlan: don't call ndo_vlan_rx_register on hardware that doesn't have vlan support caif: Bugfix - XOFF removed channel from caif-mux tun: teach the tun/tap driver to support netpoll dp83640: drop PHY status frames in the driver. dp83640: fix phy status frame event parsing phylib: Allow BCM63XX PHY to be selected only on BCM63XX. ... commit 36698206504fca9198b8563f1fc2c9e38e063e11 Merge: ef46222 482e0cd Author: Linus Torvalds Date: Mon Jun 20 20:09:15 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: devcgroup_inode_permission: take "is it a device node" checks to inlined wrapper fix comment in generic_permission() kill obsolete comment for follow_down() proc_sys_permission() is OK in RCU mode reiserfs_permission() doesn't need to bail out in RCU mode proc_fd_permission() is doesn't need to bail out in RCU mode nilfs2_permission() doesn't need to bail out in RCU mode logfs doesn't need ->permission() at all coda_ioctl_permission() is safe in RCU mode cifs_permission() doesn't need to bail out in RCU mode bad_inode_permission() is safe from RCU mode ubifs: dereferencing an ERR_PTR in ubifs_mount() commit a377e187df725fe7e62d2cec59ec290c5a605d93 Author: Alex Deucher Date: Mon Jun 20 13:00:31 2011 -0400 drm/radeon/kms/r6xx+: voltage fixes 0xff01 is not an actual voltage value, but a flag for the driver. If the power state as that value, skip setting the voltage. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit fdb9c3cd5124c9a6e4c824ed2bca5b4602e84a1a Author: Stephen Boyd Date: Thu Apr 21 23:09:11 2011 +0000 msm: timer: Fix DGT rate on 8960 and 8660 The DGT runs at 27 MHz divided by 4 on 8660 and 8960. Signed-off-by: Stephen Boyd Signed-off-by: David Brown commit ecc90462b428db2ad2ee5081c45496ed10f3a633 Author: Dave Kleikamp Date: Mon Jun 20 17:53:24 2011 -0500 jfs: agstart field must be 64 bits The previous patch added the agstart field to jfs_ip, but declared it a long. We need to make sure its 64 bits on every platform. Signed-off-by: Dave Kleikamp commit 384420409d9b5d4443940abace49363d26135412 Author: Richard Cochran Date: Sun Jun 19 21:48:06 2011 +0000 pxa168_eth: fix race in transmit path. Because the socket buffer is freed in the completion interrupt, it is not safe to access it after submitting it to the hardware. Cc: stable@kernel.org Cc: Sachin Sanap Cc: Zhangfei Gao Cc: Philip Rakity Signed-off-by: Richard Cochran Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 19345cb299e8234006c5125151ab723e851a1d24 Author: Benny Halevy Date: Sun Jun 19 18:33:46 2011 -0400 NFSv4.1: file layout must consider pg_bsize for coalescing Otherwise we end up overflowing the rpc buffer size on the receive end. Signed-off-by: Benny Halevy Signed-off-by: Trond Myklebust commit 8ad2475e3555346fbd738e77da12578b97d10505 Author: Jesper Juhl Date: Sun Jun 19 22:31:20 2011 +0000 ipv4, ping: Remove duplicate icmp.h include Remove the duplicate inclusion of net/icmp.h from net/ipv4/ping.c Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit c82b9d7fe7464aec78210544948564ffe3bb2d2b Author: Eric Dumazet Date: Sun Jun 19 20:26:15 2011 +0000 netxen: fix race in skb->len access As soon as skb is given to hardware, TX completion can free skb under us. Therefore, we should update dev stats before kicking the device. Signed-off-by: Eric Dumazet CC: Amit Kumar Salecha Signed-off-by: David S. Miller commit fa7ccfb17033bfb5bca86f6b909cab0b807efbc0 Author: Larry Finger Date: Sat Jun 18 22:49:53 2011 -0500 rtlwifi: rtl8192se: Handle duplicate PCI ID 0x10ec:0x8192 conflict with r8192e_pci There are two devices with PCI ID 0x10ec:0x8192, namely RTL8192E and RTL8192SE. The method of distinguishing them is by the revision ID at offset 0x8 of the PCI configuration space. If the value is 0x10, then the device uses rtl8192se for a driver. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 40fad6bad416fe337a4be194f524dd941e423cb9 Merge: 3373b28 3306054 Author: John W. Linville Date: Mon Jun 20 14:54:20 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 commit ef46222e7b56e728e423527d430cb2013c595491 Merge: c01ad40 acd049c Author: Linus Torvalds Date: Mon Jun 20 09:01:33 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/setup: Fix for incorrect xen_extra_mem_start. xen: When calling power_off, don't call the halt function. xen: Fix compile warning when CONFIG_SMP is not defined. xen: support CONFIG_MAXSMP xen: partially revert "xen: set max_pfn_mapped to the last pfn mapped" commit c01ad4081939f91ebd7277e8e731fd90ceb3e632 Merge: 90a800d cca23d0 Author: Linus Torvalds Date: Mon Jun 20 08:59:46 2011 -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: sh_keysc - 8x8 MODE_6 fix Input: omap-keypad - add missing input_sync() Input: evdev - try to wake up readers only if we have full packet Input: properly assign return value of clamp() macro. commit 90a800de0a29426ea900ecd53f2929d5f4bc4578 Merge: 10e18e6 e999376 Author: Linus Torvalds Date: Mon Jun 20 08:58:53 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: avoid delayed metadata items during commits btrfs: fix uninitialized return value btrfs: fix wrong reservation when doing delayed inode operations btrfs: Remove unused sysfs code btrfs: fix dereference of ERR_PTR value Btrfs: fix relocation races Btrfs: set no_trans_join after trying to expand the transaction Btrfs: protect the pending_snapshots list with trans_lock Btrfs: fix path leakage on subvol deletion Btrfs: drop the delalloc_bytes check in shrink_delalloc Btrfs: check the return value from set_anon_super commit 10e18e62309a882c513b4f516527055b6a60d668 Merge: 8816ead de2d1a5 Author: Linus Torvalds Date: Mon Jun 20 08:58:07 2011 -0700 Merge branch 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: Fix register corruption in pvclock_scale_delta KVM: MMU: fix opposite condition in mapping_level_dirty_bitmap KVM: VMX: do not overwrite uptodate vcpu->arch.cr3 on KVM_SET_SREGS KVM: MMU: Fix build warnings in walk_addr_generic() commit d31b53e3cd069e02290ed8a648aa8c7618d6fe77 Author: Dave Kleikamp Date: Mon Jun 20 10:53:46 2011 -0500 JFS: Don't save agno in the inode Resizing the file system can result in an in-memory inode being remapped to a different aggregate group (AG). A cached AG number can cause problems when trying to free or allocate inodes. Instead, save the IAG's agstart address and calculate the agno when we need it. Signed-off-by: Dave Kleikamp commit 28e0fa894cd5996d3007ce82f07226f79beb7286 Author: Dave Kleikamp Date: Mon Jun 20 10:32:46 2011 -0500 jfs: Update agstart when resizing volume A comment indicates that the IAG's agstart does not need to be updated since it will always point to a block in the same aggregate group, but jfs_fsck isn't so forgiving and reports it as an error. I'm fixing this in jfsutils as well, so either a new kernel or new utilities will be sufficient to fix the problem. Signed-off-by: Dave Kleikamp commit 206b6310fd0268a6ca50cf36f03b0f4eee5602ec Author: Dave Kleikamp Date: Mon Jun 20 10:30:04 2011 -0500 jfs: old_agsize should be 64 bits in jfs_extendfs Signed-off-by: Dave Kleikamp commit 482e0cd3dbaa70f2a2bead4b5f2c0d203ef654ba Author: Al Viro Date: Sun Jun 19 13:01:04 2011 -0400 devcgroup_inode_permission: take "is it a device node" checks to inlined wrapper inode_permission() calls devcgroup_inode_permission() and almost all such calls are _not_ for device nodes; let's at least keep the common path straight... Signed-off-by: Al Viro commit 8e833fd2e1f0107ee7a4b6bc4de3c9f0e9b0ed41 Author: Al Viro Date: Sun Jun 19 01:56:53 2011 -0400 fix comment in generic_permission() CAP_DAC_OVERRIDE is enough for MAY_EXEC on directory, even if no exec bits are set. Signed-off-by: Al Viro commit 6291176bcd71a2766a19a10cbd9bab07d289e1d7 Author: Al Viro Date: Fri Jun 17 19:20:48 2011 -0400 kill obsolete comment for follow_down() Signed-off-by: Al Viro commit 1aec7036d0c2996c86ce483ca0a28f3b20807b43 Author: Al Viro Date: Sat Jun 18 20:42:00 2011 -0400 proc_sys_permission() is OK in RCU mode nothing blocking there, since all instances of sysctl ->permissions() method are non-blocking - both of them, that is. Signed-off-by: Al Viro commit 1d29b5a2ed7eb8862c9b66daf475f3e4c1a40299 Author: Al Viro Date: Sat Jun 18 20:37:33 2011 -0400 reiserfs_permission() doesn't need to bail out in RCU mode nothing blocking other than generic_permission() (and check_acl callback does bail out in RCU mode). Signed-off-by: Al Viro commit cf1279111686d9742cbc4145bc9d526c83f59fea Author: Al Viro Date: Sat Jun 18 20:35:23 2011 -0400 proc_fd_permission() is doesn't need to bail out in RCU mode nothing blocking except generic_permission() Signed-off-by: Al Viro commit 730e908f3539066d4aa01f4720ebfc750ce4d045 Author: Al Viro Date: Sat Jun 18 20:21:44 2011 -0400 nilfs2_permission() doesn't need to bail out in RCU mode Nothing blocking except for generic_permission(). Which will DTRT. Signed-off-by: Al Viro commit a63ab94d67879bc0630ea9821c582ddf58ba5527 Author: Al Viro Date: Sat Jun 18 20:17:22 2011 -0400 logfs doesn't need ->permission() at all ... and never did, what with its ->permission() being what we do by default when ->permission is NULL... Signed-off-by: Al Viro commit 6b419951f1e44c8a46fccfc6551eca9a9980acd6 Author: Al Viro Date: Sat Jun 18 20:11:43 2011 -0400 coda_ioctl_permission() is safe in RCU mode return (mask & MAY_EXEC) ? -EACCES : 0; is non-blocking... Signed-off-by: Al Viro commit ec12781f192568f7ea860f440f890389ba393df7 Author: Al Viro Date: Sat Jun 18 20:03:36 2011 -0400 cifs_permission() doesn't need to bail out in RCU mode nothing potentially blocking except generic_permission(), which will DTRT Signed-off-by: Al Viro commit 1712c20dae7b770b62b2e3272100b3b40af0157c Author: Al Viro Date: Sat Jun 18 19:59:04 2011 -0400 bad_inode_permission() is safe from RCU mode return -EIO; is *not* a blocking operation, thank you very much. Nick, what the hell have you been smoking? Signed-off-by: Al Viro commit 185bf87393afe6b966881e36c459949d90930a7a Author: Dan Carpenter Date: Mon Jun 20 10:10:24 2011 +0300 ubifs: dereferencing an ERR_PTR in ubifs_mount() d251ed271d5 "ubifs: fix sget races" left out the goto from this error path so the static checkers complain that we're dereferencing "sb" when it's an ERR_PTR. Signed-off-by: Dan Carpenter Signed-off-by: Al Viro commit 105f4622104848ff1ee1f644d661bef9dec3eb27 Author: J. Bruce Fields Date: Tue Jun 7 11:50:23 2011 -0400 nfsd4: fix break_lease flags on nfsd open Thanks to Casey Bodley for pointing out that on a read open we pass 0, instead of O_RDONLY, to break_lease, with the result that a read open is treated like a write open for the purposes of lease breaking! Reported-by: Casey Bodley Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit 6f2e810ad5d162c2bfa063c1811087277b299e4e Author: David Henningsson Date: Mon Jun 20 10:27:07 2011 +0200 ALSA: HDA: Remove quirk for an HP device The reporter, who is running kernel 2.6.38, reports that he needs to set model=auto for the headphone output to work correctly. BugLink: http://bugs.launchpad.net/bugs/761022 Cc: stable@kernel.org (v2.6.38+) Reported-by: Jo Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit 161b6ae0e067e421b20bb35caf66bdb405c929ac Author: Marcin Slusarz Date: Sat May 28 13:23:42 2011 +0200 debugobjects: Fix boot crash when kmemleak and debugobjects enabled Order of initialization look like this: ... debugobjects kmemleak ...(lots of other subsystems)... workqueues (through early initcall) ... debugobjects use schedule_work for batch freeing of its data and kmemleak heavily use debugobjects, so when it comes to freeing and workqueues were not initialized yet, kernel crashes: BUG: unable to handle kernel NULL pointer dereference at (null) IP: [] __queue_work+0x29/0x41a [] queue_work_on+0x16/0x1d [] queue_work+0x29/0x55 [] schedule_work+0x13/0x15 [] free_object+0x90/0x95 [] debug_check_no_obj_freed+0x187/0x1d3 [] ? _raw_spin_unlock_irqrestore+0x30/0x4d [] ? free_object_rcu+0x68/0x6d [] kmem_cache_free+0x64/0x12c [] free_object_rcu+0x68/0x6d [] __rcu_process_callbacks+0x1b6/0x2d9 ... because system_wq is NULL. Fix it by checking if workqueues susbystem was initialized before using. Signed-off-by: Marcin Slusarz Cc: Catalin Marinas Cc: Tejun Heo Cc: Dipankar Sarma Cc: Paul E. McKenney Cc: stable@kernel.org Link: http://lkml.kernel.org/r/20110528112342.GA3068@joi.lan Signed-off-by: Thomas Gleixner commit 155d109b5f52ffd749219b27702462dcd9cf4f8d Author: Namhyung Kim Date: Mon Jun 20 13:23:14 2011 +0200 block: add REQ_SECURE to REQ_COMMON_MASK Add REQ_SECURE flag to REQ_COMMON_MASK so that init_request_from_bio() can pass it to @req->cmd_flags. Signed-off-by: Namhyung Kim Acked-by: Adrian Hunter Cc: stable@kernel.org # 2.6.36 and newer Signed-off-by: Jens Axboe commit 4ee1c57fcadfb79a6515698d8001081b5b980e32 Author: Dave Airlie Date: Mon Jun 20 15:25:35 2011 +1000 drm/nouveau: drop leftover debugging this printk isn't really useful, just drop it for now. Signed-off-by: Dave Airlie commit ca295e50c2805865fd1ac8916d15ab0b551d957a Merge: 682f1a5 b16a5a1 Author: Dave Airlie Date: Mon Jun 20 12:02:38 2011 +1000 Merge branch 'drm-nouveau-fixes' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-fixes * 'drm-nouveau-fixes' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: drm/nouveau: fix assumption that semaphore dmaobj is valid in x-chan sync drm/nv50/disp: fix gamma with page flipping overlay turned on drm/nouveau/pm: Prevent overflow in nouveau_perf_init() drm/nouveau: fix big-endian switch commit 682f1a54a03513fd6bcede56845f1ba21f48c182 Author: Dave Airlie Date: Sat Jun 18 03:59:51 2011 +0000 drm/radeon: avoid warnings from r600/eg irq handlers on powered off card. Since we were calling the wptr function before checking if the IH was even enabled, or the GPU wasn't shutdown, we'd get spam in the logs when the GPU readback 0xffffffff. This reorders things so we return early in the no IH and GPU shutdown cases. Reported-and-tested-by: ManDay on #radeon Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit 74d074eecbb4778e5f5ee7d59399da971682c532 Author: Alex Deucher Date: Fri Jun 17 06:11:30 2011 +0000 drm/radeon/kms: add missing param for dce3.2 DP transmitter setup This is used during phy init to set up the phy for DP. This may fix DP problems on DCE3.2 cards. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 8323fa6ba313ae2664420ec34d56a7fb0bbbe525 Author: Alex Deucher Date: Fri Jun 17 13:13:52 2011 -0400 drm/radeon/kms/atom: fix duallink on some early DCE3.2 cards Certain revisions of the vbios on DCE3.2 cards have a bug in the transmitter control table which prevents duallink from being enabled properly on some cards. The action switch statement jumps to the wrong offset for the OUTPUT_ENABLE action. The fix is to use the ENABLE action rather than the OUTPUT_ENABLE action on the affected cards. In fixed version of the vbios, both actions jump to the same offset, so the change should be safe. Reported-and-tested-by: Dave Airlie Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 44da29d26bb8df3b0411ba902f2bc9b973ea38e4 Author: Eric Dumazet Date: Sun Jun 19 12:52:36 2011 +0000 sgi-xp: fix a use after free Its illegal to dereference skb after dev_kfree_skb(skb) Signed-off-by: Eric Dumazet CC: Robin Holt Signed-off-by: David S. Miller commit 658924dc9ae2ca8e3c46f36306f5dbd501cf4688 Author: Eric Dumazet Date: Sun Jun 19 12:43:33 2011 +0000 hp100: fix an skb->len race As soon as skb is given to hardware and spinlock released, TX completion can free skb under us. Therefore, we should update netdev stats before spinlock release. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 00ce2d5614a67521241d024c6e50afe3bd3df049 Merge: cefa999 3744100 Author: David S. Miller Date: Sun Jun 19 16:26:46 2011 -0700 Merge branch 'davem.r8169' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 commit cefa9993f161c1c2b6b91b7ea2e84a9bfbd43d2e Author: WANG Cong Date: Sun Jun 19 16:13:01 2011 -0700 netpoll: copy dev name of slaves to struct netpoll Otherwise we will not see the name of the slave dev in error message: [ 388.469446] (null): doesn't support polling, aborting. Signed-off-by: WANG Cong Signed-off-by: David S. Miller commit df18d127f4fed7a0284bcfa8d2843800cdb63b72 Author: Boaz Harrosh Date: Fri Jun 17 16:25:51 2011 -0400 pnfs-obj: No longer needed to take an extra ref at add_device Andy's last device_cache patches, already take an extra reference on the newly inserted device_id. So we can remove it from obj-io. Without this patch the device_ids are leaked. Andy's patches are not in Linus tree yet. So I'm not sure if they are scheduled for this Kernel or the next. This patch should be added as part of these. CC: Andy Adamson Signed-off-by: Boaz Harrosh Signed-off-by: Trond Myklebust commit de2d1a524e94a79078d9fe22c57c0c6009237547 Author: Zachary Amsden Date: Wed Jun 15 20:50:04 2011 -0700 KVM: Fix register corruption in pvclock_scale_delta The 128-bit multiply in pvclock.h was missing an output constraint for EDX which caused a register corruption to appear. Thanks to Ulrich for diagnosing the EDX corruption and Avi for providing this fix. Signed-off-by: Zachary Amsden Signed-off-by: Avi Kivity commit a0a8eaba1661232f094654422bdabe2df4e26863 Author: Steve Date: Fri Jun 17 10:25:39 2011 +0800 KVM: MMU: fix opposite condition in mapping_level_dirty_bitmap The condition is opposite, it always maps huge page for the dirty tracked page Reported-by: Steve Signed-off-by: Steve Signed-off-by: Avi Kivity commit 5233dd51ece1615d54ab96c4cbe9ac3cc595e955 Author: Marcelo Tosatti Date: Mon Jun 6 14:27:47 2011 -0300 KVM: VMX: do not overwrite uptodate vcpu->arch.cr3 on KVM_SET_SREGS Only decache guest CR3 value if vcpu->arch.cr3 is stale. Fixes loadvm with live guest. Signed-off-by: Marcelo Tosatti Tested-by: Markus Schade Signed-off-by: Avi Kivity commit b72336355bb4c92d4a2be3f975dbea47089c83c1 Author: Borislav Petkov Date: Mon May 30 22:11:17 2011 +0200 KVM: MMU: Fix build warnings in walk_addr_generic() On 3.0-rc1 I get In file included from arch/x86/kvm/mmu.c:2856: arch/x86/kvm/paging_tmpl.h: In function ‘paging32_walk_addr_generic’: arch/x86/kvm/paging_tmpl.h:124: warning: ‘ptep_user’ may be used uninitialized in this function In file included from arch/x86/kvm/mmu.c:2852: arch/x86/kvm/paging_tmpl.h: In function ‘paging64_walk_addr_generic’: arch/x86/kvm/paging_tmpl.h:124: warning: ‘ptep_user’ may be used uninitialized in this function caused by 6e2ca7d1802bf8ed9908435e34daa116662e7790. According to Takuya Yoshikawa, ptep_user won't be used uninitialized so shut up gcc. Cc: Takuya Yoshikawa Link: http://lkml.kernel.org/r/20110530094604.GC21833@liondog.tnic Signed-off-by: Borislav Petkov Signed-off-by: Avi Kivity commit 8816ead9d8e7c2745788e0684797e1912b504f33 Merge: 357ed6b 203db29 d8ad7d1 b519951 c1f5c54 Author: Linus Torvalds Date: Sun Jun 19 09:00:18 2011 -0700 Merge branches 'perf-urgent-for-linus', 'sched-urgent-for-linus', 'timers-urgent-for-linus' and 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: tools/perf: Fix static build of perf tool tracing: Fix regression in printk_formats file * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: clocksource: Make watchdog robust vs. interruption timerfd: Fix wakeup of processes when timer is cancelled on clock change * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, MAINTAINERS: Add x86 MCE people x86, efi: Do not reserve boot services regions within reserved areas commit 357ed6b1a110048ff8106f99092d6c4a7aadb45a Merge: de505e7 f8b7fc6 Author: Linus Torvalds Date: Sun Jun 19 08:56:56 2011 -0700 Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rcu: Move RCU_BOOST #ifdefs to header file rcu: use softirq instead of kthreads except when RCU_BOOST=y rcu: Use softirq to address performance regression rcu: Simplify curing of load woes commit de505e709ffb09a7382ca8e0d8c7dbb171ba5830 Merge: c11760c b1e698d Author: Linus Torvalds Date: Sat Jun 18 20:33:31 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (s3c) Initialize sysfs attributes hwmon: (ibmpex) Initialize sysfs attributes hwmon: (ibmaem) Initialize sysfs attributes hwmon: (asus_atk0110) Consolidate sysfs attribute initialization hwmon: (coretemp) Drop unused struct members commit be98ca652faa6468916a9b7608befff215a8ca70 Author: Manoj Iyer Date: Thu May 26 11:19:05 2011 -0500 mmc: Add PCI fixup quirks for Ricoh 1180:e823 reader Signed-off-by: Manoj Iyer Cc: Signed-off-by: Chris Ball commit 742a0c7cae9bd0f913c71722289b8ec862d70a2b Author: Guennadi Liakhovetski Date: Fri May 27 16:54:05 2011 +0200 mmc: sdhi: fix module unloading MMC host drivers must be able to process interrupts during mmc_remove_host(). Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit b9c350a0a9d3564d20f5301f472b8841f8934c7d Author: Wanlong Gao Date: Tue May 24 21:03:22 2011 +0800 mmc: of_mmc_spi: add NO_IRQ define to of_mmc_spi.c Provide a dummy value of NO_IRQ for architectures that don't support it (such as MIPS). Fixes the build error for MIPS. Signed-off-by: Wanlong Gao Acked-by: Grant Likely Signed-off-by: Chris Ball commit c44048dea28b3febd38417f36f7b2924d93f9bb2 Author: Chris Ball Date: Thu May 26 23:15:49 2011 -0400 mmc: vub300: fix null dereferences in error handling Reported-by: Dan Carpenter Signed-off-by: Chris Ball commit c1f5c54b57341e872a9d375dccef7257f86033ef Author: Ingo Molnar Date: Sat Jun 18 22:51:13 2011 +0200 x86, MAINTAINERS: Add x86 MCE people Announce the new x86 MCE infrastructure maintainers. Acked-by: Borislav Petkov Acked-by: Tony Luck Acked-by: H. Peter Anvin Acked-by: Thomas Gleixner Link: http://lkml.kernel.org/n/tip-8hs7yob6wib4vblmrmbpbav4@git.kernel.org Signed-off-by: Ingo Molnar commit 7d68dc3f1003a38948c55c803c32d1989dd49198 Author: Maarten Lankhorst Date: Tue Jun 14 19:53:09 2011 +0200 x86, efi: Do not reserve boot services regions within reserved areas Commit 916f676f8dc started reserving boot service code since some systems require you to keep that code around until SetVirtualAddressMap is called. However, in some cases those areas will overlap with reserved regions. The proper medium-term fix is to fix the bootloader to prevent the conflicts from occurring by moving the kernel to a better position, but the kernel should check for this possibility, and only reserve regions which can be reserved. Signed-off-by: Maarten Lankhorst Link: http://lkml.kernel.org/r/4DF7A005.1050407@gmail.com Acked-by: Matthew Garrett Signed-off-by: H. Peter Anvin Signed-off-by: Ingo Molnar commit 9aa3c94ce59066f545521033007abb6441706068 Author: Eric Dumazet Date: Sat Jun 18 11:59:18 2011 -0700 ipv4: fix multicast losses Knut Tidemann found that first packet of a multicast flow was not correctly received, and bisected the regression to commit b23dd4fe42b4 (Make output route lookup return rtable directly.) Special thanks to Knut, who provided a very nice bug report, including sample programs to demonstrate the bug. Reported-and-bisectedby: Knut Tidemann Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit c11760c6d80ab6aa20e383cf378a7287305f591c Author: Linus Torvalds Date: Wed Jun 8 10:30:03 2011 -0700 isofs: fix bh leak in isofs_fill_super() error case In isofs_fill_super(), when an iso_primary_descriptor is found, it is kept in pri_bh. The error cases don't properly release it. Fix it. Reported-and-tested-by: 김원석 Cc: Andrew Morton Signed-off-by: Linus Torvalds commit cca23d0b5350c9ca0473625c3f5879422ba534a6 Author: Magnus Damm Date: Sat Jun 18 02:51:52 2011 -0700 Input: sh_keysc - 8x8 MODE_6 fix According to the data sheet for G4, AP4 and AG5 KEYSC MODE_6 is 8x8 keys. Bump up MAXKEYS to 64 too. Signed-off-by: Magnus Damm Reviewed-by: Simon Horman Signed-off-by: Dmitry Torokhov commit b27af563befa95686c8d1abc491408aa6b9a31dc Author: Janusz Krzysztofik Date: Wed Jun 15 21:13:55 2011 -0700 Input: omap-keypad - add missing input_sync() Otherwise the updated evdev driver (commit cdda911c34006f1089f3c87b1a1f, "Input: evdev - only signal polls on full packets") no longer works on top of omap-keypad. Tested on Amstrad Delta. Signed-off-by: Janusz Krzysztofik Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit da40b0b6b4d3a81c5051fe6ae0544c48c13261c4 Author: Dmitry Torokhov Date: Sat Jun 18 02:50:11 2011 -0700 Input: evdev - try to wake up readers only if we have full packet We should only wake waiters on the event device when we actually post an EV_SYN/SYN_REPORT to the queue. Otherwise we end up making waiting threads runnable only to go right back to sleep because the device still isn't readable. Reported-by: Jeffrey Brown Signed-off-by: Dmitry Torokhov commit b1e698db0939b04602ded2a2196ff69c92b49378 Author: Guenter Roeck Date: Tue May 24 12:34:55 2011 -0700 hwmon: (s3c) Initialize sysfs attributes Initialize dynamically allocated sysfs attributes before device_create_file() call to suppress lockdep_init_map() warning if lockdep debugging is enabled. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.34+ commit fb794e0f7153918c33f2300986d995524ab711cf Author: Guenter Roeck Date: Tue May 24 12:34:12 2011 -0700 hwmon: (ibmpex) Initialize sysfs attributes Initialize dynamically allocated sysfs attributes before device_create_file() call to suppress lockdep_init_map() warning if lockdep debugging is enabled. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.34+ commit 3cdb2052a6e365ad56202874e6a8a05a2bb336fc Author: Guenter Roeck Date: Tue May 24 12:33:26 2011 -0700 hwmon: (ibmaem) Initialize sysfs attributes Initialize dynamically allocated sysfs attributes before device_create_file() call to suppress lockdep_init_map() warning if lockdep debugging is enabled. Signed-off-by: Guenter Roeck Acked-by: Jean Delvare Cc: stable@kernel.org # 2.6.34+ commit 9a2d55be1168b56a5c65321dcce64c97798eaec7 Author: Guenter Roeck Date: Tue May 24 12:19:05 2011 -0700 hwmon: (asus_atk0110) Consolidate sysfs attribute initialization Call sysfs_attr_init() from atk_init_attribute() to handle sysfs attribute initialization in a single function. Signed-off-by: Guenter Roeck Cc: Luca Tettamanti Acked-by: Jean Delvare commit 808b4e639eb00394de9989fabca23196c337ee75 Author: Jean Delvare Date: Tue Jun 7 15:14:26 2011 -0400 hwmon: (coretemp) Drop unused struct members pdev_entry.cpu and pdev_entry.cpu_core_id aren't used anywhere in the driver code so we can drop these struct members. Signed-off-by: Jean Delvare Cc: Fenghua Yu Cc: Guenter Roeck Cc: Durgadoss R Signed-off-by: Guenter Roeck commit b16a5a18ff994532120c1d18e678bbc5fb477b62 Author: Ben Skeggs Date: Fri Jun 17 23:41:54 2011 +1000 drm/nouveau: fix assumption that semaphore dmaobj is valid in x-chan sync The DDX modifies DMA_SEMAPHORE on nv50 in order to implement sync-to-vblank, things will go very wrong for cross-channel sync after this. Signed-off-by: Ben Skeggs commit f66b3d5540994cb92182312be24944864cec5a16 Author: Ben Skeggs Date: Thu Jun 16 14:40:27 2011 +1000 drm/nv50/disp: fix gamma with page flipping overlay turned on Signed-off-by: Ben Skeggs commit 2905544073f6ec235b44f624c66f52b61221a16c Author: Emil Velikov Date: Sat Jun 11 13:30:32 2011 +0100 drm/nouveau/pm: Prevent overflow in nouveau_perf_init() While parsing the perf table, there is no check if the num of entries read from the vbios is less than the currently allocated number. In case of a buggy vbios this will cause overwriting of kernel memory, causing aditional problems. Add a simple check in order to prevent the case Signed-off-by: Emil Velikov Signed-off-by: Ben Skeggs commit 0897554cdd9de8a9f6f93d9ba27c7ebfae286158 Author: Ben Skeggs Date: Tue Jun 14 10:16:17 2011 +1000 drm/nouveau: fix big-endian switch Signed-off-by: Ben Skeggs commit a6c0a392622702fc9f47ddcea5684414d44a5d3b Merge: 2f48802 498e720 Author: Linus Torvalds Date: Fri Jun 17 21:15:11 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/i915: Fix gen6 (SNB) missed BLT ring interrupts. commit 2f48802e4330bb4d65d530ed9be78e8e55374577 Merge: 95559f2 fbb5b89 Author: Linus Torvalds Date: Fri Jun 17 21:13:43 2011 -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] powernow-k8: Don't try to transition if the pstate is incorrect [CPUFREQ] powernow-k8: Don't notify of successful transition if we failed (vid case). [CPUFREQ] Don't set stat->last_index to -1 if the pol->cur has incorrect value. commit 95559f2ca1eb5bc9417cb557688855f2d478e027 Merge: 95d17b7 dd34739 Author: Linus Torvalds Date: Fri Jun 17 21:01:21 2011 -0700 Merge branch 'anon_vma-locking' * anon_vma-locking: mm: avoid anon_vma_chain allocation under anon_vma lock mm: avoid repeated anon_vma lock/unlock sequences in unlink_anon_vmas() mm: avoid repeated anon_vma lock/unlock sequences in anon_vma_clone() commit dd34739c03f2f9a79403d33419c2e61e11b4c403 Author: Linus Torvalds Date: Fri Jun 17 19:05:36 2011 -0700 mm: avoid anon_vma_chain allocation under anon_vma lock Hugh Dickins points out that lockdep (correctly) spots a potential deadlock on the anon_vma lock, because we now do a GFP_KERNEL allocation of anon_vma_chain while doing anon_vma_clone(). The problem is that page reclaim will want to take the anon_vma lock of any anonymous pages that it will try to reclaim. So re-organize the code in anon_vma_clone() slightly: first do just a GFP_NOWAIT allocation, which will usually work fine. But if that fails, let's just drop the lock and re-do the allocation, now with GFP_KERNEL. End result: not only do we avoid the locking problem, this also ends up getting better concurrency in case the allocation does need to block. Tim Chen reports that with all these anon_vma locking tweaks, we're now almost back up to the spinlock performance. Reported-and-tested-by: Hugh Dickins Tested-by: Tim Chen Cc: Peter Zijlstra Cc: Andi Kleen Signed-off-by: Linus Torvalds commit eee2acbae95555006307395d8a6c91452d62851d Author: Peter Zijlstra Date: Fri Jun 17 13:54:23 2011 +0200 mm: avoid repeated anon_vma lock/unlock sequences in unlink_anon_vmas() This matches the anon_vma_clone() case, and uses the same lock helper functions. Because of the need to potentially release the anon_vma's, it's a bit more complex, though. We traverse the 'vma->anon_vma_chain' in two phases: the first loop gets the anon_vma lock (with the helper function that only takes the lock once for the whole loop), and removes any entries that don't need any more processing. The second phase just traverses the remaining list entries (without holding the anon_vma lock), and does any actual freeing of the anon_vma's that is required. Signed-off-by: Peter Zijlstra Tested-by: Hugh Dickins Tested-by: Tim Chen Cc: Andi Kleen Signed-off-by: Linus Torvalds commit bb4aa39676f73b4657b3edd893ae83881c430c0c Author: Linus Torvalds Date: Thu Jun 16 20:44:51 2011 -0700 mm: avoid repeated anon_vma lock/unlock sequences in anon_vma_clone() In anon_vma_clone() we traverse the vma->anon_vma_chain of the source vma, locking the anon_vma for each entry. But they are all going to have the same root entry, which means that we're locking and unlocking the same lock over and over again. Which is expensive in locked operations, but can get _really_ expensive when that root entry sees any kind of lock contention. In fact, Tim Chen reports a big performance regression due to this: when we switched to use a mutex instead of a spinlock, the contention case gets much worse. So to alleviate this all, this commit creates a small helper function (lock_anon_vma_root()) that can be used to take the lock just once rather than taking and releasing it over and over again. We still have the same "take the lock and release" it behavior in the exit path (in unlink_anon_vmas()), but that one is a bit harder to fix since we're actually freeing the anon_vma entries as we go, and that will touch the lock too. Reported-and-tested-by: Tim Chen Tested-by: Hugh Dickins Cc: Peter Zijlstra Cc: Andi Kleen Signed-off-by: Linus Torvalds commit 498e720b96379d8ee9c294950a01534a73defcf3 Author: Daniel J Blueman Date: Fri Jun 17 11:32:19 2011 -0700 drm/i915: Fix gen6 (SNB) missed BLT ring interrupts. The failure appeared in dmesg as: [drm:i915_hangcheck_ring_idle] *ERROR* Hangcheck timer elapsed... blt ring idle [waiting on 35064155, at 35064155], missed IRQ? This works around that problem on by making the blitter command streamer write interrupt state to the Hardware Status Page when a MI_USER_INTERRUPT command is decoded, which appears to force the seqno out to memory before the interrupt happens. v1->v2: Moved to prior interrupt handler installation and RMW flags as per feedback. v2->v3: Removed RMW of flags (by anholt) Cc: stable@kernel.org Signed-off-by: Daniel J Blueman Signed-off-by: Eric Anholt Tested-by: Chris Wilson [v1] Tested-by: Eric Anholt [v1,v3] (incidence of the bug with a testcase went from avg 2/1000 to 0/12651 in the latest test run (plus more for v1)) Tested-by: Kenneth Graunke [v1] Tested-by: Robert Hooker [v1] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=33394 Signed-off-by: Dave Airlie commit 650f156775c2638cc02ed7df31186a09ba79666a Author: Jeff Ohlstein Date: Fri Jun 17 13:55:38 2011 -0700 msm: timer: compensate for timer shift in msm_read_timer_count Some msm targets have timers whose lower bits are unreliable. So, we present our timers as lower frequency than they actually are, and ignore the bottom 5 bits on such targets. This compensation was erroneously removed from the msm_read_timer_count function, so restore it. This was broken by 94790ec25 "msm: timer: SMP timer support for msm". Signed-off-by: Jeff Ohlstein commit 3744100e05c4e403ed21c99cd389c7e784664e4b Author: Francois Romieu Date: Fri Jun 17 22:58:54 2011 +0200 r8169: fix static initializers. Signed-off-by: Francois Romieu commit e999376f094162aa425ae749aa1df95ab928d010 Author: Chris Mason Date: Fri Jun 17 16:14:09 2011 -0400 Btrfs: avoid delayed metadata items during commits Snapshot creation has two phases. One is the initial snapshot setup, and the second is done during commit, while nobody is allowed to modify the root we are snapshotting. The delayed metadata insertion code can break that rule, it does a delayed inode update on the inode of the parent of the snapshot, and delayed directory item insertion. This makes sure to run the pending delayed operations before we record the snapshot root, which avoids corruptions. Signed-off-by: Chris Mason commit eeb1497277d6b1a0a34ed36b97e18f2bd7d6de0d Author: Eric Dumazet Date: Fri Jun 17 16:25:39 2011 -0400 inet_diag: fix inet_diag_bc_audit() A malicious user or buggy application can inject code and trigger an infinite loop in inet_diag_bc_audit() Also make sure each instruction is aligned on 4 bytes boundary, to avoid unaligned accesses. Reported-by: Dan Rosenberg Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 2f9381e98471837b631743270de988e78aad1f96 Author: Pavel Shved Date: Fri Jun 17 06:25:11 2011 +0000 gigaset: call module_put before restart of if_open() if_open() calls try_module_get(), and after an attempt to lock a mutex the if_open() function may return -ERESTARTSYS without putting the module. Then, when if_open() is executed again, try_module_get() is called making the reference counter of THIS_MODULE greater than one at successful exit from if_open(). The if_close() function puts the module only once, and as a result it can't be unloaded. This patch adds module_put call before the return from if_open(). Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Pavel Shved Signed-off-by: David S. Miller commit d0fd64c1de437bdf91c32d4f84a53fa4b2150348 Author: Pavel Shved Date: Fri Jun 17 06:25:10 2011 +0000 farsync: add module_put to error path in fst_open() The fst_open() function, after a successful try_module_get() may return an error code if hdlc_open() returns it. However, it does not put the module on this error path. This patch adds the necessary module_put() call. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Pavel Shved Signed-off-by: David S. Miller commit 1eddceadb0d6441cd39b2c38705a8f5fec86e770 Author: Eric Dumazet Date: Fri Jun 17 03:45:15 2011 +0000 net: rfs: enable RFS before first data packet is received Le jeudi 16 juin 2011 à 23:38 -0400, David Miller a écrit : > From: Ben Hutchings > Date: Fri, 17 Jun 2011 00:50:46 +0100 > > > On Wed, 2011-06-15 at 04:15 +0200, Eric Dumazet wrote: > >> @@ -1594,6 +1594,7 @@ int tcp_v4_do_rcv(struct sock *sk, struct sk_buff *skb) > >> goto discard; > >> > >> if (nsk != sk) { > >> + sock_rps_save_rxhash(nsk, skb->rxhash); > >> if (tcp_child_process(sk, nsk, skb)) { > >> rsk = nsk; > >> goto reset; > >> > > > > I haven't tried this, but it looks reasonable to me. > > > > What about IPv6? The logic in tcp_v6_do_rcv() looks very similar. > > Indeed ipv6 side needs the same fix. > > Eric please add that part and resubmit. And in fact I might stick > this into net-2.6 instead of net-next-2.6 > OK, here is the net-2.6 based one then, thanks ! [PATCH v2] net: rfs: enable RFS before first data packet is received First packet received on a passive tcp flow is not correctly RFS steered. One sock_rps_record_flow() call is missing in inet_accept() But before that, we also must record rxhash when child socket is setup. Signed-off-by: Eric Dumazet CC: Tom Herbert CC: Ben Hutchings CC: Jamal Hadi Salim Signed-off-by: David S. Miller commit cab758ef30e0e40f783627abc4b66d1b48fecd49 Author: Clive Stubbings Date: Thu Jun 16 22:30:39 2011 +0000 fs_enet: fix freescale FCC ethernet dp buffer alignment The RIPTR and TIPTR (receive/transmit internal temporary data pointer), used by microcode as a temporary buffer for data, must be 32-byte aligned according to the RM for MPC8247. Tested on mgcoge. Signed-off-by: Clive Stubbings Signed-off-by: Holger Brunck cc: Pantelis Antoniou cc: Vitaly Bordug cc: netdev@vger.kernel.org Signed-off-by: David S. Miller commit c7d74b090913102e7917dd02bb574ef060e1e930 Merge: 8da7e7a 3126448 Author: Roland Dreier Date: Fri Jun 17 11:57:55 2011 -0700 Merge branches 'cxgb4' and 'qib' into for-next commit 3126448451105fae59de0058c68692aa09aa4c37 Author: Mitko Haralanov Date: Thu Jun 9 20:27:26 2011 +0000 IB/qib: Ensure that LOS and DFE are being turned off Due to timing, it is possible for the LOS and DFE to remain on. This is due to the link progressing to LinkUP prior to the driver getting the first Status Changed interrupt. By expanding the conditions under which LOS is turned off and DFE timeout is being set, timing is no longer an issue. Signed-off-by: Mitko Haralanov Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 8da7e7a55231543b84ac84e93ad5ca9d340773d7 Author: Steve Wise Date: Tue Jun 14 20:59:27 2011 +0000 RDMA/cxgb4: Couple of abort fixes - fix a race where the driver could end up sending a close_con_req after an abort_rpl. In c4iw_ep_disconnect(), send abort or close request with the ep mutex held. - fix a hang where driver fails to wake up when a connection is reset during a normal close. Wake up any waiters in the interrupt path, and correctly cleanup after rdma_fini() failures. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 301c2c3f039a1f9478f6cbef60f2ccd4da9bd4a1 Author: Steve Wise Date: Tue Jun 14 20:59:21 2011 +0000 RDMA/cxgb4: Don't truncate MR lengths Remove left-over code from T3 that limited MR sizes to 32b. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 35a30d7ce54e087d8025a725d4e5a2fdee723a9f Author: David Sterba Date: Mon Jun 13 15:18:23 2011 +0000 btrfs: fix uninitialized return value When allocation fails in btrfs_read_fs_root_no_name, ret is not set although it is returned, holding a garbage value. Signed-off-by: David Sterba Reviewed-by: Li Zefan Signed-off-by: Chris Mason commit 19fd294957e426bfdd8e19085096467ec18df5c4 Author: Miao Xie Date: Wed Jun 15 10:47:30 2011 +0000 btrfs: fix wrong reservation when doing delayed inode operations We have migrated the space for the delayed inode items from trans_block_rsv to global_block_rsv, but we forgot to set trans->block_rsv to global_block_rsv when we doing delayed inode operations, and the following Oops happened: [ 9792.654889] ------------[ cut here ]------------ [ 9792.654898] WARNING: at fs/btrfs/extent-tree.c:5681 btrfs_alloc_free_block+0xca/0x27c [btrfs]() [ 9792.654899] Hardware name: To Be Filled By O.E.M. [ 9792.654900] Modules linked in: btrfs zlib_deflate libcrc32c ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables arc4 rt61pci rt2x00pci rt2x00lib snd_hda_codec_hdmi mac80211 snd_hda_codec_realtek cfg80211 snd_hda_intel edac_core snd_seq rfkill pcspkr serio_raw snd_hda_codec eeprom_93cx6 edac_mce_amd sp5100_tco i2c_piix4 k10temp snd_hwdep snd_seq_device snd_pcm floppy r8169 xhci_hcd mii snd_timer snd soundcore snd_page_alloc ipv6 firewire_ohci pata_acpi ata_generic firewire_core pata_via crc_itu_t radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: scsi_wait_scan] [ 9792.654919] Pid: 2762, comm: rm Tainted: G W 2.6.39+ #1 [ 9792.654920] Call Trace: [ 9792.654922] [] warn_slowpath_common+0x83/0x9b [ 9792.654925] [] warn_slowpath_null+0x1a/0x1c [ 9792.654933] [] btrfs_alloc_free_block+0xca/0x27c [btrfs] [ 9792.654945] [] ? map_extent_buffer+0x6e/0xa8 [btrfs] [ 9792.654953] [] __btrfs_cow_block+0xfc/0x30c [btrfs] [ 9792.654963] [] ? btrfs_buffer_uptodate+0x47/0x58 [btrfs] [ 9792.654970] [] ? read_block_for_search+0x94/0x368 [btrfs] [ 9792.654978] [] btrfs_cow_block+0xfe/0x146 [btrfs] [ 9792.654986] [] btrfs_search_slot+0x14d/0x4b6 [btrfs] [ 9792.654997] [] ? map_extent_buffer+0x6e/0xa8 [btrfs] [ 9792.655022] [] btrfs_lookup_inode+0x2f/0x8f [btrfs] [ 9792.655025] [] ? _cond_resched+0xe/0x22 [ 9792.655027] [] ? mutex_lock+0x29/0x50 [ 9792.655039] [] btrfs_update_delayed_inode+0x72/0x137 [btrfs] [ 9792.655051] [] btrfs_run_delayed_items+0x90/0xdb [btrfs] [ 9792.655062] [] btrfs_commit_transaction+0x228/0x654 [btrfs] [ 9792.655064] [] ? remove_wait_queue+0x3a/0x3a [ 9792.655075] [] btrfs_evict_inode+0x14d/0x202 [btrfs] [ 9792.655077] [] evict+0x71/0x111 [ 9792.655079] [] iput+0x12a/0x132 [ 9792.655081] [] do_unlinkat+0x106/0x155 [ 9792.655083] [] ? path_put+0x1f/0x23 [ 9792.655085] [] ? audit_syscall_entry+0x145/0x171 [ 9792.655087] [] ? putname+0x34/0x36 [ 9792.655090] [] sys_unlinkat+0x29/0x2b [ 9792.655092] [] system_call_fastpath+0x16/0x1b [ 9792.655093] ---[ end trace 02b696eb02b3f768 ]--- This patch fix it by setting the reservation of the transaction handle to the correct one. Reported-by: Josef Bacik Signed-off-by: Miao Xie Signed-off-by: Chris Mason commit 9fe6a50fb764f508dd2de47a66e62e51388791fb Author: Maarten Lankhorst Date: Thu Jun 16 09:04:57 2011 +0000 btrfs: Remove unused sysfs code Removes code no longer used. The sysfs file itself is kept, because the btrfs developers expressed interest in putting new entries to sysfs. Signed-off-by: Maarten Lankhorst Signed-off-by: Chris Mason commit 3ed4498caf381a73d6259d3ffacc914b17a507ec Author: David Sterba Date: Mon Jun 13 17:54:22 2011 +0000 btrfs: fix dereference of ERR_PTR value smatch reports: btrfs_recover_log_trees error: 'wc.replay_dest' dereferencing possible ERR_PTR() Signed-off-by: David Sterba Signed-off-by: Chris Mason commit 2ff7d09a1b0f20f2d9c1bde0e003d4e384de2313 Author: Steve Wise Date: Wed Jun 1 17:49:14 2011 +0000 RDMA/cxgb4: Don't exceed hw IQ depth limit for user CQs Memory allocated for user CQs gets rounded up to the next page boundary. And after rounding, we recalculate the resulting IQ depth and we need to make sure we don't exceed the HW limits. This bug can result a much smaller CQ allocated than was expected if the HW size field is exceeded, resulting in CQ overflow failures. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit a9e758634f464ffb09344821a9f0b5a5c6df2b3e Author: Sarah Sharp Date: Thu Jun 16 13:06:04 2011 -0700 USB: Fix up URB error codes to reflect implementation. Documentation/usb/error-codes.txt mentions that urb->status can be set to -EXDEV, if the isochronous transfer was not fully completed. However, in practice, EHCI, UHCI, and OHCI all only set -EXDEV in the individual frame status, never in the URB status. Those host controller actually always pass in a zero status to usb_hcd_giveback_urb, and rely on the core to set the appropriate status value. The xHCI driver ran into issues with the uvcvideo driver when it tried to set -EXDEV in urb->status, because the driver refused to submit URBs, and the userspace camera application's video froze. Clean up the documentation to reflect the actual implementation. Signed-off-by: Sarah Sharp Acked-by: Alan Stern commit b3df3f9c7df9a8d85e03e158d35487618a160901 Author: Sarah Sharp Date: Wed Jun 15 19:57:46 2011 -0700 xhci: Always set urb->status to zero for isoc endpoints. When the xHCI driver encounters a Missed Service Interval event for an isochronous endpoint ring, it means the host controller skipped over one or more isochronous TDs. For TD that is skipped, skip_isoc_td() is called. This sets the frame descriptor status to -EXDEV, and also sets the value stored in the int pointed to by status to -EXDEV. If the isochronous TD happens to be the last TD in an URB, handle_tx_event() will use the status variable to give back the URB to the USB core. That means drivers will see urb->status as -EXDEV. It turns out that EHCI, UHCI, and OHCI always set urb->status to zero for an isochronous urb, regardless of what the frame status is. See itd_complete() in ehci-sched.c: } else { /* URB was too late */ desc->status = -EXDEV; } } /* handle completion now? */ if (likely ((urb_index + 1) != urb->number_of_packets)) goto done; /* ASSERT: it's really the last itd for this urb list_for_each_entry (itd, &stream->td_list, itd_list) BUG_ON (itd->urb == urb); */ /* give urb back to the driver; completion often (re)submits */ dev = urb->dev; ehci_urb_done(ehci, urb, 0); ehci_urb_done() completes the URB with the status of the third argument, which is always zero in this case. It turns out that many USB webcam drivers, such as uvcvideo, cannot handle urb->status set to a non-zero value. They will not resubmit their isochronous URBs in that case, and userspace will see a frozen video. Change the xHCI driver to be consistent with the EHCI and UHCI driver, and always set urb->status to 0 for isochronous URBs. This patch should be backported to kernels as old as 2.6.36 Signed-off-by: Sarah Sharp Cc: "Xu, Andiry" Cc: stable@kernel.org commit c877b3b2ad5cb9d4fe523c5496185cc328ff3ae9 Author: Maarten Lankhorst Date: Wed Jun 15 23:47:21 2011 +0200 xhci: Add reset on resume quirk for asrock p67 host The asrock p67 xhci controller completely dies on resume, add a quirk for this, to bring the host back online after a suspend. This should be backported to stable kernels as old as 2.6.37. Signed-off-by: Maarten Lankhorst Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit f6ba6fe2d913da6707a71a413d6ec8ae98d6ce18 Author: Alex He Date: Wed Jun 8 18:34:06 2011 +0800 xHCI 1.0: Incompatible Device Error It is one new TRB Completion Code for the xHCI spec v1.0. Asserted if the xHC detects a problem with a device that does not allow it to be successfully accessed, e.g. due to a device compliance or compatibility problem. This error may be returned by any command or transfer, and is fatal as far as the Slot is concerned. Return -EPROTO by urb->status or frame->status of ISOC for transfer case. And return -ENODEV for configure endpoint command, evaluate context command and address device command if there is an incompatible Device Error. The error codes will be sent back to the USB core to decide how to do. It's unnecessary for other commands because after the three commands run successfully means that the device has been accepted. Signed-off-by: Alex He Signed-off-by: Sarah Sharp commit e038dca803423bb7a3fa9a162b7dcc225efe9bf9 Merge: 7585717 ed0ca14 Author: Chris Mason Date: Fri Jun 17 14:16:13 2011 -0400 Merge branch 'for-chris' of git://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-work into for-linus Conflicts: fs/btrfs/transaction.c Signed-off-by: Chris Mason commit 95d17b7168eacf1f97f2d1d087ebe7a648c30051 Merge: 01eff85 ad24094 Author: Linus Torvalds Date: Fri Jun 17 10:37:57 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - Fix no NID error with VIA codecs ALSA: isight: adjust for new queueing API ALSA: 6fire - Fix signedness bug ALSA: lola - Fix section mismatch ALSA: hda - Fix missing static inline to beep dummy function ALSA: 6fire: Fix double-free bug in usb6fire_fw_ezusb_upload() ALSA: hda - Fix beep_device compilation warnings ALSA: hda - Fix wrong auto-mute type for Acer Aspire-one ALSA: emu10k1: Add details for E-mu 0404 PCIe version ALSA: hdspm - Add firmware revision ID for RME MADI PCI version ALSA: hdspm - Fix jumping external wordclock frequency in AutoSync mode ALSA: hdspm - Fix locking in snd_hdspm_midi_input_read commit 01eff85b094044c72c9dcbbc16f6cdb0a6757c3f Merge: d9cbf02 a27a263 Author: Linus Torvalds Date: Fri Jun 17 10:37:41 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: make log devices with write back caches work xfs: fix ->mknod() return value on xfs_get_acl() failure commit d9cbf022bb75497fa2ecd7ae166fc92b000ad46e Merge: 0835619 c3a4924 Author: Linus Torvalds Date: Fri Jun 17 10:37:01 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: Revert "HID: magicmouse: ignore 'ivalid report id' while switching modes" HID: hid-multitouch: fix broken eGalax HID: MAINTAINERS: Update USB HID/HIDBP DRIVERS pattern HID: hid-multitouch: add support for Chunghwa multi-touch panel HID: hiddev: fix use after free in hiddev_release HID: add quirk for HyperPen 10000U HID: hiddev: fix potential use-after-free commit 7585717f304f5ed005cc4ad933a69aab3efbd136 Author: Chris Mason Date: Mon Jun 13 20:00:16 2011 -0400 Btrfs: fix relocation races The recent commit to get rid of our trans_mutex introduced some races with block group relocation. The problem is that relocation needs to do some record keeping about each root, and it was relying on the transaction mutex to coordinate things in subtle ways. This fix adds a mutex just for the relocation code and makes sure it doesn't have a big impact on normal operations. The race is really fixed in btrfs_record_root_in_trans, which is where we step back and wait for the relocation code to finish accounting setup. Signed-off-by: Chris Mason commit 0835619348b097404f4f85bc5195c6e23a2f8de4 Merge: add7944 c001fb7 e479c60 Author: Linus Torvalds Date: Fri Jun 17 10:36:32 2011 -0700 Merge branches 'gpio/merge' and 'spi/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio: add GPIOF_ values regardless on kconfig settings gpio: include linux/gpio.h where needed gpio/omap4: Fix missing interrupts during device wakeup due to IOPAD. * 'spi/merge' of git://git.secretlab.ca/git/linux-2.6: spi/bfin_spi: fix handling of default bits per word setting commit add794467a20463d7ea50dc9f158a6371d396175 Merge: 8796699 b8ce9fb Author: Linus Torvalds Date: Fri Jun 17 10:35:31 2011 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: OMAP1: PM: register notifiers with generic clock ops even when !PM_RUNTIME omap: pandora: fix NAND support OMAP: PM: omap_device: fix device power domain callbacks OMAP: PM debug: fix section mismatch warnings commit 879669961b11e7f40b518784863a259f735a72bf Author: David Howells Date: Fri Jun 17 11:25:59 2011 +0100 KEYS/DNS: Fix ____call_usermodehelper() to not lose the session keyring ____call_usermodehelper() now erases any credentials set by the subprocess_inf::init() function. The problem is that commit 17f60a7da150 ("capabilites: allow the application of capability limits to usermode helpers") creates and commits new credentials with prepare_kernel_cred() after the call to the init() function. This wipes all keyrings after umh_keys_init() is called. The best way to deal with this is to put the init() call just prior to the commit_creds() call, and pass the cred pointer to init(). That means that umh_keys_init() and suchlike can modify the credentials _before_ they are published and potentially in use by the rest of the system. This prevents request_key() from working as it is prevented from passing the session keyring it set up with the authorisation token to /sbin/request-key, and so the latter can't assume the authority to instantiate the key. This causes the in-kernel DNS resolver to fail with ENOKEY unconditionally. Signed-off-by: David Howells Acked-by: Eric Paris Tested-by: Jeff Layton Signed-off-by: Linus Torvalds commit 82362ccbf259b960192019deb562bf84549e3d1d Merge: 118133e 3373b28 Author: John W. Linville Date: Fri Jun 17 12:40:36 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit e479c60456ef22b0869432887216186aabaed086 Author: Mike Frysinger Date: Fri Jun 17 04:35:37 2011 -0400 spi/bfin_spi: fix handling of default bits per word setting The default bits per word setting should be 8 bits, but since most of our devices have been explicitly setting this up, we didn't notice when the default stopped working. At the moment, any default transfers without an explicit bit size setting error out with: bfin-spi bfin-spi.0: transfer: unsupported bits_per_word So in the transfer logic, have a bits_per_word setting of 0 fall into the 8 bit transfer logic. Signed-off-by: Mike Frysinger Signed-off-by: Grant Likely commit 5afa9133cfe67f1bfead6049a9640c9262a7101c Author: Trond Myklebust Date: Fri Jun 17 10:14:59 2011 -0400 SUNRPC: Ensure the RPC client only quits on fatal signals Fix a couple of instances where we were exiting the RPC client on arbitrary signals. We should only do so on fatal signals. Cc: stable@kernel.org Signed-off-by: Trond Myklebust commit ad2409413d09fca763be1ac5161f2a9d82367903 Author: Takashi Iwai Date: Fri Jun 17 14:23:46 2011 +0200 ALSA: hda - Fix no NID error with VIA codecs The via driver spews warnigs like hda-codec: no NID for mapping control Independent HP:0:0 with some codecs because snd_hda_add_nid() is called with nid=0. This patch fixes it by skipping the call when no corresponding widget is found. Signed-off-by: Takashi Iwai commit 9a00318eadbb43db4e9c163c262a22a3c8b5a672 Author: Dave Martin Date: Thu Jun 16 12:09:37 2011 +0100 ARM: 6963/1: Thumb-2: Relax relocation requirements for non-function symbols The "Thumb bit" of a symbol is only really meaningful for function symbols (STT_FUNC). However, sometimes a branch is relocated against a non-function symbol; for example, PC-relative branches to anonymous assembler local symbols are typically fixed up against the start-of-section symbol, which is not a function symbol. Some inline assembler generates references of this type, such as fixup code generated by macros in . The existing relocation code for R_ARM_THM_CALL/R_ARM_THM_JUMP24 interprets this case as an error, because the target symbol appears to be an ARM symbol; but this is really not the case, since the target symbol is just a base in these cases. The addend defines the precise offset to the target location, but since the addend is encoded in a non-interworking Thumb branch instruction, there is no explicit Thumb bit in the addend. Because these instructions never interwork, the implied Thumb bit in the addend is 1, and the destination is Thumb by definition. This patch removes the extraneous Thumb bit check for non-function symbols, enabling modules containing the affected relocation types to be loaded. No modification to the actual relocation code is required, since this code does not take bit[0] of the location->destination offset into account in any case. Function symbols are always checked for interworking conflicts, as before. Signed-off-by: Dave Martin Acked-by: Catalin Marinas Signed-off-by: Russell King commit 343fda59823ca20f48578f816ec12e741214f509 Author: Linus Walleij Date: Thu Jun 16 08:26:06 2011 +0100 ARM: 6962/1: mach-h720x: fix build error The h7201/h7202 machines did not build since they define ARM_DMA_ZONE_OFFSET but do not select ZONE_DMA. Fix it up by selecting ZONE_DMA in their Kconfig. Cc: Sascha Hauer Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 2bc58a6fd76f89052c7f151d78fb2d8b804aacfe Author: Magnus Damm Date: Mon Jun 13 06:46:44 2011 +0100 ARM: 6959/1: SMP build fix for entry-macro-multi.S The assembly code in entry-macro-multi.S does not build without the include asm/assembler.h in the case of CONFIG_SMP=y. Fixes the rather theoretical SMP build of mach-shmobile/entry-intc.c: arch/arm/include/asm/entry-macro-multi.S: Assembler messages: arch/arm/include/asm/entry-macro-multi.S:20: Error: bad instruction `alt_smp(test_for_ipi r0,r6,r5,lr)' arch/arm/include/asm/entry-macro-multi.S:20: Error: bad instruction `alt_up_b(9997f)' make[1]: *** [arch/arm/mach-shmobile/entry-intc.o] Error 1 make: *** [arch/arm/mach-shmobile] Error 2 make: *** Waiting for unfinished jobs.... Signed-off-by: Magnus Damm Signed-off-by: Russell King commit cf6f1ff17f56c275424c5a341fc4d27ccbbfa71c Author: Clemens Ladisch Date: Fri Jun 17 08:18:35 2011 +0200 ALSA: isight: adjust for new queueing API Since commit 13882a82ee16 (optimize iso queueing by setting wake only after the last packet), drivers are required to call fw_iso_context_queue_flush() after queueing a batch of packets. The missing call would have an effect only if the controller queue underruns, but then the DMA would stop completely. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit d8ad7d1123a960cc9f276bd499f9325c6f5e1bd1 Author: Takao Indoh Date: Tue Mar 29 12:35:04 2011 -0400 generic-ipi: Fix kexec boot crash by initializing call_single_queue before enabling interrupts There is a problem that kdump(2nd kernel) sometimes hangs up due to a pending IPI from 1st kernel. Kernel panic occurs because IPI comes before call_single_queue is initialized. To fix the crash, rename init_call_single_data() to call_function_init() and call it in start_kernel() so that call_single_queue can be initialized before enabling interrupts. The details of the crash are: (1) 2nd kernel boots up (2) A pending IPI from 1st kernel comes when irqs are first enabled in start_kernel(). (3) Kernel tries to handle the interrupt, but call_single_queue is not initialized yet at this point. As a result, in the generic_smp_call_function_single_interrupt(), NULL pointer dereference occurs when list_replace_init() tries to access &q->list.next. Therefore this patch changes the name of init_call_single_data() to call_function_init() and calls it before local_irq_enable() in start_kernel(). Signed-off-by: Takao Indoh Reviewed-by: WANG Cong Acked-by: Neil Horman Acked-by: Vivek Goyal Acked-by: Peter Zijlstra Cc: Milton Miller Cc: Jens Axboe Cc: Paul E. McKenney Cc: kexec@lists.infradead.org Link: http://lkml.kernel.org/r/D6CBEE2F420741indou.takao@jp.fujitsu.com Signed-off-by: Ingo Molnar commit 118133e6580a0c912cda86109b6468b5ffe73f1c Author: Sonic Zhang Date: Thu Jun 16 12:31:58 2011 +0000 netdev: bfin_mac: fix memory leak when freeing dma descriptors The size of the desc array is not the size of the desc structure, so when we try to free up things, we leak some parts. Reported-by: Regis Dargent Signed-off-by: Sonic Zhang Signed-off-by: Mike Frysinger Signed-off-by: David S. Miller commit e3cb78c772de593afa720687ce3abbed8d93b0c3 Author: Antoine Reversat Date: Thu Jun 16 10:47:13 2011 +0000 vlan: don't call ndo_vlan_rx_register on hardware that doesn't have vlan support This patch removes the call to ndo_vlan_rx_register if the underlying device doesn't have hardware support for VLAN. Signed-off-by: Antoine Reversat Signed-off-by: David S. Miller commit a1b7f85e4f632f9cc342d8a34a3903feaf47a261 Author: sjur.brandeland@stericsson.com Date: Wed Jun 15 12:38:25 2011 +0000 caif: Bugfix - XOFF removed channel from caif-mux XOFF was mixed up with DOWN indication, causing causing CAIF channel to be removed from mux and all incoming traffic to be lost after receiving flow-off. Fix this by replacing FLOW_OFF with DOWN notification. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit bebd097a0af8bd6c51f50a65f3a435019b0e906a Author: Neil Horman Date: Wed Jun 15 05:25:01 2011 +0000 tun: teach the tun/tap driver to support netpoll Commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093 changed the behavior of slave devices in regards to netpoll. Specifically it created a mutually exclusive relationship between being a slave and a netpoll-capable device. This creates problems for KVM because guests relied on needing netconsole active on a slave device to a bridge. Ideally libvirtd could just attach netconsole to the bridge device instead, but thats currently infeasible, because while the bridge device supports netpoll, it requires that all slave interface also support it, but the tun/tap driver currently does not. The most direct solution is to teach tun/tap to support netpoll, which is implemented by the patch below. I've not tested this yet, but its pretty straightforward. Signed-off-by: Neil Horman Reported-by: Rik van Riel CC: Rik van Riel CC: Maxim Krasnyansky CC: Cong Wang CC: "David S. Miller" Reviewed-by: Rik van Riel Tested-by: Rik van Riel Reviewed-by: WANG Cong Signed-off-by: David S. Miller commit ae6e86b7fb15520ac64513ad643de63e0b077aa5 Author: Richard Cochran Date: Tue Jun 14 23:55:20 2011 +0000 dp83640: drop PHY status frames in the driver. The dp83640 PHY provides time stamp and other information via special PHY status frames. Previously, the driver decoded the frames and then let the network stack drop them. This works fine when the PTP messages come over UDP. However, when receiving PTP messages via L2 packets, this creates a problem. The status frames use the official PTP destination MAC address, and so they are delivered to user space along with the "real" frames, causing confusion for applications. This commit fixes the issue by simply dropping the PHY status frames in the driver. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 2331038a96ecdad76c50ab223fd48d656d8a1184 Author: Richard Cochran Date: Tue Jun 14 23:55:19 2011 +0000 dp83640: fix phy status frame event parsing If two eternal time stamp events occur at nearly the same time, the phyter will add an extra word into the status frame. This commit fixes the parsing code to recognize and skip over the extra word. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit f1dc045e685ea5424b3445c1ccaa0a25b3d661ec Author: Ralf Baechle Date: Tue Jun 14 22:07:58 2011 +0000 phylib: Allow BCM63XX PHY to be selected only on BCM63XX. This PHY is available integrated into BCM63xx series SOCs only. Signed-off-by: Ralf Baechle drivers/net/phy/Kconfig | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) Acked-by: Florian Fainelli Signed-off-by: David S. Miller commit e6539e2b7aee117619153daaf61566dba1e04205 Author: Changli Gao Date: Tue Jun 14 21:58:13 2011 +0000 ppp: use PPP_TRANS instead of the magic number 0x20 Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit d3ab6fde14b69c346939cd00765b3826a4760e5c Author: Joe Perches Date: Mon Jun 13 16:26:22 2011 +0000 MAINTAINERS: Update EBTABLES mailing list It moved to netfilter-devel@vger.kernel.org. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit fc2af6c73fc9449cd5894a36bb76b8f8c0e49fd8 Author: Fernando Luis Vázquez Cao Date: Mon Jun 13 15:06:58 2011 +0000 IGMP snooping: set mrouters_only flag for IPv6 traffic properly Upon reception of a MGM report packet the kernel sets the mrouters_only flag in a skb that is a clone of the original skb, which means that the bridge loses track of MGM packets (cb buffers are tied to a specific skb and not shared) and it ends up forwading join requests to the bridge interface. This can cause unexpected membership timeouts and intermitent/permanent loss of connectivity as described in RFC 4541 [2.1.1. IGMP Forwarding Rules]: A snooping switch should forward IGMP Membership Reports only to those ports where multicast routers are attached. [...] Sending membership reports to other hosts can result, for IGMPv1 and IGMPv2, in unintentionally preventing a host from joining a specific multicast group. Signed-off-by: Fernando Luis Vazquez Cao Signed-off-by: David S. Miller commit 62b2bcb49cca72f6d3f39f831127a6ab315a475d Author: Fernando Luis Vázquez Cao Date: Mon Jun 13 15:04:43 2011 +0000 IGMP snooping: set mrouters_only flag for IPv4 traffic properly Upon reception of a IGMP/IGMPv2 membership report the kernel sets the mrouters_only flag in a skb that may be a clone of the original skb, which means that sometimes the bridge loses track of membership report packets (cb buffers are tied to a specific skb and not shared) and it ends up forwading join requests to the bridge interface. This can cause unexpected membership timeouts and intermitent/permanent loss of connectivity as described in RFC 4541 [2.1.1. IGMP Forwarding Rules]: A snooping switch should forward IGMP Membership Reports only to those ports where multicast routers are attached. [...] Sending membership reports to other hosts can result, for IGMPv1 and IGMPv2, in unintentionally preventing a host from joining a specific multicast group. Signed-off-by: Fernando Luis Vazquez Cao Tested-by: Hayato Kakuta Signed-off-by: David S. Miller commit d40261236e8e278cb1936cb5e934262971692b10 Author: Marius B. Kotsbak Date: Sun Jun 12 02:35:02 2011 +0000 net/usb: Add Samsung Kalmia driver for Samsung GT-B3730 Introducing driver for the network port of Samsung Kalmia based USB LTE modems. It has also an ACM interface that previous patches associates with the "option" module. To access those interfaces, the modem must first be switched from modem mode using a tool like usb_modeswitch. As the proprietary protocol has been discovered by watching the MS Windows driver behavior, there might be errors in the protocol handling, but stable and fast connection has been established for hours with Norwegian operator NetCom that distributes this modem with their LTE/4G subscription. More and updated information about how to use this driver is available here: http://www.draisberghof.de/usb_modeswitch/bb/viewtopic.php?t=465 https://github.com/mkotsbak/Samsung-GT-B3730-linux-driver Signed-off-by: Marius B. Kotsbak Signed-off-by: David S. Miller commit 3009adf5acb2245216651318c2226812fd1b01a6 Merge: 9281b2a 42c1edd Author: David S. Miller Date: Thu Jun 16 21:38:01 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6 commit eb96c925152fc289311e5d7e956b919e9b60ab53 Merge: 8b97b21 b81157d Author: Linus Torvalds Date: Thu Jun 16 17:54:41 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: use helper functions for fence read/write drm/radeon/kms: set DP link config properly for DP bridges drm/radeon/kms/atom: AdjustPixelClock fixes for DP bridges drm/radeon/kms: fix handling of DP to LVDS bridges drm/radeon/kms: issue blank/unblank commands for ext encoders drm/radeon/kms: fix support for DDC on dp bridges drm/radeon/kms: add support for load detection on dp bridges drm/radeon/kms: add missing external encoder action drm/radeon/kms: rework atombios_get_encoder_mode() drm/radeon/kms: fix num crtcs for Cedar and Caicos Revert "drm/i915: Enable GMBUS for post-gen2 chipsets" drivers/gpu/drm: use printk_ratelimited instead of printk_ratelimit drm/radeon: workaround a hw bug on some radeon chipsets with all-0 EDIDs. drm: make debug levels match in edid failure code. drm/radeon/kms: clear wb memory by default drm/radeon/kms: be more pedantic about the g5 quirk (v2) drm/radeon/kms: signed fix for evergreen thermal drm: populate irq_by_busid-member for pci commit b81157d016a48b8025ccfcb286827679b35f16aa Author: Alex Deucher Date: Mon Jun 13 17:39:06 2011 -0400 drm/radeon/kms: use helper functions for fence read/write The existing code assumed scratch registers in a number of places while in most cases we are be using writeback and events rather than scratch registers. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 11b0a5b89adbfaf4e7d31f2482f49471dd983692 Author: Alex Deucher Date: Thu Jun 16 10:06:17 2011 -0400 drm/radeon/kms: set DP link config properly for DP bridges DP clock and lanes were not set properly for DP bridges. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit cc9f67a0a0b076b82ab1af3b2add82e19a33d5de Author: Alex Deucher Date: Thu Jun 16 10:06:16 2011 -0400 drm/radeon/kms/atom: AdjustPixelClock fixes for DP bridges Need to set the external transmitter type properly in AdjustPixelClock to get the properly output. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f89931f345f26c43b109191fbfcfa506781111c0 Author: Alex Deucher Date: Mon Jun 13 17:13:35 2011 -0400 drm/radeon/kms: fix handling of DP to LVDS bridges They need to be treated like eDP rather than DP. May fix: https://bugzilla.kernel.org/show_bug.cgi?id=34822 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d6c669528a5367aaa5f4e712acef990b7148aee8 Author: Alex Deucher Date: Mon Jun 13 17:13:36 2011 -0400 drm/radeon/kms: issue blank/unblank commands for ext encoders Required for DPMS on some systems. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 591a10e16c2a43f6f2ea5f307ab2a5afecfb9ed9 Author: Alex Deucher Date: Mon Jun 13 17:13:34 2011 -0400 drm/radeon/kms: fix support for DDC on dp bridges Need to set up the bridge for DDC prior to the i2c over aux transaction. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d629a3ceb4fc1ab5aab737b964100d114aba1173 Author: Alex Deucher Date: Mon Jun 13 17:13:33 2011 -0400 drm/radeon/kms: add support for load detection on dp bridges dp to vga bridges for example. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7ec478f835a391d27491493ebfd91f2bed98dbd9 Author: Alex Deucher Date: Mon Jun 13 17:13:32 2011 -0400 drm/radeon/kms: add missing external encoder action required for ddc. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit fbb87773655e7b0292756f9533c3fc21aca0797f Author: Alex Deucher Date: Mon Jun 13 17:13:31 2011 -0400 drm/radeon/kms: rework atombios_get_encoder_mode() This should give us more reliable results if the table is called before an active device is set. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit ba7e05e95880ad80f012555fb8e925cb1f9a5d63 Author: Alex Deucher Date: Thu Jun 16 18:14:22 2011 +0000 drm/radeon/kms: fix num crtcs for Cedar and Caicos Only support 4 rather than 6. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 826c7e4147f902737b281e8a5a7d7aa33fd63316 Author: Jean Delvare Date: Sat Jun 4 19:34:56 2011 +0000 Revert "drm/i915: Enable GMBUS for post-gen2 chipsets" Revert commit 8f9a3f9b63b8cd3f03be9dc53533f90bd4120e5f. This fixes a hang when loading the eeprom driver (see bug #35572.) GMBUS will be re-enabled later, differently. Signed-off-by: Jean Delvare Reported-by: Marek Otahal Tested-by: Yermandu Patapitafious Tested-by: Andrew Lutomirski Acked-by: Chris Wilson Signed-off-by: Dave Airlie commit f8b7fc6b514f34a51875dd48dff70d4d17a54f38 Author: Paul E. McKenney Date: Thu Jun 16 08:26:32 2011 -0700 rcu: Move RCU_BOOST #ifdefs to header file The commit "use softirq instead of kthreads except when RCU_BOOST=y" just applied #ifdef in place. This commit is a cleanup that moves the newly #ifdef'ed code to the header file kernel/rcutree_plugin.h. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit 8b97b21e0f4f59801d05a5c536417f04ecfb5603 Merge: 99a15e2 7939253 Author: Linus Torvalds Date: Thu Jun 16 15:02:20 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-nsfd * git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-nsfd: proc: Fix Oops on stat of /proc//ns/net commit 99a15e21d96f6857dafab1e5167e5e8183215c9c Author: Andrea Arcangeli Date: Thu Jun 16 12:56:19 2011 -0700 migrate: don't account swapcache as shmem swapcache will reach the below code path in migrate_page_move_mapping, and swapcache is accounted as NR_FILE_PAGES but it's not accounted as NR_SHMEM. Hugh pointed out we must use PageSwapCache instead of comparing mapping to &swapper_space, to avoid build failure with CONFIG_SWAP=n. Signed-off-by: Andrea Arcangeli Acked-by: Hugh Dickins Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit fbb5b89eabea5ae7d621b7861863159560d8faa4 Author: Konrad Rzeszutek Wilk Date: Thu Jun 16 15:36:40 2011 -0400 [CPUFREQ] powernow-k8: Don't try to transition if the pstate is incorrect This patch augments the pstate transition code to error out (instead of returning 0) when an incorrect pstate is provided. Suggested-by: Borislav Petkov CC: andre.przywara@amd.com CC: Mark.Langsdorf@amd.com Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Dave Jones commit a9d3d2068064b7a6395871a49616d3784f802d50 Author: Konrad Rzeszutek Wilk Date: Thu Jun 16 15:36:39 2011 -0400 [CPUFREQ] powernow-k8: Don't notify of successful transition if we failed (vid case). Before this patch if we failed the vid transition would still try to submit the "new" frequencies to cpufreq. That is incorrect - also we could submit a non-existing frequency value which would cause cpufreq to crash. The ultimate fix is in cpufreq to deal with incorrect values, but this patch improves the error recovery in the AMD powernowk8 driver. The failure that was reported was as follows: powernow-k8: Found 1 AMD Athlon(tm) 64 Processor 3700+ (1 cpu cores) (version 2.20.00) powernow-k8: fid 0x2 (1000 MHz), vid 0x12 powernow-k8: fid 0xa (1800 MHz), vid 0xa powernow-k8: fid 0xc (2000 MHz), vid 0x8 powernow-k8: fid 0xe (2200 MHz), vid 0x8 Marking TSC unstable due to cpufreq changes powernow-k8: fid trans failed, fid 0x2, curr 0x0 BUG: unable to handle kernel paging request at ffff880807e07b78 IP: [] cpufreq_stats_update+0x46/0x5b ... And transition fails and data->currfid ends up with 0. Since the machine does not support 800Mhz value when the calculation is done ('find_khz_freq_from_fid(data->currfid);') it reports the new frequency as 800000 which is bogus. This patch fixes the issue during target setting. The patch however does not fix the issue in 'powernowk8_cpu_init' where the pol->cur can also be set with the 800000 value: pol->cur = find_khz_freq_from_fid(data->currfid); dprintk("policy current frequency %d kHz\n", pol->cur); /* min/max the cpu is capable of */ if (cpufreq_frequency_table_cpuinfo(pol, data->powernow_table)) { The fix for that looks to update cpufreq_frequency_table_cpuinfo to check pol->cur.... but that would cause an regression in how the acpi-cpufreq driver works (it sets cpu->cur after calling cpufreq_frequency_table_cpuinfo). Instead the fix will be to let cpufreq gracefully handle bogus data (another patch). Acked-by: Borislav Petkov CC: andre.przywara@amd.com CC: Mark.Langsdorf@amd.com Reported-by: Tobias Diedrich Tested-by: Tobias Diedrich [v1: Rebased on v3.0-rc2, reduced patch to deal with vid case] Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Dave Jones commit 46a310b80bc2c9ccc019649c9da91194cbc10944 Author: Konrad Rzeszutek Wilk Date: Thu Jun 16 15:36:38 2011 -0400 [CPUFREQ] Don't set stat->last_index to -1 if the pol->cur has incorrect value. If the driver submitted an non-existing pol>cur value (say it used the default initialized value of zero), when the cpufreq stats tries to setup its initial values it incorrectly sets stat->last_index to -1 (or 0xfffff...). And cpufreq_stats_update tries to update at that index location and fails. This can be caused by: stat->last_index = freq_table_get_index(stat, policy->cur); not finding the appropiate frequency in the table (b/c the policy->cur is wrong) and we end up crashing. The fix however is concentrated in the 'cpufreq_stats_update' as the last_index (and old_index) are updated there. Which means it can reset the last_index to -1 again and on the next iteration cause a crash. Without this patch, the following crash is observed: powernow-k8: Found 1 AMD Athlon(tm) 64 Processor 3700+ (1 cpu cores) (version 2.20.00) powernow-k8: fid 0x2 (1000 MHz), vid 0x12 powernow-k8: fid 0xa (1800 MHz), vid 0xa powernow-k8: fid 0xc (2000 MHz), vid 0x8 powernow-k8: fid 0xe (2200 MHz), vid 0x8 Marking TSC unstable due to cpufreq changes powernow-k8: fid trans failed, fid 0x2, curr 0x0 BUG: unable to handle kernel paging request at ffff880807e07b78 IP: [] cpufreq_stats_update+0x46/0x5b .. snip.. Pid: 1, comm: swapper Not tainted 3.0.0-rc2 #45 MICRO-STAR INTERNATIONAL CO., LTD MS-7094/MS-7094 ..snip.. Call Trace: [] cpufreq_stat_notifier_trans+0x48/0x7c [] notifier_call_chain+0x32/0x5e [] __srcu_notifier_call_chain+0x47/0x63 [] srcu_notifier_call_chain+0xf/0x11 [] cpufreq_notify_transition+0x111/0x134 [] powernowk8_target+0x53b/0x617 [] __cpufreq_driver_target+0x2e/0x30 [] cpufreq_governor_dbs+0x339/0x356 [] __cpufreq_governor+0xa8/0xe9 [] __cpufreq_set_policy+0x132/0x13e [] cpufreq_add_dev_interface+0x272/0x28c Reported-by: Tobias Diedrich Tested-by: Tobias Diedrich Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Dave Jones commit 0ec5258d68c626922d92e2f0e4e5c689e5360a5d Author: Torsten Schenk Date: Thu Jun 16 21:06:27 2011 +0200 ALSA: 6fire - Fix signedness bug Fixed remaining issues of the signedness bug discovered by Dan Carpenter. A check was remaining that tests if unsigned rt->rate is >= 0. Changed that so that rt->rate now consistently uses ARRAY_SIZE(rates) as invalid rate value and not -1. Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit 3bc46b312b1486b1fe2db4246a34a30160d26d8d Author: Maxime Bizon Date: Fri Jun 10 23:17:58 2011 +0200 serial: bcm63xx_uart: fix irq storm after rx fifo overrun. RX fifo reset is required to clear irq. Signed-off-by: Maxime Bizon Signed-off-by: Greg Kroah-Hartman commit 1a7d4369b3fe1f8e5efe7f11a1c482055693852f Author: Shreshtha Kumar Sahu Date: Mon Jun 13 10:11:44 2011 +0200 amba pl011: platform data for reg lockup and glitch v2 This patch provides platform data for following - uart reset function to assist uart register lockup workaround - init/exit function to fix glitch in the tx pin in tty_open when tty port0 is opened a glitch is seen in the tx line of uart0. This happens in pl011_startup() when tx fifo interrupt is provoked into asserting. Now uart0 pins are enabled (alt function) only when init is complete and turned back to gpio when closed. Signed-off-by: Shreshtha Kumar Sahu Signed-off-by: Linus Walleij Signed-off-by: Greg Kroah-Hartman commit c16d51a32bbb61ac8fd96f78b5ce2fccfe0fb4c3 Author: Shreshtha Kumar Sahu Date: Mon Jun 13 10:11:33 2011 +0200 amba pl011: workaround for uart registers lockup This workaround aims to break the deadlock situation which raises during continuous transfer of data for long duration over uart with hardware flow control. It is observed that CTS interrupt cannot be cleared in uart interrupt register (ICR). Hence further transfer over uart gets blocked. It is seen that during such deadlock condition ICR don't get cleared even on multiple write. This leads pass_counter to decrease and finally reach zero. This can be taken as trigger point to run this UART_BT_WA. Workaround backups the register configuration, does soft reset of UART using BIT-0 of PRCC_K_SOFTRST_SET/CLEAR registers and restores the registers. This patch also provides support for uart init and exit function calls if present. Signed-off-by: Shreshtha Kumar Sahu Signed-off-by: Linus Walleij Signed-off-by: Greg Kroah-Hartman commit 57f2104f39995bac332ddc492fbf60aa28e0c35e Author: Russ Gorby Date: Tue Jun 14 13:23:29 2011 -0700 tty: n_gsm: improper skb_pull() use was leaking framed data gsm_dlci_data_output_framed() was doing: memcpy(dp, skb_pull(dlci->skb, len), len); The problem is skb_pull() returns the post-increment data ptr so the first chunk of dlci->skb->data is leaked. Signed-off-by: Russ Gorby Signed-off-by: Greg Kroah-Hartman commit 7263287af93db4d5cf324a30546f2143419b7900 Author: Russ Gorby Date: Tue Jun 14 13:23:28 2011 -0700 tty: n_gsm: Fixed logic to decode break signal from modem status The modem status can be one or 2 octets and contains the V.24 signals and in the 2 octet case also the break signal. We were improperly decoding the break signal from the modem in the 2 octet case. Signed-off-by: Russ Gorby Signed-off-by: Greg Kroah-Hartman commit acd049c6e99d2ad1195666195230f6881d1c1588 Author: Konrad Rzeszutek Wilk Date: Thu Jun 16 13:07:19 2011 -0400 xen/setup: Fix for incorrect xen_extra_mem_start. The earlier attempts (24bdb0b62cc82120924762ae6bc85afc8c3f2b26) at fixing this problem caused other problems to surface (PV guests with no PCI passthrough would have SWIOTLB turned on - which meant 64MB of precious contingous DMA32 memory being eaten up per guest). The problem was: "on xen we add an extra memory region at the end of the e820, and on this particular machine this extra memory region would start below 4g and cross over the 4g boundary: [0xfee01000-0x192655000) Unfortunately e820_end_of_low_ram_pfn does not expect an e820 layout like that so it returns 4g, therefore initial_memory_mapping will map [0 - 0x100000000), that is a memory range that includes some reserved memory regions." The memory range was the IOAPIC regions, and with the 1-1 mapping turned on, it would map them as RAM, not as MMIO regions. This caused the hypervisor to complain. Fortunately this is experienced only under the initial domain so we guard for it. Acked-by: Stefano Stabellini Signed-off-by: Konrad Rzeszutek Wilk commit b5199515c25cca622495eb9c6a8a1d275e775088 Author: Thomas Gleixner Date: Thu Jun 16 16:22:08 2011 +0200 clocksource: Make watchdog robust vs. interruption The clocksource watchdog code is interruptible and it has been observed that this can trigger false positives which disable the TSC. The reason is that an interrupt storm or a long running interrupt handler between the read of the watchdog source and the read of the TSC brings the two far enough apart that the delta is larger than the unstable treshold. Move both reads into a short interrupt disabled region to avoid that. Reported-and-tested-by: Vernon Mauery Signed-off-by: Thomas Gleixner Cc: stable@kernel.org commit 7cc2ed05891f424c2e323bc1a368ddb5c78b90f2 Merge: 8dac6be 569658d Author: Linus Torvalds Date: Thu Jun 16 10:26:58 2011 -0700 Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: Call depmod.sh via shell perf: clear out make flags when calling kernel make kernelver commit ee7b75fc4f3ae49e1f25bf56219bb5de3c29afaf Author: Trond Myklebust Date: Thu Jun 16 13:15:41 2011 -0400 NFSv4: Fix a readdir regression Commit 7ebb9315 (NFS: use secinfo when crossing mountpoints) introduces a regression when decoding an NFSv4 readdir entry that sets the rdattr_error field. By treating the resulting value as if it is a decoding error, the current code may cause us to skip valid readdir entries. Reported-by: Andy Adamson Cc: stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 8dac6bee32425dd5145b40fa2307648cb7fb4d4a Merge: f8f44f0 d6e43f7 Author: Linus Torvalds Date: Thu Jun 16 10:21:59 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: AFS: Use i_generation not i_version for the vnode uniquifier AFS: Set s_id in the superblock to the volume name vfs: Fix data corruption after failed write in __block_write_begin() afs: afs_fill_page reads too much, or wrong data VFS: Fix vfsmount overput on simultaneous automount fix wrong iput on d_inode introduced by e6bc45d65d Delay struct net freeing while there's a sysfs instance refering to it afs: fix sget() races, close leak on umount ubifs: fix sget races ubifs: split allocation of ubifs_info into a separate function fix leak in proc_set_super() commit f8f44f09eaa2bfb40651e7fc6054d65c8091499a Merge: f49cc57 261a9af Author: Linus Torvalds Date: Thu Jun 16 09:46:24 2011 -0700 Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x * 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x: sh: sh7724: Add USBHS DMAEngine support sh: ecovec: Add renesas_usbhs support sh, exec: remove redundant set_fs(USER_DS) drivers: sh: resume enabled clocks fix dmaengine: shdma: SH_DMAC_MAX_CHANNELS message fix sh: Fix up xchg/cmpxchg corruption with gUSA RB. sh: Remove compressed kernel libgcc dependency. sh: fix wrong icache/dcache address-array start addr in cache-debugfs. commit f49cc57cc9d1686bdca068c40bc43f1690aa02d3 Merge: f4ef084 05a7929 Author: Linus Torvalds Date: Thu Jun 16 09:46:08 2011 -0700 Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x * 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x: ARM: mach-shmobile: mackerel: tidyup usbhs driver settings ARM: mach-shmobile: Correct SCIF port types for SH7367. ARM: mach-shmobile: sh73a0 gic_arch_extn.irq_set_wake() fix ARM: mach-shmobile: Mackerel USB platform data update ARM: mach-shmobile: AG5EVM SDHI1 platform data update commit f4ef084226f82ca923bf0a2658bb2876bd215ec1 Merge: df9d030 d521dd9 Author: Linus Torvalds Date: Thu Jun 16 09:45:47 2011 -0700 Merge branch 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x * 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x: fbdev: sh_mobile_hdmi: fix regression: statically enable RTPM fbdev/atyfb: Fix 2 defined-but-not-used warnings efifb: Fix call to wrong unregister function video: s3c-fb: move enabling channel for window video: s3c-fb: fix virtual resolution checking video: s3c-fb: fix misleading kfree in remove function commit df9d030c1324e9b75a425903f9f66bbc960bf713 Merge: e1d7671 82b88bb Author: Linus Torvalds Date: Thu Jun 16 09:44:20 2011 -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: SELinux: skip file_name_trans_write() when policy downgraded. selinux: fix case of names with whitespace/multibytes on /selinux/create commit a27a263bae072a499acc77b632238a6dacccf888 Author: Christoph Hellwig Date: Thu Jun 16 12:02:23 2011 +0000 xfs: make log devices with write back caches work There's no reason not to support cache flushing on external log devices. The only thing this really requires is flushing the data device first both in fsync and log commits. A side effect is that we also have to remove the barrier write test during mount, which has been superflous since the new FLUSH+FUA code anyway. Also use the chance to flush the RT subvolume write cache before the fsync commit, which is required for correct semantics. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit d6e43f751f252c68ca69fa6d18665d88d69ef8b7 Author: David Howells Date: Tue Jun 14 00:45:44 2011 +0100 AFS: Use i_generation not i_version for the vnode uniquifier Store the AFS vnode uniquifier in the i_generation field, not the i_version field of the inode struct. i_version can then be given the AFS data version number. Signed-off-by: David Howells Signed-off-by: Al Viro commit 2e41ae225f742ded5b7d9847cd8bd605f27daba8 Author: David Howells Date: Tue Jun 14 00:38:44 2011 +0100 AFS: Set s_id in the superblock to the volume name Set s_id in the superblock to the name of the AFS volume that this superblock corresponds to. Signed-off-by: David Howells Signed-off-by: Al Viro commit f9f07b6c1372b1436aa6b45333445b443ffd8c95 Author: Jan Kara Date: Tue Jun 14 00:58:27 2011 +0200 vfs: Fix data corruption after failed write in __block_write_begin() I've got a report of a file corruption from fsxlinux on ext3. The important operations to the page were: mapwrite to a hole partial write to the page read - found the page zeroed from the end of the normal write The culprit seems to be that if get_block() fails in __block_write_begin() (e.g. transient ENOSPC in ext3), the function does ClearPageUptodate(page). Thus when we retry the write, the logic in __block_write_begin() thinks zeroing of the page is needed and overwrites old data. In fact, I don't see why we should ever need to zero the uptodate bit here - either the page was uptodate when we entered __block_write_begin() and it should stay so when we leave it, or it was not uptodate and noone had right to set it uptodate during __block_write_begin() so it remains !uptodate when we leave as well. So just remove clearing of the bit. Signed-off-by: Jan Kara Signed-off-by: Al Viro commit 5e7f23373bf9a853e9256e81e86724cdd0a33c29 Author: Anton Blanchard Date: Mon Jun 13 22:31:12 2011 +0100 afs: afs_fill_page reads too much, or wrong data afs_fill_page should read the page that is about to be written but the current implementation has a number of issues. If we aren't extending the file we always read PAGE_CACHE_SIZE at offset 0. If we are extending the file we try to read the entire file. Change afs_fill_page to read PAGE_CACHE_SIZE at the right offset, clamped to i_size. While here, avoid calling afs_fill_page when we are doing a PAGE_CACHE_SIZE write. Signed-off-by: Anton Blanchard Signed-off-by: David Howells Signed-off-by: Al Viro commit 42c1edd345c8412d96e7a362ee06feb7be73bb6c Author: Julian Anastasov Date: Thu Jun 16 17:29:22 2011 +0200 netfilter: nf_nat: avoid double seq_adjust for loopback Avoid double seq adjustment for loopback traffic because it causes silent repetition of TCP data. One example is passive FTP with DNAT rule and difference in the length of IP addresses. This patch adds check if packet is sent and received via loopback device. As the same conntrack is used both for outgoing and incoming direction, we restrict seq adjustment to happen only in POSTROUTING. Signed-off-by: Julian Anastasov Signed-off-by: Patrick McHardy commit e1d76719ea3f3f755d597cef9c2087bdda5fea43 Author: Randy Dunlap Date: Tue Jun 14 15:00:18 2011 -0700 staging: fix iio builds when IIO_RING_BUFFER is not enabled Fix build by moving enum list outside of #ifdef CONFIG_IIO_RING_BUFFER. drivers/staging/iio/accel/adis16201_core.c:413: error: 'ADIS16201_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/accel/adis16201_core.c:417: error: 'ADIS16201_SCAN_TEMP' undeclared here (not in a function) .. drivers/staging/iio/accel/adis16203_core.c:374: error: 'ADIS16203_SCAN_SUPPLY' undeclared here (not in a function) drivers/staging/iio/accel/adis16203_core.c:378: error: 'ADIS16203_SCAN_AUX_ADC' undeclared here (not in a function) .. Signed-off-by: Randy Dunlap Acked-by: Jonathan Cameron Cc: linux-iio@vger.kernel.org Signed-off-by: Linus Torvalds commit 8aef18845266f5c05904c610088f2d1ed58f6be3 Author: Al Viro Date: Thu Jun 16 15:10:06 2011 +0100 VFS: Fix vfsmount overput on simultaneous automount [Kudos to dhowells for tracking that crap down] If two processes attempt to cause automounting on the same mountpoint at the same time, the vfsmount holding the mountpoint will be left with one too few references on it, causing a BUG when the kernel tries to clean up. The problem is that lock_mount() drops the caller's reference to the mountpoint's vfsmount in the case where it finds something already mounted on the mountpoint as it transits to the mounted filesystem and replaces path->mnt with the new mountpoint vfsmount. During a pathwalk, however, we don't take a reference on the vfsmount if it is the same as the one in the nameidata struct, but do_add_mount() doesn't know this. The fix is to make sure we have a ref on the vfsmount of the mountpoint before calling do_add_mount(). However, if lock_mount() doesn't transit, we're then left with an extra ref on the mountpoint vfsmount which needs releasing. We can handle that in follow_managed() by not making assumptions about what we can and what we cannot get from lookup_mnt() as the current code does. The callers of follow_managed() expect that reference to path->mnt will be grabbed iff path->mnt has been changed. follow_managed() and follow_automount() keep track of whether such reference has been grabbed and assume that it'll happen in those and only those cases that'll have us return with changed path->mnt. That assumption is almost correct - it breaks in case of racing automounts and in even harder to hit race between following a mountpoint and a couple of mount --move. The thing is, we don't need to make that assumption at all - after the end of loop in follow_manage() we can check if path->mnt has ended up unchanged and do mntput() if needed. The BUG can be reproduced with the following test program: #include #include #include #include #include int main(int argc, char **argv) { int pid, ws; struct stat buf; pid = fork(); stat(argv[1], &buf); if (pid > 0) wait(&ws); return 0; } and the following procedure: (1) Mount an NFS volume that on the server has something else mounted on a subdirectory. For instance, I can mount / from my server: mount warthog:/ /mnt -t nfs4 -r On the server /data has another filesystem mounted on it, so NFS will see a change in FSID as it walks down the path, and will mark /mnt/data as being a mountpoint. This will cause the automount code to be triggered. !!! Do not look inside the mounted fs at this point !!! (2) Run the above program on a file within the submount to generate two simultaneous automount requests: /tmp/forkstat /mnt/data/testfile (3) Unmount the automounted submount: umount /mnt/data (4) Unmount the original mount: umount /mnt At this point the kernel should throw a BUG with something like the following: BUG: Dentry ffff880032e3c5c0{i=2,n=} still in use (1) [unmount of nfs4 0:12] Note that the bug appears on the root dentry of the original mount, not the mountpoint and not the submount because sys_umount() hasn't got to its final mntput_no_expire() yet, but this isn't so obvious from the call trace: [] shrink_dcache_for_umount+0x69/0x82 [] generic_shutdown_super+0x37/0x15b [] ? nfs_super_return_all_delegations+0x2e/0x1b1 [nfs] [] kill_anon_super+0x1d/0x7e [] nfs4_kill_super+0x60/0xb6 [nfs] [] deactivate_locked_super+0x34/0x83 [] deactivate_super+0x6f/0x7b [] mntput_no_expire+0x18d/0x199 [] mntput+0x3b/0x44 [] release_mounts+0xa2/0xbf [] sys_umount+0x47a/0x4ba [] ? trace_hardirqs_on_caller+0x1fd/0x22f [] system_call_fastpath+0x16/0x1b as do_umount() is inlined. However, you can see release_mounts() in there. Note also that it may be necessary to have multiple CPU cores to be able to trigger this bug. Tested-by: Jeff Layton Tested-by: Ian Kent Signed-off-by: David Howells Signed-off-by: Al Viro commit 50338b889dc504c69e0cb316ac92d1b9e51f3c8a Author: Török Edwin Date: Thu Jun 16 00:06:14 2011 +0300 fix wrong iput on d_inode introduced by e6bc45d65d Git bisection shows that commit e6bc45d65df8599fdbae73be9cec4ceed274db53 causes BUG_ONs under high I/O load: kernel BUG at fs/inode.c:1368! [ 2862.501007] Call Trace: [ 2862.501007] [] d_kill+0xf8/0x140 [ 2862.501007] [] dput+0xc9/0x190 [ 2862.501007] [] fput+0x15f/0x210 [ 2862.501007] [] filp_close+0x61/0x90 [ 2862.501007] [] sys_close+0xb1/0x110 [ 2862.501007] [] system_call_fastpath+0x16/0x1b A reliable way to reproduce this bug is: Login to KDE, run 'rsnapshot sync', and apt-get install openjdk-6-jdk, and apt-get remove openjdk-6-jdk. The buggy part of the patch is this: struct inode *inode = NULL; ..... - if (nd.last.name[nd.last.len]) - goto slashes; inode = dentry->d_inode; - if (inode) - ihold(inode); + if (nd.last.name[nd.last.len] || !inode) + goto slashes; + ihold(inode) ... if (inode) iput(inode); /* truncate the inode here */ If nd.last.name[nd.last.len] is nonzero (and thus goto slashes branch is taken), and dentry->d_inode is non-NULL, then this code now does an additional iput on the inode, which is wrong. Fix this by only setting the inode variable if nd.last.name[nd.last.len] is 0. Reference: https://lkml.org/lkml/2011/6/15/50 Reported-by: Norbert Preining Reported-by: Török Edwin Cc: "Theodore Ts'o" Cc: Al Viro Signed-off-by: Török Edwin Signed-off-by: Al Viro commit 2c38de4c1f8da799bdca0e4bb40ca13f2174d3e8 Author: Nicolas Cavallari Date: Thu Jun 16 17:27:04 2011 +0200 netfilter: fix looped (broad|multi)cast's MAC handling By default, when broadcast or multicast packet are sent from a local application, they are sent to the interface then looped by the kernel to other local applications, going throught netfilter hooks in the process. These looped packet have their MAC header removed from the skb by the kernel looping code. This confuse various netfilter's netlink queue, netlink log and the legacy ip_queue, because they try to extract a hardware address from these packets, but extracts a part of the IP header instead. This patch prevent NFQUEUE, NFLOG and ip_QUEUE to include a MAC header if there is none in the packet. Signed-off-by: Nicolas Cavallari Signed-off-by: Patrick McHardy commit db898aa2ef6529fa80891e754d353063611c77de Author: Patrick McHardy Date: Thu Jun 16 17:24:55 2011 +0200 netfilter: ipt_ecn: fix inversion for IP header ECN match Userspace allows to specify inversion for IP header ECN matches, the kernel silently accepts it, but doesn't invert the match result. Signed-off-by: Patrick McHardy commit 58d5a0257d2fd89fbe4451f704193cc95b0a9c97 Author: Patrick McHardy Date: Thu Jun 16 17:24:17 2011 +0200 netfilter: ipt_ecn: fix protocol check in ecn_mt_check() Check for protocol inversion in ecn_mt_check() and remove the unnecessary runtime check for IPPROTO_TCP in ecn_mt(). Signed-off-by: Patrick McHardy commit 63f6fe92c6b3cbf4c0bbbea4b31fdd3d68e21e4d Author: Sebastian Andrzej Siewior Date: Thu Jun 16 17:16:37 2011 +0200 netfilter: ip_tables: fix compile with debug Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Patrick McHardy commit 122c4f10f7b66f9c7a0177de668e9662b0b14a05 Merge: 264524d 8f4e0a1 Author: Patrick McHardy Date: Thu Jun 16 17:09:54 2011 +0200 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs-2.6 commit c001fb72a7b705f902bdfdd05b5d2408efe6f848 Author: Randy Dunlap Date: Tue Jun 14 17:05:11 2011 -0700 gpio: add GPIOF_ values regardless on kconfig settings Make GPIOF_ defined values available even when GPIOLIB nor GENERIC_GPIO is enabled by moving them to . Fixes these build errors in linux-next: sound/soc/codecs/ak4641.c:524: error: 'GPIOF_OUT_INIT_LOW' undeclared (first use in this function) sound/soc/codecs/wm8915.c:2921: error: 'GPIOF_OUT_INIT_LOW' undeclared (first use in this function) Signed-off-by: Randy Dunlap Signed-off-by: Grant Likely commit 158f1e95180d01ebfd7cd5c8de23050528303f26 Author: Randy Dunlap Date: Tue Jun 14 17:06:02 2011 -0700 gpio: include linux/gpio.h where needed Some files use GPIOF_ macros but don't include the header file for them. These macros are being moved to , so add includes for where needed. Signed-off-by: Randy Dunlap Signed-off-by: Grant Likely commit 55b220cafadd71b9f83759f7b396998b2547dc5f Author: Ambresh K Date: Wed Jun 15 13:40:45 2011 -0700 gpio/omap4: Fix missing interrupts during device wakeup due to IOPAD. If gpio pins from bank[2-5] are marked as wakeup enable and if the wake is through gpio IO pad wakeup, then that wakeup gpio interrupt is lost. In the current implementation, GPIO driver stores the context of DATAIN of all the gpio in the bank. During GPIO resuming, it checks DATAIN with wakeup enabled pins of gpio bank. If there is status change, then manually toggle GPIO_LEVELDETECT to generate pseudo interrupt. Reported-by: Philippe Mazet Tested-by: Philippe Mazet Signed-off-by: Ambresh K Signed-off-by: Grant Likely commit c3a4924565e2eecf2539871abd123d35be6d76d5 Author: Jiri Kosina Date: Thu Jun 16 12:21:34 2011 +0200 Revert "HID: magicmouse: ignore 'ivalid report id' while switching modes" This reverts commit 23746a66d7d9e73402c68ef00d708796b97ebd72. It turned out that the actual reason for failure is not the device firmware, but bug in Bluetooth stack, which will be fixed by patch by Ville Tervo which corrects the mask handling for CSR 1.1 Dongles. Reported-and-tested-by: Ed Tomlinson Reported-and-tested-by: Chase Douglas Signed-off-by: Jiri Kosina commit 203db2952bc87f5d610c9ad53a7d02b85897721f Author: Mathias Krause Date: Wed Jun 15 23:03:38 2011 +0200 tools/perf: Fix static build of perf tool To build a statically linked version of the perf tool all needed libraries must be added in the correct order to get the symbols resolved. Currently this is broken when, e.g. python or newt support is enabled -- libpython needs libpthread which is an unconditional link dependency of the perf tool; libslang needs libm, another unconditional dependency. To solve the problem in the long run without the need to keep track of transitive library dependencies, simply make the linker look at the EXTLIBS multiple times until it has all symbols resolved. Signed-off-by: Mathias Krause Cc: Peter Zijlstra Cc: Paul Mackerras Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/1308171818-20370-1-git-send-email-minipli@googlemail.com Signed-off-by: Ingo Molnar commit 9be34c9d526c305efb332ad53460b57d5f8edb3e Author: Linus Torvalds Date: Thu Jun 16 00:35:09 2011 -0700 mm: get rid of the most spurious find_vma_prev() users We have some users of this function that date back to before the vma list was doubly linked, and just are silly. These days, you can find the previous vma by just following the vma->vm_prev pointer. In some cases you don't need any find_vma() lookup at all, and in other cases you're better off with the regular "find_vma()" that uses the vma cache front-end lookup. Some "find_vma_prev()" users are still valid, though. For example, in the case of a stack that grows up, it can be the case that we don't find any 'vma' at all (because we're looking up an address that is past the last vma), and that the stack that we want to grow is the 'prev' vma. But that kind of special case aside, we generally should prefer to use 'find_vma()'. Noticed due to a totally unrelated POWER memory corruption bug that just happened to hit in 'find_vma_prev()' and made me go "Hmm - why are we using that function here?". Signed-off-by: Linus Torvalds commit cafe8d8413399119c3f4cd575e0eb27e2654b9d5 Author: Christian Dietrich Date: Sat Jun 4 15:36:43 2011 +0000 drivers/gpu/drm: use printk_ratelimited instead of printk_ratelimit Since printk_ratelimit() shouldn't be used anymore (see comment in include/linux/printk.h), replace it with printk_ratelimited. Signed-off-by: Christian Dietrich Signed-off-by: Dave Airlie commit 4a9a8b71e12d41abb71c4e741bff524f016cfef4 Author: Dave Airlie Date: Tue Jun 14 06:13:55 2011 +0000 drm/radeon: workaround a hw bug on some radeon chipsets with all-0 EDIDs. Some RS690 chipsets seem to end up with floating connectors, either a DVI connector isn't actually populated, or an add-in HDMI card is available but not installed. In this case we seem to get a NULL byte response for each byte of the i2c transaction, so we detect this case and if we see it we don't do anymore DDC transactions on this connector. I've tested this on my RS690 without the HDMI card installed and it seems to work fine. Signed-off-by: Dave Airlie Reviewed-by: Alex Deucher commit f49dadb82dde88092827b6d058e7164e75e96759 Author: Dave Airlie Date: Tue Jun 14 06:13:54 2011 +0000 drm: make debug levels match in edid failure code. this puts the header and followup at the same loglevel as the hex dump code. Signed-off-by: Dave Airlie Reviewed-by: Alex Deucher commit e6ba759980e65084b0db9f1684d9d65a2a3e1741 Author: Alex Deucher Date: Mon Jun 13 22:02:51 2011 +0000 drm/radeon/kms: clear wb memory by default Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7c88d2b80ba5c175398013842782461a3b980130 Author: Alex Deucher Date: Tue Jun 14 15:27:38 2011 +0000 drm/radeon/kms: be more pedantic about the g5 quirk (v2) I don't think Apple offered any other cards for this mac, so I doubt this will be an issue, but just to be on the safe side, check the pci ids as well. v2: fix spelling in commit message Reviewed-by: Michel Dänzer Signed-off-by: Alex Deucher Cc: Joachim Henke Cc: Michel Dänzer Signed-off-by: Dave Airlie commit 1c88d74f3a0b748b0c7e88e91e9d0503815d5689 Author: Alex Deucher Date: Tue Jun 14 19:15:53 2011 +0000 drm/radeon/kms: signed fix for evergreen thermal temperature is signed. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 45e97ab65026a3391cb2c938f834ca5db4d2e5b3 Author: Wolfram Sang Date: Wed Jun 15 11:26:47 2011 +0200 drm: populate irq_by_busid-member for pci Commit 8410ea (drm: rework PCI/platform driver interface) implemented drm_pci_irq_by_busid() but forgot to make it available in the drm_pci_bus-struct. This caused a freeze on my Radeon9600-equipped laptop when executing glxgears. Thanks to Michel for noticing the flaw. [airlied: made function static also] Reported-by: Michel Dänzer Signed-off-by: Wolfram Sang Cc: stable@kernel.org Signed-off-by: Dave Airlie commit a46e0899eec7a3069bcadd45dfba7bf67c6ed016 Author: Paul E. McKenney Date: Wed Jun 15 15:47:09 2011 -0700 rcu: use softirq instead of kthreads except when RCU_BOOST=y This patch #ifdefs RCU kthreads out of the kernel unless RCU_BOOST=y, thus eliminating context-switch overhead if RCU priority boosting has not been configured. Signed-off-by: Paul E. McKenney commit 261a9af671a79b750cb170bac620601d686535c1 Author: Kuninori Morimoto Date: Wed Jun 15 06:08:28 2011 +0000 sh: sh7724: Add USBHS DMAEngine support Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit fb2e73947461d55a3166f94a8a545b78d6635262 Author: Kuninori Morimoto Date: Wed Jun 15 06:08:18 2011 +0000 sh: ecovec: Add renesas_usbhs support Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 19a1166fa2352f9c07a5ab34a3c2aab462cff35d Merge: 13fca64 7d7975a Author: Linus Torvalds Date: Wed Jun 15 22:01:36 2011 -0700 Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm * 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm: ARM: footbridge: fix clock event support ARM: footbridge: fix debug macros ARM: initrd: disable initrds outside of memory ARM: extend Code: line by one 16-bit quantity for Thumb instructions ARM: 6955/1: cmpxchg syscall should data abort if page not write ARM: 6954/1: zImage: fix Thumb2 breakage ARM: 6953/1: DT: don't try to access physical address zero ARM: 6949/2: mach-u300: fix compilaton warning in IO accessors Revert "ARM: 6944/1: mm: allow ASID 0 to be allocated to tasks" Revert "ARM: 6943/1: mm: use TTBR1 instead of reserved context ID" davinci: make PCM platform devices static arm: davinci: Fix fallout from generic irq chip conversion ARM: 6894/1: mmci: trigger card detect IRQs on falling and rising edges ARM: 6952/1: fix lockdep warning of "unannotated irqs-off" ARM: 6951/1: include .bss in memory layout information ARM: 6948/1: Fix .size directives for __arm{7,9}tdmi_proc_info ARM: 6947/2: mach-u300: fix compilation error in timer ARM: 6946/1: vexpress: move v2m clock init to init_early ARM: mx51/sdma: Check the chip revision in run-time arm: mxs: include asm/processor.h for cpu_relax() commit 13fca640bb8ab611a50e0ba120b186faa2994d6c Author: Linus Torvalds Date: Wed Jun 15 21:53:52 2011 -0700 Revert "fs/exec.c: use BUILD_BUG_ON for VM_STACK_FLAGS & VM_STACK_INCOMPLETE_SETUP" This reverts commit 7f81c8890c15a10f5220bebae3b6dfae4961962a. It turns out that it's not actually a build-time check on x86-64 UML, which does some seriously crazy stuff with VM_STACK_FLAGS. The VM_STACK_FLAGS define depends on the arch-supplied VM_STACK_DEFAULT_FLAGS value, and on x86-64 UML we have arch/um/sys-x86_64/shared/sysdep/vm-flags.h: #define VM_STACK_DEFAULT_FLAGS \ (test_thread_flag(TIF_IA32) ? vm_stack_flags32 : vm_stack_flags) #define VM_STACK_DEFAULT_FLAGS vm_stack_flags (yes, seriously: two different #define's for that thing, with the first one being inside an "#ifdef TIF_IA32") It's possible that it is UML that should just be fixed in this area, but for now let's just undo the (very small) optimization. Reported-by: Randy Dunlap Acked-by: Andrew Morton Cc: Michal Hocko Cc: Richard Weinberger Signed-off-by: Linus Torvalds commit 67de0162fbb78713fcb23cb2502b380faa8bde73 Author: Jörg Sommer Date: Wed Jun 15 13:00:47 2011 -0700 Documentation: fix cgroup typos and formatting Fix format and spelling. Signed-off-by: Jörg Sommer Acked-by: Paul Menage Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit f6e07d38078e82a6aeaae00bb134591ef5ac1167 Author: Jörg Sommer Date: Wed Jun 15 12:59:45 2011 -0700 Documentation: update cgroupfs mount point According to commit 676db4af0430 ("cgroupfs: create /sys/fs/cgroup to mount cgroupfs on") the canonical mountpoint for the cgroup filesystem is /sys/fs/cgroup. Hence, this should be used in the documentation. Signed-off-by: Jörg Sommer Acked-by: Paul Menage Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 06a2c45d6b4a7586eba7cd20dd656b08d8b63c2f Author: Maxin B. John Date: Wed Jun 15 12:58:29 2011 -0700 Documentation: update kmemleak supported archs Instead of listing the architectures that are supported by kmemleak in Documentation/kmemleak.txt, just refer people to the list of supported architecutures in lib/Kconfig.debug so that Documentation/kmemleak.txt does not need more updates for this. Signed-off-by: Maxin B. John Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 04c55715cbd5de526046745bca3d3b6ffa6641c6 Author: Andrew Murray Date: Wed Jun 15 12:57:09 2011 -0700 Documentation: update printk-formats.txt This patch updates the incomplete documentation concerning the printk extended format specifiers. Signed-off-by: Andrew Murray Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit a1b6ae8ed01736dae19a33e74ea4e8dd88f891b5 Merge: 21c5977 0da938c Author: Linus Torvalds Date: Wed Jun 15 21:45:18 2011 -0700 Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Check if lowest_mask is initialized in find_lowest_rq() sched: Fix need_resched() when checking peempt commit 21c5977a836e399fc710ff2c5367845ed5c2527f Author: Dan Rosenberg Date: Wed Jun 15 15:09:01 2011 -0700 alpha: fix several security issues Fix several security issues in Alpha-specific syscalls. Untested, but mostly trivial. 1. Signedness issue in osf_getdomainname allows copying out-of-bounds kernel memory to userland. 2. Signedness issue in osf_sysinfo allows copying large amounts of kernel memory to userland. 3. Typo (?) in osf_getsysinfo bounds minimum instead of maximum copy size, allowing copying large amounts of kernel memory to userland. 4. Usage of user pointer in osf_wait4 while under KERNEL_DS allows privilege escalation via writing return value of sys_wait4 to kernel memory. Signed-off-by: Dan Rosenberg Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ec8f9ceacef719a844ca269d654502af6a00a273 Author: Geert Uytterhoeven Date: Wed Jun 15 15:08:59 2011 -0700 drivers/misc/apds990x.c: apds990x_chip_on() should depend on CONFIG_PM || CONFIG_PM_RUNTIME Fixes this warning: drivers/misc/apds990x.c: At top level: drivers/misc/apds990x.c:613: warning: `apds990x_chip_on' defined but not used Signed-off-by: Geert Uytterhoeven Cc: Samu Onkalo Cc: Jonathan Cameron Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b472611a32a72f4a118c069c2d62a1a3f087afd Author: Hugh Dickins Date: Wed Jun 15 15:08:58 2011 -0700 ksm: fix NULL pointer dereference in scan_get_next_rmap_item() Andrea Righi reported a case where an exiting task can race against ksmd::scan_get_next_rmap_item (http://lkml.org/lkml/2011/6/1/742) easily triggering a NULL pointer dereference in ksmd. ksm_scan.mm_slot == &ksm_mm_head with only one registered mm CPU 1 (__ksm_exit) CPU 2 (scan_get_next_rmap_item) list_empty() is false lock slot == &ksm_mm_head list_del(slot->mm_list) (list now empty) unlock lock slot = list_entry(slot->mm_list.next) (list is empty, so slot is still ksm_mm_head) unlock slot->mm == NULL ... Oops Close this race by revalidating that the new slot is not simply the list head again. Andrea's test case: #include #include #include #include #define BUFSIZE getpagesize() int main(int argc, char **argv) { void *ptr; if (posix_memalign(&ptr, getpagesize(), BUFSIZE) < 0) { perror("posix_memalign"); exit(1); } if (madvise(ptr, BUFSIZE, MADV_MERGEABLE) < 0) { perror("madvise"); exit(1); } *(char *)NULL = 0; return 0; } Reported-by: Andrea Righi Tested-by: Andrea Righi Cc: Andrea Arcangeli Signed-off-by: Hugh Dickins Signed-off-by: Chris Wright Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c7cbb02222eccb82bfd42696b01abceddae663f2 Author: Wanlong Gao Date: Wed Jun 15 15:08:56 2011 -0700 rtc: fix build warnings in defconfigs RTC_CLASS is changed to bool, so 'm' is invalid. Signed-off-by: Wanlong Gao Acked-by: Mike Frysinger Acked-by: Wolfram Sang Acked-by: Hans-Christian Egtvedt Acked-by: Benjamin Herrenschmidt Cc: Guan Xuetao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fb139dfeef9558a12ffdbf9e26951fd1a9304f3b Author: Alexander Stein Date: Wed Jun 15 15:08:55 2011 -0700 drivers/tty/serial/pch_uart.c: don't oops if dmi_get_system_info returns NULL If dmi_get_system_info() returns NULL, pch_uart_init_port() will dereferencea a zero pointer. This oops was observed on an Atom based board which has no BIOS, but a bootloder which doesn't provide DMI data. Signed-off-by: Alexander Stein Cc: Greg KH Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 273ef9509b7903e50f36aaf9f1d5dc9087fca506 Author: Nils Carlson Date: Wed Jun 15 15:08:54 2011 -0700 drivers/char/hpet.c: fix periodic-emulation for delayed interrupts When interrupts are delayed due to interrupt masking or due to other interrupts being serviced the HPET periodic-emuation would fail. This happened because given an interval t and a time for the current interrupt m we would compute the next time as t + m. This works until we are delayed for > t, in which case we would be writing a new value which is in fact in the past. This can be solved by computing the next time instead as (k * t) + m where k is large enough to be in the future. The exact computation of k is described in a comment to the code. More detail: Assuming an interval of 5 between each expected interrupt we have a normal case of t0: interrupt, read t0 from comparator, set next interrupt t0 + 5 t5: interrupt, read t5 from comparator, set next interrupt t5 + 5 t10: interrupt, read t10 from comparator, set next interrupt t10 + 5 ... So, what happens when the interrupt is serviced too late? t0: interrupt, read t0 from comparator, set next interrupt t0 + 5 t11: delayed interrupt serviced, read t5 from comparator, set next interrupt t5 + 5, which is in the past! ... counter loops ... t10: Much much later, get the next interrupt. This can happen either because we have interrupts masked for too long (some stupid driver goes on a printk rampage) or just because we are pushing the limits of the interval (too small a period), or both most probably. My solution is to read the main counter as well and set the next interrupt to occur at the right interval, for example: t0: interrupt, read t0 from comparator, set next interrupt t0 + 5 t11: delayed interrupt serviced, read t5 from comparator, set next interrupt t15 as t10 has been missed. t15: back on track. Signed-off-by: Nils Carlson Cc: John Stultz Cc: Thomas Gleixner Cc: Clemens Ladisch Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 31b5f8eeece4c0d70b649bfac7759cf7e3f915dd Author: akpm@linux-foundation.org Date: Wed Jun 15 15:08:52 2011 -0700 Documentation/feature-removal-schedule.txt: remove ns_cgroup from feature-removal-schedule.txt Commit a77aea92010acf ("cgroup: remove the ns_cgroup") removed the ns_cgroup but it forgot to remove the related doc in feature-removal-schedule.txt. Signed-off-by: WANG Cong Cc: Daniel Lezcano Cc: Serge E. Hallyn Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f9e35b3b41f47c4e17d8132edbcab305a6aaa4b0 Author: Mel Gorman Date: Wed Jun 15 15:08:52 2011 -0700 mm: compaction: abort compaction if too many pages are isolated and caller is asynchronous V2 Asynchronous compaction is used when promoting to huge pages. This is all very nice but if there are a number of processes in compacting memory, a large number of pages can be isolated. An "asynchronous" process can stall for long periods of time as a result with a user reporting that firefox can stall for 10s of seconds. This patch aborts asynchronous compaction if too many pages are isolated as it's better to fail a hugepage promotion than stall a process. [minchan.kim@gmail.com: return COMPACT_PARTIAL for abort] Reported-and-tested-by: Ury Stankevich Signed-off-by: Mel Gorman Reviewed-by: Minchan Kim Reviewed-by: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d179e84ba5da1d0024087d1759a2938817a00f3f Author: Andrea Arcangeli Date: Wed Jun 15 15:08:51 2011 -0700 mm: vmscan: do not use page_count without a page pin It is unsafe to run page_count during the physical pfn scan because compound_head could trip on a dangling pointer when reading page->first_page if the compound page is being freed by another CPU. [mgorman@suse.de: split out patch] Signed-off-by: Andrea Arcangeli Signed-off-by: Mel Gorman Reviewed-by: Michal Hocko Reviewed-by: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7454f4ba40b419eb999a3c61a99da662bf1a2bb8 Author: Mel Gorman Date: Wed Jun 15 15:08:50 2011 -0700 mm: compaction: ensure that the compaction free scanner does not move to the next zone Compaction works with two scanners, a migration and a free scanner. When the scanners crossover, migration within the zone is complete. The location of the scanner is recorded on each cycle to avoid excesive scanning. When a zone is small and mostly reserved, it's very easy for the migration scanner to be close to the end of the zone. Then the following situation can occurs o migration scanner isolates some pages near the end of the zone o free scanner starts at the end of the zone but finds that the migration scanner is already there o free scanner gets reinitialised for the next cycle as cc->migrate_pfn + pageblock_nr_pages moving the free scanner into the next zone o migration scanner moves into the next zone When this happens, NR_ISOLATED accounting goes haywire because some of the accounting happens against the wrong zone. One zones counter remains positive while the other goes negative even though the overall global count is accurate. This was reported on X86-32 with !SMP because !SMP allows the negative counters to be visible. The fact that it is the bug should theoritically be possible there. Signed-off-by: Mel Gorman Reviewed-by: Minchan Kim Reviewed-by: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a582a738c763e106f47eab24b8146c698a9c700b Author: Shaohua Li Date: Wed Jun 15 15:08:49 2011 -0700 compaction: checks correct fragmentation index fragmentation_index() returns -1000 when the allocation might succeed This doesn't match the comment and code in compaction_suitable(). I thought compaction_suitable should return COMPACT_PARTIAL in -1000 case, because in this case allocation could succeed depending on watermarks. The impact of this is that compaction starts and compact_finished() is called which rechecks the watermarks and the free lists. It should have the same result in that compaction should not start but is more expensive. Acked-by: Mel Gorman Signed-off-by: Shaohua Li Cc: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5db8a73a8d7cc6a66afbf25ed7fda338caa8f5f9 Author: Minchan Kim Date: Wed Jun 15 15:08:48 2011 -0700 mm/memory-failure.c: fix page isolated count mismatch Pages isolated for migration are accounted with the vmstat counters NR_ISOLATE_[ANON|FILE]. Callers of migrate_pages() are expected to increment these counters when pages are isolated from the LRU. Once the pages have been migrated, they are put back on the LRU or freed and the isolated count is decremented. Memory failure is not properly accounting for pages it isolates causing the NR_ISOLATED counters to be negative. On SMP builds, this goes unnoticed as negative counters are treated as 0 due to expected per-cpu drift. On UP builds, the counter is treated by too_many_isolated() as a large value causing processes to enter D state during page reclaim or compaction. This patch accounts for pages isolated by memory failure correctly. [mel@csn.ul.ie: rewrote changelog] Reviewed-by: Andrea Arcangeli Signed-off-by: Minchan Kim Cc: Andi Kleen Acked-by: Mel Gorman Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2c32258798f813dc2be6cbc32f78aa5ac5cb205 Author: Josh Triplett Date: Wed Jun 15 15:08:47 2011 -0700 gcov: disable CONFIG_CONSTRUCTORS when not needed by CONFIG_GCOV_KERNEL CONFIG_CONSTRUCTORS controls support for running constructor functions at kernel init time. According to commit b99b87f70c7785ab ("kernel: constructor support"), gcov (CONFIG_GCOV_KERNEL) needs this. However, CONFIG_CONSTRUCTORS currently defaults to y, with no option to disable it, and CONFIG_GCOV_KERNEL depends on it. Instead, default it to n and have CONFIG_GCOV_KERNEL select it, so that the normal case of CONFIG_GCOV_KERNEL=n will result in CONFIG_CONSTRUCTORS=n. Observed in the short list of =y values in a minimal kernel configuration. Signed-off-by: Josh Triplett Acked-by: WANG Cong Acked-by: Peter Oberparleiter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0461a44a2f1fc052fc949ae19c3a5d684627b09 Author: Jean Delvare Date: Wed Jun 15 15:08:46 2011 -0700 MAINTAINERS: add entry for legacy eeprom driver I shall maintain the legacy eeprom driver, until we finally get rid of it. Signed-off-by: Jean Delvare Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbc29a25e484be073e7d762c9f7f1d4bf8aecc48 Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:46 2011 -0700 memcg: avoid percpu cached charge draining at softlimit Based on Michal Hocko's comment. We are not draining per cpu cached charges during soft limit reclaim because background reclaim doesn't care about charges. It tries to free some memory and charges will not give any. Cached charges might influence only selection of the biggest soft limit offender but as the call is done only after the selection has been already done it makes no change. Signed-off-by: KAMEZAWA Hiroyuki Cc: Daisuke Nishimura Reviewed-by: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26fe616844491a41a1abc02e29f7a9d1ec2f8ddb Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:45 2011 -0700 memcg: fix percpu cached charge draining frequency For performance, memory cgroup caches some "charge" from res_counter into per cpu cache. This works well but because it's cache, it needs to be flushed in some cases. Typical cases are 1. when someone hit limit. 2. when rmdir() is called and need to charges to be 0. But "1" has problem. Recently, with large SMP machines, we see many kworker runs because of flushing memcg's cache. Bad things in implementation are that even if a cpu contains a cache for memcg not related to a memcg which hits limit, drain code is called. This patch does A) check percpu cache contains a useful data or not. B) check other asynchronous percpu draining doesn't run. C) don't call local cpu callback. (*)This patch avoid changing the calling condition with hard-limit. When I run "cat 1Gfile > /dev/null" under 300M limit memcg, [Before] 13767 kamezawa 20 0 98.6m 424 416 D 10.0 0.0 0:00.61 cat 58 root 20 0 0 0 0 S 0.6 0.0 0:00.09 kworker/2:1 60 root 20 0 0 0 0 S 0.6 0.0 0:00.08 kworker/4:1 4 root 20 0 0 0 0 S 0.3 0.0 0:00.02 kworker/0:0 57 root 20 0 0 0 0 S 0.3 0.0 0:00.05 kworker/1:1 61 root 20 0 0 0 0 S 0.3 0.0 0:00.05 kworker/5:1 62 root 20 0 0 0 0 S 0.3 0.0 0:00.05 kworker/6:1 63 root 20 0 0 0 0 S 0.3 0.0 0:00.05 kworker/7:1 [After] 2676 root 20 0 98.6m 416 416 D 9.3 0.0 0:00.87 cat 2626 kamezawa 20 0 15192 1312 920 R 0.3 0.0 0:00.28 top 1 root 20 0 19384 1496 1204 S 0.0 0.0 0:00.66 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0 [akpm@linux-foundation.org: make percpu_charge_mutex static, tweak comments] Signed-off-by: KAMEZAWA Hiroyuki Acked-by: Daisuke Nishimura Reviewed-by: Michal Hocko Tested-by: Ying Han Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7ae534d074e01e54d5cfbc9734b73fdfc855501f Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:44 2011 -0700 memcg: fix wrong check of noswap with softlimit Hierarchical reclaim doesn't swap out if memsw and resource limits are thye same (memsw_is_minimum == true) because we would hit mem+swap limit anyway (during hard limit reclaim). If it comes to the soft limit we shouldn't consider memsw_is_minimum at all because it doesn't make much sense. Either the soft limit is bellow the hard limit and then we cannot hit mem+swap limit or the direct reclaim takes a precedence. Signed-off-by: KAMEZAWA Hiroyuki Reviewed-by: Michal Hocko Acked-by: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 733eda7ac316cd4e550fa096e4ed42356dc546e7 Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:43 2011 -0700 memcg: clear mm->owner when last possible owner leaves The following crash was reported: > Call Trace: > [] mem_cgroup_from_task+0x15/0x17 > [] __mem_cgroup_try_charge+0x148/0x4b4 > [] ? need_resched+0x23/0x2d > [] ? preempt_schedule+0x46/0x4f > [] mem_cgroup_charge_common+0x9a/0xce > [] mem_cgroup_newpage_charge+0x5d/0x5f > [] khugepaged+0x5da/0xfaf > [] ? __init_waitqueue_head+0x4b/0x4b > [] ? add_mm_counter.constprop.5+0x13/0x13 > [] kthread+0xa8/0xb0 > [] ? sub_preempt_count+0xa1/0xb4 > [] kernel_thread_helper+0x4/0x10 > [] ? retint_restore_args+0x13/0x13 > [] ? __init_kthread_worker+0x5a/0x5a What happens is that khugepaged tries to charge a huge page against an mm whose last possible owner has already exited, and the memory controller crashes when the stale mm->owner is used to look up the cgroup to charge. mm->owner has never been set to NULL with the last owner going away, but nobody cared until khugepaged came along. Even then it wasn't a problem because the final mmput() on an mm was forced to acquire and release mmap_sem in write-mode, preventing an exiting owner to go away while the mmap_sem was held, and until "692e0b3 mm: thp: optimize memcg charge in khugepaged", the memory cgroup charge was protected by mmap_sem in read-mode. Instead of going back to relying on the mmap_sem to enforce lifetime of a task, this patch ensures that mm->owner is properly set to NULL when the last possible owner is exiting, which the memory controller can handle just fine. [akpm@linux-foundation.org: tweak comments] Signed-off-by: Hugh Dickins Signed-off-by: KAMEZAWA Hiroyuki Signed-off-by: Johannes Weiner Reported-by: Hugh Dickins Reported-by: Dave Jones Reviewed-by: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37573e8c718277103f61f03741bdc5606d31b07e Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:42 2011 -0700 memcg: fix init_page_cgroup nid with sparsemem Commit 21a3c9646873 ("memcg: allocate memory cgroup structures in local nodes") makes page_cgroup allocation as NUMA aware. But that caused a problem https://bugzilla.kernel.org/show_bug.cgi?id=36192. The problem was getting a NID from invalid struct pages, which was not initialized because it was out-of-node, out of [node_start_pfn, node_end_pfn) Now, with sparsemem, page_cgroup_init scans pfn from 0 to max_pfn. But this may scan a pfn which is not on any node and can access memmap which is not initialized. This makes page_cgroup_init() for SPARSEMEM node aware and remove a code to get nid from page->flags. (Then, we'll use valid NID always.) [akpm@linux-foundation.org: try to fix up comments] Signed-off-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8957712710e045044e3c44375c6a87d7ffa17d51 Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:41 2011 -0700 mm: memory.numa_stat: fix file permission Commit 406eb0c9ba76 ("memcg: add memory.numastat api for numa statistics") adds memory.numa_stat file for memory cgroup. But the file permissions are wrong. [kamezawa@bluextal linux-2.6]$ ls -l /cgroup/memory/A/memory.numa_stat ---------- 1 root root 0 Jun 9 18:36 /cgroup/memory/A/memory.numa_stat This patch fixes the permission as [root@bluextal kamezawa]# ls -l /cgroup/memory/A/memory.numa_stat -r--r--r-- 1 root root 0 Jun 10 16:49 /cgroup/memory/A/memory.numa_stat Signed-off-by: KAMEZAWA Hiroyuki Acked-by: Ying Han Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45d16f09ddd66597e561876f5652c05bf986360a Author: Eric Miao Date: Wed Jun 15 15:08:40 2011 -0700 leds: fix the incorrect display in menuconfig Seems when a config option does not have a dependency of the menuconfig, it messes the display of the rest configs, even if it's a hidden one. Signed-off-by: Eric Miao Cc: Richard Purdie Cc: Valdis Kletnieks Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0320c7b7d1ac1bd5c2d9dff3258524ab39bad32 Author: Rafael Aquini Date: Wed Jun 15 15:08:39 2011 -0700 mm: fix negative commitlimit when gigantic hugepages are allocated When 1GB hugepages are allocated on a system, free(1) reports less available memory than what really is installed in the box. Also, if the total size of hugepages allocated on a system is over half of the total memory size, CommitLimit becomes a negative number. The problem is that gigantic hugepages (order > MAX_ORDER) can only be allocated at boot with bootmem, thus its frames are not accounted to 'totalram_pages'. However, they are accounted to hugetlb_total_pages() What happens to turn CommitLimit into a negative number is this calculation, in fs/proc/meminfo.c: allowed = ((totalram_pages - hugetlb_total_pages()) * sysctl_overcommit_ratio / 100) + total_swap_pages; A similar calculation occurs in __vm_enough_memory() in mm/mmap.c. Also, every vm statistic which depends on 'totalram_pages' will render confusing values, as if system were 'missing' some part of its memory. Impact of this bug: When gigantic hugepages are allocated and sysctl_overcommit_memory == OVERCOMMIT_NEVER. In a such situation, __vm_enough_memory() goes through the mentioned 'allowed' calculation and might end up mistakenly returning -ENOMEM, thus forcing the system to start reclaiming pages earlier than it would be ususal, and this could cause detrimental impact to overall system's performance, depending on the workload. Besides the aforementioned scenario, I can only think of this causing annoyances with memory reports from /proc/meminfo and free(1). [akpm@linux-foundation.org: standardize comment layout] Reported-by: Russ Anderson Signed-off-by: Rafael Aquini Acked-by: Russ Anderson Cc: Andrea Arcangeli Cc: Christoph Lameter Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 959ecc48fc7506b9d7825ea70e40d92d9b308033 Author: KAMEZAWA Hiroyuki Date: Wed Jun 15 15:08:38 2011 -0700 mm/memory_hotplug.c: fix building of node hotplug zonelist During memory hotplug we refresh zonelists when we online a page in a new zone. It means that the node's zonelist is not initialized until pages are onlined. So for example, "nid" passed by MEM_GOING_ONLINE notifier will point to NODE_DATA(nid) which has no zone fallback list. Moreover, if we hot-add cpu-only nodes, alloc_pages() will do no fallback. This patch makes a zonelist when a new pgdata is available. Note: in production, at fujitsu, memory should be onlined before cpu and our server didn't have any memory-less nodes and had no problems. But recent changes in MEM_GOING_ONLINE+page_cgroup will access not initialized zonelist of node. Anyway, there are memory-less node and we need some care. Signed-off-by: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de695e159e3fd679594eb45449d2638d54434c32 Author: Borislav Petkov Date: Wed Jun 15 15:08:37 2011 -0700 init/calibrate.c: remove annoying printk Remove calibrate_delay_direct()'s KERN_DEBUG printk related to bogomips calculation as it appears when booting every core on setups with 'ignore_loglevel' which dmesg people scan for possible issues. As the message doesn't show very useful information to the widest audience of kernel boot message gazers, it should be removed. Introduced by commit d2b463135f84 ("init/calibrate.c: fix for critical bogoMIPS intermittent calculation failure"). Signed-off-by: Borislav Petkov Cc: Andrew Worsley Cc: Phil Carmody Cc: Peter Zijlstra Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26575f9544530127757297d4de8fb2f2c75f1f69 Author: Geert Uytterhoeven Date: Wed Jun 15 15:08:35 2011 -0700 w1: W1_MASTER_DS1WM should depend on GENERIC_HARDIRQS On m68k (which doesn't support generic hardirqs yet): drivers/w1/masters/ds1wm.c: In function `ds1wm_probe': drivers/w1/masters/ds1wm.c: error: implicit declaration of function `irq_set_irq_type' Signed-off-by: Geert Uytterhoeven Cc: Evgeniy Polyakov Cc: Jean-Franois Dagenais Cc: Matt Reimer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 49b24d6b41c576ba43153fc94695f871cce139a5 Author: Nicolas Kaiser Date: Wed Jun 15 15:08:34 2011 -0700 include/asm-generic/pgtable.h: fix unbalanced parenthesis Signed-off-by: Nicolas Kaiser Reviewed-by: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e6f343852cb16ea961ba5be2ca8dde609aa6f23 Author: Pawel Osciak Date: Wed Jun 15 15:08:32 2011 -0700 MAINTAINERS: add videobuf2 maintainers Add maintainers for the videobuf2 V4L2 driver framework. Signed-off-by: Pawel Osciak Acked-by: Marek Szyprowski Cc: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit be5ce2f1c93295711be4ae5565f9194ed9776ea7 Author: Uwe Kleine-König Date: Wed Jun 15 15:08:31 2011 -0700 leds: move LEDS_GPIO_REGISTER out of menuconfig NEW_LEDS Commit 4440673a95e6 ("leds: provide helper to register "leds-gpio" devices") broke the display of the NEW_LEDS menu as it didn't depend on NEW_LEDS and so made "LED drivers" and "LED Triggers" appear at the same level as "LED Support" instead of below it as it was before 4440673a. Moving LEDS_GPIO_REGISTER out of the menuconfig NEW_LEDS fixes this unintended side effect. Reported-by: Axel Lin Signed-off-by: Uwe Kleine-König Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9d8f776bfb812dd23fcdbb698e9ac4298fc3c624 Author: Axel Lin Date: Wed Jun 15 15:08:31 2011 -0700 drivers/leds/leds-asic3: make LEDS_ASIC3 depend on LEDS_CLASS We call led_classdev_unregister/led_classdev_register in asic3_led_remove/asic3_led_probe, thus make LEDS_ASIC3 depend on LEDS_CLASS. This patch fixes below build error if LEDS_CLASS is not configured. LD .tmp_vmlinux1 drivers/built-in.o: In function `asic3_led_remove': clkdev.c:(.devexit.text+0x1860): undefined reference to `led_classdev_unregister' drivers/built-in.o: In function `asic3_led_probe': clkdev.c:(.devinit.text+0xcee8): undefined reference to `led_classdev_register' make: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Axel Lin Cc: Paul Parsons Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 185e595f770219f2329e590a6be69e6e89e152af Author: Balbir Singh Date: Wed Jun 15 15:08:30 2011 -0700 MAINTAINERS: Balbir has moved Update my email address. Email will start to the old address bouncing soon Signed-off-by: Balbir Singh Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd5dc17be87b3a3073d50b23802647db3ae3fa8e Author: Josh Triplett Date: Wed Jun 15 15:08:28 2011 -0700 uts: make default hostname configurable, rather than always using "(none)" The "hostname" tool falls back to setting the hostname to "localhost" if /etc/hostname does not exist. Distribution init scripts have the same fallback. However, if userspace never calls sethostname, such as when booting with init=/bin/sh, or otherwise booting a minimal system without the usual init scripts, the default hostname of "(none)" remains, unhelpfully appearing in various places such as prompts ("root@(none):~#") and logs. Furthermore, "(none)" doesn't typically resolve to anything useful. Make the default hostname configurable. This removes the need for the standard fallback, provides a useful default for systems that never call sethostname, and makes minimal systems that much more useful with less configuration. Distributions could choose to use "localhost" here to avoid the fallback, while embedded systems may wish to use a specific target hostname. Signed-off-by: Josh Triplett Acked-by: Linus Torvalds Acked-by: David Miller Cc: Serge Hallyn Cc: Kel Modderman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ca39599c633fb02aceac31a7e67563612e4fe347 Author: Dr. David Alan Gilbert Date: Wed Jun 15 15:08:27 2011 -0700 BUILD_BUG_ON_ZERO: fix sparse breakage BUILD_BUG_ON_ZERO and BUILD_BUG_ON_NULL must return values, even in the CHECKER case otherwise various users of it become syntactically invalid. Signed-off-by: Dr. David Alan Gilbert Reviewed-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3957c7768e5ea02fd3345176ddd340f820e5d285 Author: Michal Hocko Date: Wed Jun 15 15:08:25 2011 -0700 mm: compaction: fix special case -1 order checks Commit 56de7263fcf3 ("mm: compaction: direct compact when a high-order allocation fails") introduced a check for cc->order == -1 in compact_finished. We should continue compacting in that case because the request came from userspace and there is no particular order to compact for. Similar check has been added by 82478fb7 (mm: compaction: prevent division-by-zero during user-requested compaction) for compaction_suitable. The check is, however, done after zone_watermark_ok which uses order as a right hand argument for shifts. Not only watermark check is pointless if we can break out without it but it also uses 1 << -1 which is not well defined (at least from C standard). Let's move the -1 check above zone_watermark_ok. [minchan.kim@gmail.com> - caught compaction_suitable] Signed-off-by: Michal Hocko Cc: Mel Gorman Reviewed-by: Minchan Kim Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f1a19070b16c20cdc71ed0e981bfa19f8f6a4ee Author: Steven Rostedt Date: Wed Jun 15 15:08:23 2011 -0700 mm: fix wrong kunmap_atomic() pointer Running a ktest.pl test, I hit the following bug on x86_32: ------------[ cut here ]------------ WARNING: at arch/x86/mm/highmem_32.c:81 __kunmap_atomic+0x64/0xc1() Hardware name: Modules linked in: Pid: 93, comm: sh Not tainted 2.6.39-test+ #1 Call Trace: [] warn_slowpath_common+0x7c/0x91 [] ? __kunmap_atomic+0x64/0xc1 [] ? __kunmap_atomic+0x64/0xc1^M [] warn_slowpath_null+0x22/0x24 [] __kunmap_atomic+0x64/0xc1 [] unmap_vmas+0x43a/0x4e0 [] exit_mmap+0x91/0xd2 [] mmput+0x43/0xad [] exit_mm+0x111/0x119 [] do_exit+0x1ff/0x5fa [] ? set_current_blocked+0x3c/0x40 [] ? sigprocmask+0x7e/0x8e [] do_group_exit+0x65/0x88 [] sys_exit_group+0x18/0x1c [] sysenter_do_call+0x12/0x38 ---[ end trace 8055f74ea3c0eb62 ]--- Running a ktest.pl git bisect, found the culprit: commit e303297e6c3a ("mm: extended batches for generic mmu_gather") But although this was the commit triggering the bug, it was not the one originally responsible for the bug. That was commit d16dfc550f53 ("mm: mmu_gather rework"). The code in zap_pte_range() has something that looks like the following: pte = pte_offset_map_lock(mm, pmd, addr, &ptl); do { [...] } while (pte++, addr += PAGE_SIZE, addr != end); pte_unmap_unlock(pte - 1, ptl); The pte starts off pointing at the first element in the page table directory that was returned by the pte_offset_map_lock(). When it's done with the page, pte will be pointing to anything between the next entry and the first entry of the next page inclusive. By doing a pte - 1, this puts the pte back onto the original page, which is all that pte_unmap_unlock() needs. In most archs (64 bit), this is not an issue as the pte is ignored in the pte_unmap_unlock(). But on 32 bit archs, where things may be kmapped, it is essential that the pte passed to pte_unmap_unlock() resides on the same page that was given by pte_offest_map_lock(). The problem came in d16dfc55 ("mm: mmu_gather rework") where it introduced a "break;" from the while loop. This alone did not seem to easily trigger the bug. But the modifications made by e303297e6 caused that "break;" to be hit on the first iteration, before the pte++. The pte not being incremented will now cause pte_unmap_unlock(pte - 1) to be pointing to the previous page. This will cause the wrong page to be unmapped, and also trigger the warning above. The simple solution is to just save the pointer given by pte_offset_map_lock() and use it in the unlock. Signed-off-by: Steven Rostedt Cc: Peter Zijlstra Cc: KAMEZAWA Hiroyuki Acked-by: Hugh Dickins Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4bbd61fb9726808e72ab2aa440401f6e5e1aa8f7 Author: Christian Gmeiner Date: Wed Jun 15 15:08:22 2011 -0700 drivers/misc/cs5535-mfgpt.c: fix wrong if condition Fix the wrong `if' condition for the check if the requested timer is available. The bitmap avail is used to store if a timer is used already. test_bit() is used to check if the requested timer is available. If a bit in the avail bitmap is set it means that the timer is available. The runtime effect would be that allocating a specific timer always fails (versus telling cs5535_mfgpt_alloc_timer to allocate the first available timer, which works). Signed-off-by: Christian Gmeiner Acked-by: Andres Salomon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5a1e6f75831bf1f8e596d642cd8a2512f11548fc Author: Axel Lin Date: Wed Jun 15 15:08:21 2011 -0700 drivers/misc/spear13xx_pcie_gadget.c: fix a memory leak in spear_pcie_gadget_probe error path In the case of goto err_kzalloc, we should kfree target. Signed-off-by: Axel Lin Acked-by: Pratyush Anand Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 32e45ff43eaf5c17f5a82c9ad358d515622c2562 Author: KOSAKI Motohiro Date: Wed Jun 15 15:08:20 2011 -0700 mm: increase RECLAIM_DISTANCE to 30 Recently, Robert Mueller reported (http://lkml.org/lkml/2010/9/12/236) that zone_reclaim_mode doesn't work properly on his new NUMA server (Dual Xeon E5520 + Intel S5520UR MB). He is using Cyrus IMAPd and it's built on a very traditional single-process model. * a master process which reads config files and manages the other process * multiple imapd processes, one per connection * multiple pop3d processes, one per connection * multiple lmtpd processes, one per connection * periodical "cleanup" processes. There are thousands of independent processes. The problem is, recent Intel motherboard turn on zone_reclaim_mode by default and traditional prefork model software don't work well on it. Unfortunatelly, such models are still typical even in the 21st century. We can't ignore them. This patch raises the zone_reclaim_mode threshold to 30. 30 doesn't have any specific meaning. but 20 means that one-hop QPI/Hypertransport and such relatively cheap 2-4 socket machine are often used for traditional servers as above. The intention is that these machines don't use zone_reclaim_mode. Note: ia64 and Power have arch specific RECLAIM_DISTANCE definitions. This patch doesn't change such high-end NUMA machine behavior. Dave Hansen said: : I know specifically of pieces of x86 hardware that set the information : in the BIOS to '21' *specifically* so they'll get the zone_reclaim_mode : behavior which that implies. : : They've done performance testing and run very large and scary benchmarks : to make sure that they _want_ this turned on. What this means for them : is that they'll probably be de-optimized, at least on newer versions of : the kernel. : : If you want to do this for particular systems, maybe _that_'s what we : should do. Have a list of specific configurations that need the : defaults overridden either because they're buggy, or they have an : unusual hardware configuration not really reflected in the distance : table. And later said: : The original change in the hardware tables was for the benefit of a : benchmark. Said benchmark isn't going to get run on mainline until the : next batch of enterprise distros drops, at which point the hardware where : this was done will be irrelevant for the benchmark. I'm sure any new : hardware will just set this distance to another yet arbitrary value to : make the kernel do what it wants. :) : : Also, when the hardware got _set_ to this initially, I complained. So, I : guess I'm getting my way now, with this patch. I'm cool with it. Reported-by: Robert Mueller Signed-off-by: KOSAKI Motohiro Acked-by: Christoph Lameter Acked-by: David Rientjes Reviewed-by: KAMEZAWA Hiroyuki Cc: Benjamin Herrenschmidt Cc: "Luck, Tony" Acked-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 17441227f6258fc379c6ebfe21c3eec43b6f0de3 Author: Joe Perches Date: Wed Jun 15 15:08:17 2011 -0700 checkpatch: add warning for uses of printk_ratelimit Warn about uses of printk_ratelimit() because it uses a global state and can hide subsequent useful messages. Signed-off-by: Joe Perches Cc: Andy Whitcroft Cc: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac5622418bbff9cd3dc607aa57dfb4f62a7f2043 Author: Randy Dunlap Date: Wed Jun 15 15:08:17 2011 -0700 kmsg_dump.h: fix build when CONFIG_PRINTK is disabled Fix when CONFIG_PRINTK is not enabled: include/linux/kmsg_dump.h:56: error: 'EINVAL' undeclared (first use in this function) include/linux/kmsg_dump.h:61: error: 'EINVAL' undeclared (first use in this function) Looks like commit 595dd3d8bf95 ("kmsg_dump: fix build for CONFIG_PRINTK=n") uses EINVAL without having the needed header file(s), but I'm sure that I build tested that patch also. oh well. Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 50c35e5ba255fd8428cef8ff076da8d23bfd4909 Author: Ying Han Date: Wed Jun 15 15:08:16 2011 -0700 memcg: add documentation for the memory.numastat API [akpm@linux-foundation.org: rework text, fit it into 80-cols] Signed-off-by: Ying Han Reviewed-by: KOSAKI Motohiro Acked-by: Balbir Singh Acked-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d7911ef30cb7bec52234c2b7a5c275ac8f07905a Author: KOSAKI Motohiro Date: Wed Jun 15 15:08:15 2011 -0700 vmscan: implement swap token priority aging While testing for memcg aware swap token, I observed a swap token was often grabbed an intermittent running process (eg init, auditd) and they never release a token. Why? Some processes (eg init, auditd, audispd) wake up when a process exiting. And swap token can be get first page-in process when a process exiting makes no swap token owner. Thus such above intermittent running process often get a token. And currently, swap token priority is only decreased at page fault path. Then, if the process sleep immediately after to grab swap token, the swap token priority never be decreased. That's obviously undesirable. This patch implement very poor (and lightweight) priority aging. It only be affect to the above corner case and doesn't change swap tendency workload performance (eg multi process qsbench load) Signed-off-by: KOSAKI Motohiro Reviewed-by: Rik van Riel Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 83cd81a34357a632509f7491eec81e62e71d65f7 Author: KOSAKI Motohiro Date: Wed Jun 15 15:08:14 2011 -0700 vmscan: implement swap token trace This is useful for observing swap token activity. example output: zsh-1845 [000] 598.962716: update_swap_token_priority: mm=ffff88015eaf7700 old_prio=1 new_prio=0 memtoy-1830 [001] 602.033900: update_swap_token_priority: mm=ffff880037a45880 old_prio=947 new_prio=949 memtoy-1830 [000] 602.041509: update_swap_token_priority: mm=ffff880037a45880 old_prio=949 new_prio=951 memtoy-1830 [000] 602.051959: update_swap_token_priority: mm=ffff880037a45880 old_prio=951 new_prio=953 memtoy-1830 [000] 602.052188: update_swap_token_priority: mm=ffff880037a45880 old_prio=953 new_prio=955 memtoy-1830 [001] 602.427184: put_swap_token: token_mm=ffff880037a45880 zsh-1789 [000] 602.427281: replace_swap_token: old_token_mm= (null) old_prio=0 new_token_mm=ffff88015eaf7018 new_prio=2 zsh-1789 [001] 602.433456: update_swap_token_priority: mm=ffff88015eaf7018 old_prio=2 new_prio=4 zsh-1789 [000] 602.437613: update_swap_token_priority: mm=ffff88015eaf7018 old_prio=4 new_prio=6 zsh-1789 [000] 602.443924: update_swap_token_priority: mm=ffff88015eaf7018 old_prio=6 new_prio=8 zsh-1789 [000] 602.451873: update_swap_token_priority: mm=ffff88015eaf7018 old_prio=8 new_prio=10 zsh-1789 [001] 602.462639: update_swap_token_priority: mm=ffff88015eaf7018 old_prio=10 new_prio=12 Signed-off-by: KOSAKI Motohiro Acked-by: Rik van Riel Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a433658c30974fc87ba3ff52d7e4e6299762aa3d Author: KOSAKI Motohiro Date: Wed Jun 15 15:08:13 2011 -0700 vmscan,memcg: memcg aware swap token Currently, memcg reclaim can disable swap token even if the swap token mm doesn't belong in its memory cgroup. It's slightly risky. If an admin creates very small mem-cgroup and silly guy runs contentious heavy memory pressure workload, every tasks are going to lose swap token and then system may become unresponsive. That's bad. This patch adds 'memcg' parameter into disable_swap_token(). and if the parameter doesn't match swap token, VM doesn't disable it. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Reviewed-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e1bbd19bc4afef7adb80cca163800391c4f5773d Author: Andrew Morton Date: Wed Jun 15 15:08:12 2011 -0700 drivers/video/backlight/adp8870_bl.c: add missed props.type conversion Cc: Michael Hennerich Cc: Mike Frysinger Cc: Matthew Garrett Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a59ec1e7ff98cc4365d5b1bff4e7102e86b5716b Author: Michael Hennerich Date: Wed Jun 15 15:08:11 2011 -0700 backlight: new driver for the ADP8870 backlight devices Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7f81c8890c15a10f5220bebae3b6dfae4961962a Author: Michal Hocko Date: Wed Jun 15 15:08:11 2011 -0700 fs/exec.c: use BUILD_BUG_ON for VM_STACK_FLAGS & VM_STACK_INCOMPLETE_SETUP Commit a8bef8ff6ea1 ("mm: migration: avoid race between shift_arg_pages() and rmap_walk() during migration by not migrating temporary stacks") introduced a BUG_ON() to ensure that VM_STACK_FLAGS and VM_STACK_INCOMPLETE_SETUP do not overlap. The check is a compile time one, so BUILD_BUG_ON is more appropriate. Signed-off-by: Michal Hocko Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b0825ee3a8c570df4873ee397fa453e67fdad5d7 Author: Randy Dunlap Date: Wed Jun 15 15:08:10 2011 -0700 lib/bitmap.c: fix kernel-doc notation Fix new kernel-doc warnings in lib/bitmap.c: Warning(lib/bitmap.c:596): No description found for parameter 'buf' Warning(lib/bitmap.c:596): Excess function parameter 'bp' description in '__bitmap_parselist' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0164f69d0cf1a6abbc936851f5b72ece92187cda Author: Randy Dunlap Date: Wed Jun 15 15:08:09 2011 -0700 mm/memory.c: fix kernel-doc notation Fix new kernel-doc warnings in mm/memory.c: Warning(mm/memory.c:1327): No description found for parameter 'tlb' Warning(mm/memory.c:1327): Excess function parameter 'tlbp' description in 'unmap_vmas' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f300ea499721ca208fc4714b9105bfd7e9f75be0 Author: Andrea Arcangeli Date: Wed Jun 15 15:08:08 2011 -0700 mm: remove khugepaged double thp vmstat update with CONFIG_NUMA=n Johannes noticed the vmstat update is already taken care of by khugepaged_alloc_hugepage() internally. The only places that are required to update the vmstat are the callers of alloc_hugepage (callers of khugepaged_alloc_hugepage aren't). Signed-off-by: Andrea Arcangeli Reported-by: Johannes Weiner Acked-by: Rik van Riel Reviewed-by: Minchan Kim Acked-by: Johannes Weiner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0af212ba8f123c2eba151af7726c34a50b127962 Author: Alan Stern Date: Wed Jun 15 16:27:43 2011 -0400 USB: don't let errors prevent system sleep This patch (as1464) implements the recommended policy that most errors during suspend or hibernation should not prevent the system from going to sleep. In particular, failure to suspend a USB driver or a USB device should not prevent the sleep from succeeding: Failure to suspend a device won't matter, because the device will automatically go into suspend mode when the USB bus stops carrying packets. (This might be less true for USB-3.0 devices, but let's not worry about them now.) Failure of a driver to suspend might lead to trouble later on when the system wakes up, but it isn't sufficient reason to prevent the system from going to sleep. Signed-off-by: Alan Stern CC: Signed-off-by: Greg Kroah-Hartman commit cbb330045e5df8f665ac60227ff898421fc8fb92 Author: Alan Stern Date: Wed Jun 15 16:29:16 2011 -0400 USB: don't let the hub driver prevent system sleep This patch (as1465) continues implementation of the policy that errors during suspend or hibernation should not prevent the system from going to sleep. In this case, failure to turn on the Suspend feature for a hub port shouldn't be reported as an error. There are situations where this does actually occur (such as when the device plugged into that port was disconnected in the recent past), and it turns out to be harmless. There's no reason for it to prevent a system sleep. Also, don't allow the hub driver to fail a system suspend if the downstream ports aren't all suspended. This is also harmless (and should never happen, given the change mentioned above); printing a warning message in the kernel log is all we really need to do. Signed-off-by: Alan Stern CC: Signed-off-by: Greg Kroah-Hartman commit 578333ab95f70db13951d30a9ad6b565b61639a9 Author: Alan Stern Date: Wed Jun 15 16:32:46 2011 -0400 USB: change maintainership of ohci-hcd and ehci-hcd Following the loss of David Brownell, I volunteer to maintain the ohci-hcd and ehci-hcd drivers. This patch (as1472) makes it official. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit e1cf486d881d853d710e2d86a7adfc5fd260990f Author: Alex He Date: Fri Jun 3 15:58:25 2011 +0800 xHCI 1.0: Force Stopped Event(FSE) FSE shall occur on the TD natural boundary. The software ep_ring dequeue pointer exceed the hardware ep_ring dequeue pointer in these cases of Table-3. As a result, the event_trb(pointed by hardware dequeue pointer) of the FSE can't be found in the current TD(pointed by software dequeue pointer). What should we do is to figured out the FSE case and skip over it. Signed-off-by: Alex He Signed-off-by: Sarah Sharp commit 793925334f32e9026c22baee5c3c340f47d4ef7e Author: Eric W. Biederman Date: Wed Jun 15 12:47:04 2011 -0700 proc: Fix Oops on stat of /proc//ns/net Don't call iput with the inode half setup to be a namespace filedescriptor. Instead rearrange the code so that we don't initialize ei->ns_ops until after I ns_ops->get succeeds, preventing us from invoking ns_ops->put when ns_ops->get failed. Reported-by: Ingo Saitz Signed-off-by: Eric W. Biederman commit d23336329fa4c157ed6256d4279a73b87486a1b6 Author: Sarah Sharp Date: Mon Jun 6 00:53:47 2011 -0700 xhci: Don't warn about zeroed bMaxBurst descriptor field. The USB 3.0 specification says that the bMaxBurst field in the SuperSpeed Endpoint Companion descriptor is supposed to indicate how many packets a SS device can handle before it needs to wait for an explicit handshake from the host controller. A zero value means the device can only handle one packet before it needs a handshake. Remove a warning in the xHCI driver that implies this is an invalid value. Signed-off-by: Sarah Sharp commit fccf4e86200b8f5edd9a65da26f150e32ba79808 Author: Sarah Sharp Date: Sun Jun 5 23:22:22 2011 -0700 USB: Free bandwidth when usb_disable_device is called. Tanya ran into an issue when trying to switch a UAS device from the BOT configuration to the UAS configuration via the bConfigurationValue sysfs file. Before installing the UAS configuration, set_bConfigurationValue() calls usb_disable_device(). That function is supposed to remove all host controller resources associated with that device, but it leaves some state in the xHCI host controller. Commit 0791971ba8fbc44e4f476079f856335ed45e6324 usb: allow drivers to use allocated bandwidth until unbound added a call to usb_disable_device() in usb_set_configuration(), before the xHCI bandwidth functions were invoked. That commit fixed a bug, but also introduced a bug that is triggered when a configured device is switched to a new configuration. usb_disable_device() goes through all the motions of unbinding the drivers attached to active interfaces and removing the USB core structures associated with those interfaces, but it doesn't actually remove the endpoints from the internal xHCI host controller bandwidth structures. When usb_disable_device() calls usb_disable_endpoint() with reset_hardware set to true, the entries in udev->ep_out and udev->ep_in will be set to NULL. Usually, when the USB core installs a new configuration, usb_hcd_alloc_bandwidth() will drop all non-NULL endpoints in udev->ep_out and udev->ep_in before adding any new endpoints. However, when the new UAS configuration was added, all those entries were null, so none of the old endpoints in the BOT configuration were dropped. The xHCI driver blindly added the UAS configuration endpoints, and some of the endpoint addresses overlapped with the old BOT configuration endpoints. This caused the xHCI host to reject the Configure Endpoint command. Now that the xHCI driver code is cleaned up to reject a double-add of active endpoints, we need to fix the USB core to properly drop old endpoints in usb_disable_device(). If the host controller driver needs bandwidth checking support, make usb_disable_device() call usb_disable_endpoint() with reset_hardware set to false, drop the endpoints from the xHCI host controller, and then call usb_disable_endpoint() again with reset_hardware set to true. The first call to usb_disable_endpoint() will cancel any pending URBs and wait on them to be freed in usb_hcd_disable_endpoint(), but will keep the pointers in udev->ep_out and udev->ep in intact. Then usb_hcd_alloc_bandwidth() will use those pointers to know which endpoints to drop. The final call to usb_disable_endpoint() will do two things: 1. It will call usb_hcd_disable_endpoint() again, which should be harmless since the ep->urb_list should be empty after the first call to usb_disable_endpoint() returns. 2. It will set the entries in udev->ep_out and udev->ep in to NULL, and call usb_hcd_disable_endpoint(). That call will have no effect, since the xHCI driver doesn't set the endpoint_disable function pointer. Note that usb_disable_device() will now need to be called with hcd->bandwidth_mutex held. This should be backported to kernels as old as 2.6.32. Signed-off-by: Sarah Sharp Reported-by: Tanya Brokhman Cc: ablay@codeaurora.org Cc: Alan Stern Cc: stable@kernel.org commit fa75ac379e63c2864e9049b5e8615e40f65c1e70 Author: Sarah Sharp Date: Sun Jun 5 23:10:04 2011 -0700 xhci: Reject double add of active endpoints. While trying to switch a UAS device from the BOT configuration to the UAS configuration via the bConfigurationValue file, Tanya ran into an issue in the USB core. usb_disable_device() sets entries in udev->ep_out and udev->ep_out to NULL, but doesn't call into the xHCI bandwidth management functions to remove the BOT configuration endpoints from the xHCI host's internal structures. The USB core would then attempt to add endpoints for the UAS configuration, and some of the endpoints had the same address as endpoints in the BOT configuration. The xHCI driver blindly added the endpoints again, but the xHCI host controller rejected the Configure Endpoint command because active endpoints were added without being dropped. Make the xHCI driver reject calls to xhci_add_endpoint() that attempt to add active endpoints without first calling xhci_drop_endpoint(). This should be backported to kernels as old as 2.6.31. Signed-off-by: Sarah Sharp Reported-by: Tanya Brokhman Cc: stable@kernel.org commit b2abe50688dcb470e2e46109da7e7e02245ed59b Author: Tom Goetz Date: Mon May 16 15:06:26 2011 -0400 xen: When calling power_off, don't call the halt function. .. As it won't actually power off the machine. Reported-by: Sven Köhler Tested-by: Sven Köhler Signed-off-by: Tom Goetz Signed-off-by: Konrad Rzeszutek Wilk commit 569658dddf276ceb0780776e7f5d61d9f8d8cb88 Author: Michal Marek Date: Wed Jun 15 22:15:47 2011 +0200 kbuild: Call depmod.sh via shell The script has the executable bit in git, but plain old patch(1) can't create executable files. Reported-by: Tetsuo Handa Signed-off-by: Michal Marek commit 37aa9a2eb4d9b1a4aec1fd18bb2bb6bca029de27 Author: Andy Whitcroft Date: Wed Jun 15 14:35:00 2011 +0100 perf: clear out make flags when calling kernel make kernelver When generating the perf version from the kernel version using 'make kernelver' it is necessary to clear out any MAKEFLAGS otherwise they may trigger additional output which pollute the contents. Signed-off-by: Andy Whitcroft Signed-off-by: Michal Marek commit 9e2dfdb3081edfae66a49013517e80dd8a0469fa Author: Fred Isaman Date: Wed Jun 15 14:32:02 2011 -0400 nfs4.1: mark layout as bad on error path in _pnfs_return_layout Signed-off-by: Fred Isaman Signed-off-by: Trond Myklebust commit b5328cd14557880e9eb757a8a9c8a88f1b23533a Author: Konrad Rzeszutek Wilk Date: Wed Jun 15 14:24:29 2011 -0400 xen: Fix compile warning when CONFIG_SMP is not defined. .. which is quite benign. drivers/xen/events.c:398: warning: unused variable ‘desc’ Signed-off-by: Konrad Rzeszutek Wilk commit 900cba8881b39dfbc7c8062098504ab93f5387a8 Author: Andrew Jones Date: Fri Dec 18 10:31:31 2009 +0100 xen: support CONFIG_MAXSMP The MAXSMP config option requires CPUMASK_OFFSTACK, which in turn requires we init the memory for the maps while we bring up the cpus. MAXSMP also increases NR_CPUS to 4096. This increase in size exposed an issue in the argument construction for multicalls from xen_flush_tlb_others. The args should only need space for the actual number of cpus. Also in 2.6.39 it exposes a bootup problem. BUG: unable to handle kernel NULL pointer dereference at (null) IP: [] set_cpu_sibling_map+0x123/0x30d ... Call Trace: [] ? xen_restore_fl_direct_reloc+0x4/0x4 [] xen_smp_prepare_cpus+0x36/0x135 .. CC: stable@kernel.org Signed-off-by: Andrew Jones [v2: Updated to compile on 3.0] [v3: Updated to compile when CONFIG_SMP is not defined] Signed-off-by: Konrad Rzeszutek Wilk commit 330605423ca6eafafb8dcc27502bce1c585d1b06 Author: Ilia Kolomisnky Date: Wed Jun 15 06:52:26 2011 +0300 Bluetooth: Fix L2CAP connection establishment In hci_conn_security ( which is used during L2CAP connection establishment ) test for HCI_CONN_ENCRYPT_PEND state also sets this state, which is bogus and leads to connection time-out on L2CAP sockets in certain situations (especially when using non-ssp devices ) Signed-off-by: Ilia Kolomisnky Signed-off-by: Gustavo F. Padovan commit ed0ca14021e5ae3147602128641aa7f742ab227c Author: Josef Bacik Date: Tue Jun 14 16:22:15 2011 -0400 Btrfs: set no_trans_join after trying to expand the transaction We can lockup if we try to allow new writers join the transaction and we have flushoncommit set or have a pending snapshot. This is because we set no_trans_join and then loop around and try to wait for ordered extents again. The problem is the ordered endio stuff needs to join the transaction, which it can't do because no_trans_join is set. So instead wait until after this loop to set no_trans_join and then make sure to wait for num_writers == 1 in case anybody got started in between us exiting the loop and setting no_trans_join. This could easily be reproduced by mounting -o flushoncommit and running xfstest 13. It cannot be reproduced with this patch. Thanks, Reported-by: Jim Schutt Signed-off-by: Josef Bacik commit 8351583e3f6e430ce8f71913909a96ad5cc6a2f6 Author: Josef Bacik Date: Tue Jun 14 15:16:14 2011 -0400 Btrfs: protect the pending_snapshots list with trans_lock Currently there is nothing protecting the pending_snapshots list on the transaction. We only hold the directory mutex that we are snapshotting and a read lock on the subvol_sem, so we could race with somebody else creating a snapshot in a different directory and end up with list corruption. So protect this list with the trans_lock. Thanks, Signed-off-by: Josef Bacik commit 71d7aed014457147e8f71a843d5fbf03235e4a85 Author: Josef Bacik Date: Tue Jun 14 14:24:32 2011 -0400 Btrfs: fix path leakage on subvol deletion The delayed ref patch accidently removed the btrfs_free_path in btrfs_unlink_subvol, this puts it back and means we don't leak a path. Thanks, Signed-off-by: Josef Bacik commit ea0ded748bdea78f9e2fefb571f7d6ce9edb4f89 Author: Fred Isaman Date: Wed Jun 15 12:31:02 2011 -0400 nfs4.1: prevent race that allowed use of freed layout in _pnfs_return_layout mark_matching_lsegs_invalid could put the last ref to the layout, so the get_layout_hdr needs to be called first. Signed-off-by: Fred Isaman Signed-off-by: Trond Myklebust commit 1ed3a8539af7b36aa5c977f304e80f7fc8d27bfc Author: Benny Halevy Date: Wed Jun 15 11:39:57 2011 -0400 NFSv4.1: need to put_layout_hdr on _pnfs_return_layout error path We always get a reference on the layout header and we rely on nfs4_layoutreturn_release to put it. If we hit an allocation error before starting the rpc proc we bail out early without dereferncing the layout header properly. Signed-off-by: Benny Halevy Signed-off-by: Trond Myklebust commit c7fd06228b994190d8369a2a0acf5224e4e13d1a Author: David Howells Date: Wed Jun 15 00:55:44 2011 +0100 NFS: (d)printks should use %zd for ssize_t arguments (d)printks should use %zd for ssize_t arguments not %ld, otherwise they might get a warning. I see the following with MN10300. fs/nfs/objlayout/objlayout.c: In function 'objlayout_read_done': fs/nfs/objlayout/objlayout.c:294: warning: format '%ld' expects type 'long int', but argument 3 has type 'ssize_t' Signed-off-by: David Howells cc: Trond Myklebust cc: linux-nfs@vger.kernel.org Signed-off-by: Trond Myklebust commit d771e3a43e23a37398b7e05a9d1b1036d698263c Author: Benny Halevy Date: Tue Jun 14 16:30:16 2011 -0400 NFSv4.1: fix break condition in pnfs_find_lseg The break condition to skip out of the loop got broken when cmp_layout was change. Essentially, we want to stop looking once we know no layout on the remainder of the list can match the first byte of the looked-up range. Reported-by: Peng Tao Signed-off-by: Benny Halevy Signed-off-by: Trond Myklebust commit a2e1d4f2e5ed83850de92a491ef225824cb457bd Author: Fred Isaman Date: Mon Jun 13 18:54:53 2011 -0400 nfs4.1: fix several problems with _pnfs_return_layout _pnfs_return_layout had the following problems: - it did not call pnfs_free_lseg_list on all paths - it unintentionally did a forgetful return when there was no outstanding io - it raced with concurrent LAYOUTGETS Signed-off-by: Fred Isaman Signed-off-by: Trond Myklebust commit cec765cf5891c7fc3d905832b481bfb6fd55825d Author: Andy Adamson Date: Mon Jun 13 18:36:17 2011 -0400 NFSv4.1: allow zero fh array in filelayout decode layout Signed-off-by: Andy Adamson cc:stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 533eb4611c9eea53072eb6a61d5a6393b6a77ed7 Author: Andy Adamson Date: Mon Jun 13 18:25:56 2011 -0400 NFSv4.1: allow nfs_fhget to succeed with mounted on fileid Commit 28331a46d88459788c8fca72dbb0415cd7f514c9 "Ensure we request the ordinary fileid when doing readdirplus" changed the meaning of NFS_ATTR_FATTR_FILEID which used to be set when FATTR4_WORD1_MOUNTED_ON_FILED was requested. Allow nfs_fhget to succeed with only a mounted on fileid when crossing a mountpoint or a referral. Ask for the fileid of the absent file system if mounted_on_fileid is not supported. Signed-off-by: Andy Adamson cc:stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 1d92a08da23848a38eece4df7eaa4e8ec0e6c699 Author: Trond Myklebust Date: Tue Jun 14 12:07:38 2011 -0400 NFSv4.1: Fix a refcounting issue in the pNFS device id cache When we add something to the global device id cache, we need to bump the reference count, so that the cache itself holds a reference. Signed-off-by: Trond Myklebust commit c9c30dd5f73dccaa326a54dfcf490316946aea87 Author: Benny Halevy Date: Sat Jun 11 17:08:39 2011 -0400 NFSv4.1: deprecate headerpadsz in CREATE_SESSION We don't support header padding yet so better off ditching it Reported-by: Sid Moore Signed-off-by: Benny Halevy Signed-off-by: Trond Myklebust commit 0f66b5984df2fe1617c05900a39a7ef493ca9de9 Author: Peng Tao Date: Sat Oct 16 22:07:46 2010 -0700 NFS41: do not update isize if inode needs layoutcommit nfs_update_inode will update isize if there is no queued pages. For pNFS, layoutcommit is supposed to change file size on server, the same effect as queued pages. nfs_update_inode may be called when dirty pages are written back (nfsi->npages==0) but layoutcommit is not sent, and it will change client file size according to server file size. Then client ends up losing what it just writes back in pNFS path. So we should skip updating client file size if file needs layoutcommit. Signed-off-by: Peng Tao Cc: stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 0b760113a3a155269a3fba93a409c640031dd68f Author: Trond Myklebust Date: Tue May 31 15:15:34 2011 -0400 NLM: Don't hang forever on NLM unlock requests If the NLM daemon is killed on the NFS server, we can currently end up hanging forever on an 'unlock' request, instead of aborting. Basically, if the rpcbind request fails, or the server keeps returning garbage, we really want to quit instead of retrying. Tested-by: Vasily Averin Signed-off-by: Trond Myklebust Cc: stable@kernel.org commit 9e3bd4e24e94d60d2e0762e919aab6c9a7fc0c5b Author: Weston Andros Adamson Date: Tue May 31 21:46:50 2011 -0400 NFS: fix umount of pnfs filesystems Unmounting a pnfs filesystem hangs using filelayout and possibly others. This fixes the use of the rcu protected node by making use of a new 'tmpnode' for the temporary purge list. Also, the spinlock shouldn't be held when calling synchronize_rcu(). Signed-off-by: Weston Andros Adamson Signed-off-by: Andy Adamson Signed-off-by: Trond Myklebust commit e72888e91cc902ccdc089f237b6eed7587e2b4df Author: Takashi Iwai Date: Wed Jun 15 15:14:49 2011 +0200 ALSA: lola - Fix section mismatch Add missing __devinit. Signed-off-by: Takashi Iwai commit 8fe7e94eb71430cf63a742f3c19739d82a662758 Author: Robert Richter Date: Wed Jun 1 15:31:44 2011 +0200 oprofile, x86: Fix race in nmi handler while starting counters In some rare cases, nmis are generated immediately after the nmi handler of the cpu was started. This causes the counter not to be enabled. Before enabling the nmi handlers we need to set variable ctr_running first and make sure its value is written to memory. Also, the patch makes all existing barriers a memory barrier instead of a compiler barrier only. Reported-by: Suravee Suthikulpanit Cc: # .35+ Signed-off-by: Robert Richter commit 3373b28e5af4a0b3c6cb39372581dcc1e41322ff Author: Nishant Sarmukadam Date: Mon Jun 13 16:26:15 2011 +0530 mwl8k: Tell firmware to generate CCMP header Post commit e4eefec73ea0a740bfe8736e3ac30dfe92fe392b, the stack is not generating the CCMP header for us anymore. This broke the CCMP functionality since firmware was not doing this either. Set a flag to tell the firmware to generate the CCMP header Signed-off-by: Nishant Sarmukadam Signed-off-by: John W. Linville commit a7b21165c06f28230768d203285d06cac4f18f0b Author: Yogesh Ashok Powar Date: Mon Jun 13 09:49:27 2011 +0530 mwifiex: Fixing NULL pointer dereference Following OOPS was seen when booting with card inserted BUG: unable to handle kernel NULL pointer dereference at 0000004c IP: [] cfg80211_get_drvinfo+0x21/0x115 [cfg80211] *pde = 00000000 Oops: 0000 [#1] SMP Modules linked in: iwl3945 iwl_legacy mwifiex_sdio mac80211 11 sdhci_pci sdhci pl2303 'ethtool' on the mwifiex device returned this OOPS as wiphy_dev() returned NULL. Adding missing set_wiphy_dev() call to fix the problem. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit 0da938c44921cfb690283d3b0c9c48a10375db2c Author: Steven Rostedt Date: Tue Jun 14 18:36:25 2011 -0400 sched: Check if lowest_mask is initialized in find_lowest_rq() On system boot up, the lowest_mask is initialized with an early_initcall(). But RT tasks may wake up on other early_initcall() callers before the lowest_mask is initialized, causing a system crash. Commit "d72bce0e67 rcu: Cure load woes" was the first commit to wake up RT tasks in early init. Before this commit this bug should not happen. Reported-by: Andrew Theurer Tested-by: Andrew Theurer Tested-by: Paul E. McKenney Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110614223657.824872966@goodmis.org Signed-off-by: Ingo Molnar commit 8dd0de8be31b4b966d17750a0b10df2f575c91ac Author: Hillf Danton Date: Tue Jun 14 18:36:24 2011 -0400 sched: Fix need_resched() when checking peempt The RT preempt check tests the wrong task if NEED_RESCHED is set. It currently checks the local CPU task. It is supposed to check the task that is running on the runqueue we are about to wake another task on. Signed-off-by: Hillf Danton Reviewed-by: Yong Zhang Signed-off-by: Steven Rostedt Link: http://lkml.kernel.org/r/20110614223657.450239027@goodmis.org Signed-off-by: Ingo Molnar commit 05a7929f31a0d516a9c19012bf27a1ea5058dc7a Author: Kuninori Morimoto Date: Wed Jun 15 06:16:35 2011 +0000 ARM: mach-shmobile: mackerel: tidyup usbhs driver settings - usb0 pipe is same as default. own pipe config is not needed - usb1 lost get_id function Signed-off-by: Kuninori Morimoto Acked-by: Magnus Damm Signed-off-by: Paul Mundt commit d521dd944e461371cb309c7c3568483cd2b6f5f2 Author: Guennadi Liakhovetski Date: Tue Jun 14 14:27:22 2011 +0000 fbdev: sh_mobile_hdmi: fix regression: statically enable RTPM A recent modification to the runtime PM code on mach-shmobile made a wrong RTPM implementation in the sh_mobile_hdmi driver apparent, which broke HDMI hotplug detection support on ap4evb. This patch does not implement a proper dynamic RTPM support for sh_mobile_hdmi, instead it restores the previous working state by statically enabling it. A more power-efficient solution should be implemented for the next kernel version. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit ada9c93312f7ec49514c68c211595ce2601cebae Author: Randy Dunlap Date: Tue Jun 14 15:50:11 2011 -0700 signal.c: fix kernel-doc notation Fix kernel-doc warnings in signal.c: Warning(kernel/signal.c:2374): No description found for parameter 'nset' Warning(kernel/signal.c:2374): Excess function parameter 'set' description in 'sys_rt_sigprocmask' Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 82b88bb24e28dd4fb4bec30e75412f41326130f0 Merge: 60b8b1d ded5098 Author: James Morris Date: Wed Jun 15 09:41:48 2011 +1000 Merge branch 'for-linus' of git://git.infradead.org/users/eparis/selinux into for-linus commit 09223371deac67d08ca0b70bd18787920284c967 Author: Shaohua Li Date: Tue Jun 14 13:26:25 2011 +0800 rcu: Use softirq to address performance regression Commit a26ac2455ffcf3(rcu: move TREE_RCU from softirq to kthread) introduced performance regression. In an AIM7 test, this commit degraded performance by about 40%. The commit runs rcu callbacks in a kthread instead of softirq. We observed high rate of context switch which is caused by this. Out test system has 64 CPUs and HZ is 1000, so we saw more than 64k context switch per second which is caused by RCU's per-CPU kthread. A trace showed that most of the time the RCU per-CPU kthread doesn't actually handle any callbacks, but instead just does a very small amount of work handling grace periods. This means that RCU's per-CPU kthreads are making the scheduler do quite a bit of work in order to allow a very small amount of RCU-related processing to be done. Alex Shi's analysis determined that this slowdown is due to lock contention within the scheduler. Unfortunately, as Peter Zijlstra points out, the scheduler's real-time semantics require global action, which means that this contention is inherent in real-time scheduling. (Yes, perhaps someone will come up with a workaround -- otherwise, -rt is not going to do well on large SMP systems -- but this patch will work around this issue in the meantime. And "the meantime" might well be forever.) This patch therefore re-introduces softirq processing to RCU, but only for core RCU work. RCU callbacks are still executed in kthread context, so that only a small amount of RCU work runs in softirq context in the common case. This should minimize ksoftirqd execution, allowing us to skip boosting of ksoftirqd for CONFIG_RCU_BOOST=y kernels. Signed-off-by: Shaohua Li Tested-by: "Alex,Shi" Signed-off-by: Paul E. McKenney commit 9a432736904d386cda28b987b38ba14dae960ecc Author: Paul E. McKenney Date: Mon May 30 20:38:55 2011 -0700 rcu: Simplify curing of load woes Make the functions creating the kthreads wake them up. Leverage the fact that the per-node and boost kthreads can run anywhere, thus dispensing with the need to wake them up once the incoming CPU has gone fully online. Signed-off-by: Paul E. McKenney Tested-by: Daniel J Blueman commit 357f45db920393aac983a137bd74095f612d5a01 Author: Jesper Juhl Date: Mon Jun 13 22:50:41 2011 +0200 USB: TI 3410/5052 USB Serial Driver: Fix mem leak when firmware is too big. If the size of the firmware exceeds TI_FIRMWARE_BUF_SIZE we'll leak 'fw_p' by failing to call release_firmware(). This patch fixes the leak. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 869e9e567fe6bba859e1d761250d160a9216498a Merge: 2c53b43 4858f06 Author: Greg Kroah-Hartman Date: Tue Jun 14 14:17:59 2011 -0700 Merge branch 'for-greg' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb into usb-linus * 'for-greg' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb: usb: musb: gadget: clear TXPKTRDY flag when set FLUSHFIFO usb: musb: host: compare status for negative error values commit 60b8b1de0dd2bf246f0e074d287bb3f0bc42a755 Author: Andy Whitcroft Date: Tue Jun 14 12:45:10 2011 -0700 x86 idle: APM requires pm_idle/default_idle unconditionally when a module [ Also from Ben Hutchings and Vitaliy Ivanov ] Commit 06ae40ce073d ("x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it") removed the export for pm_idle/default_idle unless the apm module was modularised and CONFIG_APM_CPU_IDLE was set. But the apm module uses pm_idle/default_idle unconditionally, CONFIG_APM_CPU_IDLE only affects the bios idle threshold. Adjust the export accordingly. [ Used #ifdef instead of #if defined() as it's shorter, and what both Ben and Vitaliy used.. Andy, you're out-voted ;) - Linus ] Reported-by: Randy Dunlap Acked-by: Jiri Kosina Acked-by: Ingo Molnar Acked-by: Len Brown Signed-off-by: Andy Whitcroft Signed-off-by: Vitaliy Ivanov Signed-off-by: Ben Hutchings Signed-off-by: Linus Torvalds commit 3a2289a4a317e0290a8bc7af28c62c9830cb12e5 Merge: ca54320 734c3ce Author: Linus Torvalds Date: Tue Jun 14 11:28:54 2011 -0700 Merge branch 'for-linus-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu * 'for-linus-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: m68k: use kernel processor defines for conditional optimizations m68knommu: create config options for CPU classes m68knommu: fix linker script exported name sections commit ca5432010e45d7f809b441b0c1e85e84b039cd85 Merge: 4068b00 4e78c72 Author: Linus Torvalds Date: Tue Jun 14 11:28:38 2011 -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: TOMOYO: Fix oops in tomoyo_mount_acl(). commit 4068b00e9d0542653b26c04dcf05ab0c80bbbbb2 Merge: f39e8409 ff71db2f Author: Linus Torvalds Date: Tue Jun 14 11:25:56 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/avr32-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/avr32-2.6: avr32, exec: remove redundant set_fs(USER_DS) avr32: make intc_resume() return void to conform to syscore_ops avr32: add some more at91 to cpu.h definition avr32: set CONFIG_CC_OPTIMIZE_FOR_SIZE=y for all defconfigs avr32/at32ap: fix mapping of platform device id for USART avr32: fix use of non-existing portnr variable in at32_map_usart() commit f39e8409955fad210a9a7169cc53c4c18daaef3a Merge: 6211b3e 66aa696 Author: Linus Torvalds Date: Tue Jun 14 11:25:32 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm: Compare only lower 32 bits of framebuffer map offsets drm/i915: Don't leak in i915_gem_shmem_pread_slow() drm/radeon/kms: do bounds checking for 3D_LOAD_VBPNTR and bump array limit drm/radeon/kms: fix mac g5 quirk x86/uv/x2apic: update for change in pci bridge handling. alpha, drm: Remove obsolete Alpha support in MGA DRM code alpha/drm: Cleanup Alpha support in DRM generic code savage: remove unnecessary if statement drm/radeon: fix GUI idle IH debug statements drm/radeon/kms: check modes against max pixel clock drm: fix fbs in DRM_IOCTL_MODE_GETRESOURCES ioctl commit 6211b3e1bba952fcd16d477b5dafb1904bac0e48 Merge: 81eb3dd 1252b30 Author: Linus Torvalds Date: Tue Jun 14 11:24:40 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] update cifs version to 1.73 [CIFS] trivial cleanup fscache cFYI and cERROR messages cifs: correctly handle NULL tcon pointer in CIFSTCon cifs: show sec= option in /proc/mounts cifs: don't allow cifs_reconnect to exit with NULL socket pointer CIFS: Fix sparse error commit 81eb3dd8438802138ac9ce12428632f35562c060 Merge: 3e483f4 fcde907 Author: Linus Torvalds Date: Tue Jun 14 11:21:21 2011 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: md/raid5: remove unusual use of bio_iovec_idx() md/raid5: fix FUA request handling in ops_run_io() md/raid5: fix raid5_set_bi_hw_segments md:Documentation/md.txt - fix typo md/bitmap: remove unused fields from struct bitmap md/bitmap: use proper accessor macro md: check ->hot_remove_disk when removing disk md: Using poll /proc/mdstat can monitor the events of adding a spare disks MD: use is_power_of_2 macro MD: raid5 do not set fullsync MD: support initial bitmap creation in-kernel MD: add sync_super to mddev_t struct MD: raid1 changes to allow use by device mapper MD: move thread wakeups into resume MD: possible typo MD: no sync IO while suspended MD: no integrity register if no gendisk commit 3e483f46756d9318fb0c59b01d5c8a26c2191d15 Merge: 2c53b43 13f0675 Author: Linus Torvalds Date: Tue Jun 14 11:19:27 2011 -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] Remove cpufreq_stats sysfs entries on module unload. MAINTAINERS: Update CPU FREQUENCY patterns commit df3c3931ec58cca3409c71b18ad6da0cd71fe163 Author: Johan Hedberg Date: Tue Jun 14 12:48:19 2011 +0300 Bluetooth: Fix accepting connect requests for defer_setup When authentication completes we shouldn't blindly accept any pending L2CAP connect requests. If the socket has the defer_setup feature enabled it should still wait for user space acceptance of the connect request. The issue only happens for non-SSP connections since with SSP the L2CAP Connect request may not be sent for non-SDP PSMs before authentication has completed successfully. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit ded509880f6a0213b09f8ae7bef84acb16eaccbf Author: Roy.Li Date: Fri May 20 10:38:06 2011 +0800 SELinux: skip file_name_trans_write() when policy downgraded. When policy version is less than POLICYDB_VERSION_FILENAME_TRANS, skip file_name_trans_write(). Signed-off-by: Roy.Li Signed-off-by: Eric Paris commit 1252b3013b790c77e1c4f077a40542f86df37fb4 Author: Steve French Date: Tue Jun 14 16:19:54 2011 +0000 [CIFS] update cifs version to 1.73 Signed-off-by: Steve French commit c46a131c0c0f4c2457e6b1e430c578a5cb057334 Author: Al Viro Date: Sun Jun 5 11:12:31 2011 +0000 xfs: fix ->mknod() return value on xfs_get_acl() failure ->mknod() should return negative on errors and PTR_ERR() gives already negative value... Signed-off-by: Al Viro Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 040d15c86747cf44fcf6b8ee19d805d4ef20caf3 Author: Steve French Date: Tue Jun 14 15:51:18 2011 +0000 [CIFS] trivial cleanup fscache cFYI and cERROR messages ... for uniformity and cleaner debug logs. Signed-off-by: Suresh Jayaraman Signed-off-by: Steve French commit b8ce9fb8e18af7466e0b915bb5979322cdace322 Merge: c8e0bf9 e9e35c5 Author: Tony Lindgren Date: Tue Jun 14 05:53:42 2011 -0700 Merge branch 'fixes-v3.0-rc3' into devel-fixes commit e9e35c5a2b2c803b5e2f25906d8ffe110670ceb6 Author: Kevin Hilman Date: Tue Jun 14 05:53:18 2011 -0700 OMAP1: PM: register notifiers with generic clock ops even when !PM_RUNTIME When runtime PM is disabled, device clocks need to be enabled on device add and disabled on device remove. This currently is not happening because in the !PM_RUNTIME case, no notifiers are registered for OMAP1 devices. Fix this by ensuring notifiers are registered, even in the !PM_RUNTIME case. Reported-by: Janusz Krzysztofik Tested-by: Janusz Krzysztofik Signed-off-by: Kevin Hilman Signed-off-by: Tony Lindgren commit ff71db2f0784cfff38fa7b55908867a24ccc3216 Author: Mathias Krause Date: Fri Jun 10 15:09:05 2011 +0200 avr32, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so this set_fs(USER_DS) is redundant. Signed-off-by: Mathias Krause Signed-off-by: Hans-Christian Egtvedt commit c162755491f7ca9853cb9f2aaa3ff3677c1bda78 Author: Hans-Christian Egtvedt Date: Mon Jun 6 18:19:20 2011 +0200 avr32: make intc_resume() return void to conform to syscore_ops This patch removes the unneeded, and now wrong, return 0 from intc_resume() and lets the function return void instead. This matches the resume callback in struct syscore_ops. Signed-off-by: Hans-Christian Egtvedt commit 3000f0077a5745918830f40826c23fe5bf934b8b Author: Nicolas Ferre Date: Sun May 15 00:23:32 2011 +0200 avr32: add some more at91 to cpu.h definition Somme common drivers will need those at91 cpu_is_xxx() definitions. Those definitions are already in Linus' tree so if we want to use them in common drivers, we will need them in AVR32 cpu.h file. Signed-off-by: Nicolas Ferre Acked-by: Hans-Christian Egtvedt commit a527a1453dd6dd89f07f1e5b2d24fc6559922461 Author: Hans-Christian Egtvedt Date: Wed Jun 1 15:10:49 2011 +0200 avr32: set CONFIG_CC_OPTIMIZE_FOR_SIZE=y for all defconfigs This patch makes sure the kconfig option CC_OPTIMIZE_FOR_SIZE is set to yes for all default configuration files. This ensures the kernel is optimized for size, and avoids potential relocation truncated to fit problems. Signed-off-by: Hans-Christian Egtvedt commit 4137b31566fd112c8e2d9d4701de5e7a000bcc2d Author: Hans-Christian Egtvedt Date: Wed Jun 8 10:47:25 2011 +0200 avr32/at32ap: fix mapping of platform device id for USART This patch will fix the mapping of the platform device id when mapping USART peripheral ID to UART platform device id. Not setting the platform device id will in most cases (when you map USART > 0 to UART 0) make the console not available. Signed-off-by: Hans-Christian Egtvedt commit 7bbf1d46b28455aed6aa6df772b91d51408c6c81 Author: Hans-Christian Egtvedt Date: Wed Jun 1 11:08:01 2011 +0200 avr32: fix use of non-existing portnr variable in at32_map_usart() This patch fixes the use of the non-existing portnr variable in at32_map_usart() to use the provided line number instead. Typo was introduced in commit 2b348e2f82f532e3aff8e0ce9293033b3294c1e0. Signed-off-by: Hans-Christian Egtvedt commit 1123d93963cbd2546449d4d9f0c568e323cb0ac6 Author: Max Asbock Date: Mon Jun 13 10:18:32 2011 -0700 timerfd: Fix wakeup of processes when timer is cancelled on clock change Currently processes waiting with poll on cancelable timerfd timers are not woken up when the timers are canceled. When the system time is set the clock_was_set() function calls timerfd_clock_was_set() to cancel and wake up processes waiting on potential cancelable timerfd timers. However the wake up currently has no effect because in the case of timerfd_read it is dependent on ctx->ticks not being 0. timerfd_poll also requires ctx->ticks being non zero. As a consequence processes waiting on cancelable timers only get woken up when the timers expire. This patch fixes this by incrementing ctx->ticks before calling wake_up. Signed-off-by: Max Asbock Cc: kay.sievers@vrfy.org Cc: virtuoso@slind.org Cc: johnstul Link: http://lkml.kernel.org/r/1307985512.4710.41.camel@w-amax.beaverton.ibm.com Signed-off-by: Thomas Gleixner commit d64c132ffe04c0941d3008f178f8cca157dd7f16 Author: Geert Uytterhoeven Date: Mon Jun 13 18:12:58 2011 +0000 fbdev/atyfb: Fix 2 defined-but-not-used warnings If CONFIG_FB_ATY_BACKLIGHT=y but CONFIG_PCI=n: drivers/video/aty/atyfb_base.c:2272: warning: ‘aty_bl_exit’ defined but not used If CONFIG_ATARI=y for a modular build: drivers/video/aty/atyfb_base.c:2794: warning: ‘store_video_par’ defined but not used Signed-off-by: Geert Uytterhoeven Signed-off-by: Paul Mundt commit e6b8480cdf27953c3d13e6e34dd075f8287b02f0 Author: Wanlong Gao Date: Sun Jun 12 10:52:33 2011 +0000 efifb: Fix call to wrong unregister function platform_device_unregister() needs to unregister the device, not the driver. Signed-off-by: Wanlong Gao Signed-off-by: Maarten Lankhorst Acked-by: Andy Lutomirski Signed-off-by: Paul Mundt commit 201fbceb258650157fcc4fd746abcdd3a571eada Author: Mathias Krause Date: Fri Jun 10 13:10:48 2011 +0000 sh, exec: remove redundant set_fs(USER_DS) The address limit is already set in flush_old_exec() so those calls to set_fs(USER_DS) are redundant. Signed-off-by: Mathias Krause Signed-off-by: Paul Mundt commit 9aa7719e0c6a1580451900e672744752804f8f75 Merge: 583af25 2c53b43 Author: Paul Mundt Date: Tue Jun 14 15:15:49 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into sh-fixes-for-linus commit 583af252ab07cd1e8721878463da5b7016c18fdc Author: Magnus Damm Date: Mon Jun 13 04:42:15 2011 +0000 drivers: sh: resume enabled clocks fix Extend the SH / SH-Mobile ARM clock framework to only resume clocks that have been enabled. Without this fix divide-by-zero is triggering on sh7372 FSIDIV during system wide resume of Suspend-to-RAM. Signed-off-by: Magnus Damm Reviewed-by: Simon Horman Signed-off-by: Paul Mundt commit ca2585afa013ec2cf99a48e46d6b82df2e240493 Author: Takashi Iwai Date: Tue Jun 14 08:14:32 2011 +0200 ALSA: hda - Fix missing static inline to beep dummy function The commit 2308f4add3de9f6c9c9f02e49461e94d84bb200a missed static inline thus it resulted in multiple-definitions error at linking. Signed-off-by: Takashi Iwai commit 311057250e87f7470ccca8bd68bf9e67f6b6db09 Author: Paul Mundt Date: Tue Jun 14 15:07:06 2011 +0900 ARM: mach-shmobile: Correct SCIF port types for SH7367. While SH7377 and others were updated to properly use SCIFA/B port types, SH7367 was left behind. Fix it up accordingly. Signed-off-by: Paul Mundt commit 485b2ab55477f46cd1f7d16ba9f87cd074051811 Author: Magnus Damm Date: Thu Jun 9 06:20:03 2011 +0000 ARM: mach-shmobile: sh73a0 gic_arch_extn.irq_set_wake() fix Initialize ->irq_set_wake() in gic_arch_extn to unbreak wake up from the KEYSC device on AG5EVM in case of Suspend-to-RAM. Without this patch "echo mem > /sys/power/state" and a key press results in the following message on resume: WARNING: at kernel/irq/manage.c:507 irq_set_irq_wake+0x7c/0xd8() Unbalanced IRQ 103 wake disable Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit e2a53b7c5bcfb63114c02c32117ed62eae463dc2 Author: Magnus Damm Date: Thu Jun 9 07:03:37 2011 +0000 ARM: mach-shmobile: Mackerel USB platform data update This patch updates the board specific USB support code for the sh7372 Mackerel board. With this patch applied port CN22 is driven by the recently added renesas_usbhs driver using the first USB controller included in sh7372 aka USBHS0. Hotplugging of USBHS0 unfortunately has to be handled by software polling. The sh7372 SoC itself obviously supports hotplug notification by IRQ but on the Mackerel board this IRQ happens to be used for the touch screen. Also fix the pinmux configuration to avoid setting up unused pins and fix minor spelling errors. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 5294206053f9ab522fbd6bfde1cf7629dc564d5e Author: Magnus Damm Date: Thu Jun 9 09:02:25 2011 +0000 ARM: mach-shmobile: AG5EVM SDHI1 platform data update Add a flag for SDHI1 to enable SDIO IRQ, and remove DMA Engine slave id:s to disable DMA as a workaround. Tested on sh73a0/AG5EVM with a BCM4318-based SDIO card. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit dcee0bb713d0ba0d32c5ce6fe0c5aa22e6fc274a Author: Magnus Damm Date: Thu Jun 9 06:35:08 2011 +0000 dmaengine: shdma: SH_DMAC_MAX_CHANNELS message fix Fix the recently added SH_DMAC_MAX_CHANNELS handling code in 300e5f9 dmaengine: shdma: Fix SH_DMAC_MAX_CHANNELS handling Without this fix the shdma driver outputs silly messages in case SH_DMAC_MAX_CHANNELS happens to match the platform data: sh-dma-engine sh-dma-engine.0: Attempting to register 20 DMA channels when a max imum of 20 are supported. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 37f7ec38ea5c31180461f82e895e13fdd549b595 Author: Jesper Juhl Date: Mon Jun 13 23:52:02 2011 +0200 ALSA: 6fire: Fix double-free bug in usb6fire_fw_ezusb_upload() We have a double-free bug in sound/usb/6fire/firmware.c::usb6fire_fw_ezusb_upload(). We already call release_firmware(fw) on line 258, so when we then do it again after usb6fire_fw_ezusb_write() returns <0, we have a double-free. Easily fixed by just removing the last call to release_firmware(). Signed-off-by: Jesper Juhl Signed-off-by: Takashi Iwai commit 4e78c724d47e2342aa8fde61f6b8536f662f795f Author: Tetsuo Handa Date: Mon Jun 13 13:49:11 2011 +0900 TOMOYO: Fix oops in tomoyo_mount_acl(). In tomoyo_mount_acl() since 2.6.36, kern_path() was called without checking dev_name != NULL. As a result, an unprivileged user can trigger oops by issuing mount(NULL, "/", "ext3", 0, NULL) request. Fix this by checking dev_name != NULL before calling kern_path(dev_name). Signed-off-by: Tetsuo Handa Cc: stable@kernel.org Signed-off-by: James Morris commit fcde90759a985d8bfa4391346a821cc12fc16207 Author: Namhyung Kim Date: Tue Jun 14 14:23:57 2011 +1000 md/raid5: remove unusual use of bio_iovec_idx() In the bio_for_each_segment loop, bvl always points current bio_vec, so the same as bio_iovec_idx(, i). Let's get rid of it. Cc: Dan Williams Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit b062962edb086011e94ec4d9eb3f6a6d814f2a8f Author: Namhyung Kim Date: Tue Jun 14 14:20:19 2011 +1000 md/raid5: fix FUA request handling in ops_run_io() Commit e9c7469bb4f5 ("md: implment REQ_FLUSH/FUA support") introduced R5_WantFUA flag and set rw to WRITE_FUA in that case. However remaining code still checks whether rw is exactly same as WRITE or not, so FUAed-write ends up with being treated as READ. Fix it. This bug has been present since 2.6.37 and the fix is suitable for any -stable kernel since then. It is not clear why this has not caused more problems. Cc: Tejun Heo Cc: stable@kernel.org Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 9b2dc8b665932a8e681a7ab3237f60475e75e161 Author: Namhyung Kim Date: Mon Jun 13 14:48:22 2011 +0900 md/raid5: fix raid5_set_bi_hw_segments The @bio->bi_phys_segments consists of active stripes count in the lower 16 bits and processed stripes count in the upper 16 bits. So logical-OR operator should be bitwise one. This bug has been present since 2.6.27 and the fix is suitable for any -stable kernel since then. Fortunately the bad code is only used on error paths and is relatively unlikely to be hit. Cc: stable@kernel.org Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 734c3ce3bd4d51c932893b9f6d32b9ded31acdff Author: Greg Ungerer Date: Thu Jun 2 16:07:33 2011 +1000 m68k: use kernel processor defines for conditional optimizations Older m68k-linux compilers will include pre-defined symbols that confuse what processor it is being targeted for. For example gcc-4.1.2 will pre-define __mc68020__ even if you specify the target processor as -m68000 on the gcc command line. Newer versions of gcc have this corrected. In a few places the m68k code uses defined(__mc68020__) for optimizations that include instructions that are specific to the CPU 68020 and above. When compiling with older compilers this will be true even when we have selected to compile for the older 68000 processors. Switch to using the kernel processor defines, CONFIG_M68020 and friends. Signed-off-by: Greg Ungerer commit 62356725987fa44bbebeb656b2a0d8c803e32ef2 Author: Greg Ungerer Date: Thu Jun 2 15:50:48 2011 +1000 m68knommu: create config options for CPU classes There are 3 families of CPU core types that we support in the m68knommu architecture branch. They are . traditional 68000 . CPU32 (a 68020 core derivative without MMU or bitfield instructions) . ColdFire It will be useful going forward to have a CONFIG_ option defined for each type. We already have one for ColdFire (CONFIG_COLDFIRE), so add for the other 2 families, CONFIG_M68000 and CONFIG_MCPU32. Signed-off-by: Greg Ungerer commit dab104a73694b06fe4a162cb39d678716da62a67 Author: Greg Ungerer Date: Thu Jun 2 14:09:32 2011 +1000 m68knommu: fix linker script exported name sections The recent commit titled "module: Sort exported symbols" (f02e8a65) changed the exported symbol name sections. Bring the m68knommu linker script into line with those changes - including the sorting of the symbol names. Signed-off-by: Greg Ungerer commit 66aa6962ff520804f9874e57ea97995153f499d8 Author: Tormod Volden Date: Mon May 30 19:45:43 2011 +0000 drm: Compare only lower 32 bits of framebuffer map offsets Drivers using multiple framebuffers got broken by commit 41c2e75e60200a860a74b7c84a6375c105e7437f which ignored the framebuffer (or register) map offset when looking for existing maps. The rationale was that the kernel-userspace ABI is fixed at a 32-bit offset, so the real offsets could not always be handed over for comparison. Instead of ignoring the offset we will compare the lower 32 bit. Drivers using multiple framebuffers should just make sure that the lower 32 bit are different. The existing drivers in question are practically limited to 32-bit systems so that should be fine for them. It is assumed that current drivers always specify a correct framebuffer map offset, even if this offset was ignored since above commit. So this patch should not change anything for drivers using only one framebuffer. Drivers needing multiple framebuffers with 64-bit map offsets will need to cook up something, for instance keeping an ID in the lower bit which is to be aligned away when it comes to using the offset. All of above applies to _DRM_REGISTERS as well. Signed-off-by: Tormod Volden Signed-off-by: Dave Airlie commit b65552f06ca866f587a0a50d1f4dbdd3a00ec532 Author: Jesper Juhl Date: Sun Jun 12 20:53:44 2011 +0000 drm/i915: Don't leak in i915_gem_shmem_pread_slow() It seems to me that we are leaking 'user_pages' in drivers/gpu/drm/i915/i915_gem.c::i915_gem_shmem_pread_slow() if read_cache_page_gfp() fails. Signed-off-by: Jesper Juhl Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit a27bb4b209dd6c327fa4e7185f2487f9508a58db Author: Marek Olšák Date: Fri Jun 10 14:41:26 2011 +0000 drm/radeon/kms: do bounds checking for 3D_LOAD_VBPNTR and bump array limit To my knowledge, the limit is 16 on r300. (the docs don't say what the limit is) The lack of bounds checking can be abused to do all sorts of things (from bypassing parts of the CS checker to crashing the kernel). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36745 Cc: stable@kernel.org Signed-off-by: Marek Olšák Signed-off-by: Dave Airlie commit ab21e60beaa96f2c55604f633dfe74076c531df7 Author: Alex Deucher Date: Mon Jun 6 12:53:30 2011 -0400 drm/radeon/kms: fix mac g5 quirk Apple uses the same subsystem pci ids for lots of hardware much of which is wired up differently. In this case, the G5 imac and the G5 tower. Only apply the quirk configuration to G5 towers. Reported-by: Joachim Henke Signed-off-by: Alex Deucher Cc: Joachim Henke Cc: Michel Dänzer Signed-off-by: Dave Airlie commit 7ad35cf288fd63a19bf50e490440a992de808b2b Author: Dave Airlie Date: Wed May 25 14:00:49 2011 +1000 x86/uv/x2apic: update for change in pci bridge handling. When I added 3448a19da479b6bd1e28e2a2be9fa16c6a6feb39 I forgot about the special uv handling code for this, so this patch fixes it up. Acked-by: Jesse Barnes Acked-by: Ingo Molnar Signed-off-by: Dave Airlie commit 83533c132a55aac735028f6fb9b956e8c078db1f Author: Jay Estabrook Date: Thu Jun 9 18:19:12 2011 -0400 alpha, drm: Remove obsolete Alpha support in MGA DRM code Remove an obsolete Alpha adjustment in the drm for MGA on Alpha. Signed-off-by: Jay Estabrook Tested-by: Matt Turner Signed-off-by: Dave Airlie commit 82ba3fef67829813d0ed4c45231235084a07f081 Author: Jay Estabrook Date: Thu Jun 9 18:18:39 2011 -0400 alpha/drm: Cleanup Alpha support in DRM generic code Remove an obsolete Alpha adjustment, and modify another, to go with the current Alpha architecture support. Signed-off-by: Jay Estabrook Tested-by: Matt Turner Signed-off-by: Dave Airlie commit 96bf8bd1c953c3b9d89eac9f13dfdbf5e580060f Author: Greg Dietsche Date: Mon Jun 13 09:40:38 2011 -0500 savage: remove unnecessary if statement the code always returns ret regardless, so if(ret) check is unnecessary. v2: fixed up the spelling. Signed-off-by: Greg Dietsche Reviewed-by: Nicolas Kaiser Signed-off-by: Dave Airlie commit d7f124f129a6aea99938e0d4172c741b56fefeda Author: Sage Weil Date: Mon Jun 13 16:22:18 2011 -0700 ceph: fix sync and dio writes across stripe boundaries We were iterating across stripe boundaries properly, but not moving the write buffer pointer forward. This caused us to rewrite the same data after the break. Fix by adjusting the data pointer forward, and recalculating the io and buffer alignment after the break. Signed-off-by: Sage Weil commit 9bb0ce2b0b734f3325ea5cd6b351856eeac94f78 Author: Sage Weil Date: Mon Jun 13 16:20:18 2011 -0700 libceph: fix page calculation for non-page-aligned io Set the page count correctly for non-page-aligned IO. We were already doing this correctly for alignment, but not the page count. Fixes DIRECT_IO writes from unaligned pages. Signed-off-by: Sage Weil commit 773e9b442693b250aa6c452cb0cf5a9343f51cef Author: Sage Weil Date: Tue Jun 7 20:57:14 2011 -0700 ceph: fix page alignment corrections dd if=/dev/urandom of=/mnt/fs_depot/dd10 bs=500 seek=8388 count=1 dd if=/mnt/fs_depot/dd10 of=/root/dd10out bs=500 skip=8388 count=1 Reported-by: Henry C Chang Signed-off-by: Sage Weil commit 9281b2a2e2e02ad4bcc2fdd11797709b815d5f8e Author: Geert Uytterhoeven Date: Mon Jun 13 08:17:36 2011 +0000 net/hplance: hplance_init() should be __devinit WARNING: vmlinux.o(.devinit.text+0x253e): Section mismatch in reference from the function hplance_init_one() to the function .init.text:hplance_init() The forward declaration had the correct attribute, but the actual function definition hadn't. Signed-off-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 2c53b436a30867eb6b47dd7bab23ba638d1fb0d2 Author: Linus Torvalds Date: Mon Jun 13 15:29:59 2011 -0700 Linux 3.0-rc3 commit 1ffde03d2aa112750468cff07efc9e0a504517dd Author: Ondrej Zary Date: Sun Jun 12 09:40:49 2011 +0000 3c503: fix broken IRQ autoprobing Fix broken IRQ autoprobing in 3c503 driver: - improper IRQ freeing (does not free IRQs causes WARN) - missing break when an working IRQ is found The driver works with this patch. Signed-off-by: Ondrej Zary Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit b9cabe52c27cf834137f3aaa46da23bcf32284e8 Author: Jesper Juhl Date: Sun Jun 12 04:28:16 2011 +0000 ieee802154: Don't leak memory in ieee802154_nl_fill_phy In net/ieee802154/nl-phy.c::ieee802154_nl_fill_phy() I see two small issues. 1) If the allocation of 'buf' fails we may just as well return -EMSGSIZE directly rather than jumping to 'out:' and do a pointless kfree(0). 2) We do not free 'buf' unless we jump to one of the error labels and this leaks memory. This patch should address both. Signed-off-by: Jesper Juhl Acked-by: Dmitry Eremin-Solenikov Signed-off-by: David S. Miller commit 8d1bca328b7c17af33bcf966d799c556ecbf370f Author: Jeff Layton Date: Sat Jun 11 21:17:10 2011 -0400 cifs: correctly handle NULL tcon pointer in CIFSTCon Long ago (in commit 00e485b0), I added some code to handle share-level passwords in CIFSTCon. That code ignored the fact that it's legit to pass in a NULL tcon pointer when connecting to the IPC$ share on the server. This wasn't really a problem until recently as we only called CIFSTCon this way when the server returned -EREMOTE. With the introduction of commit c1508ca2 however, it gets called this way on every mount, causing an oops when share-level security is in effect. Fix this by simply treating a NULL tcon pointer as if user-level security were in effect. I'm not aware of any servers that protect the IPC$ share with a specific password anyway. Also, add a comment to the top of CIFSTCon to ensure that we don't make the same mistake again. Cc: Reported-by: Martijn Uffing Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 3e715513643f0207c8f3c22010b54954cd697474 Author: Jeff Layton Date: Mon Jun 13 11:50:41 2011 -0400 cifs: show sec= option in /proc/mounts Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 7fdbaa1b8daa1009b705985b903e3d2ebccad456 Author: Jeff Layton Date: Fri Jun 10 16:14:57 2011 -0400 cifs: don't allow cifs_reconnect to exit with NULL socket pointer It's possible for the following set of events to happen: cifsd calls cifs_reconnect which reconnects the socket. A userspace process then calls cifs_negotiate_protocol to handle the NEGOTIATE and gets a reply. But, while processing the reply, cifsd calls cifs_reconnect again. Eventually the GlobalMid_Lock is dropped and the reply from the earlier NEGOTIATE completes and the tcpStatus is set to CifsGood. cifs_reconnect then goes through and closes the socket and sets the pointer to zero, but because the status is now CifsGood, the new socket is not created and cifs_reconnect exits with the socket pointer set to NULL. Fix this by only setting the tcpStatus to CifsGood if the tcpStatus is CifsNeedNegotiate, and by making sure that generic_ip_connect is always called at least once in cifs_reconnect. Note that this is not a perfect fix for this issue. It's still possible that the NEGOTIATE reply is handled after the socket has been closed and reconnected. In that case, the socket state will look correct but it no NEGOTIATE was performed on it be for the wrong socket. In that situation though the server should just shut down the socket on the next attempted send, rather than causing the oops that occurs today. Cc: # .38.x: fd88ce9: [CIFS] cifs: clarify the meaning of tcpStatus == CifsGood Reported-and-Tested-by: Ben Greear Signed-off-by: Jeff Layton Signed-off-by: Steve French commit cd51875d53ae1459a2b09b4338166a218c0635a7 Author: Pavel Shilovsky Date: Thu Jun 9 12:58:53 2011 +0400 CIFS: Fix sparse error cifs_sb_master_tlink was declared as inline, but without a definition. Remove the declaration and move the definition up. Signed-off-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 40779859de0f73b40390c6401a024d06cf024290 Merge: ffdb8f1 a947eb9 Author: Linus Torvalds Date: Mon Jun 13 13:00:53 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: SLAB: Record actual last user of freed objects. slub: always align cpu_slab to honor cmpxchg_double requirement commit de1b794130b130e77ffa975bb58cb843744f9ae5 Author: Jan Kara Date: Mon Jun 13 15:38:22 2011 -0400 jbd2: Fix oops in jbd2_journal_remove_journal_head() jbd2_journal_remove_journal_head() can oops when trying to access journal_head returned by bh2jh(). This is caused for example by the following race: TASK1 TASK2 jbd2_journal_commit_transaction() ... processing t_forget list __jbd2_journal_refile_buffer(jh); if (!jh->b_transaction) { jbd_unlock_bh_state(bh); jbd2_journal_try_to_free_buffers() jbd2_journal_grab_journal_head(bh) jbd_lock_bh_state(bh) __journal_try_to_free_buffer() jbd2_journal_put_journal_head(jh) jbd2_journal_remove_journal_head(bh); jbd2_journal_put_journal_head() in TASK2 sees that b_jcount == 0 and buffer is not part of any transaction and thus frees journal_head before TASK1 gets to doing so. Note that even buffer_head can be released by try_to_free_buffers() after jbd2_journal_put_journal_head() which adds even larger opportunity for oops (but I didn't see this happen in reality). Fix the problem by making transactions hold their own journal_head reference (in b_jcount). That way we don't have to remove journal_head explicitely via jbd2_journal_remove_journal_head() and instead just remove journal_head when b_jcount drops to zero. The result of this is that [__]jbd2_journal_refile_buffer(), [__]jbd2_journal_unfile_buffer(), and __jdb2_journal_remove_checkpoint() can free journal_head which needs modification of a few callers. Also we have to be careful because once journal_head is removed, buffer_head might be freed as well. So we have to get our own buffer_head reference where it matters. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit ffdb8f1bfbd9cef1394f5d3c4a774015d4ac0f97 Merge: 80dadf8 0c1f91f Author: Linus Torvalds Date: Mon Jun 13 11:21:50 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: ceph: unwind canceled flock state ceph: fix ENOENT logic in striped_read ceph: fix short sync reads from the OSD ceph: fix sync vs canceled write ceph: use ihold when we already have an inode ref commit e9c039052be59753e6bcc7c8b59763899dc1161c Author: Mark Brown Date: Mon Jun 13 19:05:58 2011 +0100 ASoC: Remove unused and about to be broken SND_SOC_CUSTOM I/O bus This will be removed in -next so let's drop it from mainline as soon as we can in order to minimise surprises. Signed-off-by: Mark Brown commit 80dadf86d607bc5f25cc384ac590ef8b49ae523a Merge: c78a9b9 f6509b5 Author: Linus Torvalds Date: Mon Jun 13 10:47:04 2011 -0700 Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rtc: Staticize non-exported __rtc_set_alarm() rtc: Fix ioctl error path return ptp: Fix some locking bugs in ptp_read() ptp: Return -EFAULT on copy_to_user() errors commit c78a9b9b8e36b8de302eddbe7a1688af3d9650ff Merge: 842c895 5f12713 Author: Linus Torvalds Date: Mon Jun 13 10:45:49 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: ftrace: Revert 8ab2b7efd ftrace: Remove unnecessary disabling of irqs kprobes/trace: Fix kprobe selftest for gcc 4.6 ftrace: Fix possible undefined return code oprofile, dcookies: Fix possible circular locking dependency oprofile: Fix locking dependency in sync_start() oprofile: Free potentially owned tasks in case of errors oprofile, x86: Add comments to IBS LVT offset initialization commit 842c895d140a75e5d67fa346213deb3ca2b460f8 Merge: 562d1ff 977cb76 13863a6 Author: Linus Torvalds Date: Mon Jun 13 10:45:10 2011 -0700 Merge branches 'x86-urgent-for-linus' and 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: devicetree: Add missing early_init_dt_setup_initrd_arch stub x86: cpu-hotplug: Prevent softirq wakeup on wrong CPU * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: genirq: Prevent potential NULL dereference in irq_set_irq_wake() commit 562d1ffed2082fc59fb72173b856822ffe781559 Merge: acb11bc e3f88ae Author: Linus Torvalds Date: Mon Jun 13 10:33:31 2011 -0700 Merge branch 'spi/merge' of git://git.secretlab.ca/git/linux-2.6 * 'spi/merge' of git://git.secretlab.ca/git/linux-2.6: spi-pl022: Add missing return value update commit acb11bcdbde29cfedaaedfea314b922b99274907 Merge: 33a5388 2aec0d6 Author: Linus Torvalds Date: Mon Jun 13 10:32:53 2011 -0700 Merge branch 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung * 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung: ARM: S3C2410: remove the now empty mach-s3c2410/irq.c ARM: S3C24XX: Move s3c24xx_irq_syscore_ops to plat-s3c24xx/irq.c ARM: S3C24xx: Fix missing struct for s3c2410_dma_chan ARM: SAMSUNG: Remove unused onenand plat functions ARM: EXYNOS4: Remove compiler warning on exynos4_pwm4_resume ARM: S5P: Fix compilation error for exynos4_defconfig ARM: S5P: Should be S3C_VA_USB_HSPHY instead of S5P_VA_XX ARM: S5P64X0: Fix SPI platform device name ARM: S5PV210: Fix possible null pointer dereference commit 33a538833f1dc46965d11cff1efa756702a9b138 Merge: 3c25fa7 071d73c Author: Linus Torvalds Date: Mon Jun 13 10:32:24 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: nilfs2: fix problem in setting checkpoint interval nilfs2: fix missing block address termination in btree node shrinking nilfs2: fix incorrect block address termination in node concatenation commit 6fdf658c9a0e51e6663f2769f6d310c2843a862b Author: Luiz Augusto von Dentz Date: Mon Jun 13 15:37:35 2011 +0300 Bluetooth: Fix L2CAP security check With older userspace versions (using hciops) it might not have the key type to check if the key has sufficient security for any security level so it is necessary to check the return of hci_conn_auth to make sure the connection is authenticated Signed-off-by: Luiz Augusto von Dentz Acked-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit f4c44016218a6fce357715b9bbabbbbe1f69853c Author: Chris Mason Date: Mon Jun 13 11:30:47 2011 -0400 Btrfs: drop the delalloc_bytes check in shrink_delalloc Even when delalloc_bytes is zero, we may need to sleep while waiting for delalloc space. Signed-off-by: Chris Mason commit ac08aedfa5d3de0dcb3825b598d16c2e57991f54 Author: Chris Mason Date: Mon Jun 13 11:28:50 2011 -0400 Btrfs: check the return value from set_anon_super Al Viro noticed we weren't checking for set_anon_super failures. This adds the required checks. Signed-off-by: Chris Mason commit e3f88ae9960920598cad132c553019ee79ff3aca Author: Virupax Sadashivpetimath Date: Mon Jun 13 16:23:46 2011 +0530 spi-pl022: Add missing return value update Return error on out of range cpsdvsr value. Acked-by: Linus Walleij Signed-off-by: Virupax Sadashivpetimath Signed-off-by: Grant Likely commit c8e0bf95fc01d6e2ca585fe08010800b6c56e823 Merge: 9d5ae7c 345f79b Author: Tony Lindgren Date: Mon Jun 13 07:40:25 2011 -0700 Merge branch 'for_3.0/pm-fixes' of ssh://master.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into fixes commit 9d5ae7cd6cb9ead43336fec1094184d1dc740fbd Author: Grazvydas Ignotas Date: Fri Jun 3 20:24:03 2011 +0000 omap: pandora: fix NAND support Commit d5ce2b65 "omap3630: nand: fix device size to work in polled mode" changed values for .devsize in nand platform data, now we have to pass NAND_BUSWIDTH_16 instead of '1' to select 16bit NAND. Update pandora's platform data accordingly, also specify appropriate transfer type. Signed-off-by: Grazvydas Ignotas Signed-off-by: Tony Lindgren commit d4c208b86b8be4254eba0e74071496e599f94639 Author: Tejun Heo Date: Mon Jun 13 12:45:48 2011 +0200 block: use the passed in @bdev when claiming if partno is zero 6b4517a791 (block: implement bd_claiming and claiming block) introduced claiming block to support O_EXCL blkdev opens properly. bd_start_claiming() looks up the part 0 bdev and starts claiming block. The function assumed that there is only one part 0 bdev and always used bdget_disk(disk, 0) to look it up; unfortunately, this isn't true for some drivers (floppy) which use multiple block devices to denote different operating parameters for the same physical device. There can be multiple part 0 bdev's for the same device number. This incorrect assumption caused the wrong bdev to be used during claiming leading to unbalanced bd_holders as reported in the following bug. https://bugzilla.kernel.org/show_bug.cgi?id=28522 This patch updates bd_start_claiming() such that it uses the bdev specified as argument if its partno is zero. Note that this means that different bdev's can be used for the same device and O_EXCL check can be effectively bypassed. It has always been broken that way and floppy is fortunately on its way out. Leave that breakage alone. Signed-off-by: Tejun Heo Reported-by: Alex Villacis Lasso Tested-by: Alex Villacis Lasso Cc: stable@kernel.org # >= v2.6.36 Signed-off-by: Jens Axboe commit afbee42706090fa59dac299c9607e4fd4361ec82 Merge: 5f12713 db5e7ec Author: Ingo Molnar Date: Mon Jun 13 11:59:42 2011 +0200 Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent commit 08e8138adebdd511e0955e8d6c051904bb4082af Author: Joe Perches Date: Mon Jun 13 10:42:49 2011 +0200 block: Add __attribute__((format(printf...) and fix fallout Use the compiler to verify format strings and arguments. Fix fallout. Signed-off-by: Joe Perches Signed-off-by: Jens Axboe commit 8f4e0a18682d91abfad72ede3d3cb5f3ebdf54b4 Author: Hans Schillstrom Date: Mon Jun 13 09:06:57 2011 +0200 IPVS netns exit causes crash in conntrack Quote from Patric Mc Hardy "This looks like nfnetlink.c excited and destroyed the nfnl socket, but ip_vs was still holding a reference to a conntrack. When the conntrack got destroyed it created a ctnetlink event, causing an oops in netlink_has_listeners when trying to use the destroyed nfnetlink socket." If nf_conntrack_netlink is loaded before ip_vs this is not a problem. This patch simply avoids calling ip_vs_conn_drop_conntrack() when netns is dying as suggested by Julian. Signed-off-by: Hans Schillstrom Signed-off-by: Simon Horman commit 2308f4add3de9f6c9c9f02e49461e94d84bb200a Author: Joe Perches Date: Sun Jun 12 13:02:43 2011 -0700 ALSA: hda - Fix beep_device compilation warnings Using static inline functions can reduce compilation messages and macro misuse. sound/pci/hda/patch_conexant.c: In function ‘patch_cxt5045’: sound/pci/hda/patch_conexant.c:1232:3: warning: statement with no effect Signed-off-by: Joe Perches Signed-off-by: Takashi Iwai commit 54463a66b91cf491a7c9af612b0e310babc5fa24 Author: Takashi Iwai Date: Mon Jun 13 08:32:06 2011 +0200 ALSA: hda - Fix wrong auto-mute type for Acer Aspire-one The auto-mute setup for Acer Aspire-one with ALC268 was set wrongly during the clean-up of auto-mute function. Fixed now. Tested-by: Borislav Petkov Signed-off-by: Takashi Iwai commit 1fb74cda1b5e9c6207225fda5ef7504e815ce0e0 Author: Tao Ma Date: Sun Jun 12 22:44:10 2011 -0400 jbd2: Remove obsolete parameters in the comments for some jbd2 functions credits isn't a parameter for jbd2_journal_get_write_access and jbd2_journal_get_undo_access. So remove the corresponding comments. Acked-by: Jan Kara Cc: Randy Dunlap Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit b84bd27fe70206f9253c395958134e4e4b7e55f0 Author: Benjamin Tissoires Date: Sun Jun 12 08:22:08 2011 +0200 HID: hid-multitouch: fix broken eGalax Since the inclusion of eGalax devices in 2.6.39, I've got some bug reports for 480d and other devices. The problem lies in the reports descriptors: eGalax supports both pen and fingers, and so the reports descriptors contained both. But hid-multitouch relies on them to detect the last item in each field to send the multitouch events. In 480d, the last item is not Y as it should but Pressure. That means that the fields are not aligned and X,Y are at 0,0 (the other touch coordinates of the report). With this patch, the detection is made only when the field ContactID has been detected inside the collection. There is still a problem with the detections of the range as stylus and fingers may not have the same min/max, but it's a start. Signed-off-by: Benjamin Tissoires Reviewed-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit a685e08987d1edf1995b76511d4c98ea0e905377 Author: Al Viro Date: Wed Jun 8 21:13:01 2011 -0400 Delay struct net freeing while there's a sysfs instance refering to it * new refcount in struct net, controlling actual freeing of the memory * new method in kobj_ns_type_operations (->drop_ns()) * ->current_ns() semantics change - it's supposed to be followed by corresponding ->drop_ns(). For struct net in case of CONFIG_NET_NS it bumps the new refcount; net_drop_ns() decrements it and calls net_free() if the last reference has been dropped. Method renamed to ->grab_current_ns(). * old net_free() callers call net_drop_ns() instead. * sysfs_exit_ns() is gone, along with a large part of callchain leading to it; now that the references stored in ->ns[...] stay valid we do not need to hunt them down and replace them with NULL. That fixes problems in sysfs_lookup() and sysfs_readdir(), along with getting rid of sb->s_instances abuse. Note that struct net *shutdown* logics has not changed - net_cleanup() is called exactly when it used to be called. The only thing postponed by having a sysfs instance refering to that struct net is actual freeing of memory occupied by struct net. Signed-off-by: Al Viro commit dde194a64bb5c3fd05d965775dc92e8a4920a53a Author: Al Viro Date: Sun Jun 12 16:01:21 2011 -0400 afs: fix sget() races, close leak on umount * set ->s_fs_info in set() callback passed to sget() * allocate the thing and set it up enough for afs_test_super() before making it visible * have it freed in ->kill_sb() (current tree simply leaks it) * have ->put_super() leave ->s_fs_info->volume alone; it's too early for dropping it; do that from ->kill_sb() after having called kill_anon_super(). Signed-off-by: Al Viro commit d251ed271d528afb407cc2ede30923e34cb209a5 Author: Al Viro Date: Sun Jun 12 10:24:33 2011 -0400 ubifs: fix sget races * allocate ubifs_info in ->mount(), fill it enough for sb_test() and set ->s_fs_info to it in set() callback passed to sget(). * do *not* free it in ->put_super(); do that in ->kill_sb() after we'd done kill_anon_super(). * don't free it in ubifs_fill_super() either - deactivate_locked_super() done by caller when ubifs_fill_super() returns an error will take care of that sucker. * get rid of kludge with passing ubi to ubifs_fill_super() in ->s_fs_info; we only need it in alloc_ubifs_info(), so ubifs_fill_super() will need only ubifs_info. Which it will find in ->s_fs_info just fine, no need to reassign anything... As the result, sb_test() becomes safe to apply to all superblocks that can be found by sget() (and a kludge with temporary use of ->s_fs_info to store a pointer to very different structure goes away). Signed-off-by: Al Viro commit b1c27ab3f93daede979f804afc38b189c2f17c60 Author: Al Viro Date: Sun Jun 12 10:07:03 2011 -0400 ubifs: split allocation of ubifs_info into a separate function preparation to ubifs sget() race fixes Signed-off-by: Al Viro commit ff78fca2a03c08436535d3f7152a30752d8131d1 Author: Al Viro Date: Sun Jun 12 09:42:17 2011 -0400 fix leak in proc_set_super() set_anon_super() can fail... Signed-off-by: Al Viro commit 13f067537f34456443f61c950cd6dc37d1d5f3ee Author: Dave Jones Date: Sun Jun 12 16:35:28 2011 -0400 [CPUFREQ] Remove cpufreq_stats sysfs entries on module unload. cpufreq_stats leaves behind its sysfs entries, which causes a panic when something stumbled across them. (Discovered by unloading cpufreq_stats while powertop was loaded). Signed-off-by: Dave Jones Cc: stable@kernel.org commit 89b882a25e703b72c3e84c582357e3e864d8ccca Author: Joe Perches Date: Wed Jun 1 10:59:10 2011 -0700 MAINTAINERS: Update CPU FREQUENCY patterns Commit bb0a56ecc4ba ("[CPUFREQ] Move x86 drivers to drivers/cpufreq/") moved the files, remove the old pattern. Signed-off-by: Joe Perches Signed-off-by: Dave Jones commit ac5d4b404e78bd7eb67fc70c2acb437a25497e98 Author: Florian Zeitz Date: Sun Jun 12 01:15:42 2011 +0200 ALSA: emu10k1: Add details for E-mu 0404 PCIe version This patch adds the necessary details to support the PCIe version of E-MU's 0404 card. From comparing the PCBs it seems the PCIe version just added a PCIe chipset and left all other components pretty much in place. For anyone intrigued to take a look at the PCB there are pictures I took at . Signed-off-by: Florian Zeitz Signed-off-by: Takashi Iwai commit 3c25fa740e2084a3950f581378ec29a3c307ddfc Merge: 9d6fa8f 30b4caf Author: Linus Torvalds Date: Sun Jun 12 11:06:36 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: use join_transaction in btrfs_evict_inode() Btrfs - use %pU to print fsid Btrfs: fix extent state leak on failed nodatasum reads btrfs: fix unlocked access of delalloc_inodes Btrfs: avoid stack bloat in btrfs_ioctl_fs_info() btrfs: remove 64bit alignment padding to allow extent_buffer to fit into one fewer cacheline Btrfs: clear current->journal_info on async transaction commit Btrfs: make sure to recheck for bitmaps in clusters btrfs: remove unneeded includes from scrub.c btrfs: reinitialize scrub workers btrfs: scrub: errors in tree enumeration Btrfs: don't map extent buffer if path->skip_locking is set Btrfs: unlock the trans lock properly Btrfs: don't map extent buffer if path->skip_locking is set Btrfs: fix duplicate checking logic Btrfs: fix the allocator loop logic Btrfs: fix bitmap regression Btrfs: don't commit the transaction if we dont have enough pinned bytes Btrfs: noinline the cluster searching functions Btrfs: cache bitmaps when searching for a cluster commit 9d6fa8fa7042622f8ed9c0988de665464d4584a6 Merge: c7ca6b0 05e2054 Author: Linus Torvalds Date: Sun Jun 12 11:04:25 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda: Fix inaudible internal speakers on CyberpowerPC Gamer Xplorer N57001 laptop ALSA: Use %pV for snd_printk() ALSA: hda - Fix initialization of hp pins with master_mute in Realtek ALSA: hda - Fix invalid unsol tag for some alc262 model quirks ASoC: SAMSUNG: Fix the incorrect referencing of I2SCON register ASoC: snd_soc_new_{mixer,mux,pga} make sure to use right DAPM context ASoC: fsl: fix initialization of DMA buffers ASoC: WM8804 does not support sample rates below 32kHz ASoC: Fix WM8962 headphone volume update for use of advanced caches ASoC: Blackfin: bf5xx-ad1836: Fix codec device name ALSA: hda: Fix quirk for Dell Inspiron 910 ASoC: AD1836: Fix setting the PCM format ASoC: Check for NULL register bank in snd_soc_get_cache_val() ASoC: Add missing break in WM8915 FLL source selection ASoC: Only update SYSCLK_ENA when pausing WM8915 SYSCLK ASoC: atmel_ssc: Don't try to free ssc if request failed commit c7ca6b0fcfb309dbb3d81dc9315e960f6fb14cb9 Merge: 08d63aa 3307d0d Author: Linus Torvalds Date: Sun Jun 12 11:04:11 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6: ide-cd: signedness warning fix again commit 08d63aac436b2ad35d9e864b9ebb05bc8b9bb653 Merge: 152b92d e5ea3f1 Author: Linus Torvalds Date: Sun Jun 12 11:03:29 2011 -0700 Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio/basic_mmio: add missing include of spinlock_types.h gpio/nomadik: fix sleepmode for elder Nomadik commit 152b92db7ad2c6d6c11c8eab07e90b73a90c8b76 Merge: b99ca60 84860c7 Author: Linus Torvalds Date: Sun Jun 12 11:03:08 2011 -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: (55 commits) ISDN, hfcsusb: Don't leak in hfcsusb_ph_info() netpoll: call dev_put() on error in netpoll_setup() net: ep93xx_eth: fix DMA API violations net: ep93xx_eth: drop GFP_DMA from call to dma_alloc_coherent() net: ep93xx_eth: allocate buffers using kmalloc() net: ep93xx_eth: pass struct device to DMA API functions ep93xx: set DMA masks for the ep93xx_eth vlan: Fix the ingress VLAN_FLAG_REORDER_HDR check dl2k: EEPROM CRC calculation wrong endianess on bigendian machine NET: am79c961: fix assembler warnings NET: am79c961: ensure multicast filter is correctly set at open NET: am79c961: ensure asm() statements are marked volatile ethtool.h: fix typos ep93xx_eth: Update MAINTAINERS ipv4: Fix packet size calculation for raw IPsec packets in __ip_append_data netpoll: prevent netpoll setup on slave devices net: pmtu_expires fixes gianfar:localized filer table iwlegacy: fix channel switch locking mac80211: fix IBSS teardown race ... commit efef054e8c4bc4fd48a0b4deb5491116d9f557c7 Author: Adrian Knoth Date: Sun Jun 12 17:26:19 2011 +0200 ALSA: hdspm - Add firmware revision ID for RME MADI PCI version The PCI version of the RME HDSP MADI card uses 0xcf as revision ID. Just add this to the list of supported cards. Signed-off-by: Adrian Knoth Signed-off-by: Takashi Iwai commit fedf1535ab5ee02acbbc235c2272d84bb9334758 Author: Adrian Knoth Date: Sun Jun 12 17:26:18 2011 +0200 ALSA: hdspm - Fix jumping external wordclock frequency in AutoSync mode When using Word Clock on RME MADI cards, AutoSync mode was alternating betweeen MADI and WC due to a typo: AutoSync is indicated in the second status register (status2), not the first one (status). While the proc output was always correct, the reported WC frequency to ALSA was unstable as mentioned in http://mailman.alsa-project.org/pipermail/alsa-devel/2008-March/006723.html Signed-off-by: Adrian Knoth Signed-off-by: Takashi Iwai commit c0da00145f9a32ef33b14508e6fd90fc130afbdc Author: Adrian Knoth Date: Sun Jun 12 17:26:17 2011 +0200 ALSA: hdspm - Fix locking in snd_hdspm_midi_input_read For the MIDI part, we need to acquire (and release) the hmidi->lock, access to the global hdspm structure is serialized through hmidi->hdspm->lock instead. Signed-off-by: Adrian Knoth Signed-off-by: Takashi Iwai commit b99ca60c83a631adaba9c2fff8f2dd14d3517a61 Merge: 56a2105 1780f2d Author: Linus Torvalds Date: Sat Jun 11 19:56:25 2011 -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: AppArmor: Fix sleep in invalid context from task_setrlimit commit 84860c725364372a331589a600ce6a00437a14f8 Author: Jesper Juhl Date: Sat Jun 11 06:36:42 2011 +0000 ISDN, hfcsusb: Don't leak in hfcsusb_ph_info() We leak the memory allocated to 'phi' when the variable goes out of scope in hfcsusb_ph_info(). Signed-off-by: Jesper Juhl Signed-off-by: David S. Miller commit 83fe32de63e60af34fa8dae83716cb13b8677abd Author: Dan Carpenter Date: Sat Jun 11 18:55:22 2011 -0700 netpoll: call dev_put() on error in netpoll_setup() There is a dev_put(ndev) missing on an error path. This was introduced in 0c1ad04aecb "netpoll: prevent netpoll setup on slave devices". Signed-off-by: Dan Carpenter Signed-off-by: David S. Miller commit f1c089e3192f1afdfa76226dc38ef81b08ac810d Author: Mika Westerberg Date: Sat Jun 11 08:39:58 2011 +0000 net: ep93xx_eth: fix DMA API violations Russell King said: > > So, to summarize what its doing: > > 1. It allocates buffers for rx and tx. > 2. It maps them with dma_map_single(). > This transfers ownership of the buffer to the DMA device. > 3. In ep93xx_xmit, > 3a. It copies the data into the buffer with skb_copy_and_csum_dev() > This violates the DMA buffer ownership rules - the CPU should > not be writing to this buffer while it is (in principle) owned > by the DMA device. > 3b. It then calls dma_sync_single_for_cpu() for the buffer. > This transfers ownership of the buffer to the CPU, which surely > is the wrong direction. > 4. In ep93xx_rx, > 4a. It calls dma_sync_single_for_cpu() for the buffer. > This at least transfers the DMA buffer ownership to the CPU > before the CPU reads the buffer > 4b. It then uses skb_copy_to_linear_data() to copy the data out. > At no point does it transfer ownership back to the DMA device. > 5. When the driver is removed, it dma_unmap_single()'s the buffer. > This transfers ownership of the buffer to the CPU. > 6. It frees the buffer. > > While it may work on ep93xx, it's not respecting the DMA API rules, > and with DMA debugging enabled it will probably encounter quite a few > warnings. This patch fixes these violations. Signed-off-by: Mika Westerberg Acked-by: Russell King Acked-by: H Hartley Sweeten Tested-by: Petr Stetiar Signed-off-by: David S. Miller commit 1f758a4341ac83289a549e6ba2d29a08cf639717 Author: Mika Westerberg Date: Sat Jun 11 08:39:57 2011 +0000 net: ep93xx_eth: drop GFP_DMA from call to dma_alloc_coherent() Commit a197b59ae6e8 (mm: fail GFP_DMA allocations when ZONE_DMA is not configured) made page allocator to return NULL if GFP_DMA is set but CONFIG_ZONE_DMA is disabled. This causes ep93xx_eth to fail: WARNING: at mm/page_alloc.c:2251 __alloc_pages_nodemask+0x11c/0x638() Modules linked in: [] (unwind_backtrace+0x0/0xf4) from [] (warn_slowpath_common+0x48/0x60) [] (warn_slowpath_common+0x48/0x60) from [] (warn_slowpath_null+0x1c/0x24) [] (warn_slowpath_null+0x1c/0x24) from [] (__alloc_pages_nodemask+0x11c/0x638) [] (__alloc_pages_nodemask+0x11c/0x638) from [] (__dma_alloc+0x8c/0x3ec) [] (__dma_alloc+0x8c/0x3ec) from [] (dma_alloc_coherent+0x54/0x60) [] (dma_alloc_coherent+0x54/0x60) from [] (ep93xx_open+0x20/0x864) [] (ep93xx_open+0x20/0x864) from [] (__dev_open+0xb8/0x108) [] (__dev_open+0xb8/0x108) from [] (__dev_change_flags+0x70/0x128) [] (__dev_change_flags+0x70/0x128) from [] (dev_change_flags+0x10/0x48) [] (dev_change_flags+0x10/0x48) from [] (ip_auto_config+0x190/0xf68) [] (ip_auto_config+0x190/0xf68) from [] (do_one_initcall+0x34/0x18c) [] (do_one_initcall+0x34/0x18c) from [] (kernel_init+0x94/0x134) [] (kernel_init+0x94/0x134) from [] (kernel_thread_exit+0x0/0x8) Since there is no restrictions for DMA on ep93xx, we can fix this by just removing the GFP_DMA flag from the call. Signed-off-by: Mika Westerberg Acked-by: Russell King Acked-by: H Hartley Sweeten Tested-by: Petr Stetiar Signed-off-by: David S. Miller commit 3247a1fcee49b571b40c4bd723439ce5c64f56ad Author: Mika Westerberg Date: Sat Jun 11 08:39:56 2011 +0000 net: ep93xx_eth: allocate buffers using kmalloc() We can use simply kmalloc() to allocate the buffers. This also simplifies the code and allows us to perform DMA sync operations more easily. Memory is allocated with only GFP_KERNEL since there are no DMA allocation restrictions on this platform. Signed-off-by: Mika Westerberg Acked-by: Russell King Acked-by: H Hartley Sweeten Tested-by: Petr Stetiar Signed-off-by: David S. Miller commit fc9b4910b00039da054f221e2821be0519261101 Author: Mika Westerberg Date: Sat Jun 11 08:39:55 2011 +0000 net: ep93xx_eth: pass struct device to DMA API functions We shouldn't use NULL for any DMA API functions, unless we are dealing with ISA or EISA device. So pass correct struct dev pointer to these functions. Signed-off-by: Mika Westerberg Signed-off-by: David S. Miller commit fa70cf472c0bc3a0d7e613a418cfc1117b796c6c Author: Mika Westerberg Date: Sat Jun 11 08:39:54 2011 +0000 ep93xx: set DMA masks for the ep93xx_eth Since the driver uses the DMA API, we should pass it valid DMA masks. Signed-off-by: Mika Westerberg Acked-by: Russell King Acked-by: H Hartley Sweeten Tested-by: Petr Stetiar Signed-off-by: David S. Miller commit 0b5c9db1b11d3175bb42b80663a9f072f801edf5 Author: Jiri Pirko Date: Fri Jun 10 06:56:58 2011 +0000 vlan: Fix the ingress VLAN_FLAG_REORDER_HDR check Testing of VLAN_FLAG_REORDER_HDR does not belong in vlan_untag but rather in vlan_do_receive. Otherwise the vlan header will not be properly put on the packet in the case of vlan header accelleration. As we remove the check from vlan_check_reorder_header rename it vlan_reorder_header to keep the naming clean. Fix up the skb->pkt_type early so we don't look at the packet after adding the vlan tag, which guarantees we don't goof and look at the wrong field. Use a simple if statement instead of a complicated switch statement to decided that we need to increment rx_stats for a multicast packet. Hopefully at somepoint we will just declare the case where VLAN_FLAG_REORDER_HDR is cleared as unsupported and remove the code. Until then this keeps it working correctly. Signed-off-by: Eric W. Biederman Signed-off-by: Jiri Pirko Acked-by: Changli Gao Signed-off-by: David S. Miller commit 06866bf5c5ad8989119a145fdb54a9fbcafa702d Author: Daniel Hellstrom Date: Fri Jun 10 04:55:16 2011 +0000 dl2k: EEPROM CRC calculation wrong endianess on bigendian machine Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit f777737885a69d37132c956f1e8deab676693157 Author: Russell King - ARM Linux Date: Fri Jun 10 00:52:35 2011 +0000 NET: am79c961: fix assembler warnings Fix: /tmp/ccvoZ6h8.s: Assembler messages: /tmp/ccvoZ6h8.s:284: Warning: register range not in ascending order /tmp/ccvoZ6h8.s:881: Warning: register range not in ascending order /tmp/ccvoZ6h8.s:1087: Warning: register range not in ascending order by ensuring that we have temporary variables placed into specific registers. Reorder the code a bit to allow the resulting assembly to be slightly more optimal. Signed-off-by: Russell King Signed-off-by: David S. Miller commit bfc6501324427a97814de1587f89d73bf8677057 Author: Russell King - ARM Linux Date: Fri Jun 10 00:52:14 2011 +0000 NET: am79c961: ensure multicast filter is correctly set at open We were clearing out the multicast filter whenever the interface was upped, and not setting the mode bits correctly. This can cause problems if there are any multicast addresses already set at this point, or if ALLMULTI was set. Signed-off-by: Russell King Signed-off-by: David S. Miller commit d814dee0e1a5d9b2f858b91551a0dd0608f777a1 Author: Russell King - ARM Linux Date: Fri Jun 10 00:51:54 2011 +0000 NET: am79c961: ensure asm() statements are marked volatile Without this the compiler can (and does) optimize register reads away from within loops, and other such optimizations. Signed-off-by: Russell King Signed-off-by: David S. Miller commit 3307d0d83b7bf636dc6dd2aa4a584d0f52cc185b Author: Connor Hansen Date: Sat Jun 11 15:06:48 2011 -0700 ide-cd: signedness warning fix again One of the legit warnings 'make W=3 drivers/ide/ide-cd.c' generates is: drivers/ide/ide-cd.c: In function ide_cd_do_request drivers/ide/ide-cd.c:828:2: warning: conversion to int from \ unsigned int may change the sign of the result drivers/ide/ide-cd.c:833:2: warning: conversion to int from \ unsigned int may change the sign of the result nsectors is declared int, should be unsigned int. blk_rq_sectors() returns unsigned int, and ide_complete_rq expects unsigned int as well. Fixes both warnings. Signed-off-by: Connor Hansen Signed-off-by: David S. Miller commit 56a210526adb2854d5b7c398a40260720390ee05 Author: David Howells Date: Sat Jun 11 12:29:58 2011 +0100 linux/seqlock.h should #include asm/processor.h for cpu_relax() It uses cpu_relax(), and so needs Without this patch, I see: CC arch/mn10300/kernel/asm-offsets.s In file included from include/linux/time.h:8, from include/linux/timex.h:56, from include/linux/sched.h:57, from arch/mn10300/kernel/asm-offsets.c:7: include/linux/seqlock.h: In function 'read_seqbegin': include/linux/seqlock.h:91: error: implicit declaration of function 'cpu_relax' whilst building asb2364_defconfig on MN10300. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit e76e4706cf9051e4db12c3d4418fcfbb053fc463 Author: Marek Szyprowski Date: Thu Jun 2 04:52:07 2011 -0300 [media] MAINTAINERS: Add videobuf2 maintainers Add maintainers for the videobuf2 V4L2 driver framework. Signed-off-by: Marek Szyprowski Signed-off-by: Kyungmin Park Signed-off-by: Pawel Osciak Signed-off-by: Mauro Carvalho Chehab commit c30701130cf7bff4f97a148b1bc96f878c046a40 Author: HeungJun, Kim Date: Tue Jun 7 02:00:58 2011 -0300 [media] m5mols: Use proper email address format Signed-off-by: HeungJun, Kim Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit a6354d2e5da646926ce492b66b527a1efc39cd27 Author: HeungJun, Kim Date: Tue Jun 7 01:59:44 2011 -0300 [media] m5mols: remove union in the m5mols_get_version(), and VERSION_SIZE Remove union version in the m5mols_get_version(), and read version information directly. Also remove VERSION_SIZE. Signed-off-by: HeungJun, Kim Signed-off-by: Kyungmin Park Acked-by: Sakari Ailus Signed-off-by: Mauro Carvalho Chehab commit 57644f56234a154afffd0f4d53becf8ff4a55b41 Author: HeungJun, Kim Date: Tue May 31 03:44:19 2011 -0300 [media] m5mols: add m5mols_read_u8/u16/u32() according to I2C byte width For now, the m5mols_read() share in case of I2C packet 1, 2, 4 byte(s) width. So, this commit adds 3 functions - m5mols_read_u8/u16/u32() according to byte width of I2C packet. And, the u32 variables in spite of u8 or u16 for fitting to m5mols_read() having no choice, is replaced to have original byte width like u8, u16, u32 as same reason. Signed-off-by: HeungJun, Kim Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit bbe66edc607425acc47d7ad69ba7ad7193ec05b4 Author: HeungJun, Kim Date: Tue May 31 02:27:53 2011 -0300 [media] m5mols: Fix capture image size register definition The main capture and the thumbnail image size registers were erroneously defined to have 1 byte width, resulting in wrong reported image size. Fix this by changing the registers width to correct value. Reported-by: Sylwester Nawrocki Signed-off-by: HeungJun, Kim Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 3a3f94497aa236d9a4f47f0f4f8dc84e531ffa22 Author: Sylwester Nawrocki Date: Thu Apr 28 09:06:19 2011 -0300 [media] s5p-fimc: Update copyright notices Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit ba0545e328390b9e5589c14876b3940fbe647d0c Author: Sylwester Nawrocki Date: Fri May 20 14:02:11 2011 -0300 [media] s5p-fimc: Use pix_mp for the color format lookup With multi-planar formats fmt.pix_mp member of struct v4l2_format should be used rather than fmt.pix. Fix find_fmt() function to do the right thing. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit dbdd0dfb89ca45895f2063db8b31085cf32aa81d Author: Sylwester Nawrocki Date: Mon May 23 09:15:17 2011 -0300 [media] s5p-fimc: Remove empty buf_init operation The buf_init buffer queue operation is optional and buffer_init() does nothing, remove it. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit a629f86b4aa1669ddf2afaa3ded66d5a59d60b77 Author: Sylwester Nawrocki Date: Mon May 23 09:15:05 2011 -0300 [media] s5p-fimc: Fix wrong buffer size in queue_setup Avoid dereferencing of NULL f->fmt. Correct size of the allocated buffer in case the crop rectangle is smaller than the bounds rectangle (configured with S_FMT). Also remove redundant check for *num_buffer == 0 as this case is handled in videobuf2. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 3495dcefeb3b5ab825788206d5b696be14f4de19 Author: Sylwester Nawrocki Date: Fri May 20 06:14:59 2011 -0300 [media] s5p-fimc: Fix data structures documentation and cleanup debug trace Correct inconsistencies in data structures' documentation. Remove meaningless debug traces. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 6ba8d13b0cff80ea6da18563fc2aa2cde2771be4 Author: Sylwester Nawrocki Date: Wed May 18 14:14:56 2011 -0300 [media] s5p-fimc: Fix V4L2_PIX_FMT_RGB565X description Remove V4L2_MBUS_FMT_RGB565_2X8_BE media code entry as camera interface supports only packed YUYV formats. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit cfd77310a93aac6de7077335b2b73c19531043e4 Author: Sylwester Nawrocki Date: Thu Jun 2 06:18:34 2011 -0300 [media] s5p-fimc: Fix possible memory leak during capture devnode registration Add missing kfree on the error path. Reported-by: Tomasz Stanislawski Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit 30b4caf5d73af5c99cf1b2b46496d8bc35330992 Author: Li Zefan Date: Wed Jun 8 03:56:44 2011 +0000 Btrfs: use join_transaction in btrfs_evict_inode() The WARN_ON() in start_transaction() was triggered while balancing. The cause is btrfs_relocate_chunk() started a transaction and then called iput() on the inode that stores free space cache, and iput() called btrfs_start_transaction() again. Reported-by: Tsutomu Itoh Signed-off-by: Li Zefan Reviewed-by: Josef Bacik Signed-off-by: Chris Mason commit 94215ccd99eb6e3c8a035c06984630bd7479d963 Author: Jarod Wilson Date: Sat Jun 4 14:14:41 2011 -0300 [media] imon: fix initial panel key repeat suppression As pointed out on the lirc list by Andreas Dick, initial panel key repeat suppression wasn't working, as we had no timevals accumulated until after the first repeat. Also add a missing locking call. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 443b391900469f2c5ec5a354ce305000096a94b7 Author: Jarod Wilson Date: Sat Jun 4 14:00:54 2011 -0300 [media] imon: support for 0x46 0xffdc imon vfd Courtesy of information from Andreas Dick on the lirc list. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 0b43fcdff6495958c39e3575848edef4b685ddef Author: Jarod Wilson Date: Tue May 24 16:44:54 2011 -0300 [media] mceusb: plug memory leak on data transmit Hans Petter Selasky pointed out to me that we're leaking urbs when mce_async_out is called. Its used both for configuring the hardware and for transmitting IR data. In the tx case, mce_request_packet actually allocates both a urb and the transfer buffer, neither of which was being torn down. Do that in the tx callback. CC: Hans Petter Selasky Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 589e116062d8b5fd1809dfff4c9b7694ce6c2318 Author: Jarod Wilson Date: Tue May 24 14:19:23 2011 -0300 [media] nuvoton-cir: in_use isn't actually in use, remove it Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 0ae90252d0b28265bc16cf272e72d62281f7baf1 Author: Jarod Wilson Date: Fri May 27 17:14:51 2011 -0300 [media] fintek-cir: make suspend with active IR more reliable There was a missing lock in fintek_suspend. Without the lock, its possible the system will be in the middle of receiving IR (draining the RX buffer) when we try to disable CIR interrupts. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 8de111e27688798623b9e9062235bb0cac29f599 Author: Jarod Wilson Date: Fri May 27 16:56:50 2011 -0300 [media] lirc_dev: store cdev in irctl, up maxdevs Store the cdev pointer in struct irctl, allocated dynamically as needed, rather than having a static array. At the same time, recycle some of the saved memory to nudge the maximum number of lirc devices supported up a ways -- its not that uncommon these days, now that we have the rc-core lirc bridge driver, to see a system with at least 4 raw IR receivers. (consider a mythtv backend with several video capture devices and the possible need for IR transmit hardware). Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 04f561ff8714c89733dcf1d178b64d100d5a084a Author: Jarod Wilson Date: Fri May 27 15:46:19 2011 -0300 [media] [staging] lirc_sir: fix unused-but-set warnings Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit e5fd0f7db3c3ba127dc1c51f0a0fe31d89db27cc Author: Jarod Wilson Date: Fri May 27 15:37:23 2011 -0300 [media] [staging] lirc_imon: fix unused-but-set warnings Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 3a918aa69daf001910640cc910ea4053ba840a6e Author: Jarod Wilson Date: Thu May 26 14:23:18 2011 -0300 [media] mceusb: mce_sync_in is brain-dead Aside from the initial "hey, lets make sure we've flushed any pre-existing data on the device" call to mce_sync_in, every other one of the calls was entirely superfluous. Ergo, remove them all, and rename the one and only (questionably) useful one to reflect what it really does. Verified on both gen2 and gen3 hardware to make zero difference. Well, except that you no longer get a bunch of urb submit failures from the unneeded mce_sync_in calls. Oh. And move that flush to a point *after* we've wired up the inbound urb, or it won't do squat. I have half a mind to just remove it entirely, but someone thought it was necessary at some point, and it doesn't seem to hurt, so lets leave it for the time being. This excercise took place due to insightful questions asked by Hans Petter Selasky, about the possible reuse of the inbound urb before it was actually availble by mce_sync_in, so thanks to him for motivating this cleanup. Reported-by: Hans Petter Selasky Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit b825fe1b1bb5927402c3d3084641355946ef05f8 Author: Jarod Wilson Date: Thu May 26 16:03:17 2011 -0300 [media] mceusb: support I-O Data GV-MC7/RCKIT There's an SMK-device-id remote kit from I-O Data avaiable primarily in Japan, which appears to have no tx hardware, but has rx functionality that works with the mceusb driver by simply adding its device ID. Reported-by: Jeremy Kwok Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 5ae8f9a3757e4010c7ea9c07c047088fb812335e Author: Jarod Wilson Date: Thu May 26 15:51:11 2011 -0300 [media] mceusb: add and use mce_dbg printk macro Using dev_dbg is more complexity than many users are able to deal with. Make it easier to get debug spew feedback from them by adding an mce_dbg printk macro that spews using dev_info when debug=1 is set for the mceusb module. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 071d73cfe5c38cf62338b952bd350ff3de541b75 Author: Ryusuke Konishi Date: Fri Jun 10 00:33:06 2011 +0900 nilfs2: fix problem in setting checkpoint interval Checkpoint generation interval of nilfs goes wrong after user has changed the interval parameter with nilfs-tune tool. segctord starting. Construction interval = 5 seconds, CP frequency < 30 seconds segctord starting. Construction interval = 0 seconds, CP frequency < 30 seconds This turned out to be caused by a trivial bug in initialization code of log writer. This will fix it. Reported-by: Andrea Gelmini Signed-off-by: Ryusuke Konishi commit d40990537c9ea85dfe75dbe0ffba5e1002dfdf3f Author: Ryusuke Konishi Date: Wed May 25 23:00:27 2011 +0900 nilfs2: fix missing block address termination in btree node shrinking nilfs_btree_delete function does not terminate part of virtual block addresses when shrinking the last remaining child node into the root node. The missing address termination causes that dead btree node blocks persist and chip away free disk space. This fixes the leak bug on the btree node deletion. Signed-off-by: Ryusuke Konishi commit fe744fdb74f2417d8571faefa45f72b0ead25f89 Author: Ryusuke Konishi Date: Wed May 25 23:00:27 2011 +0900 nilfs2: fix incorrect block address termination in node concatenation nilfs_btree_delete function wrongly terminates virtual block address of the btree node held by its parent at index 0. When concatenating the index-0 node with its right sibling node, nilfs_btree_delete terminates the block address of index-0 node instead of the right sibling node which should be deleted. This bug not only wears disk space in the long run, but also causes file system corruption. This will fix it. Signed-off-by: Ryusuke Konishi commit 7d7975a0e1da7d6e558211b6296a96f1d6bf60ce Author: Russell King Date: Sat Jun 11 00:46:17 2011 +0100 ARM: footbridge: fix clock event support 4e8d7637 (ARM: footbridge: convert to clockevents/clocksource) did not set the cpumask for the clock event device. This causes boot to fail. Add the necessary initialization. Signed-off-by: Russell King commit e172dedd89a342b30fddfafd820d2ef40c039cea Author: Russell King Date: Sat Jun 11 00:44:35 2011 +0100 ARM: footbridge: fix debug macros More of the same of 5f2c1b30 (ARM: footbridge: fix debug macros), this time for the DC21285-based debugging code rather than the 8250- based debugging code. Signed-off-by: Russell King commit 8f4b8c7613928d5c6da43715fedc00a7b1ee53be Author: Russell King Date: Sat Jun 11 00:43:21 2011 +0100 ARM: initrd: disable initrds outside of memory We can't cope with initrds outside of memory, so check that the initrd is within some declared memory to the kernel before using it. Otherwise we're likely to OOPS during boot. Signed-off-by: Russell King commit 22b63a2971c5657dfc1bf4514f9410fc90c8b2c2 Author: Ilya Dryomov Date: Wed Feb 9 16:05:31 2011 +0200 Btrfs - use %pU to print fsid Get rid of FIXME comment. Uuids from dmesg are now the same as uuids given by btrfs-progs. Signed-off-by: Ilya Dryomov Signed-off-by: Chris Mason commit 08d2f347e877e489ca098c87a6fd2e872fef9767 Author: Jan Schmidt Date: Wed May 4 16:18:50 2011 +0200 Btrfs: fix extent state leak on failed nodatasum reads When encountering an EIO while reading from a nodatasum extent, we insert an error record into the inode's failure tree. btrfs_readpage_end_io_hook returns early for nodatasum inodes. We'd better clear the failure tree in that case, otherwise the kernel complains about BUG extent_state: Objects remaining on kmem_cache_close() on rmmod. Signed-off-by: Jan Schmidt Signed-off-by: Chris Mason commit 0e735872fb4b157a2fc94d4443f367e9aeb533a6 Merge: 5be7675 6eef312 Author: Chris Mason Date: Fri Jun 10 18:58:08 2011 -0400 Merge branch 'for-chris' of git://git.kernel.org/pub/scm/linux/kernel/git/arne/btrfs-unstable-arne into for-linus commit 5be76758f35ec6578e5b9b150aa513ac26bd9c54 Author: David Sterba Date: Thu Jun 9 10:02:51 2011 +0000 btrfs: fix unlocked access of delalloc_inodes list_splice_init will make delalloc_inodes empty, but without a spinlock around, this may produce corrupted list head, accessed in many placess, The race window is very tight and nobody seems to have hit it so far. Signed-off-by: David Sterba Signed-off-by: Chris Mason commit 027ed2f0044e95a97ed34db2d55a9ca95ba84385 Author: Li Zefan Date: Wed Jun 8 08:27:56 2011 +0000 Btrfs: avoid stack bloat in btrfs_ioctl_fs_info() The size of struct btrfs_ioctl_fs_info_args is as big as 1KB, so don't declare the variable on stack. Signed-off-by: Li Zefan Reviewed-by: Josef Bacik Signed-off-by: Chris Mason commit 9eb9104c665aae2401a1723c044669eb10240072 Author: richard kennedy Date: Tue Jun 7 10:46:32 2011 +0000 btrfs: remove 64bit alignment padding to allow extent_buffer to fit into one fewer cacheline Reorder extent_buffer to remove 8 bytes of alignment padding on 64 bit builds. This shrinks its size to 128 bytes allowing it to fit into one fewer cache lines and allows more objects per slab in its kmem_cache. slabinfo extent_buffer reports :- before:- Sizes (bytes) Slabs ---------------------------------- Object : 136 Total : 123 SlabObj: 136 Full : 121 SlabSiz: 4096 Partial: 0 Loss : 0 CpuSlab: 2 Align : 8 Objects: 30 after :- Object : 128 Total : 4 SlabObj: 128 Full : 2 SlabSiz: 4096 Partial: 0 Loss : 0 CpuSlab: 2 Align : 8 Objects: 32 Signed-off-by: Richard Kennedy Signed-off-by: Chris Mason commit 38e880540f983045da7a00fbc50daad238207fc5 Author: Sage Weil Date: Fri Jun 10 18:43:13 2011 +0000 Btrfs: clear current->journal_info on async transaction commit Normally current->jouranl_info is cleared by commit_transaction. For an async snap or subvol creation, though, it runs in a work queue. Clear it in btrfs_commit_transaction_async() to avoid leaking a non-NULL journal_info when we return to userspace. When the actual commit runs in the other thread it won't care that it's current->journal_info is already NULL. Signed-off-by: Sage Weil Tested-by: Jim Schutt Signed-off-by: Chris Mason commit 38e87880666091fe9c572a7a2ed2e771d97ca5aa Author: Chris Mason Date: Fri Jun 10 16:36:57 2011 -0400 Btrfs: make sure to recheck for bitmaps in clusters Josef recently changed the free extent cache to look in the block group cluster for any bitmaps before trying to add a new bitmap for the same offset. This avoids BUG_ON()s due covering duplicate ranges. But it didn't go quite far enough. A given free range might span between one or more bitmaps or free space entries. The code has looping to cover this, but it doesn't check for clustered bitmaps every time. This shuffles our gotos to check for a bitmap in the cluster for every new bitmap entry we try to add. Signed-off-by: Chris Mason commit d6124baf8a098aacdbb85ff5b171da68dad6930e Merge: 51e6525 7f4f057 Author: John W. Linville Date: Fri Jun 10 15:05:34 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 commit 7f4f0572df6c8eaa6a587bc212b0806ff37380dd Author: Ville Tervo Date: Fri May 27 11:16:21 2011 +0300 Bluetooth: Do not send SET_EVENT_MASK for 1.1 and earlier devices Some old hci controllers do not accept any mask so leave the default mask on for these devices. < HCI Command: Set Event Mask (0x03|0x0001) plen 8 Mask: 0xfffffbff00000000 > HCI Event: Command Complete (0x0e) plen 4 Set Event Mask (0x03|0x0001) ncmd 1 status 0x12 Error: Invalid HCI Command Parameters Signed-off-by: Ville Tervo Tested-by: Corey Boyle Tested-by: Ed Tomlinson Signed-off-by: Gustavo F. Padovan commit 26e7acf315ba5fc5ac4e7cbdb422a345e59898bd Author: David Miller Date: Thu May 19 17:37:45 2011 -0400 Bluetooth: Do not ignore errors returned from strict_strtol() Signed-off-by: David S. Miller Signed-off-by: Gustavo F. Padovan commit 0da67bed835fdde68ca0e924d2a2d6ac82c70833 Author: Luiz Augusto von Dentz Date: Thu May 12 11:13:15 2011 +0300 Bluetooth: fix shutdown on SCO sockets shutdown should wait for SCO link to be properly disconnected before detroying the socket, otherwise an application using the socket may assume link is properly disconnected before it really happens which can be a problem when e.g synchronizing profile switch. Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Gustavo F. Padovan commit 05e205429d3f73ad4f9f0d84e8a95e978237d6fd Merge: 7ab1fc0 3319550 Author: Takashi Iwai Date: Fri Jun 10 17:49:34 2011 +0200 Merge branch 'fix/asoc' into for-linus commit e5ea3f12d41d96edf4ad9374db2b1725e457acec Author: Jamie Iles Date: Fri Jun 10 13:44:49 2011 +0100 gpio/basic_mmio: add missing include of spinlock_types.h include/linux/basic_mmio_gpio.h uses a spinlock_t without including any of the spinlock headers resulting in this compiler warning. include/linux/basic_mmio_gpio.h:51:2: error: expected specifier-qualifier-list before 'spinlock_t' Explicitly include linux/spinlock_types.h to fix it. Signed-off-by: Jamie Iles Signed-off-by: Grant Likely commit 7ab1fc0af3464d231e17eb729a03495d93d0cc5c Author: Daniel T Chen Date: Fri Jun 10 10:14:01 2011 -0400 ALSA: hda: Fix inaudible internal speakers on CyberpowerPC Gamer Xplorer N57001 laptop BugLink: https://launchpad.net/bugs/761171 The original reporter needs the model=auto quirk for his internal speakers to be audible in the latest daily snapshot, so add an entry in the quirk table for his PCI SSID. A trivially different version of this patch using the model=asus quirk should be applied to the 2.6.38 and 2.6.39 stable kernels. We don't use the asus quirk in 3.0-rc2, because 3.0-rc2's autoparser is much improved. Reported-and-tested-by: tomdeering7 Signed-off-by: Daniel T Chen Signed-off-by: Takashi Iwai commit 890ee02ac12c02c4712b6d7dd062ff4d6d37691c Author: Takashi Iwai Date: Fri Jun 10 15:32:31 2011 +0200 ALSA: Use %pV for snd_printk() Clean up snd_printk() helper using the %pV prefix for recursive printks. This also automagically fixes an Oops with RO/NX-enabled modules. Tested-by: Maarten Lankhorst Signed-off-by: Takashi Iwai commit c0a20263dbe1fc5f394913d71063c9cd8282c5db Author: Takashi Iwai Date: Fri Jun 10 15:28:15 2011 +0200 ALSA: hda - Fix initialization of hp pins with master_mute in Realtek Some Reatlek model quirks use master_mute bool switch for controlling the master-mute of outputs. For these cases, the initialization of HP pins/amps were forgotten during the transition to the common automute helper function in 3.0 development time, and resulted in the muted HP output as default. This patch fixes the issue by adjusting the HP output explicitly with master_mute switch. Tested-by: Michal Hocko Signed-off-by: Takashi Iwai commit 20f5e0b36d968326fab3b720035f226113e34ae9 Author: Takashi Iwai Date: Fri Jun 10 09:31:54 2011 +0200 ALSA: hda - Fix invalid unsol tag for some alc262 model quirks The tag number was forgotten to be fixed after cleaning up the model quirks for ALC262 fujitsu and lenovo-3000 models. Tested-by: Michal Hocko Signed-off-by: Takashi Iwai commit 6eef3125886df260ca0e8758d141308152226f6a Author: Arne Jansen Date: Fri Jun 10 13:04:58 2011 +0200 btrfs: remove unneeded includes from scrub.c Signed-off-by: Arne Jansen commit 632dd772fcbde2ba37c0e8983bd38ef4a1eac906 Author: Arne Jansen Date: Fri Jun 10 12:07:07 2011 +0200 btrfs: reinitialize scrub workers Scrub starts the workers each time a scrub starts and stops them after it finished. This patch adds an initialization for the workers before each start, otherwise the workers behave strangely. Signed-off-by: Arne Jansen commit 8c51032f978bac5bec5dae0c5de4f85db97c1cc9 Author: Arne Jansen Date: Fri Jun 3 10:09:26 2011 +0200 btrfs: scrub: errors in tree enumeration due to the semantics of btrfs_search_slot the path can point to an invalid slot when ret > 0. This condition went unnoticed, which in turn could have led to an incomplete scrubbing. Signed-off-by: Arne Jansen commit ad3e34bba4b64ab8e1f5ea1a17768e1a0d9648ea Author: Josef Bacik Date: Wed Jun 8 14:45:50 2011 -0400 Btrfs: don't map extent buffer if path->skip_locking is set Arne's scrub stuff exposed a problem with mapping the extent buffer in reada_for_search. He searches the commit root with multiple threads and with skip_locking set, so we can race and overwrite node->map_token since node isn't locked. So fix this so that we only map the extent buffer if we don't already have a map_token and skip_locking isn't set. Without this patch scrub would panic almost immediately, with the patch it doesn't panic anymore. Thanks, Reported-by: Arne Jansen Signed-off-by: Josef Bacik commit 33195500edf260e8c8809ab9dfc67f50e0ce031f Author: Sangbeom Kim Date: Fri Jun 10 10:36:54 2011 +0900 ASoC: SAMSUNG: Fix the incorrect referencing of I2SCON register If DMA active status should be checked, I2SCON register should be referenced. In this patch, Fix the incorrect referencing of I2SCON register. Reported-by : Lakkyung Jung Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 13863a66c9c8a663665445cf05d68de96ff31830 Author: Jesper Juhl Date: Thu Jun 9 23:14:58 2011 +0200 genirq: Prevent potential NULL dereference in irq_set_irq_wake() In kernel/irq/manage.c::irq_set_irq_wake() we call irq_get_desc_buslock() which may return NULL, but the code dereferences the result unconditionally. irq_set_irq_wake() has lots of callers - I checked a few and I couldn't find anything that guarantees that they won't call it with some input that will cause irq_get_desc_buslock() to return NULL, so I think it's a good thing to test and -EINVAL was the most sane error code in this situation that I could think of. Not all callers test the return value of irq_set_irq_wake(), but those that do take != 0 to mean error as far as I can see, so they should be fine. I guess those that don't test actually should, but that's a different issue. Signed-off-by: Jesper Juhl Link: http://lkml.kernel.org/r/alpine.LNX.2.00.1106092300360.17868@swampdragon.chaosbits.net Signed-off-by: Thomas Gleixner commit 099b4d3b473db012a55ce6bec9ef594d0508e782 Merge: 09e1e9c 7e9f194 Author: Russell King Date: Fri Jun 10 08:57:14 2011 +0100 Merge branch 'davinci-next' of git://gitorious.org/linux-davinci/linux-davinci into fixes commit 09e1e9c4a4009a75c1dd716b6f0797fae3ab4dfd Merge: a901158 5f85e93 Author: Russell King Date: Fri Jun 10 08:56:01 2011 +0100 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into fixes commit 45694c2895c194ffa74becde4120af6eb6afeefe Merge: 7f45e5c 8c56cac Author: Linus Torvalds Date: Thu Jun 9 20:14:21 2011 -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: fix unexpectedly frozen port after ata_eh_reset() commit 7f45e5cd1718ed769295033ca214032848a0097d Merge: 6aeccec 10f0d07 Author: Linus Torvalds Date: Thu Jun 9 16:33:01 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc32, leon: bugfix in LEON SMP interrupt init sparc32, sun4m: bugfix in SMP IPI traphandler sparc: Remove unnecessary semicolons Add support for allocating irqs for bootbus devices Do not skip interrupt sources in sun4d interrupt handler and acknowledge interrupts correctly Restructure sun4d_build_device_irq so that timer interrupts can be allocated sparc: PCIC_PCI needs SPARC32 dependency sparc: Do not select GENERIC_HARDIRQS_NO_DEPRECATED sparc32,leon: add GRPCI2 PCI Host driver sparc32,leon: added LEON-common low-level PCI routines sparc32: added CONFIG_PCIC_PCI Kconfig setting commit 6aecceccf5aa626b0af203e54ca62cbf308c53d8 Merge: dfb863a 5d61b9f Author: Linus Torvalds Date: Thu Jun 9 16:27:42 2011 -0700 Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: perf: Use make kernelversion instead of parsing the Makefile kbuild: Hack for depmod not handling X.Y versions kbuild: Move depmod call to a separate script kbuild: Fix for empty SUBLEVEL or PATCHLEVEL kbuild: Fix KERNELVERSION for empty SUBLEVEL or PATCHLEVEL kbuild: silence Nothing to be done for 'all' message commit 10f0d07c51516bd24b040016c6d4304eef05f115 Author: Daniel Hellstrom Date: Thu Jun 9 02:54:09 2011 +0000 sparc32, leon: bugfix in LEON SMP interrupt init During converting per-cpu ticker to genirq layer some IRQ initialization code was removed by commit 2cf9530420e446bb61f665d02afeb81070106900 ("sparc32,leon: per-cpu ticker use genirq per-cpu handler"). This patch reintroduces the code at the same place it was removed from. IRQ12 - IRQ14 will crash on LEON SMP without this patch because it will run the SUN4M IRQ trap handler. Reported-by: Jan Andersson Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit a7d82a0a3cd547494294baee7f9764ea44bead73 Author: Daniel Hellstrom Date: Thu Jun 9 02:54:08 2011 +0000 sparc32, sun4m: bugfix in SMP IPI traphandler Three new IPIs were introduced by commit ecbc42b70acbc6327adefe9635db93fcf62bf59d ("sparc32, sun4m: Implemented SMP IPIs support for SUN4M machines"), the old handler was already prepared for IPIs but handled only IRQ14 and IRQ13, this patch adds support for the new IPI at IRQ12. The IPI trap handler looks at the mask rather than the pending IRQ/IPI, this bug may have masked the problem above, introduced by the same commit. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit a9011580a99cd4f21546381782582bfaf9e40675 Author: Russell King Date: Thu Jun 9 23:21:11 2011 +0100 ARM: extend Code: line by one 16-bit quantity for Thumb instructions Dump out the following 16-bit instruction to the faulting instruction in the Code: line. This allows Thumb-2 instructions to be properly encoded. Tested-by: Kevin Hilman Signed-off-by: Russell King commit b4c8cc88c18213688268d1d53a51d97ce2f19a64 Author: Yegor Yefremov Date: Thu Jun 9 15:05:48 2011 -0700 ethtool.h: fix typos Signed-off-by: Yegor Yefremov Signed-off-by: David S. Miller commit 5587912fcff1da2ff8494fa33cf9d92dc6982c11 Author: H Hartley Sweeten Date: Thu Jun 9 15:00:21 2011 -0700 ep93xx_eth: Update MAINTAINERS Lennert stated that he has been short on time lately. Since I'm maintaining the ep93xx core stuff, I'm willing to also take over maintaining the Ethernet driver. Signed-off-by: H Hartley Sweeten Acked-by: Mika Westerberg Acked-by: Lennert Buytenhek Signed-off-by: David S. Miller commit 96d7303e9cfb6a9bc664174a4dfdb6fa689284fe Author: Steffen Klassert Date: Sun Jun 5 20:48:47 2011 +0000 ipv4: Fix packet size calculation for raw IPsec packets in __ip_append_data We assume that transhdrlen is positive on the first fragment which is wrong for raw packets. So we don't add exthdrlen to the packet size for raw packets. This leads to a reallocation on IPsec because we have not enough headroom on the skb to place the IPsec headers. This patch fixes this by adding exthdrlen to the packet size whenever the send queue of the socket is empty. This issue was introduced with git commit 1470ddf7 (inet: Remove explicit write references to sk/inet in ip_append_data) Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit 5d61b9fd19d9f3cf653dbba615876e7792eea5ea Author: Michal Marek Date: Mon May 30 14:12:09 2011 +0200 perf: Use make kernelversion instead of parsing the Makefile Cc: Peter Zijlstra Cc: Paul Mackerras Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Signed-off-by: Michal Marek commit bfe5424a8b31624e7a476f959d552999f931e7c7 Author: Michal Marek Date: Thu Jun 9 16:35:41 2011 +0200 kbuild: Hack for depmod not handling X.Y versions depmod from module-init-tools < 3.13 and the busybox depmod check if the kernel release starts with ... To support these versions, we create a symlink with two numbers prepended. Signed-off-by: Michal Marek commit fc4da9a3e68b1f64237fafda084f61067f568a99 Author: Michal Marek Date: Thu Jun 9 15:35:22 2011 +0200 kbuild: Move depmod call to a separate script Do not bloat the Makefile with multiline shell statements. No user-visible change intended. Signed-off-by: Michal Marek commit 78d3bb4483ba1b206dbaaf209219ed517b01f7da Author: Michal Marek Date: Mon May 30 13:37:20 2011 +0200 kbuild: Fix for empty SUBLEVEL or PATCHLEVEL expr treats all numbers as decimals, so prepending a zero is safe. Note that the KERNEL_VERSION() macro still takes three arguments, 3.0 has to be written as KERNEL_VERSION(3,0,0). Signed-off-by: Michal Marek commit cacd54ef49b75cb31d78bb7b8dd900690aac7bdf Author: Michal Marek Date: Mon May 30 13:36:07 2011 +0200 kbuild: Fix KERNELVERSION for empty SUBLEVEL or PATCHLEVEL Omit the second dot for releases without SUBLEVEL. If PATCHLEVEL is also empty, only display VERSION. Signed-off-by: Michal Marek commit 33d78647dc409784c18aa71995346e6955802fe0 Author: Linus Walleij Date: Thu Jun 9 11:08:47 2011 +0200 gpio/nomadik: fix sleepmode for elder Nomadik The mach-nomadik machine did not compile properly due to bad ux500-specific functions being called. Introduce new state variables to fix this up. Reported-by: Axel Lin Cc: Alessandro Rubini Cc: Prafulla Wadaskar Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit dfb863a714b81848504d3b73ca0ecae90b91cbc0 Merge: 461df4d 307cfe7 Author: Linus Torvalds Date: Thu Jun 9 13:50:25 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc: Force page alignment for initrd reserved memory dtc/powerpc: remove obsolete .gitignore entries powerpc/85xx: fix race bug of calling request_irq after enable elbc interrupts powerpc/book3e: Fix CPU feature handling on e5500 in 32-bit mode powerpc/fsl_rio: Fix compile error when CONFIG_FSL_RIO not set commit 461df4ded3a143f09f9d0e870e7b16b787dc0591 Merge: 361932b 8aa460e Author: Linus Torvalds Date: Thu Jun 9 13:09:07 2011 -0700 Merge branch 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 * 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: staging: iio: max517: Fix iio_info changes Staging: mei: fix debug code Staging: cx23885: fix include of altera.h staging: iio: error case memory leak fix staging: ath6kl: Fix a kernel panic during suspend/resume staging: gma500: get control from firmware framebuffer if conflicts staging: gma500: Skip bogus LVDS VBT mode and check for LVDS before adding backlight staging: usbip: bugfix prevent driver unbind staging: iio: industrialio-trigger: set iio_poll_func private_data staging: rts_pstor: use bitwise operator instead of logical one staging: fix ath6kl build when CFG80211 is not enabled staging: brcm80211: fix for 'multiple definition of wl_msg_level' build err staging: fix olpc_dcon build, needs BACKLIGHT_CLASS_DEVICE Staging: remove STAGING_EXCLUDE_BUILD option Staging: altera: move .h file to proper place commit 361932bf84657b5dc0779046c751f06998c0d81f Merge: 90494cc 5f98ecd Author: Linus Torvalds Date: Thu Jun 9 12:52:44 2011 -0700 Merge branch 'stable/xen-swiotlb.bugfix' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6 * 'stable/xen-swiotlb.bugfix' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb-2.6: swiotlb: Export swioltb_nr_tbl and utilize it as appropiate. commit 90494cc567319cd53574306f3b94fb3c7ff8fe88 Merge: 5ebe550 7f20caf Author: Linus Torvalds Date: Thu Jun 9 12:52:30 2011 -0700 Merge branch 'stable/broadcom.ibft-bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6 * 'stable/broadcom.ibft-bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6: iscsi_ibft: iscsi_ibft_find unused variable i commit 5ebe5500fb808c9079ec81a7841482c72d30de56 Merge: 29cf519 62b62c5 Author: Linus Torvalds Date: Thu Jun 9 12:52:05 2011 -0700 Merge branch 'unicore32' of git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32 * 'unicore32' of git://git.kernel.org/pub/scm/linux/kernel/git/epip/linux-2.6-unicore32: unicore32: using generic-y format for one line asm-generic files unicore32: change PERCPU to PERCPU_SECTION unicore32: add KBUILD_DEFCONFIG with unicore32_defconfig (old debug_defconfig) unicore32: change zImage physical address, though it's PIC codes unicore32: move rtc-puv3.c to drivers/rtc directory commit 29cf519ee086686e5f0fc91cbb2d601dd1190f9c Author: Joe Perches Date: Thu Jun 9 11:23:37 2011 -0700 vsprintf: Update %pI6c to not compress a single 0 RFC 5952 (http://tools.ietf.org/html/rfc5952) mandates that 2 or more consecutive 0's are required before using :: compression. Update ip6_compressed_string to match the RFC and update the http reference as well. Signed-off-by: Joe Perches Signed-off-by: Linus Torvalds commit dac853ae89043f1b7752875300faf614de43c74b Author: Mathias Krause Date: Thu Jun 9 20:05:18 2011 +0200 exec: delay address limit change until point of no return Unconditionally changing the address limit to USER_DS and not restoring it to its old value in the error path is wrong because it prevents us using kernel memory on repeated calls to this function. This, in fact, breaks the fallback of hard coded paths to the init program from being ever successful if the first candidate fails to load. With this patch applied switching to USER_DS is delayed until the point of no return is reached which makes it possible to have a multi-arch rootfs with one arch specific init binary for each of the (hard coded) probed paths. Since the address limit is already set to USER_DS when start_thread() will be invoked, this redundancy can be safely removed. Signed-off-by: Mathias Krause Cc: Al Viro Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit fdd514e16bb2531c0c61ae8a1f87740ce217f630 Author: Tejun Heo Date: Thu Jun 9 20:43:59 2011 +0200 block: make disk_block_events() properly wait for work cancellation disk_block_events() should guarantee that the event work is not in flight on return and once blocked it shouldn't issue further cancellations. Because there was no synchronization between the first blocker doing cancel_delayed_work_sync() and the following blockers, the following blockers could finish before cancellation was complete, which broke both guarantees - event work could be in flight and cancellation could happen after return. This bug triggered WARN_ON_ONCE() in disk_clear_events() reported in bug#34662. https://bugzilla.kernel.org/show_bug.cgi?id=34662 Fix it by adding an outer mutex which protects both block count manipulation and work cancellation. -v2: Use outer mutex instead of bit waitqueue per Linus. Signed-off-by: Tejun Heo Tested-by: Sitsofe Wheeler Reported-by: Sitsofe Wheeler Reported-by: Borislav Petkov Reported-by: Meelis Roos Reported-by: Linus Torvalds Cc: Andrew Morton Cc: Jens Axboe Cc: Kay Sievers Signed-off-by: Jens Axboe commit c3af54afbac3675337cedf326b7b127ffa7f7327 Author: Tejun Heo Date: Thu Jun 9 20:43:55 2011 +0200 block: remove non-syncing __disk_block_events() and fold it into disk_block_events() After the previous update to disk_check_events(), nobody is using non-syncing __disk_block_events(). Remove @sync and, as this makes __disk_block_events() virtually identical to disk_block_events(), remove the underscore prefixed version. Signed-off-by: Tejun Heo Cc: Jens Axboe Signed-off-by: Jens Axboe commit a9dce2a3b4f0686dd66cb44d4826a59508bce969 Author: Tejun Heo Date: Thu Jun 9 20:43:54 2011 +0200 block: don't use non-syncing event blocking in disk_check_events() This patch is part of fix for triggering of WARN_ON_ONCE() in disk_clear_events() reported in bug#34662. https://bugzilla.kernel.org/show_bug.cgi?id=34662 disk_clear_events() blocks events, schedules and flushes the event work. It expects the work to have started execution on schedule and finished on return from flush. WARN_ON_ONCE() triggers if the event work hasn't executed as expected. This problem happens because __disk_block_events() fails to guarantee that the event work item is not in flight on return from the function in race-free manner. The problem is two-fold and this patch addresses one of them. When __disk_block_events() is called with @sync == %false, it bumps event block count, calls cancel_delayed_work() and return. This makes it impossible to guarantee that event polling is not in flight on return from syncing __disk_block_events() - if the first blocker was non-syncing, polling could still be in progress and later syncing ones would assume that the first blocker already canceled it. Making __disk_block_events() cancel_sync regardless of block count isn't feasible either as it may race with forced event checking in disk_clear_events(). As disk_check_events() is the only user of non-syncing __disk_block_events(), updating it to directly cancel and schedule event work is the easiest way to solve the issue. Note that there's another bug in __disk_block_events() and this patch doesn't fix the issue completely. Later patch will fix the other bug. Signed-off-by: Tejun Heo Tested-by: Sitsofe Wheeler Reported-by: Sitsofe Wheeler Reported-by: Borislav Petkov Reported-by: Meelis Roos Reported-by: Linus Torvalds Cc: Andrew Morton Cc: Jens Axboe Cc: Kay Sievers Signed-off-by: Jens Axboe commit 8d03e971cf403305217b8e62db3a2e5ad2d6263f Author: Filip Palian Date: Thu May 12 19:32:46 2011 +0200 Bluetooth: l2cap and rfcomm: fix 1 byte infoleak to userspace. Structures "l2cap_conninfo" and "rfcomm_conninfo" have one padding byte each. This byte in "cinfo" is copied to userspace uninitialized. Signed-off-by: Filip Palian Acked-by: Marcel Holtmann Signed-off-by: Gustavo F. Padovan commit e23535ca11525945bd7fca05ac5941efba232498 Merge: 0c1ad04 51e6525 Author: John W. Linville Date: Thu Jun 9 14:23:30 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit 8aa460e9e9f6eb6c23c8b244516bedddee901ceb Author: Roland Stigge Date: Thu Jun 9 16:21:00 2011 +0200 staging: iio: max517: Fix iio_info changes struct iio_info introduced a bug where the second channel of a MAX518 can't be used. This commit fixes the typo (using max518 instead of the max517 struct). Signed-off-by: Roland Stigge Signed-off-by: Greg Kroah-Hartman commit 8eb73c6c2675f708283822bd058ad1e416836ba2 Author: Dan Carpenter Date: Thu Jun 9 10:18:23 2011 +0300 Staging: mei: fix debug code ! has higher precedence than !=. H_RDY is 8 and since neither 0 nor 1 are equal to 8 the original condition was always true. Signed-off-by: Dan Carpenter Acked-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 3473f3c06a36865ae05993041fff35ee928342a7 Author: Josef Bacik Date: Thu Jun 9 10:15:17 2011 -0400 Btrfs: unlock the trans lock properly In btrfs_wait_for_commit if we came upon a transaction that had committed we just exited, but that's bad since we are holding the trans_lock. So break instead so that the lock is dropped. Thanks, Reported-by: David Sterba Signed-off-by: Josef Bacik commit 25b8b936ed44814a5ce6fc3b2a21401f33cd56f6 Author: Josef Bacik Date: Wed Jun 8 14:36:54 2011 -0400 Btrfs: don't map extent buffer if path->skip_locking is set Arne's scrub stuff exposed a problem with mapping the extent buffer in reada_for_search. He searches the commit root with multiple threads and with skip_locking set, so we can race and overwrite node->map_token since node isn't locked. So fix this so that we only map the extent buffer if we don't already have a map_token and skip_locking isn't set. Without this patch scrub would panic almost immediately, with the patch it doesn't panic anymore. Thanks, Reported-by: Arne Jansen Signed-off-by: Josef Bacik commit 4b80b8c2eee5282dab57f094fd3893c0c09f750c Author: Lars-Peter Clausen Date: Thu Jun 9 13:22:36 2011 +0200 ASoC: snd_soc_new_{mixer,mux,pga} make sure to use right DAPM context Currently it is possible that snd_soc_new_{mixer,mux,pga} is called with a DAPM context not matching the widgets context. This can lead to a wrong prefix_len calculation, which will result in undefined behaviour. To avoid this always use the DAPM context from the widget itself. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 977cb76d52e7aa040e18a84b29fe6fd80d79319b Author: Florian Fainelli Date: Mon Jun 6 10:15:49 2011 +0200 x86: devicetree: Add missing early_init_dt_setup_initrd_arch stub This patch fixes the following build failure: drivers/built-in.o: In function `early_init_dt_check_for_initrd': /home/florian/dev/kernel/x86/linux-2.6-x86/drivers/of/fdt.c:571: undefined reference to `early_init_dt_setup_initrd_arch' make: *** [.tmp_vmlinux1] Error 1 which happens as soon as we enable initrd support on a x86 devicetree platform such as Intel CE4100. Signed-off-by: Florian Fainelli Acked-by: Grant Likely Cc: Maxime Bizon Acked-by: Sebastian Andrzej Siewior Cc: stable@kernel.org # 2.6.39 Link: http://lkml.kernel.org/r/201106061015.50039.ffainelli@freebox.fr Signed-off-by: Thomas Gleixner commit a91d92875ee94e4703fd017ccaadb48cfb344994 Author: Stefano Stabellini Date: Fri Jun 3 09:51:34 2011 +0000 xen: partially revert "xen: set max_pfn_mapped to the last pfn mapped" We only need to set max_pfn_mapped to the last pfn mapped on x86_64 to make sure that cleanup_highmap doesn't remove important mappings at _end. We don't need to do this on x86_32 because cleanup_highmap is not called on x86_32. Besides lowering max_pfn_mapped on x86_32 has the unwanted side effect of limiting the amount of memory available for the 1:1 kernel pagetable allocation. This patch reverts the x86_32 part of the original patch. CC: stable@kernel.org Signed-off-by: Stefano Stabellini Signed-off-by: Konrad Rzeszutek Wilk commit 7f20caff0ef6ce87dbb044389d43bfa1093cd3af Author: Connor Hansen Date: Sun Jun 5 03:35:09 2011 -0700 iscsi_ibft: iscsi_ibft_find unused variable i int i is only needed if CONFIG_ACPI is set so move it within a new ifdef so kernels without ACPI don't allocate space for nothing. Fixes warning too. Signed-off-by: Connor Hansen Signed-off-by: Peter Jones [v2: Fixed warning when CONFIG_ACPI was defined] Signed-off-by: Konrad Rzeszutek Wilk commit db5e7ecc4abc91b9f26f0c0d79ef88a51e987d90 Author: Steven Rostedt Date: Thu Jun 9 08:40:59 2011 -0400 tracing: Fix regression in printk_formats file The fix to fix the printk_formats of modules broke the printk_formats of trace_printks in the kernel. The update of what to show via the seq_file was only updated if the passed in fmt was NULL, which happens only on the first iteration. The result was showing the first format every time instead of iterating through the available formats. Signed-off-by: Steven Rostedt commit 0cd114fff9ace7014c0d3ef8ab385fc5d3cf2d2f Author: Timur Tabi Date: Wed Jun 8 15:02:56 2011 -0500 ASoC: fsl: fix initialization of DMA buffers The DMA (PCM) driver used by some Freescale PowerPC supports separate DAIs for playback and capture, so DMA buffers should be allocated only for the initialized streams. Instead of checking for the number of active channels, which apparently is not reliable, check to see if the actual stream object exists. Also provide a better name for the DMA interrupt. Signed-off-by: Timur Tabi Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3115ae174620eeab4b16f52c8d0a9a35d2717e3c Author: Mark Brown Date: Wed Jun 8 18:07:49 2011 +0100 ASoC: WM8804 does not support sample rates below 32kHz Reported-by: Kieran O'Leary Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit 181e976327cf33095837c579608ebed42d2ad992 Author: Peter Foley Date: Wed Jun 8 20:58:32 2011 -0400 kbuild: silence Nothing to be done for 'all' message This patch silences a Makefile.asm-generic message by defining a dummy rule for all. make -f /usr/src/git/scripts/Makefile.asm-generic \ obj=arch/x86/include/generated/asm make[1]: Nothing to be done for `all'. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 373ce3020b03fb6199415ab866595c7d627bbc97 Author: Po-Yu Chuang Date: Thu Jun 9 08:42:17 2011 +0100 ARM: 6955/1: cmpxchg syscall should data abort if page not write If the page to cmpxchg is user mode read only (not write), we should simulate a data abort first. Signed-off-by: Po-Yu Chuang Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 720c60e1943a06cfd9472ad5a9967dec304e4394 Author: Nicolas Pitre Date: Thu Jun 9 05:05:27 2011 +0100 ARM: 6954/1: zImage: fix Thumb2 breakage Commit af3e4fd37a "ARM: 6859/1: Add writethrough dcache support for ARM926EJS processor" broke Thumb2 compilation by omitting to maintain the wide encoding for the added branch instructions which made the ARM926EJ-S record smaller than expected, breaking the record walk code. Signed-off-by: Nicolas Pitre Cc: Mark A. Greer Signed-off-by: Russell King commit f506cd48a4236b7045d092c9b92709ae6b4bdaf0 Author: Nicolas Pitre Date: Thu Jun 9 04:58:36 2011 +0100 ARM: 6953/1: DT: don't try to access physical address zero If the DT physical address is zero, this is equivalent to no DT. Especially when the actual RAM physical address is not located at zero, the result of phys_to_virt() would point to la-la-land and crash the kernel, which crash is completely silent this early during boot. Signed-off-by: Nicolas Pitre Acked-by: Grant Likely Signed-off-by: Russell King commit 6075e9df471e35f2ebf4c73c95c304d0473bd4b2 Author: Linus Walleij Date: Tue Jun 7 09:40:51 2011 +0100 ARM: 6949/2: mach-u300: fix compilaton warning in IO accessors The IO accessors for U300 were using u32 rather than the nominal void __iomem * type, rectify this by properly defining the virtual base for statically mapped peripherals to be void __iomem *. Requires fixing a field in struct clk as well. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit a0a54d37b4b1d1f55d1e81e8ffc223bb85472fa3 Author: Russell King Date: Thu Jun 9 10:12:41 2011 +0100 Revert "ARM: 6944/1: mm: allow ASID 0 to be allocated to tasks" This reverts commit 45b95235b0ac86cef2ad4480b0618b8778847479. Will Deacon reports that: In 52af9c6c ("ARM: 6943/1: mm: use TTBR1 instead of reserved context ID") I updated the ASID rollover code to use only the kernel page tables whilst updating the ASID. Unfortunately, the code to restore the user page tables was part of a later patch which isn't yet in mainline, so this leaves the code quite broken. We're also in the process of eliminating __ARCH_WANT_INTERRUPTS_ON_CTXSW from ARM, so lets revert these until we can properly sort out what we're doing with the context switching. Signed-off-by: Russell King commit 07989b7ad63af424886ff922fd3bcca9e00ffa78 Author: Russell King Date: Thu Jun 9 10:10:27 2011 +0100 Revert "ARM: 6943/1: mm: use TTBR1 instead of reserved context ID" This reverts commit 52af9c6cd863fe37d1103035ec7ee22ac1296458. Will Deacon reports that: In 52af9c6c ("ARM: 6943/1: mm: use TTBR1 instead of reserved context ID") I updated the ASID rollover code to use only the kernel page tables whilst updating the ASID. Unfortunately, the code to restore the user page tables was part of a later patch which isn't yet in mainline, so this leaves the code quite broken. We're also in the process of eliminating __ARCH_WANT_INTERRUPTS_ON_CTXSW from ARM, so lets revert these until we can properly sort out what we're doing with the ARM context switching. Signed-off-by: Russell King commit 4858f06e7d92ed2ebdb29ccbc079c127e675a89c Author: Yauheni Kaliuta Date: Wed Jun 8 17:12:02 2011 +0300 usb: musb: gadget: clear TXPKTRDY flag when set FLUSHFIFO Fixes mis-use of MUSB's hardware feature where it won't flush FIFOs when TXPKTRDY flag was set before and we are flushing setting both FLUSHFIFO and TXPKTRDY. In other words, we need to ensure that when we try to flush FIFOs, we don't accidentaly set TXPKTRDY bit too due to a read-back of the register. The MUSB Programming Guide says "May be set simultaneously with TxPktRdy to abort the packet that is currently being loaded into the FIFO". This is a situation where TXPKTRDY hasn't been set yet, but some data already loaded into the fifo. It looks, that if TXPKTRDY has been set before, and there is no loading in progress, but we set FLUSHFIFO with the TXPKTRDY, controller tries to use the same logic to abort loading and as the result just does nothing (because there is no packet been loaded currently) Signed-off-by: Yauheni Kaliuta [ balbi@ti.com : fixed one whitespace git complained about improved the commit log slightly ] Signed-off-by: Felipe Balbi commit 72887c8644384c0cc43b9298ae0659de383f2e9c Author: Márton Németh Date: Mon May 30 20:45:42 2011 +0200 usb: musb: host: compare status for negative error values Variable d is a struct usb_iso_packet_descriptor. The status filed is usually negative when an error happens. Signed-off-by: Márton Németh Signed-off-by: Felipe Balbi commit 62b62c5c29468412cadd39dfb1113d3f0a323cfe Author: Guan Xuetao Date: Thu May 26 18:17:43 2011 +0800 unicore32: using generic-y format for one line asm-generic files The patch adds one-line asm-generic files in arch/unicore32/include/asm/Kbuild Also, remove the old implementation in arch/unicore32/Makefile see commit from Sam Ravnborg kbuild: asm-generic support Signed-off-by: Guan Xuetao Acked-by: Arnd Bergmann commit 42733b3c4861799b3c30c1e416099324bb577960 Author: Guan Xuetao Date: Thu May 26 17:19:20 2011 +0800 unicore32: change PERCPU to PERCPU_SECTION The patch changes PERCPU to PERCPU_SECTION see commit from Tejun Heo <0415b00d175e0d8945e6785aad21b5f157976ce0> percpu: Always align percpu output section to PAGE_SIZE Signed-off-by: Guan Xuetao Acked-by: Tejun Heo commit 978b42e6f6f48560b18661a5e187aec7329a094b Author: Guan Xuetao Date: Mon May 16 15:28:19 2011 +0800 unicore32: add KBUILD_DEFCONFIG with unicore32_defconfig (old debug_defconfig) Rename debug_defconfig to unicore32_defconfig, which is a minimal config for PKUnity-v3 (130nm) SoC board. Also, add KBUILD_DEFCONFIG to use 'make defconfig'. Signed-off-by: Guan Xuetao Acked-by: Arnd Bergmann commit f4728fd21f6d81bb2100da7eb9c675f1a74ad30d Author: Guan Xuetao Date: Wed Apr 20 19:06:53 2011 +0800 unicore32: change zImage physical address, though it's PIC codes U-boot will load the kernel image to 48M physical memory address. The patch changes it to the correct address, though it's PIC codes. Signed-off-by: Guan Xuetao Acked-by: Arnd Bergmann commit 2809e80b8a73d556b2302e273966fb15db16c51e Author: Guan Xuetao Date: Thu May 26 16:43:27 2011 +0800 unicore32: move rtc-puv3.c to drivers/rtc directory The patch moves rtc driver for PKUnity-v3 SoC from arch/unicore32/kernel/ to drivers/rtc/, with renaming it to rtc-puv3.c. Also, Kconfig, Makefile, and MAINTAINERS are modified correspondingly. Signed-off-by: Guan Xuetao Acked-by: Arnd Bergmann commit 0c1ad04aecb975f2a2014e1bc5a2fa23923ecbd9 Author: WANG Cong Date: Thu Jun 9 00:28:13 2011 -0700 netpoll: prevent netpoll setup on slave devices In commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093 (netpoll: disable netpoll when enslave a device), we automatically disable netpoll when the underlying device is being enslaved, we also need to prevent people from setuping netpoll on devices that are already enslaved. Signed-off-by: WANG Cong Signed-off-by: David S. Miller commit fe6fe792faec3fc2d2db39b69651682b8c4e7fcb Author: Eric Dumazet Date: Wed Jun 8 06:07:07 2011 +0000 net: pmtu_expires fixes commit 2c8cec5c10bc (ipv4: Cache learned PMTU information in inetpeer) added some racy peer->pmtu_expires accesses. As its value can be changed by another cpu/thread, we should be more careful, reading its value once. Add peer_pmtu_expired() and peer_pmtu_cleaned() helpers Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 5f127133ee432d0b83ee26e8e3a3d7828ab5f2b1 Merge: 5cf42f7 fe47ae7 Author: Ingo Molnar Date: Thu Jun 9 09:14:34 2011 +0200 Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent commit 6c43e0465f56248d9da56f2c4665ce1696766814 Author: Wu Jiajun-B06378 Date: Tue Jun 7 21:46:51 2011 +0000 gianfar:localized filer table Each eTSEC device should own localized filer table. Signed-off-by: Jiajun Wu Signed-off-by: David S. Miller commit 307cfe715344e15eda12dad3bb14f794115ca823 Author: Benjamin Herrenschmidt Date: Thu Jun 9 16:52:38 2011 +1000 powerpc: Force page alignment for initrd reserved memory When using 64K pages with a separate cpio rootfs, U-Boot will align the rootfs on a 4K page boundary. When the memory is reserved, and subsequent early memblock_alloc is called, it will allocate memory between the 64K page alignment and reserved memory. When the reserved memory is subsequently freed, it is done so by pages, causing the early memblock_alloc requests to be re-used, which in my case, caused the device-tree to be clobbered. This patch forces the reserved memory for initrd to be kernel page aligned, and will move the device tree if it overlaps with the range extension of initrd. This patch will also consolidate the identical function free_initrd_mem() from mm/init_32.c, init_64.c to mm/mem.c, and adds the same range extension when freeing initrd. free_initrd_mem() is also moved to the __init section. Many thanks to Milton Miller for his input on this patch. [BenH: Fixed build without CONFIG_BLK_DEV_INITRD] Signed-off-by: Dave Carroll Cc: Benjamin Herrenschmidt Signed-off-by: Benjamin Herrenschmidt commit fab7c5b778b1e0ee89e75679b2d6a1405318bb11 Author: Jingoo Han Date: Thu Jun 9 04:26:45 2011 +0000 video: s3c-fb: move enabling channel for window This patch moves enabling channel for window, because there should be enabling channel before enabling window. If the sequence is reversed, it makes the problem in displaying images to lcd panel. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 13e6af8886f3225fb9141dc3b6915d84bd4ad4de Author: Jingoo Han Date: Thu Jun 9 04:26:38 2011 +0000 video: s3c-fb: fix virtual resolution checking This patch fixes mishandling in virtual resolution checking. Previously, virtual resolution is changed to virtual_x and virtual_y which mean the size for buffer allocation, when s3c_fb_check_var is called by fb_check_var. However, it is meaningless, since virtual_x and virtual_y are fixed and user cannot change virtual resolution. Therefore, virtual resolution should be more than resolution such as xres and yres. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 72ba4cb608e7937792f3d61349ef616bbffda832 Author: Jingoo Han Date: Thu Jun 9 04:26:31 2011 +0000 video: s3c-fb: fix misleading kfree in remove function This patch fixes misleading kfree in remove function. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit d660474e840a8ec5dc770f1a15d44e0045d411a6 Merge: 43d795c 704102a6 Author: Benjamin Herrenschmidt Date: Thu Jun 9 14:46:32 2011 +1000 Merge remote branch 'kumar/merge' into merge commit 43d795c6320fce4c1b3b38ae764fb465230745ef Merge: 06e8684 c49f878 Author: Benjamin Herrenschmidt Date: Thu Jun 9 14:46:12 2011 +1000 Merge remote branch 'gcl/powerpc/merge' into merge commit 303c805cb4dc1f5bc1d21f1c3757da0eae1e4f84 Author: Ilija Hadzic Date: Tue Jun 7 14:54:48 2011 -0400 drm/radeon: fix GUI idle IH debug statements debug statement for GUI idle interrupt is wrong and incorrectly reports CP EOP interrupt; trivial issue, but confusing for someone trying to distinguish interrupt sources while debugging ... fixed Signed-off-by: Ilija Hadzic Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit b20f9bef8d9ff54be266062eae365ebf4b12ca64 Author: Alex Deucher Date: Wed Jun 8 13:01:11 2011 -0400 drm/radeon/kms: check modes against max pixel clock Filter out modes that are higher than the max pixel clock. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 618c75e491a5a50cd3819eaf5f853fd87df3ae42 Author: Sascha Hauer Date: Fri Jun 3 12:54:14 2011 +0200 drm: fix fbs in DRM_IOCTL_MODE_GETRESOURCES ioctl The DRM_IOCTL_MODE_GETRESOURCES ioctl just returns bogus framebuffers. That is because the framebuffers for each file are in the filp_head member of struct drm_framebuffer, not in the head member. Signed-off-by: Sascha Hauer Signed-off-by: Dave Airlie commit 1780f2d3839a0d3eb85ee014a708f9e2c8f8ba0e Author: John Johansen Date: Wed Jun 8 15:07:47 2011 -0700 AppArmor: Fix sleep in invalid context from task_setrlimit Affected kernels 2.6.36 - 3.0 AppArmor may do a GFP_KERNEL memory allocation with task_lock(tsk->group_leader); held when called from security_task_setrlimit. This will only occur when the task's current policy has been replaced, and the task's creds have not been updated before entering the LSM security_task_setrlimit() hook. BUG: sleeping function called from invalid context at mm/slub.c:847 in_atomic(): 1, irqs_disabled(): 0, pid: 1583, name: cupsd 2 locks held by cupsd/1583: #0: (tasklist_lock){.+.+.+}, at: [] do_prlimit+0x61/0x189 #1: (&(&p->alloc_lock)->rlock){+.+.+.}, at: [] do_prlimit+0x94/0x189 Pid: 1583, comm: cupsd Not tainted 3.0.0-rc2-git1 #7 Call Trace: [] __might_sleep+0x10d/0x112 [] slab_pre_alloc_hook.isra.49+0x2d/0x33 [] kmem_cache_alloc+0x22/0x132 [] prepare_creds+0x35/0xe4 [] aa_replace_current_profile+0x35/0xb2 [] aa_current_profile+0x45/0x4c [] apparmor_task_setrlimit+0x19/0x3a [] security_task_setrlimit+0x11/0x13 [] do_prlimit+0xd2/0x189 [] sys_setrlimit+0x3b/0x48 [] system_call_fastpath+0x16/0x1b Signed-off-by: John Johansen Reported-by: Miles Lane Cc: stable@kernel.org Signed-off-by: James Morris commit f699bf2328521cc3e20c412fcdb9ffe1255c360f Author: NeilBrown Date: Thu Jun 9 11:43:04 2011 +1000 md:Documentation/md.txt - fix typo Reported-by: CoolCold Signed-off-by: NeilBrown commit 97b3d4aacfbd7186faf34597fcf1f55b8579be17 Author: Namhyung Kim Date: Thu Jun 9 11:43:01 2011 +1000 md/bitmap: remove unused fields from struct bitmap Get rid of ->syncchunk and ->counter_bits since they're never used. Also discard COUNTER_BYTE_RATIO which is unused. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 27d5ea04d08bea37bf651090e5f3c573d2390df8 Author: Namhyung Kim Date: Thu Jun 9 11:42:57 2011 +1000 md/bitmap: use proper accessor macro Use COUNTER()/NEEDED() macro instead of open-coding them. Signed-off-by: Namhyung Kim Signed-off-by: NeilBrown commit 01393f3d5836b7d62e925e6f4658a7eb22b83a11 Author: Namhyung Kim Date: Thu Jun 9 11:42:54 2011 +1000 md: check ->hot_remove_disk when removing disk Check pers->hot_remove_disk instead of pers->hot_add_disk in slot_store() during disk removal. The linear personality only has ->hot_add_disk and no ->hot_remove_disk, so that removing disk in the array resulted to following kernel bug: $ sudo mdadm --create /dev/md0 --level=linear --raid-devices=4 /dev/loop[0-3] $ echo none | sudo tee /sys/block/md0/md/dev-loop2/slot BUG: unable to handle kernel NULL pointer dereference at (null) IP: [< (null)>] (null) PGD c9f5d067 PUD 8575a067 PMD 0 Oops: 0010 [#1] SMP CPU 2 Modules linked in: linear loop bridge stp llc kvm_intel kvm asus_atk0110 sr_mod cdrom sg Pid: 10450, comm: tee Not tainted 3.0.0-rc1-leonard+ #173 System manufacturer System Product Name/P5G41TD-M PRO RIP: 0010:[<0000000000000000>] [< (null)>] (null) RSP: 0018:ffff880085757df0 EFLAGS: 00010282 RAX: ffffffffa00168e0 RBX: ffff8800d1431800 RCX: 000000000000006e RDX: 0000000000000001 RSI: 0000000000000002 RDI: ffff88008543c000 RBP: ffff880085757e48 R08: 0000000000000002 R09: 000000000000000a R10: 0000000000000000 R11: ffff88008543c2e0 R12: 00000000ffffffff R13: ffff8800b4641000 R14: 0000000000000005 R15: 0000000000000000 FS: 00007fe8c9e05700(0000) GS:ffff88011fa00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000000 CR3: 00000000b4502000 CR4: 00000000000406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process tee (pid: 10450, threadinfo ffff880085756000, task ffff8800c9f08000) Stack: ffffffff8138496a ffff8800b4641000 ffff88008543c268 0000000000000000 ffff8800b4641000 ffff88008543c000 ffff8800d1431868 ffffffff81a78a90 ffff8800b4641000 ffff88008543c000 ffff8800d1431800 ffff880085757e98 Call Trace: [] ? slot_store+0xaa/0x265 [] rdev_attr_store+0x89/0xa8 [] sysfs_write_file+0x108/0x144 [] vfs_write+0xb1/0x10d [] ? trace_hardirqs_on_caller+0x111/0x135 [] sys_write+0x4d/0x77 [] system_call_fastpath+0x16/0x1b Code: Bad RIP value. RIP [< (null)>] (null) RSP CR2: 0000000000000000 ---[ end trace ba5fc64319a826fb ]--- Signed-off-by: Namhyung Kim Cc: stable@kernel.org Signed-off-by: NeilBrown commit 9864c0053d3da4c5731ac8a6c4835179310bd40a Author: 马建朋 Date: Thu Jun 9 11:42:48 2011 +1000 md: Using poll /proc/mdstat can monitor the events of adding a spare disks Signed-off-by: majianpeng Signed-off-by: NeilBrown commit d744540cd39e93976c4c8401e140232444ef3b0b Author: Jonathan Brassow Date: Wed Jun 8 18:01:10 2011 -0500 MD: use is_power_of_2 macro Make use of is_power_of_2 macro. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit d6b212f4b19da5301e6b6eca562e5c7a2a6e8c8d Author: Jonathan Brassow Date: Wed Jun 8 18:00:28 2011 -0500 MD: raid5 do not set fullsync Add check to determine if a device needs full resync or if partial resync will do RAID 5 was assuming that if a device was not In_sync, it must undergo a full resync. We add a check to see if 'saved_raid_disk' is the same as 'raid_disk'. If it is, we can safely skip the full resync and rely on the bitmap for partial recovery instead. This is the legitimate purpose of 'saved_raid_disk', from md.h: int saved_raid_disk; /* role that device used to have in the * array and could again if we did a partial * resync from the bitmap */ Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 9c81075f436f867f580c2edf2350c0898cffc9d0 Author: Jonathan Brassow Date: Wed Jun 8 17:59:30 2011 -0500 MD: support initial bitmap creation in-kernel Add bitmap support to the device-mapper specific metadata area. This patch allows the creation of the bitmap metadata area upon initial array creation via device-mapper. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit c49f8789f532ae39019135ca038e9bc0d15aaa4a Author: Wolfram Sang Date: Sat Mar 12 17:44:10 2011 +0100 dtc/powerpc: remove obsolete .gitignore entries dtc was moved and .gitignores have been added to the new location. So, we can delete the old, forgotten ones. Signed-off-by: Wolfram Sang Cc: Benjamin Herrenschmidt Signed-off-by: Grant Likely commit 06e86849cf4019945a106913adb9ff0abcc01770 Merge: 13e12d1 3b3eca3 Author: Linus Torvalds Date: Wed Jun 8 15:58:51 2011 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM / Runtime: Fix loops in pm_runtime_clk_notify() PM / Intel IOMMU: Fix init_iommu_pm_ops() for CONFIG_PM unset commit 13e12d14e2dccc7995b8f15a5678a338ab4e6a8c Author: Linus Torvalds Date: Wed Jun 8 15:18:19 2011 -0700 vfs: reorganize 'struct inode' layout a bit This tries to make the 'struct inode' accesses denser in the data cache by moving a commonly accessed field (i_security) closer to other fields that are accessed often. It also makes 'i_state' just an 'unsigned int' rather than 'unsigned long', since we only use a few bits of that field, and moves it next to the existing 'i_flags' so that we potentially get better structure layout (although depending on config options, i_flags may already have packed in the same word as i_lock, so this improves packing only for the case of spinlock debugging) Out 'struct inode' is still way too big, and we should probably move some other fields around too (the acl fields in particular) for better data cache access density. Other fields (like the inode hash) are likely to be entirely irrelevant under most loads. Signed-off-by: Linus Torvalds commit 95f4efb2d78661065aaf0be57f5bf00e4d2aea1d Author: Linus Torvalds Date: Wed Jun 8 15:11:56 2011 -0700 selinux: simplify and clean up inode_has_perm() This is a rather hot function that is called with a potentially NULL "struct common_audit_data" pointer argument. And in that case it has to provide and initialize its own dummy common_audit_data structure. However, all the _common_ cases already pass it a real audit-data structure, so that uncommon NULL case not only creates a silly run-time test, more importantly it causes that function to have a big stack frame for the dummy variable that isn't even used in the common case! So get rid of that stupid run-time behavior, and make the (few) functions that currently call with a NULL pointer just call a new helper function instead (naturally called inode_has_perm_noapd(), since it has no adp argument). This makes the run-time test be a static code generation issue instead, and allows for a much denser stack since none of the common callers need the dummy structure. And a denser stack not only means less stack space usage, it means better cache behavior. So we have a win-win-win from this simplification: less code executed, smaller stack footprint, and better cache behavior. Signed-off-by: Linus Torvalds commit 4c1f683a4a343808536a5617ede85dfc34430472 Merge: 365a13a d6d0f66 Author: Linus Torvalds Date: Wed Jun 8 14:27:48 2011 -0700 Merge branch 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (28 commits) MAINTAINERS: add a maintainer to Gadget Framework USB: serial: add another 4N-GALAXY.DE PID to ftdi_sio driver Revert "USB: option: add ID for ZTE MF 330" drivers/usb/host/ohci-pxa27x.c: add missing clk_put USB: CONFIG_USB_GADGET_DUALSPEED is not user-configurable USB: dummy-hcd needs the has_tt flag usb-storage: redo incorrect reads usb/renesas_usbhs: free uep on removal usb/s3c-hsudc: fix error path usb/pxa25x_udc: cleanup the LUBBOCK err path usb/mv_udc_core: fix compile usb: gadget: include to fix compiling error USB: s3c-hsotg: Tone down debugging usb: remove bad dput after dentry_unhash USB: core: Tolerate protocol stall during hub and port status read musb: fix prefetch build failure USB: cdc-acm: Adding second ACM channel support for Nokia E7 and C7 usb-gadget: unlock data->lock mutex on error path in ep_write() USB: option Add blacklist for ZTE K3765-Z (19d2:2002) option: add Prolink PH300 modem IDs ... commit d6d0f665ad869c8ad8b8a42c4393e02dfe227e12 Author: Felipe Balbi Date: Wed Jun 8 19:16:28 2011 +0300 MAINTAINERS: add a maintainer to Gadget Framework I'll be continuing the amazing work Dave has done with the Gadget Framework. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 365a13a582e6a80c639c54dc2a83b03b9ff0169a Merge: d21131b a80fd9d Author: Linus Torvalds Date: Wed Jun 8 13:54:46 2011 -0700 Merge branch 'spi/merge' of git://git.secretlab.ca/git/linux-2.6 * 'spi/merge' of git://git.secretlab.ca/git/linux-2.6: spi/rtc-m41t93: Use spi_get_drvdata() for SPI devices spi/omap2: fix uninitialized variable commit d21131bb0aa9e2ffbd256c62ee270f3c9a2a9a2c Merge: 467701e 83fb086 Author: Linus Torvalds Date: Wed Jun 8 13:54:29 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: cifs: trivial: add space in fsc error message cifs: silence printk when establishing first session on socket CIFS ACL support needs CONFIG_KEYS, so depend on it possible memory corruption in cifs_parse_mount_options() cifs: make CIFS depend on CRYPTO_ECB cifs: fix the kernel release version in the default security warning message commit 7e24cf43f7dcd6312473f01b59be60662232ffce Merge: a26d31c 33726bf Author: Greg Kroah-Hartman Date: Wed Jun 8 13:50:00 2011 -0700 Merge 3.0-rc2 + Linus's latest into usb-linus This is needed to get the following MAINTAINERS patch to apply properly. Signed-off-by: Greg Kroah-Hartman commit a26d31cef06f43a76327c21235e75450869df2b8 Author: Steffen Sledz Date: Tue Jun 7 14:01:56 2011 +0200 USB: serial: add another 4N-GALAXY.DE PID to ftdi_sio driver E.g. newer CAN 2.0 A/B <=> USB 2.0 converters report idProduct=f3c2. Signed-off-by: Steffen Sledz Cc: stable Signed-off-by: Greg Kroah-Hartman commit f6a398298d34af66ec3a2d82a44a4dbc5277357d Author: Josef Bacik Date: Mon Jun 6 10:50:35 2011 -0400 Btrfs: fix duplicate checking logic When merging my code into the integration test the second check for duplicate entries got screwed up. This patch fixes it by dropping ret2 and just using ret for the return value, and checking if we got an error before adding the bitmap to the local list. Thanks, Signed-off-by: Josef Bacik commit 723bda2083d44edbd6be0f0b09f902120dc07442 Author: Josef Bacik Date: Fri May 27 16:11:38 2011 -0400 Btrfs: fix the allocator loop logic I was testing with empty_cluster = 0 to try and reproduce a problem and kept hitting early enospc panics. This was because our loop logic was a little confused. So this is what I did 1) Make the loop variable the ultimate decider on wether we should loop again isntead of checking to see if we had an uncached bg, empty size or empty cluster. 2) Increment loop before checking to see what we are on to make the loop definitions make more sense. 3) If we are on the chunk alloc loop don't set empty_size/empty_cluster to 0 unless we didn't actually allocate a chunk. If we did allocate a chunk we should be able to easily setup a new cluster so clearing empty_size/empty_cluster makes us less efficient. This kept me from hitting panics while trying to reproduce the other problem. Thanks, Signed-off-by: Josef Bacik commit 2cdc342c204dba69ca3b2ec43d8e6ff41ed920b8 Author: Josef Bacik Date: Fri May 27 14:07:49 2011 -0400 Btrfs: fix bitmap regression In cleaning up the clustering code I accidently introduced a regression by adding bitmap entries to the cluster rb tree. The problem is if we've maxed out the number of bitmaps we can have for the block group we can only add free space to the bitmaps, but since the bitmap is on the cluster we can't find it and we try to create another one. This would result in a panic because the total bitmaps was bigger than the max bitmaps that were allowed. This patch fixes this by checking to see if we have a cluster, and then looking at the cluster rb tree to see if it has a bitmap entry and if it does and that space belongs to that bitmap, go ahead and add it to that bitmap. I could hit this panic every time with an fs_mark test within a couple of minutes. With this patch I no longer hit the panic and fs_mark goes to completion. Thanks, Signed-off-by: Josef Bacik commit a80fd9db0e1909a03e5d5a29e2e73001e38d12f5 Author: Geert Uytterhoeven Date: Wed Jun 8 21:48:03 2011 +0200 spi/rtc-m41t93: Use spi_get_drvdata() for SPI devices One new offender detected by the recently increased type checking in platform_get_drvdata(): drivers/rtc/rtc-m41t93.c: In function ‘m41t93_remove’: drivers/rtc/rtc-m41t93.c:192: warning: passing argument 1 of ‘platform_get_drvdata’ from incompatible pointer type Use spi_get_drvdata() instead of platform_get_drvdata(), cfr. commit 42fea15d6dc410e62dac6a764142045280624a5b ("spi/rtc-{ds1390,ds3234,m41t94}: Use spi_get_drvdata() for SPI devices") Signed-off-by: Geert Uytterhoeven Signed-off-by: Grant Likely commit f2bb8f5cfb3bce595b2de251ed7638047fc4e530 Author: Josef Bacik Date: Wed May 25 13:10:16 2011 -0400 Btrfs: don't commit the transaction if we dont have enough pinned bytes I noticed when running an enospc test that we would get stuck committing the transaction in check_data_space even though we truly didn't have enough space. So check to see if bytes_pinned is bigger than num_bytes, if it's not don't commit the transaction. Thanks, Signed-off-by: Josef Bacik commit 3de85bb95cc50d0977cbb7a0c605e894be4c790d Author: Josef Bacik Date: Wed May 25 13:07:37 2011 -0400 Btrfs: noinline the cluster searching functions When profiling the find cluster code it's hard to tell where we are spending our time because the bitmap and non-bitmap functions get inlined by the compiler, so make that not happen. Thanks, Signed-off-by: Josef Bacik commit 86d4a77ba3dc4ace238a0556541a41df2bd71d49 Author: Josef Bacik Date: Wed May 25 13:03:16 2011 -0400 Btrfs: cache bitmaps when searching for a cluster If we are looking for a cluster in a particularly sparse or fragmented block group, we will do a lot of looping through the free space tree looking for various things, and if we need to look at bitmaps we will endup doing the whole dance twice. So instead add the bitmap entries to a temporary list so if we have to do the bitmap search we can just look through the list of entries we've found quickly instead of having to loop through the entire tree again. Thanks, Signed-off-by: Josef Bacik commit 467701e2862454b25e6cdf1171e0cea88ed5f21d Merge: 33726bf f124c6a Author: Linus Torvalds Date: Wed Jun 8 12:03:37 2011 -0700 Merge branch 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/bug.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen: off by one errors in multicalls.c xen: use the trigger info we already have to choose the irq handler commit 51e65257142a87fe46a1ce5c35c86c5baf012614 Author: Stanislaw Gruszka Date: Wed Jun 8 15:26:31 2011 +0200 iwlegacy: fix channel switch locking We use priv->mutex to avoid race conditions between chswitch_done() and mac_channel_switch(), when marking channel switch in progress. But chswitch_done() can be called in atomic context from rx_csa() or with mutex already taken from commit_rxon(). To fix remove mutex from chswitch_done() and use atomic bitops for marking channel switch pending. Cc: stable@kernel.org # 2.6.39+ Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit f3209bea110cade12e2b133da8b8499689cb0e2e Author: Johannes Berg Date: Wed Jun 8 13:27:29 2011 +0200 mac80211: fix IBSS teardown race Ignacy reports that sometimes after leaving an IBSS joining a new one didn't work because there still were stations on the list. He fixed it by flushing stations when attempting to join a new IBSS, but this shouldn't be happening in the first case. When I looked into it I saw a race condition in teardown that could cause stations to be added after flush, and thus cause this situation. Ignacy confirms that after applying my patch he hasn't seen this happen again. Reported-by: Ignacy Gawedzki Debugged-by: Ignacy Gawedzki Tested-by: Ignacy Gawedzki Cc: stable@kernel.org Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 43e4e0b94984b45d52048e3ac027cac15c718b65 Author: Wey-Yi Guy Date: Fri May 27 08:40:24 2011 -0700 iwlagn: send tx power command if defer cause by RXON not match During channge channel, tx power will not send to uCode, the tx power command should send after scan complete. but should also can send after RXON command. Stable fix identified by Stanislaw Gruszka . Signed-off-by: Wey-Yi Guy Cc: stable@kernel.org [2.6.38+] Signed-off-by: John W. Linville commit e2d4dc5af36673e64e29973c974246eafe63548f Author: Greg Kroah-Hartman Date: Wed Jun 8 09:18:32 2011 -0700 Staging: cx23885: fix include of altera.h The cx23885 driver was including staging/altera.h, but that file has moved back into the driver directory. Why a non-staging driver was including a staging driver is beyond me, but this fixes the build so everything is happy for now. For the record, it's not ok for a non-staging driver to depend on a staging one, as that implies that the non-staging one should also be in the staging tree if that's needed. Cc: Igor M. Liplianin Cc: Mauro Carvalho Chehab Signed-off-by: Greg Kroah-Hartman commit 83fb086e0ecd879a4676cf12fc7afc1f9ecd1784 Author: Jeff Layton Date: Wed Jun 8 07:35:24 2011 -0400 cifs: trivial: add space in fsc error message Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 33726bf2140a0e7c9de3ccd7cba6d69962f0b773 Merge: 5b28f6a d7ebe75 Author: Linus Torvalds Date: Wed Jun 8 08:36:15 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: perf: Fix comments in include/linux/perf_event.h perf: Comment /proc/sys/kernel/perf_event_paranoid to be part of user ABI perf python: Fix argument name list of read_on_cpu() perf evlist: Don't die if sample_{id_all|type} is invalid perf python: Use exception to propagate errors perf evlist: Remove dependency on debug routines perf, cgroups: Fix up for new API commit 5b28f6a25ee202046e2d57bd431671bc23cf3dd1 Merge: 46671b0 c226feb Author: Linus Torvalds Date: Wed Jun 8 08:22:29 2011 -0700 Merge branch 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/merge' of git://git.secretlab.ca/git/linux-2.6: gpio/samsung: make Kconfig options def_bool gpio/exynos4: Fix incorrect mapping of gpio pull-up macro to register setting GPIO: OMAP: add locking around calls to _set_gpio_triggering GPIO: OMAP: fix setting IRQWAKEN bits for OMAP4 GPIO: OMAP: fix section mismatch warnings gpio: Fix gpio-exynos4 build fails in mainline commit 46671b035504eb345124b4b275b37726a48bdbaa Merge: 18367c0 d364ee4 Author: Linus Torvalds Date: Wed Jun 8 08:21:48 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] soc_camera: preserve const attribute [media] uvc_entity: initialize return value [media] media: Fix media device minor registration [media] Make nchg variable signed because the code compares this variable against negative values [media] omap3isp: fix compiler warning [media] v4l: Fix media_entity_to_video_device macro argument name [media] ivtv: Internally separate encoder & decoder standard setting [media] ivtvfb: Add sanity check to ivtvfb_pan_display() [media] ivtvfb: use display information in info not in var for panning [media] ivtv: Make two ivtv_msleep_timeout calls uninterruptable [media] anysee: return EOPNOTSUPP for unsupported I2C messages [media] gspca - ov519: Set the default frame rate to 15 fps [media] gspca - stv06xx: Set a lower default value of gain for hdcs sensors [media] gspca: Remove coarse_expo_autogain.h [media] gspca - ov519: Change the ovfx2 bulk transfer size [media] gspca - ov519: Fix a regression for ovfx2 webcams commit 18367c0ec73671fbfea35f13ae52d39437c53eb5 Merge: 81de916 805c221 Author: Linus Torvalds Date: Wed Jun 8 08:19:14 2011 -0700 Merge branch 'drm-radeon-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-radeon-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms: disable hdmi audio by default drm/radeon/kms: fix for radeon on systems >4GB without hardware iommu drm/radeon/kms: set family for use in parser. commit c226feb013ce81a18512fb4827bf7c2352d8b470 Merge: 32919a2 85ec7b9 Author: Grant Likely Date: Wed Jun 8 09:12:16 2011 -0600 Merge branch 'for_3.0/gpio-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into gpio/merge commit 81de916f19cf5f1437c0b9ed817364f0f7c81961 Author: Linus Torvalds Date: Wed Jun 8 07:46:30 2011 -0700 tty_buffer: get rid of 'seen_tail' logic in flush_to_ldisc The flush_to_ldisc() work entry has special logic to notice when it has seen the original tail of the data queue, and it avoids continuing the flush if it sees that _original_ tail rather than the current tail. This logic can trigger in case somebody is constantly adding new data to the tty while the flushing is active - and the intent is to avoid excessive CPU usage while flushing the tty, especially as we used to do this from a softirq context which made it non-preemptible. However, since we no longer re-arm the work-queue from within itself (because that causes other trouble: see commit a5660b41af6a "tty: fix endless work loop when the buffer fills up"), this just leads to possible hung tty's (most easily seen in SMP and with a test-program that floods a pty with data - nobody seems to have reported this for any real-life situation yet). And since the workqueue isn't done from timers and softirq's any more, it's doubtful whether the CPU useage issue is really relevant any more. So just remove the logic entirely, and see if anybody ever notices. Alternatively, we might want to re-introduce the "re-arm the work" for just this case, but then we'd have to re-introduce the delayed work model or some explicit timer, which really doesn't seem worth it for this. Reported-and-tested-by: Guillaume Chazarain Cc: Alan Cox Cc: Felipe Balbi Cc: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 0f82bdf572fc6e42147151aa4d52542f7fc6d793 Author: Mark Brown Date: Tue Jun 7 23:42:04 2011 +0100 ASoC: Fix WM8962 headphone volume update for use of advanced caches Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit 5cf42f7055648aaba68ce95ecec69128d7fbf65f Merge: 86dd790 a4f18ed Author: Ingo Molnar Date: Wed Jun 8 16:09:55 2011 +0200 Merge branch 'tip/perf/urgent-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent commit 86dd7909c2c4ae3f219a9233bf0f095b05632ecf Merge: d7ebe75 cbf74ce Author: Ingo Molnar Date: Wed Jun 8 15:49:03 2011 +0200 Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent commit 805c22168da76a65c978017d0fe0d59cd048e995 Author: Alex Deucher Date: Mon Jun 6 17:39:16 2011 -0400 drm/radeon/kms: disable hdmi audio by default The current RE'd code causes blank screens and display problems on a lot of systems. So disable it by default for now. It can still be enabled by setting the audio parameter to 1. E.g.: radeon.audio=1 Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=38010 https://bugs.freedesktop.org/show_bug.cgi?id=27731 https://bugs.freedesktop.org/show_bug.cgi?id=35970 https://bugs.freedesktop.org/show_bug.cgi?id=26195 and many other reported problems. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 62fff811d73095bd95579d72f558f03c78f7914a Author: Daniel Haid Date: Wed Jun 8 20:04:45 2011 +1000 drm/radeon/kms: fix for radeon on systems >4GB without hardware iommu On my x86_64 system with >4GB of ram and swiotlb instead of a hardware iommu (because I have a VIA chipset), the call to pci_set_dma_mask (see below) with 40bits returns an error. But it seems that the radeon driver is designed to have need_dma32 = true exactly if pci_set_dma_mask is called with 32 bits and false if it is called with 40 bits. I have read somewhere that the default are 32 bits. So if the call fails I suppose that need_dma32 should be set to true. And indeed the patch fixes the problem I have had before and which I had described here: http://choon.net/forum/read.php?21,106131,115940 Acked-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit 428c6e3630b343d5b3034af914015d10c94bb90e Author: Dave Airlie Date: Wed Jun 8 19:58:29 2011 +1000 drm/radeon/kms: set family for use in parser. Wierdly the kms parser never initialised the family, it wasn't really used much, but the fmt checker patch started using it and it fell over. Reported-by: Markus Trippelsdorf Signed-off-by: Dave Airlie commit fd8a7de177b6f56a0fc59ad211c197a7df06b1ad Author: Thomas Gleixner Date: Tue Jul 20 14:34:50 2010 +0200 x86: cpu-hotplug: Prevent softirq wakeup on wrong CPU After a newly plugged CPU sets the cpu_online bit it enables interrupts and goes idle. The cpu which brought up the new cpu waits for the cpu_online bit and when it observes it, it sets the cpu_active bit for this cpu. The cpu_active bit is the relevant one for the scheduler to consider the cpu as a viable target. With forced threaded interrupt handlers which imply forced threaded softirqs we observed the following race: cpu 0 cpu 1 bringup(cpu1); set_cpu_online(smp_processor_id(), true); local_irq_enable(); while (!cpu_online(cpu1)); timer_interrupt() -> wake_up(softirq_thread_cpu1); -> enqueue_on(softirq_thread_cpu1, cpu0); ^^^^ cpu_notify(CPU_ONLINE, cpu1); -> sched_cpu_active(cpu1) -> set_cpu_active((cpu1, true); When an interrupt happens before the cpu_active bit is set by the cpu which brought up the newly onlined cpu, then the scheduler refuses to enqueue the woken thread which is bound to that newly onlined cpu on that newly onlined cpu due to the not yet set cpu_active bit and selects a fallback runqueue. Not really an expected and desirable behaviour. So far this has only been observed with forced hard/softirq threading, but in theory this could happen without forced threaded hard/softirqs as well. It's probably unobservable as it would take a massive interrupt storm on the newly onlined cpu which causes the softirq loop to wake up the softirq thread and an even longer delay of the cpu which waits for the cpu_online bit. Signed-off-by: Thomas Gleixner Reviewed-by: Peter Zijlstra Cc: stable@kernel.org # 2.6.39 commit 7e9f1945213cdd7cd11f29346ded07a81854b5af Author: Sekhar Nori Date: Sun Jun 5 17:33:33 2011 +0530 davinci: make PCM platform devices static Make the PCM device structures used in devices.c and devices-da8xx.c static as they are used only in the respective files. This was found when trying to build a single image for DaVinci and DA8x devices using runtime P2V support. Signed-off-by: Sekhar Nori commit 7416401661fad5c7ee9edb17cb54e7bff7a74dfe Author: Thomas Gleixner Date: Mon Jun 6 11:51:43 2011 +0200 arm: davinci: Fix fallout from generic irq chip conversion The code which does the chained handler setup was overwriting chip_data. Signed-off-by: Thomas Gleixner Tested-by: Holger Hans Peter Freyther Signed-off-by: Kevin Hilman Signed-off-by: Sekhar Nori commit 5bdbd4fa4df6891a6644d588c9a30d30e7c0af8e Author: Srinivas KANDAGATLA Date: Wed Jun 8 15:22:39 2011 +0900 sh: Fix up xchg/cmpxchg corruption with gUSA RB. gUSA special cases r15 for part of its login/out sequence, meaning that any parameters need to be explicitly prohibited from accidentally being assigned that particular register, and the compiler ultimately needs to use a temporary instead. Certain configurations have begun generating code paths that do indeed get allocated r15, resulting in immediate corruption of the exchanged value. This was observed in (amongst others) exit_mm() code generation where the xchg_u32 call was immediately corrupting a structure address. As this is a general gUSA restriction, the rest of the users likewise need to be updated to ensure sensible constraints. References: https://bugzilla.stlinux.com/show_bug.cgi?id=11229 Signed-off-by: Srinivas Kandagatla Reviewed-by: Stuart Menefy Signed-off-by: Paul Mundt commit 076f968b37f0232d883749da8f5031df5dea7ade Author: Jonathan Brassow Date: Tue Jun 7 17:51:30 2011 -0500 MD: add sync_super to mddev_t struct Add the 'sync_super' function pointer to MD array structure (struct mddev_s) If device-mapper (dm-raid.c) is to define its own on-disk superblock and be able to load it, there must still be a way for MD to initiate superblock updates. The simplest way to make this happen is to provide a pointer in the MD array structure that can be set by device-mapper (or other module) with a function to do this. If the function has been set, it will be used; otherwise, the method with be looked up via 'super_types' as usual. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 1ed7242e591af7e233234d483f12d33818b189d9 Author: Jonathan Brassow Date: Tue Jun 7 17:50:35 2011 -0500 MD: raid1 changes to allow use by device mapper MD RAID1: Changes to allow RAID1 to be used by device-mapper (dm-raid.c) Added the necessary congestion function and conditionalize calls requiring an array 'queue' or 'gendisk'. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 0fd018af37dadbb7826850883ad8abfecdb1a00b Author: Jonathan Brassow Date: Tue Jun 7 17:49:36 2011 -0500 MD: move thread wakeups into resume Move personality and sync/recovery thread starting outside md_run. Moving the wakeup's of the personality and sync/recovery threads out of md_run and into do_md_run and mddev_resume solves two issues: 1) It allows bitmap_load to be called before the sync_thread is run and 2) when MD personalities are used by device-mapper (dm-raid.c), the start-up of the array is better alligned with device-mapper primatives (CTR/resume/suspend/DTR). I/O - in this case, recovery operations - should not happen until after a resume has taken place. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit ac42450c7c814769bee963ae4b897c149bb0ab53 Author: Jonathan Brassow Date: Tue Jun 7 17:48:35 2011 -0500 MD: possible typo Make message a bit clearer by s/blocks/k/ I chose 'k' vs 'kiB' or 'kB' because it is what is used earlier in the message. 'k' may be a bit ambigous, but I think it's better than "blocks" which normally means 512, but means 1024 in MD. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 68866e425be2ef2664aa5c691bb3ab789736acf5 Author: Jonathan Brassow Date: Wed Jun 8 15:10:08 2011 +1000 MD: no sync IO while suspended Disallow resync I/O while the RAID array is suspended. Recovery, resync, and metadata I/O should not be allowed while a device is suspended. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 629acb6abac0ef217ee579e14084af2ce7381dbc Author: Jonathan Brassow Date: Wed Jun 8 15:10:08 2011 +1000 MD: no integrity register if no gendisk Don't attempt md_integrity_register if there is no gendisk struct available. When MD arrays are built via device-mapper, the gendisk structure is not available via mddev. Signed-off-by: Jonathan Brassow Signed-off-by: NeilBrown commit 0c1f91f27140cf3b6e38dc4e892adac241c73a20 Author: Sage Weil Date: Wed May 25 14:56:12 2011 -0700 ceph: unwind canceled flock state If we request a lock and then abort (e.g., ^C), we need to send a matching unlock request to the MDS to unwind our lock attempt to avoid indefinitely blocking other clients. Reported-by: Brian Chrisman Signed-off-by: Sage Weil commit 0e98728fa32d338907631349a8cc2afa07c0cb9a Author: Sage Weil Date: Tue Jun 7 20:40:35 2011 -0700 ceph: fix ENOENT logic in striped_read Getting ENOENT is equivalent to reading 0 bytes. Make that correction before setting up the hit_stripe and was_short flags. Fixes the following case: dd if=/dev/zero of=/mnt/fs_depot/dd3 bs=1 seek=1048576 count=0 dd if=/mnt/fs_depot/dd3 of=/root/ddout1 skip=8 bs=500 count=2 iflag=direct Reported-by: Henry C Chang Signed-off-by: Sage Weil commit c3cd62839aaa2cdb2b99687c9e44f1b300a4aece Author: Sage Weil Date: Wed Jun 1 16:08:44 2011 -0700 ceph: fix short sync reads from the OSD If we get a short read from the OSD because the object is small, we need to zero the remainder of the buffer. For O_DIRECT reads, the attempted range is not trimmed to i_size by the VFS, so we were actually looping indefinitely. Fix by trimming by i_size, and the unconditionally zeroing the trailing range. Reported-by: Jeff Wu Signed-off-by: Sage Weil commit 2584547230ae49b8de91ab3bb5e0a81898905b45 Author: Sage Weil Date: Fri Jun 3 09:37:09 2011 -0700 ceph: fix sync vs canceled write If we cancel a write, trigger the safe completions to prevent a sync from blocking indefinitely in ceph_osdc_sync(). Signed-off-by: Sage Weil commit 70b666c3b4cb2b96098d80e6f515e4bc6d37db5a Author: Sage Weil Date: Fri May 27 09:24:26 2011 -0700 ceph: use ihold when we already have an inode ref We should use ihold whenever we already have a stable inode ref, even when we aren't holding i_lock. This avoids adding new and unnecessary locking dependencies. Signed-off-by: Sage Weil commit e756682c8baa47da1648c0c016e9f48ed66bc32d Author: Steffen Klassert Date: Sun Jun 5 20:46:03 2011 +0000 xfrm: Fix off by one in the replay advance functions We may write 4 byte too much when we reinitialize the anti replay window in the replay advance functions. This patch fixes this by adjusting the last index of the initialization loop. Signed-off-by: Steffen Klassert Signed-off-by: David S. Miller commit cb0a02ecf95e5f47d92e7d4c513cc1f7aeb40cda Merge: d681f12 c5182b8 Author: Linus Torvalds Date: Tue Jun 7 19:21:11 2011 -0700 Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: genirq: Ensure we locate the passed IRQ in irq_alloc_descs() genirq: Fix descriptor init on non-sparse IRQs irq: Handle spurios irq detection for threaded irqs genirq: Print threaded handler in spurious debug output commit d681f1204d701cafbc45fa90e0ac977acddc33cc Merge: 6715a52 2601887 Author: Linus Torvalds Date: Tue Jun 7 19:20:53 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86/amd-iommu: Fix boot crash with hidden PCI devices x86/amd-iommu: Use only per-device dma_ops x86/amd-iommu: Fix 3 possible endless loops commit 6715a52a581c891e9a2034abe1c81ddb482d70b3 Merge: ef23980 6c6c54e Author: Linus Torvalds Date: Tue Jun 7 19:20:28 2011 -0700 Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Fix/clarify set_task_cpu() locking rules lockdep: Fix lock_is_held() on recursion sched: Fix schedstat.nr_wakeups_migrate sched: Fix cross-cpu clock sync on remote wakeups commit ef2398019b305827ea7130ebaf7bf521b444530e Merge: 12871a0 dcc32b8 Author: Linus Torvalds Date: Tue Jun 7 19:09:26 2011 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/nv40: fall back to paged dma object for the moment drm/nouveau: fix leak of gart mm node drm/nouveau: fix vram page mapping when crossing page table boundaries drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). drm/nouveau: don't create accel engine objects when noaccel=1 drm/nvc0: recognise 0xdX chipsets as NV_C0 drm/i915: Add a no lvds quirk for the Asus EeeBox PC EB1007 drm/i915: Share the common force-audio property between connectors drm/i915: Remove unused enum "chip_family" drm/915: fix relaxed tiling on gen2: tile height drm/i915/crt: Explicitly return false if connected to a digital monitor drm/i915: Replace ironlake_compute_wm0 with g4x_compute_wm0 drm/i915: Only print out the actual number of fences for i915_error_state drm/i915: s/addr & ~PAGE_MASK/offset_in_page(addr)/ drm: i915: correct return status in intel_hdmi_mode_valid() drm/i915: fix regression after clock gating init split drm/i915: fix if statement in ivybridge irq handler commit 12871a0bd67dd4db4418e1daafcd46e9d329ef10 Merge: ecff4fc f3aecea Author: Linus Torvalds Date: Tue Jun 7 19:09:17 2011 -0700 Merge branch 'drm-radeon-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-radeon-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm/radeon/kms/atom: fix PHY init drm/radeon/kms: add missing Evergreen texture formats to the CS parser drm/radeon/kms: viewport height has to be even drm/radeon/kms: remove duplicate reg from r600 safe regs drm/radeon/kms: add support for Llano Fusion APUs drm/radeon/kms: add llano pci ids drm/radeon/kms: fill in asic struct for llano drm/radeon/kms: add family ids for llano APUs drm/radeon: fix oops in ttm reserve when pageflipping (v2) drm/radeon/kms: clean up the radeon kms Kconfig drm/radeon/kms: fix thermal sensor reading on juniper drm/radeon/kms: add missing case for cayman thermal sensor drm/radeon/kms: add blit support for cayman (v2) drm/radeon/kms/blit: workaround some hw issues on evergreen+ commit ecff4fcc7bbaf060646d2160123f8dc02605a047 Merge: 58a9a36 1c3cc11 Author: Linus Torvalds Date: Tue Jun 7 19:07:22 2011 -0700 Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: timers: Consider slack value in mod_timer() clockevents: Handle empty cpumask gracefully commit 58a9a36b5444cbd921cdfc8ddd344d9983cc2c7b Merge: 22b174f 74b5c5b Author: Linus Torvalds Date: Tue Jun 7 19:06:28 2011 -0700 Merge branch 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/3.0' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: Initialize kvm before registering the mmu notifier KVM: x86: use proper port value when checking io instruction permission KVM: add missing void __user * cast to access_ok() call commit 22b174f8b7daf59f01b7b76e95c14edf41bf45fa Author: Grant Likely Date: Mon Jun 6 00:40:48 2011 -0600 MAINTAINERS: Saying goodbye to David Brownell We had to say goodbye when David passed away recently. David had a huge impact on our community, both personally in the lives of the people he worked with, and technically in the design and maintenance of several subsystems. He is greatly missed. He also leaves behind a number of much loved subsystems now orphaned. This patch updates the MAINTAINERS file for the areas that David was responsible for and adds an entry for him to the CREDITS file. Signed-off-by: Grant Likely Acked-by: Harry Wei Signed-off-by: Linus Torvalds commit 9c125d2af8f4d06ea62a4d8ff100af392a0a3a3b Merge: 4018237 1adffba Author: Linus Torvalds Date: Tue Jun 7 19:04:21 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6: fat: Fix corrupt inode flags when remove ATTR_SYS flag commit 40182373ac6cbbd10c6d08ba339947eea009d513 Author: David Howells Date: Mon Jun 6 15:47:23 2011 +0100 MN10300: Add missing _sdata declaration _sdata needs to be declared in the linker script now as of commit a2d063ac216c ("extable, core_kernel_data(): Make sure all archs define _sdata") Signed-off-by: David Howells Cc: Steven Rostedt Signed-off-by: Linus Torvalds commit db1c9dfa649f9bd8dc11415fbfe5cfe1e24c5b33 Author: David Howells Date: Mon Jun 6 15:47:14 2011 +0100 MN10300: die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs() die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs() to indicate that it wants to probe a kernel address. Instead it should use probe_kernel_read(). This fixes the problem of gdb seeing SIGILL rather than SIGTRAP when hitting the KGDB special breakpoint upon SysRq+g being seen. The problem was that die_if_no_fixup() was failing to read the opcode of the instruction that caused the exception, and thus not fixing up the exception. This caused gdb to get a S04 response to the $? request in its remote protocol rather than S05 - which would then cause it to continue with $C04 rather than $c in an attempt to pass the signal onto the inferior process. The kernel, however, does not support $Cnn, and so objects by returning an E22 response, indicating an error. gdb does not expect this and prints: warning: Remote failure reply: E22 and then returns to the gdb command prompt unable to continue. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 2e65d1f6eecc176ba1341541b5f41edd7eb4346a Author: David Howells Date: Mon Jun 6 15:47:05 2011 +0100 MN10300: Fix one of the kernel debugger cacheflush variants One of the kernel debugger cacheflush variants escaped proper testing. Two of the labels are wrong, being derived from the code that was copied to construct the variant. The first label results in the following assembler message: AS arch/mn10300/mm/cache-dbg-flush-by-reg.o arch/mn10300/mm/cache-dbg-flush-by-reg.S: Assembler messages: arch/mn10300/mm/cache-dbg-flush-by-reg.S:123: Error: symbol `debugger_local_cache_flushinv_no_dcache' is already defined And the second label results in the following linker message: arch/mn10300/mm/built-in.o:(.text+0x1d39): undefined reference to `mn10300_local_icache_inv_range_reg_end' arch/mn10300/mm/built-in.o:(.text+0x1d39): relocation truncated to fit: R_MN10300_PCREL16 against undefined symbol `mn10300_local_icache_inv_range_reg_end' To test this file the following configuration pieces must be set: CONFIG_AM34=y CONFIG_MN10300_CACHE_WBACK=y CONFIG_MN10300_DEBUGGER_CACHE_FLUSH_BY_REG=y CONFIG_MN10300_CACHE_MANAGE_BY_REG=y CONFIG_AM34_HAS_CACHE_SNOOP=n Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit aec040e29e804b40fa2934ec7a5be9f515f23098 Merge: 8ea656b 6c61cfe Author: Linus Torvalds Date: Tue Jun 7 18:47:53 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] fix kvm defines for 31 bit compile [S390] use generic RCU page-table freeing code [S390] qdio: Split SBAL entry flags [S390] kvm-s390: fix stfle facilities numbers >=64 [S390] kvm-s390: Fix host crash on misbehaving guests commit 8ea656bdc9d3c39e18f2bd5d8ffe0301fde64f72 Merge: d205df9 1fcecf2 Author: Linus Torvalds Date: Tue Jun 7 18:46:37 2011 -0700 Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (21 commits) ARM: OMAP4: MMC: increase delay for pbias arm: omap2plus: move NAND_BLOCK_SIZE out of boards omap4: hwmod: Enable the keypad omap3: Free Beagle rev gpios when they are read, so others can read them later arm: omap3: beagle: Ensure msecure is mux'd to be able to set the RTC omap: rx51: Don't power up speaker amplifier at bootup omap: rx51: Set regulator V28_A always on ARM: OMAP4: MMC: no regulator off during probe for eMMC arm: omap2plus: fix ads7846 pendown gpio request ARM: OMAP2: Add missing iounmap in omap4430_phy_init ARM: omap4: Pass core and wakeup mux tables to omap4_mux_init ARM: omap2+: mux: Allow board mux settings to be NULL OMAP4: fix return value of omap4_l3_init OMAP: iovmm: fix SW flags passed by user arch/arm/mach-omap1/dma.c: Invert calls to platform_device_put and platform_device_del OMAP2+: mux: fix compilation warnings OMAP: SRAM: Fix warning: format '%08lx' expects type 'long unsigned int' arm: omap3: cm-t3517: fix section mismatch warning OMAP2+: Fix 9 section mismatch(es) warnings from mach-omap2/built-in.o ARM: OMAP2: Add missing include of linux/gpio.h ... commit d205df9955feb9c2ae63ac1387804e225ff22605 Merge: 2421007 f90e5b5 Author: Linus Torvalds Date: Tue Jun 7 18:44:10 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes: GFS2: Processes waiting on inode glock that no processes are holding commit 24210071e0dd7da1a945a2a1686b93f2b2f3b410 Merge: 8397345 a50d28de Author: Linus Torvalds Date: Tue Jun 7 18:41:26 2011 -0700 Merge branch 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x * 'fbdev-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-3.x: video: Fix use-after-free by vga16fb on rmmod video: Convert vmalloc/memset to vzalloc efifb: Disallow manual bind and unbind efifb: Fix mismatched request/release_mem_region efifb: Enable write-combining drivers/video/pxa168fb.c: add missing clk_put drivers/video/imxfb.c: add missing clk_put fbdev: bf537-lq035: add missing blacklight properties type savagefb: Use panel CVT mode as default fbdev: sh_mobile_lcdcfb: Fix up fallout from MERAM changes. commit 8397345172aa5cdcbc133977af9d525f45b874ea Merge: 59c5f46 e6bc45d Author: Linus Torvalds Date: Tue Jun 7 18:36:59 2011 -0700 Merge branch 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: vfs: make unlink() and rmdir() return ENOENT in preference to EROFS lmLogOpen() broken failure exit usb: remove bad dput after dentry_unhash more conservative S_NOSEC handling commit 6cb79b3f3ba2b14590cac02ee13ab7410b6225ed Author: Joe Perches Date: Fri Jun 3 14:45:23 2011 +0000 sparc: Remove unnecessary semicolons Semicolons are not necessary after switch/while/for/if braces so remove them. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 9eeb08986f41c0740306f6f56cf04e619e2fe525 Author: oftedal Date: Wed Jun 1 11:11:41 2011 +0000 Add support for allocating irqs for bootbus devices Some devices that can generate interrupts are connected directly to the CPU through the bootbus on sun4d. This patch allows IRQs to be allocated for such devices. The information used for allocating interrupts for sbus devices are present at the corresponding SBI node. For bootbus devices this information is present in the bootbus node. Signed-off-by: Kjetil Oftedal Signed-off-by: David S. Miller commit ea160584574e345495e75ee4a7d3a7dbcad9e16c Author: oftedal Date: Wed Jun 1 11:04:20 2011 +0000 Do not skip interrupt sources in sun4d interrupt handler and acknowledge interrupts correctly During the introduction of genirq on sparc32 bugs were introduced in the interrupt handler for sun4d. The interrupts handler checks the status of the various sbus interfaces in the system and generates a virtual interrupt, based upon the location of the interrupt source. This lookup was broken by restructuring the code in such a way that index and shift operations were performed prior to comparing this against the values read from the interrupt controllers. This could cause the handler to loop eternally as the interrupt source could be skipped before any check was performed. Additionally sun4d_encode_irq performs shifting internally, so it should not be performed twice. In sun4d_unmask interrupts were not correctly acknowledged, as the corresponding bit it the interrupt mask was not actually cleared. Signed-off-by: Kjetil Oftedal Signed-off-by: David S. Miller commit 5fba17084e5d1b00bf24e17b2b580cfa7705e7be Author: oftedal Date: Wed Jun 1 10:43:50 2011 +0000 Restructure sun4d_build_device_irq so that timer interrupts can be allocated sun4d_build_device_irq was called without a valid platform_device when the system timer was initialized on sun4d systems. This caused a NULL pointer crash. Josip Rodin suggested that the current sun4d_build_device_irq should be split into two functions. So that the timer initialization could skip the slot and sbus interface detection code in sun4d_build_device_irq, as this does not make sence due to the timer interrupts not being generated from a device located on sbus. Signed-off-by: Kjetil Oftedal Signed-off-by: David S. Miller commit 3095ec895fd5ec19a7cb60b5cbfa766d68a74a24 Author: Greg Kroah-Hartman Date: Tue Jun 7 15:03:37 2011 -0700 Revert "USB: option: add ID for ZTE MF 330" This reverts commit a559d2c8c1bf652ea2d0ecd6ab4a250fcdb37db8. Turns out that device id 0x1d6b:0x0002 is a USB hub, which causes havoc when the option driver tries to bind to it. So revert this as it doesn't seem to be needed at all. Thanks to Michael Tokarev and Paweł Drobek for working on resolving this issue. Cc: Paweł Drobek Cc: Michael Tokarev Cc: Dominik Brodowski Cc: stable Signed-off-by: Greg Kroah-Hartman commit 3b3eca3116861113ccc0e1ca3b98cb43598f46a7 Author: Rafael J. Wysocki Date: Tue Jun 7 23:34:58 2011 +0200 PM / Runtime: Fix loops in pm_runtime_clk_notify() The loops over connection ID strings in pm_runtime_clk_notify() should actually iterate over the strings and not over the elements of the first of them, so make them behave as appropriate. This fixes a regression introduced by commit 600b776eb39a13a28b090 (OMAP1 / PM: Use generic clock manipulation routines for runtime PM). Reported-and-tested-by: Janusz Krzysztofik Signed-off-by: Rafael J. Wysocki commit 665c8c8ee405738375b679246b49342ce38ba056 Author: Williams, Mitch A Date: Tue Jun 7 14:22:57 2011 -0700 igb: fix i350 SR-IOV failture When SR-IOV is enabled, i350 devices fail to pass traffic. This is due to the driver attempting to enable RSS on the PF device, which is not supported by the i350. When max_vfs is specified on an i350 adapter, set the number of RSS queues to 1. This issue affects 2.6.39 as well. CC: stable@kernel.org Signed-off-by: Mitch Williams Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller commit 32919a28cc8470b1526f77b2f12cca8841b9ac62 Author: H Hartley Sweeten Date: Tue Jun 7 14:37:27 2011 -0600 gpio/samsung: make Kconfig options def_bool The Samsung GPIO drivers are always built-in when the relevant platform is selected.  Change the Kconfig symbol to def_bool y dependant on the platform. Signed-off-by: H Hartley Sweeten Acked-by: Kyungmin Park Signed-off-by: Grant Likely commit 8c56cacc724c7650b893d43068fa66044aa29a61 Author: Tejun Heo Date: Wed May 25 13:19:39 2011 +0200 libata: fix unexpectedly frozen port after ata_eh_reset() To work around controllers which can't properly plug events while reset, ata_eh_reset() clears error states and ATA_PFLAG_EH_PENDING after reset but before RESET is marked done. As reset is the final recovery action and full verification of devices including onlineness and classfication match is done afterwards, this shouldn't lead to lost devices or missed hotplug events. Unfortunately, it forgot to thaw the port when clearing EH_PENDING, so if the condition happens after resetting an empty port, the port could be left frozen and EH will end without thawing it, making the port unresponsive to further hotplug events. Thaw if the port is frozen after clearing EH_PENDING. This problem is reported by Bruce Stenning in the following thread. http://thread.gmane.org/gmane.linux.kernel/1123265 stable: I think we should weather this patch a bit longer in -rcX before sending it to -stable. Please wait at least a month after this patch makes upstream. Thanks. -v2: Fixed spelling in the comment per Dave Howorth. Signed-off-by: Tejun Heo Reported-by: Bruce Stenning Cc: stable@kernel.org Cc: Dave Howorth Signed-off-by: Jeff Garzik commit 99592ba4a80edb84938e7e0cf71fdecff1ce67fd Author: Rafael J. Wysocki Date: Tue Jun 7 21:32:31 2011 +0200 PM / Intel IOMMU: Fix init_iommu_pm_ops() for CONFIG_PM unset If CONFIG_PM is not set, init_iommu_pm_ops() introduced by commit 134fac3f457f3dd753ecdb25e6da3e5f6629f696 (PCI / Intel IOMMU: Use syscore_ops instead of sysdev class and sysdev) is not defined appropriately. Fix this issue. Reported-by: Tony Luck Signed-off-by: Rafael J. Wysocki commit 53aebb5312c797e4b63fb50473a55ed054b3cb2f Author: Andre Bartke Date: Thu Jun 2 00:21:45 2011 +0200 staging: iio: error case memory leak fix The data pointer should be freed in the error cases of adis16400_trigger_handler(). Signed-off-by: Andre Bartke Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 0d422f4237ce515678ebbb8781881e5d2e58b9d4 Author: Vasanthakumar Thiagarajan Date: Wed Jun 1 13:44:11 2011 +0530 staging: ath6kl: Fix a kernel panic during suspend/resume The kernel panic happens when we try to complete a pending scan request while going to suspend state. The cause for this kernel panic is accessing a freed memory (ar->arWmin). This is freed before ar6k_cfg80211_scanComplete_event() getting called where it is dereferenced. RIP: 0010:[] [] wlan_iterate_nodes+0x16/0xc0 [ath6kl] RSP: 0018:ffff8800719fbce8 EFLAGS: 00010296 RAX: ffff880071bbcc00 RBX: ffff880037b22520 RCX: ffff880077413c80 RDX: ffff880037b221c0 RSI: ffffffffa041ef10 RDI: 0000000000000020 RBP: ffff8800719fbd18 R08: 0000000000000001 R09: 0000000000000001 R10: 0000000000000400 R11: 0000000000000000 R12: 0000000000000010 R13: ffff8800719fbdd8 R14: 00007fff83a84b60 R15: 0000000000000001 FS: 00007fdccb8a7700(0000) GS:ffff880077400000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000148 CR3: 0000000070604000 CR4: 00000000000006f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process rmmod (pid: 1998, threadinfo ffff8800719fa000, task ffff880066712d80) Stack: 0000000000000000 ffff880037b22520 0000000000000010 ffff8800719fbdd8 00007fff83a84b60 0000000000000001 ffff8800719fbd28 ffffffffa0429fe2 ffff8800719fbd58 ffffffffa041ee5f ffff8800719fbd58 ffff880037b22520 Call Trace: [] wmi_iterate_nodes+0x12/0x20 [ath6kl] [] ar6k_cfg80211_scanComplete_event+0x3f/0xf0 [ath6kl] [] ar6000_close+0x61/0x100 [ath6kl] [] __dev_close_many+0x96/0x100 [] dev_close_many+0x9d/0x120 [] rollback_registered_many+0xe8/0x290 [] unregister_netdevice_queue+0x96/0x100 [] unregister_netdev+0x20/0x30 [] ar6000_destroy+0x119/0x180 [ath6kl] [] ar6k_cleanup_module+0x2a/0x33 [ath6kl] [] sys_delete_module+0x19e/0x270 [] system_call_fastpath+0x16/0x1b Code: c3 0f 1f 40 00 48 89 df e8 68 ff ff ff eb df 66 0f 1f 44 00 00 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 08 0f 1f 44 00 00 8b af 28 01 00 00 4c 8d 7f 08 49 89 fc 48 89 f3 49 89 d6 41 RIP [] wlan_iterate_nodes+0x16/0xc0 [ath6kl] RSP Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit aaa5c677910d313ca1318c905c799c459c6f0078 Author: Michael Chang Date: Mon May 30 14:28:25 2011 +0800 staging: gma500: get control from firmware framebuffer if conflicts Many Linux distributions would enable vesafb in order to display early stage boot splash. In this case, we will get garbled X Window screen if running X fbdev on psbfb. This is because fb0 is occupied by vesafb while psbfb is on fb1. They tried to drive the same pieces of hardware at the same time. With unmodified X start-up, it would try to use default fb0 framebuffer device and unfortunately it is now broken becaues fb1 supersedes it. We should let psbfb takeover framebuffer control from vesafb to get around this problem. See also commit : 4410f3910947dcea8672280b3adecd53cec4e85e Signed-off-by: Michael Chang Cc: Alan Cox Cc: stable Signed-off-by: Greg Kroah-Hartman commit 3ab8be53155617fa7ecc5b8cd259a458727a1d90 Author: Patrik Jakobsson Date: Tue May 24 13:04:56 2011 +0100 staging: gma500: Skip bogus LVDS VBT mode and check for LVDS before adding backlight On the Fit-PC2 the VBT reports an invalid fixed panel mode for LVDS, this gets in the way for SDVO. This patch makes VBT parsing skip the invalid mode. When there is no LVDS output the backlight support crashes so the patch also checks for this before enabling it. Signed-off-by: Patrik Jakobsson Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d3ac0778801708caecb2b172328064255a350432 Author: Arjan Mels Date: Fri May 20 23:25:46 2011 +0200 staging: usbip: bugfix prevent driver unbind Implemented pre_reset and post_reset methods of the driver to prevent the driver from being unbound upon a device reset. Because of this also the asynchronous reset introduced to prevent a race condition is no longer necessary (and sometimes causes problems, because it comes later then expected). Signed-off-by: Arjan Mels Cc: Greg Kroah-Hartman Cc: Takahiro Hirofuchi Cc: Max Vozeler Cc: usbip-devel Signed-off-by: Greg Kroah-Hartman commit c11c4eebdd75fc0f443a3f794a2ddc85afed1932 Author: Michael Hennerich Date: Wed May 25 14:42:07 2011 +0200 staging: iio: industrialio-trigger: set iio_poll_func private_data Failure to set iio_poll_func private_data, causes zero pointer access violations in all consumer trigger handlers. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cddac88f437b0370d3c0ac4c0b2d6c1ff914522d Author: Nicolas Kaiser Date: Wed May 25 02:03:02 2011 +0200 staging: rts_pstor: use bitwise operator instead of logical one Looks like a typo. Signed-off-by: Nicolas Kaiser Reviewed-by: Peter Huewe Signed-off-by: Greg Kroah-Hartman commit 827e4a07e8d0f6cf18e82988ae8daea3b5feab98 Author: Randy Dunlap Date: Tue May 17 15:15:19 2011 -0700 staging: fix ath6kl build when CFG80211 is not enabled Fix build errors when CONFIG_CFG80211 is not enabled: drivers/built-in.o: In function `ar6k_cfg80211_deinit': (.text+0x189b71): undefined reference to `cfg80211_scan_done' drivers/built-in.o: In function `ar6k_cfg80211_deinit': (.text+0x189b86): undefined reference to `wiphy_unregister' drivers/built-in.o: In function `ar6k_cfg80211_deinit': (.text+0x189b8d): undefined reference to `wiphy_free' drivers/built-in.o: In function `ar6k_cfg80211_init': (.text+0x18add7): undefined reference to `wiphy_new' drivers/built-in.o: In function `ar6k_cfg80211_init': (.text+0x18ae48): undefined reference to `wiphy_register' drivers/built-in.o: In function `ar6k_cfg80211_tkip_micerr_event': (.text+0x18ae95): undefined reference to `cfg80211_michael_mic_failure' drivers/built-in.o: In function `ar6k_cfg80211_scan_node': (.text+0x18afb5): undefined reference to `__ieee80211_get_channel' drivers/built-in.o: In function `ar6k_cfg80211_scan_node': (.text+0x18afd2): undefined reference to `cfg80211_inform_bss_frame' drivers/built-in.o: In function `ar6k_cfg80211_disconnect_event': (.text+0x18b046): undefined reference to `cfg80211_ibss_joined' drivers/built-in.o: In function `ar6k_cfg80211_disconnect_event': (.text+0x18b176): undefined reference to `cfg80211_connect_result' drivers/built-in.o: In function `ar6k_cfg80211_disconnect_event': (.text+0x18b190): undefined reference to `cfg80211_disconnected' drivers/built-in.o: In function `ar6k_cfg80211_connect_event': (.text+0x18b291): undefined reference to `cfg80211_get_bss' drivers/built-in.o: In function `ar6k_cfg80211_connect_event': (.text+0x18b457): undefined reference to `cfg80211_put_bss' drivers/built-in.o: In function `ar6k_cfg80211_connect_event': (.text+0x18b4fa): undefined reference to `cfg80211_roamed' Signed-off-by: Randy Dunlap Cc: Luis R. Rodriguez Cc: Joe Perches Cc: Naveen Singh Signed-off-by: Peter Foley Signed-off-by: Greg Kroah-Hartman commit e1c78de9a462f45dacdc8c27baf77aa680bcf8a4 Author: Roland Vossen Date: Tue May 24 13:35:21 2011 +0200 staging: brcm80211: fix for 'multiple definition of wl_msg_level' build err Reported-by: Linus Torvalds Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 91e623deccd5726ff97f1da6ac48dcc26048034a Author: Randy Dunlap Date: Wed May 25 19:17:06 2011 -0700 staging: fix olpc_dcon build, needs BACKLIGHT_CLASS_DEVICE Fix olpc_dcon.c build by selecting the needed kconfig symbol BACKLIGHT_CLASS_DEVICE. olpc_dcon.c:(.text+0x11588b): undefined reference to `backlight_device_register' Signed-off-by: Randy Dunlap Cc: Andres Salomon Cc: Chris Ball Cc: Jon Nettleton Signed-off-by: Greg Kroah-Hartman commit fe35a59e16fbd426194d5d081d59aa18752d1f4d Author: Greg Kroah-Hartman Date: Tue Jun 7 12:23:57 2011 -0700 Staging: remove STAGING_EXCLUDE_BUILD option Part of the requirement to be in the staging tree is that the code must build, so let's make it easier for people to build the code to test/prove this out. Based on a recommendation from Linus to implement this. Signed-off-by: Greg Kroah-Hartman commit 85ab9ee946da58f26d8a1d7b71664748bdc0f3b0 Author: Greg Kroah-Hartman Date: Tue Jun 7 12:19:14 2011 -0700 Staging: altera: move .h file to proper place Staging drivers should be self-contained, without files in the include/ directories. So move the altera.h file back to the driver directory for now, until it moves out of the staging tree. Cc: Igor M. Liplianin Cc: Mauro Carvalho Chehab Signed-off-by: Greg Kroah-Hartman commit 663dd6dcaf7e95526e469e91f41972a9c0cca30c Author: K. Y. Srinivasan Date: Tue May 17 15:25:38 2011 -0700 Connector: Correctly set the error code in case of success when dispatching receive callbacks The recent changes to the connector code introduced this bug where even when a callback was invoked, we would return an error resulting in double freeing of the skb. This patch fixes this bug. Signed-off-by: K. Y. Srinivasan Acked-by: Evgeniy Polyakov Cc: stable [.39] Signed-off-by: Greg Kroah-Hartman commit ea2c00095c022846dd8dfd211de05154d3e4e1b8 Author: K. Y. Srinivasan Date: Tue May 17 15:25:37 2011 -0700 Connector: Set the CN_NETLINK_USERS correctly The CN_NETLINK_USERS must be set to the highest valid index +1. Thanks to Evgeniy for pointing this out. Signed-off-by: K. Y. Srinivasan Acked-by: Evgeniy Polyakov Cc: stable [.39] Signed-off-by: Greg Kroah-Hartman commit a4f18ed11a4ddf327dd91cd19e237278600ad327 Author: Steven Rostedt Date: Tue Jun 7 09:26:46 2011 -0400 ftrace: Revert 8ab2b7efd ftrace: Remove unnecessary disabling of irqs Revert the commit that removed the disabling of interrupts around the initial modifying of mcount callers to nops, and update the comment. The original comment was outdated and stated that the interrupts were being disabled to prevent kstop machine, which was required with the old ftrace daemon, but was no longer the case. What the comment failed to mention was that interrupts needed to be disabled to keep interrupts from preempting the modifying of the code and then executing the code that was partially modified. Revert the commit and update the comment. Reported-by: Richard W.M. Jones Tested-by: Richard W.M. Jones Signed-off-by: Steven Rostedt commit 265a5b7ee3eb21a4d0e53e17d59ba6eada91af39 Author: Steven Rostedt Date: Mon Jun 6 22:35:13 2011 -0400 kprobes/trace: Fix kprobe selftest for gcc 4.6 With gcc 4.6, the self test kprobe function: kprobe_trace_selftest_target() is optimized such that kallsyms does not list it. The kprobes test uses this function to insert a probe and test it. But it will fail the test if the function is not listed in kallsyms. Adding a __used annotation keeps the symbol in the kallsyms table. Suggested-by: David Daney Cc: Masami Hiramatsu Signed-off-by: Steven Rostedt commit 57a27e1d6a3bb9ad4efeebd3a8c71156d6207536 Author: Luciano Coelho Date: Tue Jun 7 20:42:26 2011 +0300 nl80211: fix overflow in ssid_len When one of the SSID's length passed in a scan or sched_scan request is larger than 255, there will be an overflow in the u8 that is used to store the length before checking. This causes the check to fail and we overrun the buffer when copying the SSID. Fix this by checking the nl80211 attribute length before copying it to the struct. This is a follow up for the previous commit 208c72f4fe44fe09577e7975ba0e7fa0278f3d03, which didn't fix the problem entirely. Reported-by: Ido Yariv Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 6633d649788e72400b02098bd389585e2c56a557 Author: Mike McCormack Date: Tue Jun 7 08:58:31 2011 +0900 rtlwifi: Avoid modifying skbs that are resubmitted In the case we fail to allocate a new skb, the old skb should be resubmitted unmodified. Fixes bug introduced in a9e12869758430424804. Signed-off-by: Mike McCormack Acked-by: Larry Finger Signed-off-by: John W. Linville commit 4fea2e0e59dab863a63fa1638b86d850896cd861 Author: Mike McCormack Date: Tue May 31 08:50:24 2011 +0900 rtlwifi: Fix logic in rx_interrupt Should pass along packet if there's no CRC and no hardware error. Signed-off-by: Mike McCormack Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit bb77f6341728624314f488ebd8b4c69f2caa33ea Author: John W. Linville Date: Tue Jun 7 14:03:08 2011 -0400 Revert "mac80211: stop queues before rate control updation" This reverts commit 1d38c16ce4156f63b45abbd09dd28ca2ef5172b4. The mac80211 maintainer raised complaints about abuse of the CSA stop reason, and about whether this patch actually serves its intended purpose at all. Signed-off-by: John W. Linville commit 2872628680bad71a6734e7d379168f990a91cc09 Author: Jiri Slaby Date: Sun Jun 5 14:16:17 2011 +0200 TTY: ntty, add one more sanity check With the previous patch, we fixed another bug where read_buf was freed while we still was in n_tty_read. We currently check whether read_buf is NULL at the start of the function. Add one more check after we wake up from waiting for input. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 92f6fa09bd453ffe3351fa1f1377a1b7cfa911e6 Author: Jiri Slaby Date: Sun Jun 5 14:16:16 2011 +0200 TTY: ldisc, do not close until there are readers We restored tty_ldisc_wait_idle in 100eeae2c5c (TTY: restore tty_ldisc_wait_idle). We used it in the ldisc changing path to fix the case where there are tasks in n_tty_read waiting for data and somebody tries to change ldisc. Similar to the case above, there may be also tasks waiting in n_tty_read while hangup is performed. As 65b770468e98 (tty-ldisc: turn ldisc user count into a proper refcount) removed the wait-until-idle from all paths, hangup path won't wait for them to disappear either now. So add it back even to the hangup path. There is a difference, we need uninterruptible sleep as there is obviously HUP signal pending. So tty_ldisc_wait_idle now sleeps without possibility to be interrupted. This is what original tty_ldisc_wait_idle did. After the wait idle reintroduction (100eeae2c5c), we have had interruptible sleeps for the ldisc changing path. But as there is a 5s timeout anyway, we don't allow it to be interrupted from now on. It's not worth the added complexity of deciding what kind of sleep we want. Before 65b770468e98 tty_ldisc_release was called also from tty_ldisc_release. It is called from tty_release, so I don't think we need to restore that one. This is nicely reproducible after constifying the timing when drivers/tty/n_tty.c is patched as follows ("TTY: ntty, add one more sanity check" patch is needed to actually see it explode): %% -1548,6 +1549,7 @@ static int n_tty_open(struct tty_struct *tty) /* These are ugly. Currently a malloc failure here can panic */ if (!tty->read_buf) { + msleep(100); tty->read_buf = kzalloc(N_TTY_BUF_SIZE, GFP_KERNEL); if (!tty->read_buf) return -ENOMEM; %% -1785,6 +1788,7 @@ do_it_again: break; } timeout = schedule_timeout(timeout); + msleep(20); continue; } __set_current_state(TASK_RUNNING); ===== With a process: ===== while (1) { int fd = open(argv[1], O_RDWR); read(fd, buf, sizeof(buf)); close(fd); } ===== and its child: ===== setsid(); while (1) { int fd = open(tty, O_RDWR|O_NOCTTY); ioctl(fd, TIOCSCTTY, 1); vhangup(); close(fd); usleep(100 * (10 + random() % 1000)); } ===== EOF ===== References: https://bugzilla.novell.com/show_bug.cgi?id=693374 References: https://bugzilla.novell.com/show_bug.cgi?id=694509 Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Linus Torvalds Cc: stable [32, 33, 34, 39] Signed-off-by: Greg Kroah-Hartman commit 0bf8fa04e80a562641f687547053f98670f25cf9 Author: Thomas Abraham Date: Tue Jun 7 14:04:49 2011 +0530 gpio/exynos4: Fix incorrect mapping of gpio pull-up macro to register setting The S3C_GPIO_PULL_UP macro value incorrectly maps to a reserved setting of GPIO pull up/down registers on Exynos4 platform. Fix this incorrect mapping by adding wrappers to the s3c_gpio_setpull_updown and s3c_gpio_getpull_updown functions. Signed-off-by: Thomas Abraham Acked-by: Kyungmin Park Signed-off-by: Grant Likely commit 1312ba40c0d00f0a5cfcfe3afc222fcef2a90b56 Author: J Freyensee Date: Wed May 25 14:56:43 2011 -0700 pti: PTI semantics fix in pti_tty_cleanup. This patch fixes a semantics issue in the pti_tty_cleanup() routine. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit 1dae42bff57f7a61577ee881265985a660d35c07 Author: J Freyensee Date: Wed May 25 14:45:40 2011 -0700 pti: ENXIO error case memory leak PTI fix. This patch fixes a memory leak that can occur in the error case ENXIO is returned in the pti_tty_install() routine. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit 29021bccea0dc42d7d101004058438a9a4e693b1 Author: J Freyensee Date: Wed May 25 14:38:18 2011 -0700 pti: double-free security PTI fix This patch fixes a double-free error that will not always be seen unless /dev/pti char interface is stressed. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit 9d031d94da453077bbc6108b7822fc751ac85299 Author: Shahar Lev Date: Mon May 23 11:36:11 2011 +0300 drivers:misc: ti-st: fix skipping of change remote baud Before the incrementing of ptr in skip_change_remote_baud, it points to cur_action, but the increment is done by the size of nxt_action instead. This could cause ptr to not point to a bts_action structure, which is harmful for the increment of ptr done in download_firmware. Therefore, the skipping is first done for cur_action. Signed-off-by: Shahar Lev Signed-off-by: Greg Kroah-Hartman commit bb2b43fefab723f4a0760146e7bed59d41a50e53 Author: Andrew Morton Date: Mon May 23 14:44:19 2011 -0700 drivers/base/platform.c: don't mark platform_device_register_resndata() as __init_or_module This reverts 737a3bb9416ce2a7c7a4 ("Driver core: move platform device creation helpers to .init.text (if MODULE=n)"). That patch assumed that platform_device_register_resndata() is only ever called from __init code but that isn't true in the case ioctl->drm_ioctl->radeon_cp_init(). Addresses https://bugzilla.kernel.org/show_bug.cgi?id=35192 Cc: Uwe Kleine-König Reported-by: Anthony Basile Cc: Greg KH Cc: David Airlie Cc: Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 7316a9f2a94c14e66e9421a777dffc509a2fe0e3 Author: Steven Rostedt Date: Mon May 23 16:45:32 2011 -0400 st_kim: Handle case of no device found for ID 0 Running ktest.pl, I hit this bug: [ 19.780654] BUG: unable to handle kernel NULL pointer dereference at 0000000c [ 19.780660] IP: [] dev_get_drvdata+0xc/0x46 [ 19.780669] *pdpt = 0000000031daf001 *pde = 0000000000000000 [ 19.780673] Oops: 0000 [#1] SMP [ 19.780680] Dumping ftrace buffer:^M [ 19.780685] (ftrace buffer empty) [ 19.780687] Modules linked in: ide_pci_generic firewire_ohci firewire_core evbug crc_itu_t e1000 ide_core i2c_i801 iTCO_wdt [ 19.780697] [ 19.780700] Pid: 346, comm: v4l_id Not tainted 2.6.39-test-02740-gcaebc16-dirty #4 /DG965MQ [ 19.780706] EIP: 0060:[] EFLAGS: 00010202 CPU: 0 [ 19.780709] EIP is at dev_get_drvdata+0xc/0x46 [ 19.780712] EAX: 00000008 EBX: f1e37da4 ECX: 00000000 EDX: 00000000 [ 19.780715] ESI: f1c3f200 EDI: c33ec95c EBP: f1e37d80 ESP: f1e37d80 [ 19.780718] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 [ 19.780721] Process v4l_id (pid: 346, ti=f1e36000 task=f2bc2a60 task.ti=f1e36000) [ 19.780723] Stack: [ 19.780725] f1e37d8c c117d395 c33ec93c f1e37db4 c117a0f9 00000002 00000000 c1725e54 [ 19.780732] 00000001 00000007 f2918c90 f1c3f200 c33ec95c f1e37dd4 c1789d3d 22222222 [ 19.780740] 22222222 22222222 f2918c90 f1c3f200 f29194f4 f1e37de8 c178d5c4 c1725e54 [ 19.780747] Call Trace: [ 19.780752] [] st_kim_ref+0x28/0x41 [ 19.780756] [] st_register+0x29/0x562 [ 19.780761] [] ? v4l2_open+0x111/0x1e3 [ 19.780766] [] fmc_prepare+0x97/0x424 [ 19.780770] [] fm_v4l2_fops_open+0x70/0x106 [ 19.780773] [] ? v4l2_open+0x111/0x1e3 [ 19.780777] [] v4l2_open+0x158/0x1e3 [ 19.780782] [] chrdev_open+0x22c/0x276 [ 19.780787] [] __dentry_open+0x35c/0x581 [ 19.780792] [] nameidata_to_filp+0x7c/0x96 [ 19.780795] [] ? cdev_put+0x57/0x57 [ 19.780800] [] do_last+0x743/0x9d4 [ 19.780804] [] ? path_init+0x1ee/0x596 [ 19.780808] [] path_openat+0x10c/0x597 [ 19.780813] [] ? trace_hardirqs_off+0x27/0x37 [ 19.780817] [] ? local_clock+0x78/0xc7 [ 19.780821] [] do_filp_open+0x39/0xc2 [ 19.780827] [] ? _raw_spin_unlock+0x4c/0x5d^M [ 19.780831] [] ? alloc_fd+0x19e/0x1b7 [ 19.780836] [] do_sys_open+0xb7/0x1bd [ 19.780840] [] ? sys_munmap+0x78/0x8d [ 19.780844] [] sys_open+0x36/0x58 [ 19.780849] [] sysenter_do_call+0x12/0x38 [ 19.780852] Code: d8 2f 20 c3 01 83 15 dc 2f 20 c3 00 f0 ff 00 83 05 e0 2f 20 c3 01 83 15 e4 2f 20 c3 00 5d c3 55 89 e5 3e 8d 74 26 00 85 c0 74 28 <8b> 40 04 83 05 e8 2f 20 c3 01 83 15 ec 2f 20 c3 00 85 c0 74 13 ^M [ 19.780889] EIP: [] dev_get_drvdata+0xc/0x46 SS:ESP 0068:f1e37d80 [ 19.780894] CR2: 000000000000000c [ 19.780898] ---[ end trace e7d1d0f6a2d1d390 ]--- The id of 0 passed to st_kim_ref() found no device, keeping pdev null, and causing pdev->dev cause a NULL pointer dereference. After having st_kim_ref() check for NULL, the st_unregister() function needed to be updated to handle the case that st_gdata was not set by the st_kim_ref(). Signed-off-by: Steven Rostedt Signed-off-by: Greg Kroah-Hartman commit 5daf538a0313509ecdeb5b7a61257f39881f9361 Author: Randy Dunlap Date: Sun May 22 17:38:02 2011 -0700 firmware: fix GOOGLE_SMI kconfig dependency warning Is it meaningful/useful to enable EFI_VARS but not EFI? That's what GOOGLE_SMI does. Make it enable EFI also. Fixes this kconfig dependency warning: warning: (GOOGLE_SMI) selects EFI_VARS which has unmet direct dependencies (EFI) Signed-off-by: Randy Dunlap Acked-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit cb01ece3ea5dec16ac7bab30069c7736b59f7dea Author: leitao@linux.vnet.ibm.com Date: Thu May 26 11:18:39 2011 -0300 8250: Fix capabilities when changing the port type When changing the port type, the capabilities flags should be changed also, otherwise the capabilities will not correspond to the port type, which make set_sleep() crash on rmmod. This patch just assign the correct capabilites when the port changes. Signed-off-by: Breno Leitao CC: Michael Reed Signed-off-by: Greg Kroah-Hartman commit 1798ca13bfae8cc7c0ef82c034c3c4951ecaeb88 Author: Alan Cox Date: Tue May 24 12:35:48 2011 +0100 8250_pci: Fix missing const from merges Signed-off-by: Alan Cox Signed-off-by: Antony Pavlov Signed-off-by: Borislav Petkov Signed-off-by: Vasily Averin Signed-off-by: Guenter Roeck Signed-off-by: Greg Kroah-Hartman commit 470f22975448a65a1084a6f0721fa5df15323f02 Author: Boojin Kim Date: Fri May 27 19:04:03 2011 -0700 ARM: SAMSUNG: serial: Fix on handling of one clock source for UART This patch fixes the way of comparison for handling of two or more clock sources for UART. For example, if just only one clock source is defined even though there are two clock sources for UART, the serial driver does not set proper clock up. Of course, it is problem. So this patch changes the condition of comparison to avoid useless setup clock and adds a flag 'NO_NEED_CHECK_CLKSRC' which means selection of source clock is not required. In addition, since the Exynos4210 has only one clock source for UART this patch adds the flag into its common_init_uarts(). Signed-off-by: Boojin Kim Signed-off-by: Kukjin Kim Cc: stable Signed-off-by: Greg Kroah-Hartman commit af99d6f0037d970084b03d9690f50e34d6f70dae Author: Lennart Sorensen Date: Wed Jun 1 14:38:41 2011 -0400 serial: ioremap warning fix for jsm driver. I saw a warning about ioremap from the jsm driver on a system which looked like this: resource map sanity check conflict: 0xe0200800 0xe02017ff 0xe0200800 0xe0200fff 0000:01:08.0 Turns out the warning is valid. The jsm driver has been asking to ioremap 0x1000 forever, but in fact only 8 port chips have 0x1000 bytes of memory. 4 port chips have 0x800 and 2 port chips have 0x400 according to the data sheet. It makes more sense to map the size of the region rather than a hard coded value. If you happen to have the region legitimately mapped to a base address that is not 4K aligned, ioremap complains otherwise. Signed-off-by: Len Sorensen Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7febe2be36035e5c75128e8cc3baeb1f30fa2bc4 Author: Julia Lawall Date: Wed Jun 1 19:10:06 2011 +0200 drivers/usb/host/ohci-pxa27x.c: add missing clk_put Add a label before the call to clk_put and jump to that in the error handling code that occurs after the call to clk_get has succeeded. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Acked-by: Eric Miao Signed-off-by: Greg Kroah-Hartman commit 97b2f900335befbf6c4323ea6fd560ea5df4d154 Author: Alan Stern Date: Tue Jun 7 11:31:05 2011 -0400 USB: CONFIG_USB_GADGET_DUALSPEED is not user-configurable This patch (as1468) changes the Kconfig definition for USB_GADGET_DUALSPEED. This option is determined entirely by which device controller drivers are to be built, through Select statements; it does not need to be (and should not be) configurable by the user. Also, the "default n" line is superfluous -- everything defaults to N. Signed-off-by: Alan Stern Acked-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit c5c69f3f0dcf9b569c8f3ad67f3af92cfcedac43 Author: Alan Stern Date: Tue Jun 7 11:33:01 2011 -0400 USB: dummy-hcd needs the has_tt flag Like with other host controllers capable of operating at both high speed and full speed, we need to indicate that the emulated controller presented by dummy-hcd has this ability. Otherwise usbcore will not accept full-speed gadgets under dummy-hcd. This patch (as1469) sets the appropriate has_tt flag. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 21c13a4f7bc185552c4b402b792c3bbb9aa69df0 Author: Alan Stern Date: Tue Jun 7 11:35:52 2011 -0400 usb-storage: redo incorrect reads Some USB mass-storage devices have bugs that cause them not to handle the first READ(10) command they receive correctly. The Corsair Padlock v2 returns completely bogus data for its first read (possibly it returns the data in encrypted form even though the device is supposed to be unlocked). The Feiya SD/SDHC card reader fails to complete the first READ(10) command after it is plugged in or after a new card is inserted, returning a status code that indicates it thinks the command was invalid, which prevents the kernel from retrying the read. Since the first read of a new device or a new medium is for the partition sector, the kernel is unable to retrieve the device's partition table. Users have to manually issue an "hdparm -z" or "blockdev --rereadpt" command before they can access the device. This patch (as1470) works around the problem. It adds a new quirk flag, US_FL_INVALID_READ10, indicating that the first READ(10) should always be retried immediately, as should any failing READ(10) commands (provided the preceding READ(10) command succeeded, to avoid getting stuck in a loop). The patch also adds appropriate unusual_devs entries containing the new flag. Signed-off-by: Alan Stern Tested-by: Sven Geggus Tested-by: Paul Hartman CC: Matthew Dharm CC: Signed-off-by: Greg Kroah-Hartman commit c2f019713df67e09d32e1b3c12f147a83a579d25 Author: Joe Perches Date: Wed Jun 1 10:59:13 2011 -0700 HID: MAINTAINERS: Update USB HID/HIDBP DRIVERS pattern It was moved by commit 1a978c50c6cf ("HID: Move hiddev.txt to the new Documentation/hid directory") so update the MAINTAINERS pattern too. cc: Jiri Kosina cc: Alan Ott Signed-off-by: Joe Perches Signed-off-by: Jiri Kosina commit 942fd4225f72826b31d893582b6ae7e172bb3202 Author: Austin Zhang Date: Sat May 28 02:03:47 2011 +0800 HID: hid-multitouch: add support for Chunghwa multi-touch panel Added Chunghwa hid multitouch panel support into hid-multitouch. Signed-off-by: Austin Zhang Reviewed-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit e6bc45d65df8599fdbae73be9cec4ceed274db53 Author: Theodore Ts'o Date: Mon Jun 6 19:19:40 2011 -0400 vfs: make unlink() and rmdir() return ENOENT in preference to EROFS If user space attempts to remove a non-existent file or directory, and the file system is mounted read-only, return ENOENT instead of EROFS. Either error code is arguably valid/correct, but ENOENT is a more specific error message. Reported-by: Michael Tokarev Signed-off-by: "Theodore Ts'o" Signed-off-by: Al Viro commit 9054760ff585a7fa436599990b63a585ae89ff4d Author: Al Viro Date: Sun Jun 5 19:22:56 2011 +0100 lmLogOpen() broken failure exit Callers of lmLogOpen() expect it to return -E... on failure exits, which is what it returns, except for the case of blkdev_get_by_dev() failure. It that case lmLogOpen() return the error with the wrong sign... Signed-off-by: Al Viro Acked-by: Dave Kleikamp commit 6c6c54e1807faf116724451ef2bd14993780470a Author: Peter Zijlstra Date: Fri Jun 3 17:37:07 2011 +0200 sched: Fix/clarify set_task_cpu() locking rules Sergey reported a CONFIG_PROVE_RCU warning in push_rt_task where set_task_cpu() was called with both relevant rq->locks held, which should be sufficient for running tasks since holding its rq->lock will serialize against sched_move_task(). Update the comments and fix the task_group() lockdep test. Reported-and-tested-by: Sergey Senozhatsky Cc: Oleg Nesterov Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1307115427.2353.3456.camel@twins Signed-off-by: Ingo Molnar commit f2513cde93f0957d5dc6c09bc24b0cccd27d8e1d Author: Peter Zijlstra Date: Mon Jun 6 12:32:43 2011 +0200 lockdep: Fix lock_is_held() on recursion The main lock_is_held() user is lockdep_assert_held(), avoid false assertions in lockdep_off() sections by unconditionally reporting the lock is taken. [ the reason this is important is a lockdep_assert_held() in ttwu() which triggers a warning under lockdep_off() as in printk() which can trigger another wakeup and lock up due to spinlock recursion, as reported and heroically debugged by Arne Jansen ] Reported-and-tested-by: Arne Jansen Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Cc: Link: http://lkml.kernel.org/r/1307398759.2497.966.camel@laptop Signed-off-by: Ingo Molnar commit 064d58ee3afb8a865a72d24e069c7258ec38640e Author: Lars-Peter Clausen Date: Tue Jun 7 10:24:46 2011 +0200 ASoC: Blackfin: bf5xx-ad1836: Fix codec device name Fix the codec_name field of the dai_link to match the actual device name of the codec. Otherwise the card won't be instantiated. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 26018874e3584f1658570d41d57d4c34f6a53aa0 Author: Joerg Roedel Date: Mon Jun 6 16:50:14 2011 +0200 x86/amd-iommu: Fix boot crash with hidden PCI devices Some PCIe cards ship with a PCI-PCIe bridge which is not visible as a PCI device in Linux. But the device-id of the bridge is present in the IOMMU tables which causes a boot crash in the IOMMU driver. This patch fixes by removing these cards from the IOMMU handling. This is a pure -stable fix, a real fix to handle this situation appriatly will follow for the next merge window. Cc: stable@kernel.org # > 2.6.32 Signed-off-by: Joerg Roedel commit 264524d5e5195f6e0f099bee20253a22b651e272 Author: Heiko Carstens Date: Mon Jun 6 20:50:03 2011 +0000 net: cpu offline cause napi stall Frank Blaschka reported : During heavy network load we turn off/on cpus. Sometimes this causes a stall on the network device. Digging into the dump I found out following: napi is scheduled but does not run. From the I/O buffers and the napi state I see napi/rx_softirq processing has stopped because the budget was reached. napi stays in the softnet_data poll_list and the rx_softirq was raised again. I assume at this time the cpu offline comes in, the rx softirq is raised/moved to another cpu but napi stays in the poll_list of the softnet_data of the now offline cpu. Reviewing dev_cpu_callback (net/core/dev.c) I did not find the poll_list is transfered to the new cpu. This patch is a straightforward implementation of Frank suggestion : Transfert poll_list and trigger NET_RX_SOFTIRQ on new cpu. Reported-by: Frank Blaschka Signed-off-by: Heiko Carstens Signed-off-by: Eric Dumazet Tested-by: Eric Dumazet Signed-off-by: David S. Miller commit 6407d74c5106bb362b4087693688afd34942b094 Author: Alexander Holler Date: Tue Jun 7 00:51:35 2011 -0700 bridge: provide a cow_metrics method for fake_ops Like in commit 0972ddb237 (provide cow_metrics() methods to blackhole dst_ops), we must provide a cow_metrics for bridges fake_dst_ops as well. This fixes a regression coming from commits 62fa8a846d7d (net: Implement read-only protection and COW'ing of metrics.) and 33eb9873a28 (bridge: initialize fake_rtable metrics) ip link set mybridge mtu 1234 --> [ 136.546243] Pid: 8415, comm: ip Tainted: P 2.6.39.1-00006-g40545b7 #103 ASUSTeK Computer Inc. V1Sn /V1Sn [ 136.546256] EIP: 0060:[<00000000>] EFLAGS: 00010202 CPU: 0 [ 136.546268] EIP is at 0x0 [ 136.546273] EAX: f14a389c EBX: 000005d4 ECX: f80d32c0 EDX: f80d1da1 [ 136.546279] ESI: f14a3000 EDI: f255bf10 EBP: f15c3b54 ESP: f15c3b48 [ 136.546285] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 136.546293] Process ip (pid: 8415, ti=f15c2000 task=f4741f80 task.ti=f15c2000) [ 136.546297] Stack: [ 136.546301] f80c658f f14a3000 ffffffed f15c3b64 c12cb9c8 f80d1b80 ffffffa1 f15c3bbc [ 136.546315] c12da347 c12d9c7d 00000000 f7670b00 00000000 f80d1b80 ffffffa6 f15c3be4 [ 136.546329] 00000004 f14a3000 f255bf20 00000008 f15c3bbc c11d6cae 00000000 00000000 [ 136.546343] Call Trace: [ 136.546359] [] ? br_change_mtu+0x5f/0x80 [bridge] [ 136.546372] [] dev_set_mtu+0x38/0x80 [ 136.546381] [] do_setlink+0x1a7/0x860 [ 136.546390] [] ? rtnl_fill_ifinfo+0x9bd/0xc70 [ 136.546400] [] ? nla_parse+0x6e/0xb0 [ 136.546409] [] rtnl_newlink+0x361/0x510 [ 136.546420] [] ? vmalloc_sync_all+0x100/0x100 [ 136.546429] [] ? error_code+0x5a/0x60 [ 136.546438] [] ? rtnl_configure_link+0x80/0x80 [ 136.546446] [] rtnetlink_rcv_msg+0xfa/0x210 [ 136.546454] [] ? __rtnl_unlock+0x20/0x20 [ 136.546463] [] netlink_rcv_skb+0x8e/0xb0 [ 136.546471] [] rtnetlink_rcv+0x1c/0x30 [ 136.546479] [] netlink_unicast+0x23a/0x280 [ 136.546487] [] netlink_sendmsg+0x26b/0x2f0 [ 136.546497] [] sock_sendmsg+0xc8/0x100 [ 136.546508] [] ? __alloc_pages_nodemask+0xe1/0x750 [ 136.546517] [] ? _copy_from_user+0x42/0x60 [ 136.546525] [] ? verify_iovec+0x4c/0xc0 [ 136.546534] [] sys_sendmsg+0x1c5/0x200 [ 136.546542] [] ? __do_fault+0x310/0x410 [ 136.546549] [] ? do_wp_page+0x1d6/0x6b0 [ 136.546557] [] ? handle_pte_fault+0xe1/0x720 [ 136.546565] [] ? sys_getsockname+0x7f/0x90 [ 136.546574] [] ? handle_mm_fault+0xb1/0x180 [ 136.546582] [] ? vmalloc_sync_all+0x100/0x100 [ 136.546589] [] ? do_page_fault+0x173/0x3d0 [ 136.546596] [] ? sys_recvmsg+0x3b/0x60 [ 136.546605] [] sys_socketcall+0x293/0x2d0 [ 136.546614] [] sysenter_do_call+0x12/0x26 [ 136.546619] Code: Bad EIP value. [ 136.546627] EIP: [<00000000>] 0x0 SS:ESP 0068:f15c3b48 [ 136.546645] CR2: 0000000000000000 [ 136.546652] ---[ end trace 6909b560e78934fa ]--- Signed-off-by: Alexander Holler Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 13fcb7bd322164c67926ffe272846d4860196dc6 Author: Eric Dumazet Date: Mon Jun 6 22:42:06 2011 -0700 af_packet: prevent information leak In 2.6.27, commit 393e52e33c6c2 (packet: deliver VLAN TCI to userspace) added a small information leak. Add padding field and make sure its zeroed before copy to user. Signed-off-by: Eric Dumazet CC: Patrick McHardy Signed-off-by: David S. Miller commit 0a1896b27b030529ec770aefd790544a1bdb7d5a Author: Daniel T Chen Date: Mon Jun 6 18:55:34 2011 -0400 ALSA: hda: Fix quirk for Dell Inspiron 910 BugLink: https://launchpad.net/bugs/792712 The original reporter states that sound from the internal speakers is inaudible until using the model=auto quirk. This symptom is due to an existing quirk mask for 0x102802b* that uses the model=dell quirk. To limit the possible regressions, leave the existing quirk mask but add a higher priority specific mask for the reporter's PCI SSID. Reported-and-tested-by: rodni hipp Cc: [2.6.38+] Signed-off-by: Daniel T Chen Signed-off-by: Takashi Iwai commit 0aff1c0cef13b34c17e81a502336fad738151c37 Author: GuoWen Li Date: Wed Jun 1 19:18:47 2011 +0800 ftrace: Fix possible undefined return code kernel/trace/ftrace.c: In function 'ftrace_regex_write.clone.15': kernel/trace/ftrace.c:2743:6: warning: 'ret' may be used uninitialized in this function Signed-off-by: GuoWen Li Link: http://lkml.kernel.org/r/201106011918.47939.guowen.li.linux@gmail.com Signed-off-by: Steven Rostedt commit 9c4843ea576107a3c1fb94f2f758f198e9fe9e54 Author: Jeff Layton Date: Mon Jun 6 15:40:23 2011 -0400 cifs: silence printk when establishing first session on socket When signing is enabled, the first session that's established on a socket will cause a printk like this to pop: CIFS VFS: Unexpected SMB signature This is because the key exchange hasn't happened yet, so the signature field is bogus. Don't try to check the signature on the socket until the first session has been established. Also, eliminate the specific check for SMB_COM_NEGOTIATE since this check covers that case too. Cc: stable@kernel.org Cc: Shirish Pargaonkar Signed-off-by: Jeff Layton Signed-off-by: Steve French commit dcc32b838b449aef8533f130cfad41b912bfb228 Merge: de52bca 4cff3ce Author: Dave Airlie Date: Tue Jun 7 10:07:09 2011 +1000 Merge remote branch 'nouveau/drm-nouveau-fixes' of /ssd/git/drm-nouveau-next into drm-fixes * 'nouveau/drm-nouveau-fixes' of /ssd/git/drm-nouveau-next: drm/nv40: fall back to paged dma object for the moment drm/nouveau: fix leak of gart mm node drm/nouveau: fix vram page mapping when crossing page table boundaries drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). drm/nouveau: don't create accel engine objects when noaccel=1 drm/nvc0: recognise 0xdX chipsets as NV_C0 commit 79b3891587741dfac72cdfead1f2764b56a567b0 Author: David S. Miller Date: Mon Jun 6 17:00:35 2011 -0700 irda: iriap: Use seperate lockdep class for irias_objects->hb_spinlock The SEQ output functions grab the obj->attrib->hb_spinlock lock of sub-objects found in the hash traversal. These locks are in a different realm than the one used for the irias_objects hash table itself. So put the latter into it's own lockdep class. Reported-by: Dave Jones Signed-off-by: David S. Miller commit de52bcab836e6ad21bb0c03c6030725044b2819e Merge: 59c5f46 6a574b5 Author: Dave Airlie Date: Tue Jun 7 09:54:04 2011 +1000 Merge remote branch 'keithp/drm-intel-fixes' of /ssd/git/drm-next into drm-fixes * 'keithp/drm-intel-fixes' of /ssd/git/drm-next: drm/i915: Add a no lvds quirk for the Asus EeeBox PC EB1007 drm/i915: Share the common force-audio property between connectors drm/i915: Remove unused enum "chip_family" drm/915: fix relaxed tiling on gen2: tile height drm/i915/crt: Explicitly return false if connected to a digital monitor drm/i915: Replace ironlake_compute_wm0 with g4x_compute_wm0 drm/i915: Only print out the actual number of fences for i915_error_state drm/i915: s/addr & ~PAGE_MASK/offset_in_page(addr)/ drm: i915: correct return status in intel_hdmi_mode_valid() drm/i915: fix regression after clock gating init split drm/i915: fix if statement in ivybridge irq handler commit 3019de124b9f5b1526cb3668b74af14371e21795 Author: David S. Miller Date: Mon Jun 6 16:41:33 2011 -0700 net: Rework netdev_drivername() to avoid warning. This interface uses a temporary buffer, but for no real reason. And now can generate warnings like: net/sched/sch_generic.c: In function dev_watchdog net/sched/sch_generic.c:254:10: warning: unused variable drivername Just return driver->name directly or "". Reported-by: Connor Hansen Signed-off-by: David S. Miller commit 3af51ac9c0889a188aaa3defe5134ef97c80d7c5 Author: Sebastian Andrzej Siewior Date: Fri Jun 3 19:50:48 2011 +0200 usb/renesas_usbhs: free uep on removal Can't find evidence that this is actually done. Cc: Kuninori Morimoto Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit 6bc129532176fcafb4202b73b3f431986391a362 Author: Sebastian Andrzej Siewior Date: Fri Jun 3 19:50:47 2011 +0200 usb/s3c-hsudc: fix error path I doubt the clock is optional. In case it is it should not return with an error code because we leak everything. Cc: Jingoo Han Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit a6207b17ece4ea40c378233b1ddf2a7f4288419d Author: Sebastian Andrzej Siewior Date: Fri Jun 3 19:50:46 2011 +0200 usb/pxa25x_udc: cleanup the LUBBOCK err path this is more backwords than it has to be. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit cb42447374eb4348b75ec677bf9c77958c7d10e0 Author: Sebastian Andrzej Siewior Date: Fri Jun 3 19:50:45 2011 +0200 usb/mv_udc_core: fix compile |drivers/usb/gadget/mv_udc_core.c:2108: error: label `error' used but not defined This seems to be broken since the initial commit. I changed this to a simple return. The other user is the probe code which lets ->probe() fail on error here. |drivers/usb/gadget/mv_udc_core.c:2107: warning: passing argument 1 of `dev_err' from incompatible pointer type |drivers/usb/gadget/mv_udc_core.c:2118: warning: initialization from incompatible pointer type |drivers/usb/gadget/mv_udc_core.c:2119: warning: initialization from incompatible pointer type |drivers/usb/gadget/mv_udc_core.c:2130: error: initializer element is not constant |drivers/usb/gadget/mv_udc_core.c:2130: error: (near initialization for `udc_driver.driver.pm') Cc: Chao Xie Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit b38b03b363a53067e8b8f3f43f00b6428bd5319c Author: Bryan Wu Date: Thu Jun 2 12:51:29 2011 +0800 usb: gadget: include to fix compiling error drivers/usb/gadget/at91_udc.c: In function 'write_fifo': drivers/usb/gadget/at91_udc.c:421:2: error: implicit declaration of function 'prefetch' make[3]: *** [drivers/usb/gadget/at91_udc.o] Error 1 make[2]: *** [drivers/usb/gadget] Error 2 make[2]: *** Waiting for unfinished jobs.... Signed-off-by: Bryan Wu Signed-off-by: Greg Kroah-Hartman commit 83a018045659ee2cc9b1390ddb8b2a247d269bc4 Author: Mark Brown Date: Wed Jun 1 17:16:15 2011 +0100 USB: s3c-hsotg: Tone down debugging Currently the s3c-hsotg driver is extremely chatty, producing voluminous with large register dumps even in default operation. Tone this down so we're not chatty unless DEBUG is defined. Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman commit 1d4a4bde6b1cd4c8bbe1dd20dee18416a62b9c51 Author: Sage Weil Date: Tue May 31 09:11:11 2011 -0700 usb: remove bad dput after dentry_unhash Commit 64252c75a (vfs: remove dget() from dentry_unhash()) removed the useless dget from dentry_unhash but didn't fix up this caller in the usb code. There used to be exactly one dput per dentry_unhash call; now there are none. Tested-by: Sebastian Andrzej Siewior Signed-off-by: Sage Weil Signed-off-by: Greg Kroah-Hartman commit 4cff3ce5fe5c3c88f103d58c5e7855f9519960e4 Author: Ben Skeggs Date: Wed Jun 1 14:08:49 2011 +1000 drm/nv40: fall back to paged dma object for the moment PCI(E)GART isn't quite stable it seems, fall back to old method until I get the time to sort it out properly. Signed-off-by: Ben Skeggs commit 960bdba08e06a1f35fc2fe784aa293dee58abc68 Author: Ben Skeggs Date: Mon May 30 09:28:31 2011 +1000 drm/nouveau: fix leak of gart mm node Signed-off-by: Ben Skeggs commit 73c337e70e75bb94dcb21459dd06afad0746634c Author: Ben Skeggs Date: Sat May 28 02:12:04 2011 +1000 drm/nouveau: fix vram page mapping when crossing page table boundaries Hopefully the cause of nvc0 "page jumping" issue. Signed-off-by: Ben Skeggs commit c1003d9c90f410777ab57f675b2a575c9c7ab5d7 Author: Francisco Jerez Date: Tue May 24 15:57:14 2011 +0200 drm/nv17-nv40: Fix modesetting failure when pitch == 4096px (fdo bug 35901). Reported-by: Mario Bachmann Tested-by: Greg Turner Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 18b54c4d5893f32641d4961563c0f196cc04dc83 Author: Ben Skeggs Date: Wed May 25 15:22:33 2011 +1000 drm/nouveau: don't create accel engine objects when noaccel=1 Fixes various potential oopses. Signed-off-by: Ben Skeggs commit cdf81a235f11c8a55023c6b181d21d519a8a5967 Author: Ben Skeggs Date: Wed May 25 14:39:52 2011 +1000 drm/nvc0: recognise 0xdX chipsets as NV_C0 Should hopefully get modesetting at least from this, it appears these are GF119 chipsets. Accel will come eventually, once I order a board. Signed-off-by: Ben Skeggs commit 345f79b3de7f6d651e4dba794af7c7303bdfd649 Author: Kevin Hilman Date: Tue May 31 16:08:09 2011 -0700 OMAP: PM: omap_device: fix device power domain callbacks After commit 4d27e9dcff00a6425d779b065ec8892e4f391661 (PM: Make power domain callbacks take precedence over subsystem ones), the power domain callbacks need to call the driver callbacks instead of relying on the default subsystem (in this case, platform_bus) to handle the driver callbacks. Validated on 3430/n900, 3530/Overo. Signed-off-by: Kevin Hilman commit c8fb13d04ad0d08772f637bee873e620fcc064c2 Author: Russell King Date: Fri May 27 13:56:12 2011 -0700 OMAP: PM debug: fix section mismatch warnings WARNING: arch/arm/mach-omap2/built-in.o(.text+0x423c): Section mismatch in reference from the function pm_dbg_regset_init() to the function .init.text:pm_dbg_init() The function pm_dbg_regset_init() references the function __init pm_dbg_init(). This is often because pm_dbg_regset_init lacks a __init annotation or the annotation of pm_dbg_init is wrong. Signed-off-by: Russell King Signed-off-by: Kevin Hilman commit 85ec7b970553369e0c956fab1d7a6022f2a99369 Author: Colin Cross Date: Mon Jun 6 13:38:18 2011 -0700 GPIO: OMAP: add locking around calls to _set_gpio_triggering _set_gpio_triggering uses read-modify-write on bank registers, lock bank->lock around all calls to it to prevent register corruption if two cpus access gpios in the same bank at the same time. Signed-off-by: Colin Cross Signed-off-by: Kevin Hilman commit 0622b25bf071fd83c6eef6b61fb5f3f12a418528 Author: Colin Cross Date: Mon Jun 6 13:38:17 2011 -0700 GPIO: OMAP: fix setting IRQWAKEN bits for OMAP4 Setting the IRQWAKEN bit was overwriting previous IRQWAKEN bits, causing only the last bit set to take effect, resulting in lost wakeups when the GPIO controller is in idle. Replace direct writes to IRQWAKEN with MOD_REG_BIT calls to perform a read-modify-write on the register. Signed-off-by: Colin Cross Signed-off-by: Kevin Hilman commit d52b31deffe1956ac62d0b81b915c9b52cffb814 Author: Russell King Date: Fri May 27 13:56:12 2011 -0700 GPIO: OMAP: fix section mismatch warnings WARNING: arch/arm/plat-omap/built-in.o(.devinit.text+0x46c): Section mismatch in reference from the function omap_gpio_probe() to the function .init.text:omap_gpio_chip_init() The function __devinit omap_gpio_probe() references a function __init omap_gpio_chip_init(). If omap_gpio_chip_init is only used by omap_gpio_probe then annotate omap_gpio_chip_init with a matching annotation. Signed-off-by: Russell King Signed-off-by: Kevin Hilman commit 3824c1ddaf744be44b170a335332b9d6afe79254 Author: Libor Pechacek Date: Fri May 20 14:53:25 2011 +0200 USB: core: Tolerate protocol stall during hub and port status read Protocol stall should not be fatal while reading port or hub status as it is transient state. Currently hub EP0 STALL during port status read results in failed device enumeration. This has been observed with ST-Ericsson (formerly Philips) USB 2.0 Hub (04cc:1521) after connecting keyboard. Signed-off-by: Libor Pechacek Acked-by: Alan Stern Cc: stable Signed-off-by: Greg Kroah-Hartman commit 9303961f5b8c8da0b65b897fb6521d2a123ec8a8 Author: Mike Frysinger Date: Wed May 25 08:13:24 2011 -0400 musb: fix prefetch build failure After the prefetch/list.h restructure, drivers need to explicitly include linux/prefetch.h in order to use the prefetch() function. Otherwise, the current driver fails to build: drivers/usb/musb/musb_core.c: In function 'musb_write_fifo': drivers/usb/musb/musb_core.c:219: error: implicit declaration of function 'prefetch' make[3]: *** [drivers/usb/musb/musb_core.o] Error 1 Signed-off-by: Mike Frysinger Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 4061fde2fa80f40cb27114f60500d38d0afcf350 Author: Toby Gray Date: Mon Jun 6 14:52:48 2011 +0100 USB: cdc-acm: Adding second ACM channel support for Nokia E7 and C7 This adds the Nokia E7 and C7 to the list of devices in cdc-acm, allowing the secondary ACM channel on the device to be exposed. Without this patch the ACM driver won't claim this secondary channel as it's marked as having a vendor-specific protocol. Signed-off-by: Toby Gray Cc: stable Signed-off-by: Greg Kroah-Hartman commit 3898115896c7f18cb7009de691c43cb3d92bb82a Author: Alexey Khoroshilov Date: Fri May 27 08:37:40 2011 +0400 usb-gadget: unlock data->lock mutex on error path in ep_write() ep_write() acquires data->lock mutex in get_ready_ep() and releases it on all paths except for one: when usb_endpoint_xfer_isoc() failed. The patch adds mutex_unlock(&data->lock) at that path. It is similar to commit 00cc7a5 ("usb-gadget: unlock data->lock mutex on error path in ep_read()"), it was not fixed at that time by accident. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Greg Kroah-Hartman commit 7e8e62e4a5d26e4cb45f25dddd093837d75616c2 Author: Torsten Hilbrich Date: Mon Jun 6 15:39:55 2011 +0200 USB: option Add blacklist for ZTE K3765-Z (19d2:2002) The funtion option_send_status times out when sending USB messages to the interfaces 0, 1, and 2 of this UMTS stick. This results in a 5s timeout in the function causing other tty operations to feel very sluggish. This patch adds a blacklist entry for these 3 interfaces on the ZTE K3765-Z device. I was also able to reproduce the problem with v2.6.38 and v2.6.39. This is very similar to a problem fixed in commit 7a89e4cb9cdaba92f5fbc509945cf4e3c48db4e2 Author: Herton Ronaldo Krzesinski Date: Wed Mar 9 09:19:48 2011 +0000 USB: serial: option: Apply OPTION_BLACKLIST_SENDSETUP also for ZTE MF626 Signed-off-by: Torsten Hilbrich Cc: stable Signed-off-by: Greg Kroah-Hartman commit 5c3e4076ee8253c1e3688d10653ddee47a03b0db Author: Dan Williams Date: Mon Jun 6 16:55:41 2011 -0500 option: add Prolink PH300 modem IDs Simple ID addition. Signed-off-by: Dan Williams Cc: stable@kernel.org Signed-off-by: Greg Kroah-Hartman commit 15badbcc8eede58b0d7e53a3acde1c90a7b6e40e Author: Dan Williams Date: Mon Jun 6 16:22:44 2011 -0500 option: add Alcatel X200 to sendsetup blacklist This modem really wants sendsetup blacklisted for interfaces 0 and 1, otherwise the kernel hardlocks for about 10 seconds while waiting for the modem's firmware to respond, which it of course doesn't do. A slight complication here is that TCT (who owns the Alcatel brand) used the same USB IDs for the X200 as the X060s despite the devices having completely different firmware and AT command sets, so we end up adding the X060s to the blacklist at the same time. PSA to OEMs: don't use the same USB IDs for different devices. Really. It makes your kittens cry. Signed-off-by: Dan Williams Cc: stable@kernel.org Signed-off-by: Greg Kroah-Hartman commit cdacb598fe7ab85de80908c818dd7d66a2971117 Author: Dan Williams Date: Mon Jun 6 16:08:39 2011 -0500 option: add Zoom 4597 modem USB IDs Uses Longcheer-based firmware and AT command set. Signed-off-by: Dan Williams Cc: stable@kernel.org Signed-off-by: Greg Kroah-Hartman commit eab54042cd850778febae18098e77000dd298630 Merge: 59c5f46 cd3c18b Author: Greg Kroah-Hartman Date: Mon Jun 6 15:55:57 2011 -0700 Merge branch 'for-usb-linus' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-linus * 'for-usb-linus' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: USB: xhci - fix interval calculation for FS isoc endpoints xhci: Disable MSI for some Fresco Logic hosts. xhci: Do not issue device reset when device is not setup xhci: Add defines for hardcoded slot states xhci: Bigendian fix for xhci_check_bandwidth() xhci: Bigendian fix for skip_isoc_td() commit 7d751f6f8c679f51b73d01a1b5269347a929004c Author: Casey Bodley Date: Fri Jun 3 12:21:23 2011 -0400 nfsd: link returns nfserr_delay when breaking lease fix for commit 4795bb37effb7b8fe77e2d2034545d062d3788a8, nfsd: break lease on unlink, link, and rename if the LINK operation breaks a delegation, it returns NFS4ERR_NOENT (which is not a valid error in rfc 5661) instead of NFS4ERR_DELAY. the return value of nfsd_break_lease() in nfsd_link() must be converted from host_err to err Signed-off-by: Casey Bodley Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit be1f4084b4824301e640e81d63b6275cd99ee6a1 Author: Randy Dunlap Date: Mon Jun 6 11:22:17 2011 -0700 nfsd: v4 support requires CRYPTO nfsd V4 support uses crypto interfaces, so select CRYPTO to fix build errors in 2.6.39: ERROR: "crypto_destroy_tfm" [fs/nfsd/nfsd.ko] undefined! ERROR: "crypto_alloc_base" [fs/nfsd/nfsd.ko] undefined! Reported-by: Wakko Warner Signed-off-by: Randy Dunlap Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit 5a079c305ad4dda9708b7a29db4a8bd38e21c3a6 Author: Marcus Meissner Date: Mon Jun 6 06:00:07 2011 +0000 net/ipv6: check for mistakenly passed in non-AF_INET6 sockaddrs Same check as for IPv4, also do for IPv6. (If you passed in a IPv4 sockaddr_in here, the sizeof check in the line before would have triggered already though.) Signed-off-by: Marcus Meissner Cc: Reinhard Max Signed-off-by: David S. Miller commit 8ca695f273709a9d147826716a8dee3e0eb2407f Author: Lars-Peter Clausen Date: Mon Jun 6 13:38:35 2011 +0200 ASoC: AD1836: Fix setting the PCM format Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit 2b22b1b1e169c6591aa125525223f70e40ed4acf Merge: 85fadea c111147 Author: David S. Miller Date: Mon Jun 6 13:25:36 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 5f98ecdbcef1920323d8777c0ba55dbd4335d3cf Author: FUJITA Tomonori Date: Sun Jun 5 11:47:29 2011 +0900 swiotlb: Export swioltb_nr_tbl and utilize it as appropiate. By default the io_tlb_nslabs is set to zero, and gets set to whatever value is passed in via swiotlb_init_with_tbl function. The default value passed in is 64MB. However, if the user provides the 'swiotlb=' the default value is ignored and the value provided by the user is used... Except when the SWIOTLB is used under Xen - there the default value of 64MB is used and the Xen-SWIOTLB has no mechanism to get the 'io_tlb_nslabs' filled out by setup_io_tlb_npages functions. This patch provides a function for the Xen-SWIOTLB to call to see if the io_tlb_nslabs is set and if so use that value. Signed-off-by: FUJITA Tomonori Signed-off-by: Konrad Rzeszutek Wilk commit 51892dbbd511911c0f965a36b431fc3e8f1e4f8a Author: Stanislaw Gruszka Date: Mon Jun 6 15:11:30 2011 +0200 iwl4965: set tx power after rxon_assoc Setting tx power can be deferred during scan or changing channel. If after that correct tx power settings will not be sent to device, we can observe transmission problems and timeouts. Force to send tx power settings also after partial rxon change, to assure device always be configured with up-to-date settings. Resolves: https://bugzilla.kernel.org/show_bug.cgi?id=36492 Cc: stable@kernel.org # 2.6.39+ Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 3bb42a64960253353278876ca8da6b0a7d3bea87 Author: Stanislaw Gruszka Date: Sat Jun 4 16:48:54 2011 +0200 rt2x00: fix rmmod crash Avoid queue and run autowakeup_work when device is not present anymore. That prevent rmmod and device remove crash introduced by: commit 1c0bcf89d85cc97a0d9ce4cd909351a81fa4fdde Author: Ivo van Doorn Date: Sat Apr 30 17:18:18 2011 +0200 rt2x00: Add autowake support for USB hardware Signed-off-by: Stanislaw Gruszka Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 42b70a5f6d18165a075d189d1bee82fad7cdbf29 Author: Stanislaw Gruszka Date: Thu May 26 17:14:22 2011 +0200 iwlagn: use cts-to-self protection on 5000 adapters series This patch fixes 802.11n stability and performance regression we have since 2.6.35. It boost performance on my 5GHz N-only network from about 5MB/s to 8MB/s. Similar percentage boost can be observed on 2.4 GHz. These are test results of 5x downloading of approximately 700MB iso image: vanilla: 5.27 5.22 4.94 4.47 5.31 ; avr 5.0420 std 0.35110 patched: 8.07 7.95 8.06 7.99 7.96 ; avr 8.0060 std 0.055946 This was achieved with NetworkManager configured to do not perform periodical scans, by configuring constant BSSID. With periodical scans, after some time, performance downgrade to unpatched driver level, like in example below: patched: 7.40 7.61 4.28 4.37 4.80 avr 5.6920 std 1.6683 However patch still make better here, since similar test on unpatched driver make link disconnects with below messages after some time: wlan1: authenticate with 00:23:69:35:d1:3f (try 1) wlan1: authenticate with 00:23:69:35:d1:3f (try 2) wlan1: authenticate with 00:23:69:35:d1:3f (try 3) wlan1: authentication with 00:23:69:35:d1:3f timed out On 2.6.35 kernel patch helps against connection hangs with messages: iwlagn 0000:20:00.0: queue 10 stuck 3 time. Fw reload. iwlagn 0000:20:00.0: On demand firmware reload iwlagn 0000:20:00.0: Stopping AGG while state not ON or starting Cc: stable@kernel.org # 2.6.35+ Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit ab6a44ce1da48d35fe7ec95fa068aa617bd7e8dd Author: John W. Linville Date: Mon Jun 6 14:35:27 2011 -0400 Revert "mac80211: Skip tailroom reservation for full HW-crypto devices" This reverts commit aac6af5534fade2b18682a0b9efad1a6c04c34c6. Conflicts: net/mac80211/key.c That commit has a race that causes a warning, as documented in the thread here: http://marc.info/?l=linux-wireless&m=130717684914101&w=2 Signed-off-by: John W. Linville commit f6509b5f002a69c299b04d32a876d051a0b52f68 Merge: 4bcbfff fb5a18c Author: Thomas Gleixner Date: Mon Jun 6 21:12:32 2011 +0200 Merge branch 'fortglx/3.0/tip/timers/ptp' of git://git.linaro.org/people/jstultz/linux into timers/urgent commit 4bcbfff618f92f770dff28c8d3320fc96acf52df Merge: 1c3cc11 d576fe4 Author: Thomas Gleixner Date: Mon Jun 6 21:11:31 2011 +0200 Merge branch 'fortglx/3.0/tip/timers/rtc' of git://git.linaro.org/people/jstultz/linux into timers/urgent commit b084f598df36b62dfae83c10ed17f0b66b50f442 Author: J. Bruce Fields Date: Tue May 31 12:24:58 2011 -0400 nfsd: fix dependency of nfsd on auth_rpcgss Commit b0b0c0a26e84 "nfsd: add proc file listing kernel's gss_krb5 enctypes" added an nunnecessary dependency of nfsd on the auth_rpcgss module. It's a little ad hoc, but since the only piece of information nfsd needs from rpcsec_gss_krb5 is a single static string, one solution is just to share it with an include file. Cc: stable@kernel.org Reported-by: Michael Guntsche Cc: Kevin Coffman Signed-off-by: J. Bruce Fields commit fd137e2bba53b7207cbae6a1312e89ef3ae55624 Author: Mark Brown Date: Mon Jun 6 11:26:15 2011 +0100 ASoC: Check for NULL register bank in snd_soc_get_cache_val() Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c11114717a66455de9fbc3ea69ae00d1aace3c14 Merge: 5fb9fb1 d2ac49f Author: John W. Linville Date: Mon Jun 6 13:58:21 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit 243e2dd38e1b322b29a1714034cc60b84d3d5e07 Author: Darren Salt Date: Mon Jun 6 16:58:16 2011 +0000 CIFS ACL support needs CONFIG_KEYS, so depend on it Build fails if CONFIG_KEYS is not selected. Signed-off-by: Darren Salt Reviewed-by: Shirish Pargaonkar Signed-off-by: Steve French commit 27c2127a15d340706c0aa84e311188a14468d841 Author: Joerg Roedel Date: Mon May 30 15:56:24 2011 +0200 x86/amd-iommu: Use only per-device dma_ops Unfortunatly there are systems where the AMD IOMMU does not cover all devices. This breaks with the current driver as it initializes the global dma_ops variable. This patch limits the AMD IOMMU to the devices listed in the IVRS table fixing DMA for devices not covered by the IOMMU. Cc: stable@kernel.org Signed-off-by: Joerg Roedel commit 957df4535d06a8e009101239937ca5e50a6218c6 Author: Vasily Averin Date: Mon Jun 6 11:33:12 2011 +0400 possible memory corruption in cifs_parse_mount_options() error path after mountdata check frees uninitialized mountdata_copy Signed-off-by: Vasily Averin Signed-off-by: Steve French commit 163baa33552bb1c08b6bf109319505570658a8f3 Merge: eb7073d 59c5f46 Author: Greg Kroah-Hartman Date: Mon Jun 6 08:08:28 2011 -0700 Merge 3.0-rc2 into tty-linus This is needed to catch the tty patch revert in the 3.0-rc2 tree. Signed-off-by: Greg Kroah-Hartman commit 0de66d5b35ee148455e268b2782873204ffdef4b Author: Joerg Roedel Date: Mon Jun 6 16:04:02 2011 +0200 x86/amd-iommu: Fix 3 possible endless loops The driver contains several loops counting on an u16 value where the exit-condition is checked against variables that can have values up to 0xffff. In this case the loops will never exit. This patch fixed 3 such loops. Cc: stable@kernel.org Signed-off-by: Joerg Roedel commit a9c667f8f0656631ee5438baaf21bf30d5f67375 Author: Lukas Czerner Date: Mon Jun 6 09:51:52 2011 -0400 ext4: fixed tracepoints cleanup While creating fixed tracepoints for ext3, basically by porting them from ext4, I found a lot of useless retyping, wrong type usage, useless variable passing and other inconsistencies in the ext4 fixed tracepoint code. This patch cleans the fixed tracepoint code for ext4 and also simplify some of them. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit 6c61cfe91be53b444abc1da2dbab14efa77706c0 Author: Martin Schwidefsky Date: Mon Jun 6 14:14:42 2011 +0200 [S390] fix kvm defines for 31 bit compile KVM is not available for 31 bit but the KVM defines cause warnings: arch/s390/include/asm/pgtable.h: In function 'ptep_test_and_clear_user_dirty': arch/s390/include/asm/pgtable.h:817: warning: integer constant is too large for 'unsigned long' type arch/s390/include/asm/pgtable.h:818: warning: integer constant is too large for 'unsigned long' type arch/s390/include/asm/pgtable.h: In function 'ptep_test_and_clear_user_young': arch/s390/include/asm/pgtable.h:837: warning: integer constant is too large for 'unsigned long' type arch/s390/include/asm/pgtable.h:838: warning: integer constant is too large for 'unsigned long' type Add 31 bit versions of the KVM defines to remove the warnings. Signed-off-by: Martin Schwidefsky commit 36409f6353fc2d7b6516e631415f938eadd92ffa Author: Martin Schwidefsky Date: Mon Jun 6 14:14:41 2011 +0200 [S390] use generic RCU page-table freeing code Replace the s390 specific rcu page-table freeing code with the generic variant. This requires to duplicate the definition for the struct mmu_table_batch as s390 does not use the generic tlb flush code. While we are at it remove the restriction that page table fragments can not be reused after a single fragment has been freed with rcu and split out allocation and freeing of page tables with pgstes. Signed-off-by: Martin Schwidefsky commit 3ec90878bade9280dee87c9e27d759f1cee07e70 Author: Jan Glauber Date: Mon Jun 6 14:14:40 2011 +0200 [S390] qdio: Split SBAL entry flags The qdio SBAL entry flag is made-up of four different values that are independent of one another. Some of the bits are reserved by the hardware and should not be changed by qdio. Currently all four values are overwritten since the SBAL entry flag is defined as an u32. Split the SBAL entry flag into four u8's as defined by the hardware and don't touch the reserved bits. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 9950f8be3f379e36be73be958ec5cf6c15eac0b2 Author: Christian Borntraeger Date: Mon Jun 6 14:14:39 2011 +0200 [S390] kvm-s390: fix stfle facilities numbers >=64 Currently KVM masks out the known good facilities only for the first double word, but passed the 2nd double word without filtering. This breaks some code on newer systems: [ 0.593966] ------------[ cut here ]------------ [ 0.594086] WARNING: at arch/s390/oprofile/hwsampler.c:696 [ 0.594213] Modules linked in: [ 0.594321] Modules linked in: [ 0.594439] CPU: 0 Not tainted 3.0.0-rc1 #46 [ 0.594564] Process swapper (pid: 1, task: 00000001effa8038, ksp: 00000001effafab8) [ 0.594735] Krnl PSW : 0704100180000000 00000000004ab89a (hwsampler_setup+0x75a/0x7b8) [ 0.594910] R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0 EA:3 [ 0.595120] Krnl GPRS: ffffffff00000000 00000000ffffffea ffffffffffffffea 00000000004a98f8 [ 0.595351] 00000000004aa002 0000000000000001 000000000080e720 000000000088b9f8 [ 0.595522] 000000000080d3e8 0000000000000000 0000000000000000 000000000080e464 [ 0.595725] 0000000000000000 00000000005db198 00000000004ab3a2 00000001effafd98 [ 0.595901] Krnl Code: 00000000004ab88c: c0e5000673ca brasl %r14,57a020 [ 0.596071] 00000000004ab892: a7f4fc77 brc 15,4ab180 [ 0.596276] 00000000004ab896: a7f40001 brc 15,4ab898 [ 0.596454] >00000000004ab89a: a7c8ffa1 lhi %r12,-95 [ 0.596657] 00000000004ab89e: a7f4fc71 brc 15,4ab180 [ 0.596854] 00000000004ab8a2: a7f40001 brc 15,4ab8a4 [ 0.597029] 00000000004ab8a6: a7f4ff22 brc 15,4ab6ea [ 0.597230] 00000000004ab8aa: c0200011009a larl %r2,6cb9de [ 0.597441] Call Trace: [ 0.597511] ([<00000000004ab3a2>] hwsampler_setup+0x262/0x7b8) [ 0.597676] [<0000000000875812>] oprofile_arch_init+0x32/0xd0 [ 0.597834] [<0000000000875788>] oprofile_init+0x28/0x74 [ 0.597991] [<00000000001001be>] do_one_initcall+0x3a/0x170 [ 0.598151] [<000000000084fa22>] kernel_init+0x142/0x1ec [ 0.598314] [<000000000057db16>] kernel_thread_starter+0x6/0xc [ 0.598468] [<000000000057db10>] kernel_thread_starter+0x0/0xc [ 0.598606] Last Breaking-Event-Address: [ 0.598707] [<00000000004ab896>] hwsampler_setup+0x756/0x7b8 [ 0.598863] ---[ end trace ce3179037f4e3e5b ]--- So lets also mask the 2nd double word. Facilites 66,76,76,77 should be fine. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit a578b37cc2e719447810343089a7cb93efc3812f Author: Christian Borntraeger Date: Mon Jun 6 14:14:38 2011 +0200 [S390] kvm-s390: Fix host crash on misbehaving guests commit 9ff4cfb3fcfd48b49fdd9be7381b3be340853aa4 ([S390] kvm-390: Let kernel exit SIE instruction on work) fixed a problem of commit commit cd3b70f5d4d82f85d1e1d6e822f38ae098cf7c72 ([S390] virtualization aware cpu measurement) but uncovered another one. If a kvm guest accesses guest real memory that doesnt exist, the page fault handler calls the sie hook, which then rewrites the return psw from sie_inst to either sie_exit or sie_reenter. On return, the page fault handler will then detect the wrong access as a kernel fault causing a kernel oops in sie_reenter or sie_exit. We have to add these two addresses to the exception table to allow graceful exits. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 6ac340623c5d2a945030814d900701439772ff57 Author: Mark Brown Date: Fri Jun 3 18:20:50 2011 +0100 ASoC: Add missing break in WM8915 FLL source selection Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 1622ee1822e8adb391b55a09e3cd5144bd9fad47 Author: Mark Brown Date: Fri Jun 3 17:13:57 2011 +0100 ASoC: Only update SYSCLK_ENA when pausing WM8915 SYSCLK Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 17ee083b7897ab27b4949c42de805889ebd2b4c5 Author: Linus Walleij Date: Thu May 5 17:23:10 2011 +0100 ARM: 6894/1: mmci: trigger card detect IRQs on falling and rising edges Right now the card detect IRQ for MMCI is requested without any flags which will give some default machine-specified IRQ behaviour. However on the U300 rising+falling edges (such as can be expected from a simple GPIO to generate when inserting/removing a card) need to be requested explicitly. Cc: Rabin Vincent Cc: Ulf Hansson Cc: Sebastian Rasmussen Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 9fc2552a68eb28f95f367156cf46a3da7843ff37 Author: Ming Lei Date: Sun Jun 5 02:24:58 2011 +0100 ARM: 6952/1: fix lockdep warning of "unannotated irqs-off" This patch fixes the lockdep warning of "unannotated irqs-off"[1]. After entering __irq_usr, arm core will disable interrupt automatically, but __irq_usr does not annotate the irq disable, so lockdep may complain the warning if it has chance to check this in irq handler. This patch adds trace_hardirqs_off in __irq_usr before entering irq_handler to handle the irq, also calls ret_to_user_from_irq to avoid calling disable_irq again. This is also a fix for irq off tracer. [1], lockdep warning log of "unannotated irqs-off" [ 13.804687] ------------[ cut here ]------------ [ 13.809570] WARNING: at kernel/lockdep.c:3335 check_flags+0x78/0x1d0() [ 13.816467] Modules linked in: [ 13.819732] Backtrace: [ 13.822357] [] (dump_backtrace+0x0/0x100) from [] (dump_stack+0x20/0x24) [ 13.831268] r6:c07d8c2c r5:00000d07 r4:00000000 r3:00000000 [ 13.837280] [] (dump_stack+0x0/0x24) from [] (warn_slowpath_common+0x5c/0x74) [ 13.846649] [] (warn_slowpath_common+0x0/0x74) from [] (warn_slowpath_null+0x2c/0x34) [ 13.856781] r8:00000000 r7:00000000 r6:c18b8194 r5:60000093 r4:ef182000 [ 13.863708] r3:00000009 [ 13.866485] [] (warn_slowpath_null+0x0/0x34) from [] (check_flags+0x78/0x1d0) [ 13.875823] [] (check_flags+0x0/0x1d0) from [] (lock_acquire+0x4c/0x150) [ 13.884704] [] (lock_acquire+0x0/0x150) from [] (_raw_spin_lock+0x4c/0x84) [ 13.893798] [] (_raw_spin_lock+0x0/0x84) from [] (sched_ttwu_pending+0x58/0x8c) [ 13.903320] r6:ef92d040 r5:00000003 r4:c18b8180 [ 13.908233] [] (sched_ttwu_pending+0x0/0x8c) from [] (scheduler_ipi+0x18/0x1c) [ 13.917663] r6:ef183fb0 r5:00000003 r4:00000000 r3:00000001 [ 13.923645] [] (scheduler_ipi+0x0/0x1c) from [] (do_IPI+0x9c/0xfc) [ 13.932006] [] (do_IPI+0x0/0xfc) from [] (__irq_usr+0x48/0xe0) [ 13.939971] Exception stack(0xef183fb0 to 0xef183ff8) [ 13.945281] 3fa0: ffffffc3 0001500c 00000001 0001500c [ 13.953948] 3fc0: 00000050 400b45f0 400d9000 00000000 00000001 400d9600 6474e552 bea05b3c [ 13.962585] 3fe0: 400d96c0 bea059c0 400b6574 400b65d8 20000010 ffffffff [ 13.969573] r6:00000403 r5:fa240100 r4:ffffffff r3:20000010 [ 13.975585] ---[ end trace efc4896ab0fb62cb ]--- [ 13.980468] possible reason: unannotated irqs-off. [ 13.985534] irq event stamp: 1610 [ 13.989044] hardirqs last enabled at (1610): [] no_work_pending+0x8/0x2c [ 13.997131] hardirqs last disabled at (1609): [] ret_slow_syscall+0xc/0x1c [ 14.005371] softirqs last enabled at (0): [] copy_process+0x2cc/0xa24 [ 14.013183] softirqs last disabled at (0): [< (null)>] (null) Signed-off-by: Ming Lei Signed-off-by: Russell King commit 45f6d7e0e634d49744c1a590461ed1bb3d2201ac Author: Rabin Vincent Date: Thu Jun 2 15:01:36 2011 +0100 ARM: 6951/1: include .bss in memory layout information The "Virtual memory kernel layout" message at startup already prints .text and .data. Print .bss too. Signed-off-by: Rabin Vincent Signed-off-by: Russell King commit 9a819d8ac8197b44bbc2adad592b677fe749804d Author: Ben Hutchings Date: Tue May 31 08:09:39 2011 +0100 ARM: 6948/1: Fix .size directives for __arm{7,9}tdmi_proc_info gas used to accept (and ignore?) .size directives which referred to undefined symbols, as these do. In binutils 2.21 these are treated as fatal errors. The issue in proc-arm7tdmi.S was also fixed independently by Peter Chubb. Signed-off-by: Ben Hutchings Signed-off-by: Uwe Kleine-König Signed-off-by: Russell King commit 9425032b77c3a4f066a032bac7f7d08668b6cc3c Author: Linus Walleij Date: Tue May 31 22:10:03 2011 +0100 ARM: 6947/2: mach-u300: fix compilation error in timer The introduction of the mmio timer accidentally referenced the old clocksource struct which does not exist anymore. Fix this by using a simple string instead. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 2fdf99934c2c39848ad3633ce504a0262f21faf9 Author: Rob Herring Date: Mon May 30 19:44:22 2011 +0100 ARM: 6946/1: vexpress: move v2m clock init to init_early Commit 7ff550de99141cbd3be0129d563cc4554fdde9f6 breaks vexpress booting. The v2m clock table needs to be setup in init_early before the timer initialization occurs. Signed-off-by: Rob Herring Signed-off-by: Russell King commit 05d3962cc921c51059df69488c7f70ab8b6a5d88 Merge: 55922c9 840d8e5 Author: Mark Brown Date: Mon Jun 6 10:38:23 2011 +0100 Merge branch 'for-3.0' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into for-3.0 commit a50d28de8d5085e0f34f96088a45cc156d022021 Author: Bruno Prémont Date: Tue May 24 19:59:17 2011 +0000 video: Fix use-after-free by vga16fb on rmmod Since fb_info is now refcounted and thus may get freed at any time it gets unregistered module unloading will try to unregister framebuffer as stored in platform data on probe though this pointer may be stale. Cleanup platform data on framebuffer release. CC: stable@kernel.org Signed-off-by: Bruno Prémont Signed-off-by: Paul Mundt commit 59c5f46fbe01a00eedf54a23789634438bb80603 Author: Linus Torvalds Date: Mon Jun 6 18:06:33 2011 +0900 Linux 3.0-rc2 commit e0dcd8a05be438b3d2e49ef61441ea3a463663f8 Author: Hugh Dickins Date: Sun Jun 5 22:03:13 2011 -0700 mm: fix ENOSPC returned by handle_mm_fault() Al Viro observes that in the hugetlb case, handle_mm_fault() may return a value of the kind ENOSPC when its caller is expecting a value of the kind VM_FAULT_SIGBUS: fix alloc_huge_page()'s failure returns. Signed-off-by: Hugh Dickins Acked-by: Al Viro Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 363e9f05cbd105a900b7baf2cc55ec0cba546d08 Author: Paul Mundt Date: Mon Jun 6 17:57:58 2011 +0900 sh: Remove compressed kernel libgcc dependency. SH-2A is unable to combine the kernel and libgcc objects due to fundamental disagreements over FDPIC settings. As the kernel already contains all of the libgcc bits broken out, there's not much need to bother with the linking anymore, as everything can already be derived from the lib dir. This simply plugs in the necessary bits to ensure that everything is built uniformly, enabling us to wean the compressed build off of explicit libgcc linking. Reported-by: Phil Edworthy Signed-off-by: Paul Mundt commit 0d6925d43bd637fe4da7acb7bf1d0b92d38ab34b Merge: c12f667 3190dad Author: Linus Torvalds Date: Mon Jun 6 17:51:28 2011 +0900 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: usb - turn off de-emphasis in s/pdif for cm6206 ALSA: asihpi: Use angle brackets for system includes ALSA: fm801: add error handling if auto-detect fails ALSA: hda - Check pin support EAPD in ad198x_power_eapd_write ALSA: hda - Fix HP and Front pins of ad1988/ad1989 in ad198x_power_eapd() ALSA: 6fire: Don't leak firmware in error path ASoC: Fix wm_hubs input PGA ZC bits ASoC: Fix dapm_is_shared_kcontrol so everything isn't shared commit c12f667e7563c2c0e0908c997900b91b41b23592 Merge: 0792644 942c1a9 Author: Linus Torvalds Date: Mon Jun 6 17:48:02 2011 +0900 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (max6642): Better chip detection schema hwmon: (coretemp) Further relax temperature range checks hwmon: (coretemp) Fix TjMax detection for older CPUs hwmon: (coretemp) Relax target temperature range check hwmon: (max6642) Rename temp_fault sysfs attribute to temp2_fault commit 74b5c5bfff429f464c38dd49af41d75cf0e7dc26 Author: Mike Waychison Date: Fri Jun 3 13:04:53 2011 -0700 KVM: Initialize kvm before registering the mmu notifier It doesn't make sense to ever see a half-initialized kvm structure on mmu notifier callbacks. Previously, 85722cda changed the ordering to ensure that the mmu_lock was initialized before mmu notifier registration, but there is still a race where the mmu notifier could come in and try accessing other portions of struct kvm before they are intialized. Solve this by moving the mmu notifier registration to occur after the structure is completely initialized. Google-Bug-Id: 452199 Signed-off-by: Mike Waychison Signed-off-by: Avi Kivity commit 221192bdff2583834984639121595fc9296120d3 Author: Marcelo Tosatti Date: Mon May 30 15:23:14 2011 -0300 KVM: x86: use proper port value when checking io instruction permission Commit f6511935f42 moved the permission check for io instructions to the ->check_perm callback. It failed to copy the port value from RDX register for string and "in,out ax,dx" instructions. Fix it by reading RDX register at decode stage when appropriate. Fixes FC8.32 installation. Signed-off-by: Marcelo Tosatti commit 5f85e931278ff80aa3ea7861a73a6c6ce940f2e9 Author: Fabio Estevam Date: Sat May 28 16:05:08 2011 -0300 ARM: mx51/sdma: Check the chip revision in run-time Check the MX51 chip revision in run-time so that the correct SDMA firmware can be loaded. While at it also remove the silicon revision from the sdma_script_start_addrs structure name for MX51. All the MX51 revisions share the same SDMA start addresses. Signed-off-by: Fabio Estevam Signed-off-by: Sascha Hauer commit ad377c630864e2609c54385907493dbf68a34295 Author: Wolfram Sang Date: Wed May 25 11:34:57 2011 +0200 arm: mxs: include asm/processor.h for cpu_relax() I get this build error as of today: arch/arm/mach-mxs/ocotp.c: In function 'mxs_get_ocotp': arch/arm/mach-mxs/ocotp.c:54: error: implicit declaration of function 'cpu_relax' make[2]: *** [arch/arm/mach-mxs/ocotp.o] Error 1 Looks like it has been indirectly included before which broke now. Include it directly. Signed-off-by: Wolfram Sang Cc: Shawn Guo Signed-off-by: Sascha Hauer commit 3190dad97b5105ec9b9720f6d7bea54ee830fc2d Merge: 157186b ea02c63 Author: Takashi Iwai Date: Mon Jun 6 09:28:49 2011 +0200 Merge branch 'fix/asoc' into for-linus commit c03f8aa9abdd517477c2021ea1251939b4da49e6 Author: Lukas Czerner Date: Mon Jun 6 00:06:52 2011 -0400 ext4: use FIEMAP_EXTENT_LAST flag for last extent in fiemap Currently we are not marking the extent as the last one (FIEMAP_EXTENT_LAST) if there is a hole at the end of the file. This is because we just do not check for it right now and continue searching for next extent. But at the point we hit the hole at the end of the file, it is too late. This commit adds check for the allocated block in subsequent extent and if there is no more extents (block = EXT_MAX_BLOCKS) just flag the current one as the last one. This behaviour has been spotted unintentionally by 252 xfstest, when the test hangs out, because of wrong loop condition. However on other filesystems (like xfs) it will exit anyway, because we notice the last extent flag and exit. With this patch xfstest 252 does not hang anymore, ext4 fiemap implementation still reports bad extent type in some cases, however this seems to be different issue. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit f17722f917b2f21497deb6edc62fb1683daa08e6 Author: Lukas Czerner Date: Mon Jun 6 00:05:17 2011 -0400 ext4: Fix max file size and logical block counting of extent format file Kazuya Mio reported that he was able to hit BUG_ON(next == lblock) in ext4_ext_put_gap_in_cache() while creating a sparse file in extent format and fill the tail of file up to its end. We will hit the BUG_ON when we write the last block (2^32-1) into the sparse file. The root cause of the problem lies in the fact that we specifically set s_maxbytes so that block at s_maxbytes fit into on-disk extent format, which is 32 bit long. However, we are not storing start and end block number, but rather start block number and length in blocks. It means that in order to cover extent from 0 to EXT_MAX_BLOCK we need EXT_MAX_BLOCK+1 to fit into len (because we counting block 0 as well) - and it does not. The only way to fix it without changing the meaning of the struct ext4_extent members is, as Kazuya Mio suggested, to lower s_maxbytes by one fs block so we can cover the whole extent we can get by the on-disk extent format. Also in many places EXT_MAX_BLOCK is used as length instead of maximum logical block number as the name suggests, it is all a bit messy. So this commit renames it to EXT_MAX_BLOCKS and change its usage in some places to actually be maximum number of blocks in the extent. The bug which this commit fixes can be reproduced as follows: dd if=/dev/zero of=/mnt/mp1/file bs= count=1 seek=$((2**32-2)) sync dd if=/dev/zero of=/mnt/mp1/file bs= count=1 seek=$((2**32-1)) Reported-by: Kazuya Mio Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit cd3c18ba2fac14b34d03cae111f215009735ea06 Author: Dmitry Torokhov Date: Tue May 31 14:37:23 2011 -0700 USB: xhci - fix interval calculation for FS isoc endpoints Full-speed isoc endpoints specify interval in exponent based form in frames, not microframes, so we need to adjust accordingly. NEC xHCI host controllers will return an error code of 0x11 if a full speed isochronous endpoint is added with the Interval field set to something less than 3 (2^3 = 8 microframes, or one frame). It is impossible for a full speed device to have an interval smaller than one frame. This was always an issue in the xHCI driver, but commit dfa49c4ad120a784ef1ff0717168aa79f55a483a "USB: xhci - fix math in xhci_get_endpoint_interval()" removed the clamping of the minimum value in the Interval field, which revealed this bug. This needs to be backported to stable kernels back to 2.6.31. Reported-by: Matt Evans Signed-off-by: Dmitry Torokhov Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit ab4bd22d3cce6977dc039664cc2d052e3147d662 Author: Jens Axboe Date: Sun Jun 5 06:01:13 2011 +0200 cfq-iosched: fix locking around ioc->ioc_data assignment Since we are modifying this RCU pointer, we need to hold the lock protecting it around it. This fixes a potential reuse and double free of a cfq io_context structure. The bug has been in CFQ for a long time, it hit very few people but those it did hit seemed to see it a lot. Tracked in RH bugzilla here: https://bugzilla.redhat.com/show_bug.cgi?id=577968 Credit goes to Paul Bolle for figuring out that the issue was around the one-hit ioc->ioc_data cache. Thanks to his hard work the issue is now fixed. Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 298c48a811673ba5e292359545f3af6d1a6c9764 Author: Srinivas KANDAGATLA Date: Thu Jun 2 10:30:44 2011 +0000 sh: fix wrong icache/dcache address-array start addr in cache-debugfs. This patch fixes a icache/dcache address-array start address while dumping its entires in debugfs. Perviously the code was attempting to remember the address in static variable, which is no more required for debugfs, as the function can be executed in one pass. Without this patch the start address ends up in wrong place and the /sys/kernel/debug/sh/icache or dcache debugfs contents may not be correct. Signed-off-by: Srinivas Kandagatla Cc: Stuart Menefy Signed-off-by: Paul Mundt commit 5def1360252b974faeb438775c19c14338bc1903 Author: Yongqiang Yang Date: Sun Jun 5 23:26:40 2011 -0400 ext4: correct comments for ext4_free_blocks() metadata is not parameter of ext4_free_blocks() any more. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 85fadea9ce4b278b959886748b2798a383667c10 Merge: 5fb9fb1 d232b8d Author: David S. Miller Date: Sun Jun 5 17:14:04 2011 -0700 Merge branch 'pablo/nf-2.6-updates' of git://1984.lsi.us.es/net-2.6 commit 5fb9fb132c5a83010cd8d4bf6d0ee34fb3b9d488 Author: Grant Likely Date: Fri Jun 3 21:31:27 2011 +0000 net: fix smc91x.c device tree support Fix missing semicolon at end of smc91x.c match tabledevice driver. Also remove unnecessary #ifdef around of_match_table pointer. Signed-off-by: Grant Likely Signed-off-by: David S. Miller commit d232b8dded624af3e346b13807a591c63b601c44 Author: Dave Jones Date: Fri May 27 20:36:51 2011 -0400 netfilter: use unsigned variables for packet lengths in ip[6]_queue. Netlink message lengths can't be negative, so use unsigned variables. Signed-off-by: Dave Jones Signed-off-by: Pablo Neira Ayuso commit 88ed01d17b44bc2bed4ad4835d3b1099bff3dd71 Author: Pablo Neira Ayuso Date: Thu Jun 2 15:08:45 2011 +0200 netfilter: nf_conntrack: fix ct refcount leak in l4proto->error() This patch fixes a refcount leak of ct objects that may occur if l4proto->error() assigns one conntrack object to one skbuff. In that case, we have to skip further processing in nf_conntrack_in(). With this patch, we can also fix wrong return values (-NF_ACCEPT) for special cases in ICMP[v6] that should not bump the invalid/error statistic counters. Reported-by: Zoltan Menyhart Signed-off-by: Pablo Neira Ayuso commit d9be76f38526dccf84062e3ac3ed3a6a97698565 Author: Julian Anastasov Date: Sun May 29 23:42:29 2011 +0300 netfilter: nf_nat: fix crash in nf_nat_csum Fix crash in nf_nat_csum when mangling packets in OUTPUT hook where skb->dev is not defined, it is set later before POSTROUTING. Problem happens for CHECKSUM_NONE. We can check device from rt but using CHECKSUM_PARTIAL should be safe (skb_checksum_help). Signed-off-by: Julian Anastasov Signed-off-by: Pablo Neira Ayuso commit b48e3c5c323fea08c12a340cbb8dcc8ca2431d5b Author: Jozsef Kadlecsik Date: Wed Jun 1 23:35:49 2011 +0200 netfilter: ipset: Use the stored first cidr value instead of '1' The stored cidr values are tried one after anoter. The boolean condition evaluated to '1' instead of the first stored cidr or the default host cidr. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Pablo Neira Ayuso commit fcbf12817100d23890832801507107718a1fa448 Author: Jozsef Kadlecsik Date: Wed Jun 1 23:35:48 2011 +0200 netfilter: ipset: Fix return code for destroy when sets are in use Signed-off-by: Jozsef Kadlecsik Signed-off-by: Pablo Neira Ayuso commit afb523c54718da57ff661950bd3287ec9eeb66bd Author: Julian Anastasov Date: Thu Jun 2 09:09:54 2011 +0900 ipvs: restore support for iptables SNAT Fix the IPVS priority in LOCAL_IN hook, so that SNAT target in POSTROUTING is supported for IPVS traffic as in 2.6.36 where it worked depending on module load order. Before 2.6.37 we used priority 100 in LOCAL_IN to process remote requests. We used the same priority as iptables SNAT and if IPVS handlers are installed before SNAT handlers we supported SNAT in POSTROUTING for the IPVS traffic. If SNAT is installed before IPVS, the netfilter handlers are before IPVS and netfilter checks the NAT table twice for the IPVS requests: once in LOCAL_IN where IPS_SRC_NAT_DONE is set and second time in POSTROUTING where the SNAT rules are ignored because IPS_SRC_NAT_DONE was already set in LOCAL_IN. But in 2.6.37 we changed the IPVS priority for LOCAL_IN with the goal to be unique (101) forgetting the fact that for IPVS traffic we should not walk both LOCAL_IN and POSTROUTING nat tables. So, change the priority for processing remote IPVS requests from 101 to 99, i.e. before NAT_SRC (100) because we prefer to support SNAT in POSTROUTING instead of LOCAL_IN. It also moves the priority for IPVS replies from 99 to 98. Use constants instead of magic numbers at these places. Signed-off-by: Julian Anastasov Signed-off-by: Simon Horman Signed-off-by: Pablo Neira Ayuso commit fb04883371f2cb7867d24783e7d590036dc9b548 Author: Eric Dumazet Date: Thu May 19 15:44:27 2011 +0200 netfilter: add more values to enum ip_conntrack_info Following error is raised (and other similar ones) : net/ipv4/netfilter/nf_nat_standalone.c: In function ‘nf_nat_fn’: net/ipv4/netfilter/nf_nat_standalone.c:119:2: warning: case value ‘4’ not in enumerated type ‘enum ip_conntrack_info’ gcc barfs on adding two enum values and getting a not enumerated result : case IP_CT_RELATED+IP_CT_IS_REPLY: Add missing enum values Signed-off-by: Eric Dumazet CC: David Miller Signed-off-by: Pablo Neira Ayuso commit 374eeb5a9d77ea719c5c46f4d70226623f4528ce Author: Neil Horman Date: Fri Jun 3 10:35:52 2011 +0000 bonding: reset queue mapping prior to transmission to physical device (v5) The bonding driver is multiqueue enabled, in which each queue represents a slave to enable optional steering of output frames to given slaves against the default output policy. However, it needs to reset the skb->queue_mapping prior to queuing to the physical device or the physical slave (if it is multiqueue) could wind up transmitting on an unintended tx queue Change Notes: v2) Based on first pass review, updated the patch to restore the origional queue mapping that was found in bond_select_queue, rather than simply resetting to zero. This preserves the value of queue_mapping when it was set on receive in the forwarding case which is desireable. v3) Fixed spelling an casting error in skb->cb v4) fixed to store raw queue_mapping to avoid double decrement v5) Eric D requested that ->cb access be wrapped in a macro. Signed-off-by: Neil Horman CC: Jay Vosburgh CC: Andy Gospodarek CC: "David S. Miller" Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 5b446c6a7179513edcb34706088c4ce901b9a039 Author: Sucheta Chakraborty Date: Fri Jun 3 05:52:18 2011 +0000 qlcnic: Avoid double free of skb in tx path buffer->skb should be marked NULL to avoid double free of the skb. Signed-off-by: Sucheta Chakraborty Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 54ff502c283b6cf77c95c05c99dbca40d910b17d Author: Anirban Chakraborty Date: Thu Jun 2 12:42:21 2011 +0000 qlcnic: Fix bug in FW queue dump Due to a change in FW template, a bug was introduced in dump queue entries. This is fixed by reinitializing queue address before looping for each que dump operation. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit b8f07a063163f8216cd891c5b007e839a56b6d93 Author: Al Viro Date: Sun Jun 5 00:54:03 2011 +0000 fix return values of l2tp_dfs_seq_open() More fallout from struct net lifetime rules review: PTR_ERR() is *already* negative and failing ->open() should return negatives on failure. Signed-off-by: Al Viro Signed-off-by: James Chapman Signed-off-by: David S. Miller commit c316e6a3084cef1a5857cd66bb5429c969f06c93 Author: Al Viro Date: Sun Jun 5 00:37:35 2011 +0000 get_net_ns_by_fd() oopses if proc_ns_fget() returns an error BTW, looking through the code related to struct net lifetime rules has caught something else: struct net *get_net_ns_by_fd(int fd) { ... file = proc_ns_fget(fd); if (!file) goto out; ei = PROC_I(file->f_dentry->d_inode); while in proc_ns_fget() we have two return ERR_PTR(...) and not a single path that would return NULL. The other caller of proc_ns_fget() treats ERR_PTR() correctly... Signed-off-by: Al Viro Signed-off-by: David S. Miller commit f3aeceac61b6e2f3167717ea1793472108e47564 Author: Alex Deucher Date: Fri Jun 3 16:39:06 2011 -0400 drm/radeon/kms/atom: fix PHY init The PHY was not initialized correctly after ac89af1e1010640db072416c786f97391b85790f since the function bailed early as an encoder was not assigned. The encoder isn't necessary for PHY init so just assign to 0 for init so that the table is executed. Reported-by: Ari Savolainen Tested-by: Ari Savolainen Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 0792644d22852f40c8ad16c4ba1fefd76aba5643 Merge: e6ece70 f2a4d8a Author: Linus Torvalds Date: Sun Jun 5 08:11:11 2011 +0900 Merge branch 'for-linus' of git://android.git.kernel.org/kernel/tegra * 'for-linus' of git://android.git.kernel.org/kernel/tegra: ARM: Tegra: Harmony: Fix conflicting GPIO numbering commit f2a4d8ae4d40f6f5482d207f47fd4d53b3ae0ed4 Author: Stephen Warren Date: Tue May 31 15:14:07 2011 -0600 ARM: Tegra: Harmony: Fix conflicting GPIO numbering Currently, both the WM8903 and TPS6586x chips attempt to register with gpiolib using the same GPIO numbers. This causes the audio driver to fail to initialize. To solve this, add a define to board-harmony.h for the TPS6586x, and make board-harmony-power.c use this define, instead of directly referencing TEGRA_NR_GPIOS. This fixes a regression introduced by commit 6f168f2fa60f87e85e0df25e87e2372f22f5eb7c. ARM: tegra: harmony: initialize the TPS65862 PMIC Signed-off-by: Stephen Warren Signed-off-by: Colin Cross commit e6ece70732b905742ad91a7b5489e0ca1362c0cd Merge: 23c79d3 aa0467d Author: Linus Torvalds Date: Sun Jun 5 06:17:23 2011 +0900 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (25 commits) btrfs: fix uninitialized variable warning btrfs: add helper for fs_info->closing Btrfs: add mount -o inode_cache btrfs: scrub: add explicit plugging btrfs: use btrfs_ino to access inode number Btrfs: don't save the inode cache if we are deleting this root btrfs: false BUG_ON when degraded Btrfs: don't save the inode cache in non-FS roots Btrfs: make sure we don't overflow the free space cache crc page Btrfs: fix uninit variable in the delayed inode code btrfs: scrub: don't reuse bios and pages Btrfs: leave spinning on lookup and map the leaf Btrfs: check for duplicate entries in the free space cache Btrfs: don't try to allocate from a block group that doesn't have enough space Btrfs: don't always do readahead Btrfs: try not to sleep as much when doing slow caching Btrfs: kill BTRFS_I(inode)->block_group Btrfs: don't look at the extent buffer level 3 times in a row Btrfs: map the node block when looking for readahead targets Btrfs: set range_start to the right start in count_range_bits ... commit 6a574b5b9b186e28abd3e571dfd1700c5220b510 Author: Hans de Goede Date: Sat Jun 4 15:39:21 2011 +0200 drm/i915: Add a no lvds quirk for the Asus EeeBox PC EB1007 I found this while figuring out why gnome-shell would not run on my Asus EeeBox PC EB1007. As a standalone "pc" this device cleary does not have an internal panel, yet it claims it does. Add a quirk to fix this. Signed-off-by: Hans de Goede Reviewed-by: Keith Packard cc: stable@kernel.org Signed-off-by: Keith Packard commit 3f43c48d333777e815ae68d66396cb6dfbc2dd79 Author: Chris Wilson Date: Thu May 12 22:17:24 2011 +0100 drm/i915: Share the common force-audio property between connectors Make the audio property creation routine common and share the single property between the connectors. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 4bce2da393dbbc6650a1d62683ef60e03594b4c7 Author: Chris Wilson Date: Thu May 12 22:17:21 2011 +0100 drm/i915: Remove unused enum "chip_family" Superseded by the tracking the render generation in the chipset capabiltiies struct. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit c8ebc2b076ad9e1833cb4f7f1a6f30b4786a2a09 Author: Daniel Vetter Date: Thu May 12 22:17:20 2011 +0100 drm/915: fix relaxed tiling on gen2: tile height A tile on gen2 has a size of 2kb, stride of 128 bytes and 16 rows. Userspace was broken and assumed 8 rows. Chris Wilson noted that the kernel unfortunately can't reliable check that because libdrm rounds up the size to the next bucket. Signed-off-by: Daniel Vetter Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit d3bcb75776a10ee4b67afe6156fd927b9da77d03 Author: Chris Wilson Date: Thu May 12 22:17:15 2011 +0100 drm/i915/crt: Explicitly return false if connected to a digital monitor Rather than proceed on and silently return false by default, mention why we rejected the presence of an EDID as implying the presence of a VGA monitor. (The question arises whether there is a broken EDID which falsely reports a digital connection when attached by VGA.) Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 9f405100f2b39be7759eea3f4cf910869727429c Author: Chris Wilson Date: Thu May 12 22:17:14 2011 +0100 drm/i915: Replace ironlake_compute_wm0 with g4x_compute_wm0 The computation of the first-level watermarks for g4x and gen5+ are based on the same algorithm, so we can refactor those code paths to use a single function. Note that g4x_compute_wm0 takes a 'plane' argument while ironlake_compute_wm0 took a 'pipe' argument. Both should have used a 'plane' argument, so this patch fixes that as well (not that it caused a problem; ironlake always uses pipe == plane). Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit bf3301abba31ee71ed8dc87f18fcaebd27dc3b3e Author: Daniel Vetter Date: Thu May 12 22:17:12 2011 +0100 drm/i915: Only print out the actual number of fences for i915_error_state Signed-off-by: Daniel Vetter Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit c8cbbb8ba9f9f6d2d63513a715700127598e7f86 Author: Chris Wilson Date: Thu May 12 22:17:11 2011 +0100 drm/i915: s/addr & ~PAGE_MASK/offset_in_page(addr)/ Convert our open coded offset_in_page() to the common macro. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 5cbba41d2857477bd9a008f2d82c0622db1a8dee Author: Nicolas Kaiser Date: Mon May 30 12:48:26 2011 +0200 drm: i915: correct return status in intel_hdmi_mode_valid() Signed-off-by: Nicolas Kaiser Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 95e0ee92d3a605de75a633dd2360700595d5a8ad Author: Jason Stubbs Date: Sat May 28 14:26:48 2011 +1000 drm/i915: fix regression after clock gating init split During the refactoring in revision 6067aaeadb5b3df26f27ac827256b1ef01e674f5, the intel_enable_clock_gating was split up into several functions that are then called indirectly. However, which function to call was not specified for the IS_PINEVIEW() case. This patch specifies the correct gating function. Signed-off-by: Jason Stubbs Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit f6b07f45e2df42d63a0292dcd13aaaa18d6c01f7 Author: Dan Carpenter Date: Wed May 25 12:56:56 2011 +0300 drm/i915: fix if statement in ivybridge irq handler The extra semicolon was not intended. Signed-off-by: Dan Carpenter Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 942c1a927bf296fd64fd49f04c5a8f66bb14446b Author: Per Dalén Date: Thu May 26 09:08:53 2011 -0400 hwmon: (max6642): Better chip detection schema Improve detection of MAX6642 by reading non existing registers (0x04, 0x06 and 0xff). Reading those registers returns the previously read value. Signed-off-by: Per Dalen [guenter.roeck@ericsson.com: added second set of register reads] Signed-off-by: Guenter Roeck commit 23c79d31a3dd2602ee1a5ff31303b2d7a2d3c159 Merge: 0e833d8 e73e079 Author: Linus Torvalds Date: Sat Jun 4 23:19:51 2011 +0900 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: [SCSI] Fix oops caused by queue refcounting failure commit 0e833d8cfcb52b5ee3ead22cabbab81dea32c3f0 Merge: 4f1ba49 7b29dc2 Author: Linus Torvalds Date: Sat Jun 4 23:16:00 2011 +0900 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: (40 commits) tg3: Fix tg3_skb_error_unmap() net: tracepoint of net_dev_xmit sees freed skb and causes panic drivers/net/can/flexcan.c: add missing clk_put net: dm9000: Get the chip in a known good state before enabling interrupts drivers/net/davinci_emac.c: add missing clk_put af-packet: Add flag to distinguish VID 0 from no-vlan. caif: Fix race when conditionally taking rtnl lock usbnet/cdc_ncm: add missing .reset_resume hook vlan: fix typo in vlan_dev_hard_start_xmit() net/ipv4: Check for mistakenly passed in non-IPv4 address iwl4965: correctly validate temperature value bluetooth l2cap: fix locking in l2cap_global_chan_by_psm ath9k: fix two more bugs in tx power cfg80211: don't drop p2p probe responses Revert "net: fix section mismatches" drivers/net/usb/catc.c: Fix potential deadlock in catc_ctrl_run() sctp: stop pending timers and purge queues when peer restart asoc drivers/net: ks8842 Fix crash on received packet when in PIO mode. ip_options_compile: properly handle unaligned pointer iwlagn: fix incorrect PCI subsystem id for 6150 devices ... commit aa0467d8d2a00e75b2bb6a56a4ee6d70c5d1928f Author: David Sterba Date: Fri Jun 3 16:29:08 2011 +0200 btrfs: fix uninitialized variable warning With Linus' tree, today's linux-next build (powercp ppc64_defconfig) produced this warning: fs/btrfs/delayed-inode.c: In function 'btrfs_delayed_update_inode': fs/btrfs/delayed-inode.c:1598:6: warning: 'ret' may be used uninitialized in this function Introduced by commit 16cdcec736cd ("btrfs: implement delayed inode items operation"). This fixes a bug in btrfs_update_inode(): if the returned value from btrfs_delayed_update_inode is a nonzero garbage, inode stat data are not updated and several call paths may hit a BUG_ON or fail with strange code. Reported-by: Stephen Rothwell Signed-off-by: David Sterba commit 7841cb2898f66a73062c64d0ef5733dde7279e46 Author: David Sterba Date: Tue May 31 18:07:27 2011 +0200 btrfs: add helper for fs_info->closing wrap checking of filesystem 'closing' flag and fix a few missing memory barriers. Signed-off-by: David Sterba commit 4b9465cb9e3859186eefa1ca3b990a5849386320 Author: Chris Mason Date: Fri Jun 3 09:36:29 2011 -0400 Btrfs: add mount -o inode_cache This makes the inode map cache default to off until we fix the overflow problem when the free space crcs don't fit inside a single page. Signed-off-by: Chris Mason commit e7786c3ae517b2c433edc91714e86be770e9f1ce Author: Arne Jansen Date: Sat May 28 20:58:38 2011 +0000 btrfs: scrub: add explicit plugging With the removal of the implicit plugging scrub ends up doing more and smaller I/O than necessary. This patch adds explicit plugging per chunk. Signed-off-by: Arne Jansen Signed-off-by: Chris Mason commit a4689d2bd3b00dcf5c4320f06e0ab88810fbff9c Author: David Sterba Date: Tue May 31 17:08:14 2011 +0000 btrfs: use btrfs_ino to access inode number commit 4cb5300bc ("Btrfs: add mount -o auto_defrag") accesses inode number directly while it should use the helper with the new inode number allocator. Signed-off-by: David Sterba Signed-off-by: Chris Mason commit d132a538d258f8f52fd0cd8b5017755f4e915386 Author: Josef Bacik Date: Tue May 31 19:33:33 2011 +0000 Btrfs: don't save the inode cache if we are deleting this root With xfstest 254 I can panic the box every time with the inode number caching stuff on. This is because we clean the inodes out when we delete the subvolume, but then we write out the inode cache which adds an inode to the subvolume inode tree, and then when it gets evicted again the root gets added back on the dead roots list and is deleted again, so we have a double free. To stop this from happening just return 0 if refs is 0 (and we're not the tree root since tree root always has refs of 0). With this fix 254 no longer panics. Thanks, Signed-off-by: Josef Bacik Tested-by: David Sterba Signed-off-by: Chris Mason commit 5f3f302a6f4cb74906c05fad1d03fc5e95c7e5af Author: Arne Jansen Date: Mon May 30 08:36:16 2011 +0000 btrfs: false BUG_ON when degraded In degraded mode the struct btrfs_device of missing devs don't have device->name set. A kstrdup of NULL correctly returns NULL. Don't BUG in this case. Signed-off-by: Arne Jansen Signed-off-by: Chris Mason commit ca456ae280c0646e1e571c3b9a3834c55e90adfe Author: liubo Date: Wed Jun 1 09:42:49 2011 +0000 Btrfs: don't save the inode cache in non-FS roots This adds extra checks to make sure the inode map we are caching really belongs to a FS root instead of a special relocation tree. It prevents crashes during balancing operations. Signed-off-by: Liu Bo Signed-off-by: Chris Mason commit 211f96c24f117fcc6e9e2431e40d92f4de22625e Author: Chris Mason Date: Fri Jun 3 01:26:53 2011 -0400 Btrfs: make sure we don't overflow the free space cache crc page The free space cache uses only one page for crcs right now, which means we can't have a cache file bigger than the crcs we can fit in the first page. This adds a check to enforce that restriction. Signed-off-by: Chris Mason commit 17aca1c987cff89dc4279371857035da902c8854 Author: Chris Mason Date: Fri Jun 3 01:13:45 2011 -0400 Btrfs: fix uninit variable in the delayed inode code The nitems counter needs to start at zero Signed-off-by: Chris Mason commit 1bc8779349d6278e2713a1ff94418c2a6746a791 Author: Arne Jansen Date: Sat May 28 21:57:55 2011 +0200 btrfs: scrub: don't reuse bios and pages The current scrub implementation reuses bios and pages as often as possible, allocating them only on start and releasing them when finished. This leads to more problems with the block layer than it's worth. The elevator gets confused when there are more pages added to the bio than bi_size suggests. This patch completely rips out the reuse of bios and pages and allocates them freshly for each submit. Signed-off-by: Arne Jansen Signed-off-by: Chris Maosn commit d7ebe75b065a7c2d58ffc12f9d2e00d5ea4e71eb Author: Vince Weaver Date: Fri Jun 3 17:59:51 2011 -0400 perf: Fix comments in include/linux/perf_event.h Fix include/linux/perf_event.h comments to be consistent with the actual #define names. This is trivial, but it can be a bit confusing when first reading through the file. Signed-off-by: Vince Weaver Cc: Peter Zijlstra Cc: paulus@samba.org Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Steven Rostedt Link: http://lkml.kernel.org/r/alpine.DEB.2.00.1106031757090.29381@cl320.eecs.utk.edu Signed-off-by: Ingo Molnar commit aa4a221875873d2a1f9656cb7fd7e545e952b4fa Author: Vince Weaver Date: Fri Jun 3 17:54:40 2011 -0400 perf: Comment /proc/sys/kernel/perf_event_paranoid to be part of user ABI Turns out that distro packages use this file as an indicator of the perf event subsystem - this is easier to check for from scripts than the existence of the system call. This is easy enough to keep around for the kernel, so add a comment to make sure it stays so. Signed-off-by: Vince Weaver Cc: David Ahern Cc: Peter Zijlstra Cc: paulus@samba.org Cc: acme@redhat.com Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/alpine.DEB.2.00.1106031751170.29381@cl320.eecs.utk.edu Signed-off-by: Ingo Molnar commit 710054ba25c0d1f8f41c22ce13ba336503fb5318 Merge: 74c355f b273fa9 Author: Ingo Molnar Date: Sat Jun 4 12:13:06 2011 +0200 Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent commit 2aec0d697725bc4d402d7a9b51587af53a4cca76 Author: Heiko Stuebner Date: Thu Jun 2 12:58:30 2011 +0200 ARM: S3C2410: remove the now empty mach-s3c2410/irq.c Signed-off-by: Heiko Stuebner Signed-off-by: Kukjin Kim commit de11c5852811665e581ef0b915bb478f38b92fb1 Author: Heiko Stuebner Date: Thu Jun 2 12:57:41 2011 +0200 ARM: S3C24XX: Move s3c24xx_irq_syscore_ops to plat-s3c24xx/irq.c s3c24xx_irq_syscore_ops was only defined for s3c2410 cpus leading to compile errors on for example 2412 and 2416. Signed-off-by: Heiko Stuebner Signed-off-by: Kukjin Kim commit e4698188444a639ac9a3cfb3e06006dd1d4e7fcc Author: Heiko Stuebner Date: Thu Jun 2 12:56:39 2011 +0200 ARM: S3C24xx: Fix missing struct for s3c2410_dma_chan s3c2410_dma_chan is not a type itself, so struct is required. Signed-off-by: Heiko Stuebner Signed-off-by: Kukjin Kim commit 74cdfa538d433dde9720ae02ac48a7be8c0ec3fb Author: Kyungmin Park Date: Thu Jun 2 18:27:27 2011 +0900 ARM: SAMSUNG: Remove unused onenand plat functions There's no place to use these functions. and actually no need to set the platform data. Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 80839a19804702df2f24ebf24899579fd2ab6d9d Author: Kyungmin Park Date: Thu Jun 2 18:30:52 2011 +0900 ARM: EXYNOS4: Remove compiler warning on exynos4_pwm4_resume Remove compiler warning when no CONFIG_PM arch/arm/mach-exynos4/time.c:209: warning: 'exynos4_pwm4_resume' defined but not used Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 4f1ba49efafccbc73017f824efa2505c81b247cd Merge: 39b4a46 e3a57b3 Author: Linus Torvalds Date: Sat Jun 4 08:11:26 2011 +0900 Merge branch 'for-linus' of git://git.kernel.dk/linux-block * 'for-linus' of git://git.kernel.dk/linux-block: block: Use hlist_entry() for io_context.cic_list.first cfq-iosched: Remove bogus check in queue_fail path xen/blkback: potential null dereference in error handling xen/blkback: don't call vbd_size() if bd_disk is NULL block: blkdev_get() should access ->bd_disk only after success CFQ: Fix typo and remove unnecessary semicolon block: remove unwanted semicolons Revert "block: Remove extra discard_alignment from hd_struct." nbd: adjust 'max_part' according to part_shift nbd: limit module parameters to a sane value nbd: pass MSG_* flags to kernel_recvmsg() block: improve the bio_add_page() and bio_add_pc_page() descriptions commit 39b4a46f19295b4876fba6655f27d67232dc6a1f Merge: cb37bbd 5ff6197 Author: Linus Torvalds Date: Sat Jun 4 08:04:10 2011 +0900 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: Blackfin: strncpy: fix handling of zero lengths commit cb37bbd90a11003993d47c395837e0f87abf1b31 Merge: 3af91a1 b36a968 Author: Linus Torvalds Date: Sat Jun 4 08:03:16 2011 +0900 Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile * 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: asm-generic/unistd.h: support sendmmsg syscall tile: enable CONFIG_BUGVERBOSE commit 3af91a1256b628d55913324d27fe747c69566749 Merge: 9a44fde 0980119 Author: Linus Torvalds Date: Sat Jun 4 07:59:32 2011 +0900 Merge branch 'linux-next' of git://git.infradead.org/ubifs-2.6 * 'linux-next' of git://git.infradead.org/ubifs-2.6: UBIFS: fix-up free space earlier UBIFS: intialize LPT earlier UBIFS: assert no fixup when writing a node UBIFS: fix clean znode counter corruption in error cases UBIFS: fix memory leak on error path UBIFS: fix shrinker object count reports UBIFS: fix recovery broken by the previous recovery fix UBIFS: amend ubifs_recover_leb interface UBIFS: introduce a "grouped" journal head flag UBIFS: supress false error messages commit 9a44fde3435e0c6012cbc9122497bbbd3338434a Merge: cd4ecf8 9bf7174 Author: Linus Torvalds Date: Sat Jun 4 07:58:48 2011 +0900 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest: ktest: Ignore unset values of the minconfig in config_bisect ktest: Fix result of rebooting the kernel ktest: Fix off-by-one in config bisect result commit cd4ecf877a4d629c38571405fd649077c12dec50 Merge: 1f3bd0f 816af74 Author: Linus Torvalds Date: Sat Jun 4 07:53:23 2011 +0900 Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: ARM: mach-shmobile: add DMAC clock definitions on SH7372 ARM: arch-shmobile: support SDHI card detection on mackerel, using a GPIO sh_mobile_meram: MERAM platform data for LCDC commit 3ece48a746088be3dd75904e8d9bb9b49af0aa95 Author: Sage Weil Date: Tue May 31 09:11:11 2011 -0700 usb: remove bad dput after dentry_unhash Commit 64252c75a removed the useless dget from dentry_unhash but didn't fix up this caller in the usb code. There used to be exactly one dput per dentry_unhash call; now there are none. Tested-by: Sebastian Andrzej Siewior Signed-off-by: Sage Weil Signed-off-by: Al Viro commit f8d8e12dd1e0e2559e2419b7acdaf9eee9865736 Author: Tushar Behera Date: Fri Jun 3 12:34:14 2011 +0530 ARM: S5P: Fix compilation error for exynos4_defconfig Added Kconfig entry for setup-usb-phy.c on which EHCI support is dependent on. Following the naming convention of other setup files, we have following renaming. usb-phy.c ==> setup-usb-phy.c Signed-off-by: Tushar Behera Signed-off-by: Kukjin Kim commit 9e1f1de02c2275d7172e18dc4e7c2065777611bf Author: Al Viro Date: Fri Jun 3 18:24:58 2011 -0400 more conservative S_NOSEC handling Caching "we have already removed suid/caps" was overenthusiastic as merged. On network filesystems we might have had suid/caps set on another client, silently picked by this client on revalidate, all of that *without* clearing the S_NOSEC flag. AFAICS, the only reasonably sane way to deal with that is * new superblock flag; unless set, S_NOSEC is not going to be set. * local block filesystems set it in their ->mount() (more accurately, mount_bdev() does, so does btrfs ->mount(), users of mount_bdev() other than local block ones clear it) * if any network filesystem (or a cluster one) wants to use S_NOSEC, it'll need to set MS_NOSEC in sb->s_flags *AND* take care to clear S_NOSEC when inode attribute changes are picked from other clients. It's not an earth-shattering hole (anybody that can set suid on another client will almost certainly be able to write to the file before doing that anyway), but it's a bug that needs fixing. Signed-off-by: Al Viro commit 1f3bd0f2ac870c9eb29590f193ee3d94e2d35514 Merge: bb3d6bf a1b2cc5 Author: Linus Torvalds Date: Sat Jun 4 07:04:25 2011 +0900 Merge branch 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * 'sh-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: dmaengine: shdma: fix a regression: initialise DMA channels for memcpy dmaengine: shdma: Fix up fallout from runtime PM changes. Revert "clocksource: sh_cmt: Runtime PM support" Revert "clocksource: sh_tmu: Runtime PM support" sh: Fix up asm-generic/ptrace.h fallout. sh64: Move from P1SEG to CAC_ADDR for consistent sync. sh64: asm/pgtable.h needs asm/mmu.h sh: asm/tlb.h needs linux/swap.h sh: mark DMA slave ID 0 as invalid sh: Update shmin to reflect PIO dependency. sh: arch/sh/kernel/process_32.c needs linux/prefetch.h. sh: add MMCIF runtime PM support on ecovec sh: switch ap325rxa to dynamically manage the platform camera commit bb3d6bf1919a20c56b3257b4ec09e67a9226cfb2 Author: Linus Torvalds Date: Sat Jun 4 07:00:50 2011 +0900 Revert "ASoC: Update cx20442 for TTY API change" This reverts commit ed0bd2333cffc3d856db9beb829543c1dfc00982. Since we reverted the TTY API change, we should revert the ASoC update to it too. Cc: Mark Brown Cc: Liam Girdwood Cc: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 55db4c64eddf37e31279ec15fe90314713bc9cfa Author: Linus Torvalds Date: Sat Jun 4 06:33:24 2011 +0900 Revert "tty: make receive_buf() return the amout of bytes received" This reverts commit b1c43f82c5aa265442f82dba31ce985ebb7aa71c. It was broken in so many ways, and results in random odd pty issues. It re-introduced the buggy schedule_work() in flush_to_ldisc() that can cause endless work-loops (see commit a5660b41af6a: "tty: fix endless work loop when the buffer fills up"). It also used an "unsigned int" return value fo the ->receive_buf() function, but then made multiple functions return a negative error code, and didn't actually check for the error in the caller. And it didn't actually work at all. BenH bisected down odd tty behavior to it: "It looks like the patch is causing some major malfunctions of the X server for me, possibly related to PTYs. For example, cat'ing a large file in a gnome terminal hangs the kernel for -minutes- in a loop of what looks like flush_to_ldisc/workqueue code, (some ftrace data in the quoted bits further down). ... Some more data: It -looks- like what happens is that the flush_to_ldisc work queue entry constantly re-queues itself (because the PTY is full ?) and the workqueue thread will basically loop forver calling it without ever scheduling, thus starving the consumer process that could have emptied the PTY." which is pretty much exactly the problem we fixed in a5660b41af6a. Milton Miller pointed out the 'unsigned int' issue. Reported-by: Benjamin Herrenschmidt Reported-by: Milton Miller Cc: Stefan Bigler Cc: Toby Gray Cc: Felipe Balbi Cc: Greg Kroah-Hartman Cc: Alan Cox Signed-off-by: Linus Torvalds commit 8b20c8cb89b733f5a73fad1f7ad7cff8325e0034 Author: Govindraj.R Date: Wed Jun 1 11:31:24 2011 +0530 spi/omap2: fix uninitialized variable fixes below compilation warning. The variable doesn't actual ever get used uninitialized, but that's no reason to be sloppy. drivers/spi/omap2_mcspi.c: In function 'omap2_mcspi_txrx_dma': drivers/spi/omap2_mcspi.c:301: warning: 'elements' may be used uninitialized in this function Signed-off-by: Govindraj.R [grant.likely: amended description] Signed-off-by: Grant Likely commit f124c6ae59e193705c9ddac57684d50006d710e6 Author: Dan Carpenter Date: Fri Jun 3 07:45:28 2011 +0300 xen: off by one errors in multicalls.c b->args[] has MC_ARGS elements, so the comparison here should be ">=" instead of ">". Otherwise we read past the end of the array one space. CC: stable@kernel.org Signed-off-by: Dan Carpenter Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Jeremy Fitzhardinge commit 7b29dc21ea084be7ddfb536994a9cfae95337690 Merge: 9a2e0fb dfe2158 Author: John W. Linville Date: Fri Jun 3 14:31:50 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into for-davem commit d2ac49fe3c7c4730323c1042fb53a2e008643b6a Author: Daniel Drake Date: Fri Jun 3 00:13:26 2011 +0100 libertas_sdio: handle spurious interrupts Commit 06e8935febe687e2a561707d4c7ca4245d261dbe adds an IRQ handling optimization for single-function SDIO cards like this one, but at the same time exposes a small hardware bug. During hardware init, an interrupt is generated with (apparently) no source. Previously, mmc threw this interrupt away, but now (due to the optimization), the mmc layer passes this onto libertas, before it is ready (and before it has enabled interrupts), causing a crash. Work around this hardware bug by registering the IRQ handler later and making it capable of handling interrupts with no cause. The change that makes the IRQ handler registration happen later actually eliminates the spurious interrupt as well. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 59e7e7078d6c2c6294caf454c6e3695f9d3e46a2 Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 2 17:28:37 2011 -0300 mac80211: call dev_alloc_name before copying name to sdata This partially reverts 1c5cae815d19ffe02bdfda1260949ef2b1806171, because the netdev name is copied into sdata->name, which is used for debugging messages, for example. Otherwise, we get messages like this: wlan%d: authenticated Signed-off-by: Thadeu Lima de Souza Cascardo Cc: Jiri Pirko Cc: David S. Miller Cc: Johannes Berg Cc: "John W. Linville" Signed-off-by: John W. Linville commit 6f213ff1919fab6f8244ceae55631b5d6ef750a7 Author: Stanislaw Gruszka Date: Thu Jun 2 18:17:15 2011 +0200 iwlagn: fix channel switch locking We use priv->mutex to avoid race conditions between iwl_chswitch_done() and iwlagn_mac_channel_switch(), when marking channel switch in progress. But iwl_chswitch_done() can be called in atomic context from iwl_rx_csa() or with mutex already taken from iwlagn_commit_rxon(). These bugs were introduced by: commit 79d07325502e73508f917475bc1617b60979dd94 Author: Wey-Yi Guy Date: Thu May 6 08:54:11 2010 -0700 iwlwifi: support channel switch offload in driver To fix remove mutex from iwl_chswitch_done() and use atomic bitops for marking channel switch pending. Also remove iwl2030_hw_channel_switch() since 2000 series adapters are 2.4GHz only devices. Cc: stable@kernel.org # 2.6.36+ Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit a99168eece601d2a79ecfcb968ce226f2f30cf98 Author: Nick Kossifidis Date: Thu Jun 2 03:09:48 2011 +0300 ath5k: Disable fast channel switching by default Disable fast channel change by default on AR2413/AR5413 due to some bug reports (it still works for me but it's better to be safe). Add a module parameter "fastchanswitch" in case anyone wants to enable it and play with it. Signed-off-by: Nick Kossifidis Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit bdf492f502ad4f646e9905db1b89e11822826edd Author: Rafał Miłecki Date: Wed Jun 1 11:01:11 2011 +0200 ssb: fix PCI(e) driver regression causing oops on PCI cards We were incorrectly executing PCIe specific workarounds on PCI cards. This resulted in: Machine check in kernel mode. Caused by (from SRR1=149030): Transfer error ack signal Oops: Machine check, sig: 7 [#1] Reported-by: Andreas Schwab Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5f0b23eeba2d9105944148e5a85b0bfb34a8ecf5 Author: Suresh Jayaraman Date: Fri Jun 3 14:19:01 2011 +0530 cifs: make CIFS depend on CRYPTO_ECB When CONFIG_CRYPTO_ECB is not set, trying to mount a CIFS share with NTLM security resulted in mount failure with the following error: "CIFS VFS: could not allocate des crypto API" Seems like a leftover from commit 43988d7. Signed-off-by: Suresh Jayaraman CC: Shirish Pargaonkar Reviewed-by: Jeff Layton Signed-off-by: Steve French commit a947eb95ea03199da7408a64baa97fbb613e9b84 Author: Suleiman Souhlal Date: Thu Jun 2 00:16:42 2011 -0700 SLAB: Record actual last user of freed objects. Currently, when using CONFIG_DEBUG_SLAB, we put in kfree() or kmem_cache_free() as the last user of free objects, which is not very useful, so change it to the caller of those functions instead. Acked-by: David Rientjes Acked-by: Christoph Lameter Signed-off-by: Suleiman Souhlal Signed-off-by: Pekka Enberg commit d4d84fef6d0366b585b7de13527a0faeca84d9ce Author: Chris Metcalf Date: Thu Jun 2 10:19:41 2011 -0400 slub: always align cpu_slab to honor cmpxchg_double requirement On an architecture without CMPXCHG_LOCAL but with DEBUG_VM enabled, the VM_BUG_ON() in __pcpu_double_call_return_bool() will cause an early panic during boot unless we always align cpu_slab properly. In principle we could remove the alignment-testing VM_BUG_ON() for architectures that don't have CMPXCHG_LOCAL, but leaving it in means that new code will tend not to break x86 even if it is introduced on another platform, and it's low cost to require alignment. Acked-by: David Rientjes Acked-by: Christoph Lameter Signed-off-by: Chris Metcalf Signed-off-by: Pekka Enberg commit 157186bc185cdf588fecba0fc5d7466e3e5d49d7 Author: Eric Lammerts Date: Fri May 27 18:16:52 2011 -0400 ALSA: usb - turn off de-emphasis in s/pdif for cm6206 CM6206: Turn off de-emphasis channel status bit in S/PDIF output. Signed-off-by: Eric Lammerts Signed-off-by: Takashi Iwai commit c592a7073796de1cd221f957ab693c19d383423f Author: Suresh Jayaraman Date: Fri Jun 3 12:06:19 2011 +0530 cifs: fix the kernel release version in the default security warning message When ntlm security mechanim is used, the message that warns about the upgrade to ntlmv2 got the kernel release version wrong (Blame it on Linus :). Fix it. Signed-off-by: Suresh Jayaraman Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 098011940a2549ae7182db4bf101c3e3d2b4e6df Author: Ben Gardiner Date: Mon May 30 14:56:16 2011 -0400 UBIFS: fix-up free space earlier The free space fixup is currently initiated during mount after the call to ubifs_write_master() which results in a write to PEBs; this has been observed with the patch 'assert no fixup when writing a node' applied: Move the free space fixup on mount to before the calls to ubifs_recover_inl_heads() and ubifs_write_master(). This results in no assertions with the previously mentioned patch applied. Artem: tweaked the patch a bit Signed-off-by: Ben Gardiner Reviewed-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit 781c5717a95a74b294beb38b8276943b0f8b5bb4 Author: Ben Gardiner Date: Mon May 30 14:56:15 2011 -0400 UBIFS: intialize LPT earlier The current 'mount_ubifs()' implementation does not initialize the LPT until the the master node is marked dirty. Move the LPT initialization to before marking the master node dirty. This is a preparation for the next patch which will move the free-space-fixup check to before marking the master node dirty, because we have to fix-up the free space before doing any writes. Artem: massaged the patch and commit message. Signed-off-by: Ben Gardiner Reviewed-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit 4f1ab9b01d34eac9fc958f7150d3bf266dcc1685 Author: Ben Gardiner Date: Mon May 30 14:56:14 2011 -0400 UBIFS: assert no fixup when writing a node The current free space fixup can result in some writing to the UBI volume when the space_fixup flag is set. To catch instances where UBIFS is writing to the NAND while the space_fixup flag is set, add an assert to ubifs_write_node(). Artem: tweaked the patch, added similar assertion to the write buffer write path. Signed-off-by: Ben Gardiner Reviewed-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit 837072377034d0a0b18b851d1ab95676b245cc0a Author: Artem Bityutskiy Date: Tue May 31 14:26:07 2011 +0300 UBIFS: fix clean znode counter corruption in error cases UBIFS maintains per-filesystem and global clean znode counters ('c->clean_zn_cnt' and 'ubifs_clean_zn_cnt'). It is important to maintain correct values there since the shrinker relies on 'ubifs_clean_zn_cnt'. However, in case of failures during commit the counters were corrupted. E.g., if a failure happens in the middle of 'write_index()', then some nodes in the commit list ('c->cnext') are marked as clean, and some are marked as dirty. And the 'ubifs_destroy_tnc_subtree()' frees does not retrun correct count, and we end up with non-zero 'c->clean_zn_cnt' when unmounting. This means that if we have 2 file-sytem and one of them fails, and we unmount it, 'ubifs_clean_zn_cnt' stays incorrect and confuses the shrinker. Signed-off-by: Artem Bityutskiy commit 812eb258311f89bcd664a34a620f249d54a2cd83 Author: Artem Bityutskiy Date: Tue May 31 08:40:40 2011 +0300 UBIFS: fix memory leak on error path UBIFS leaks memory on error path in 'ubifs_jnl_update()' in case of write failure because it forgets to free the 'struct ubifs_dent_node *dent' object. Although the object is small, the alignment can make it large - e.g., 2KiB if the min. I/O unit is 2KiB. Signed-off-by: Artem Bityutskiy Cc: stable@kernel.org commit cf610bf4199770420629d3bc273494bd27ad6c1d Author: Artem Bityutskiy Date: Tue May 31 07:03:21 2011 +0300 UBIFS: fix shrinker object count reports Sometimes VM asks the shrinker to return amount of objects it can shrink, and we return the ubifs_clean_zn_cnt in that case. However, it is possible that this counter is negative for a short period of time, due to the way UBIFS TNC code updates it. And I can observe the following warnings sometimes: shrink_slab: ubifs_shrinker+0x0/0x2b7 [ubifs] negative objects to delete nr=-8541616642706119788 This patch makes sure UBIFS never returns negative count of objects. Signed-off-by: Artem Bityutskiy Cc: stable@kernel.org commit 5ff6197f828d5ea051b3abf77cb61f8a34480e8d Author: Steven Miao Date: Wed Jun 1 15:52:41 2011 +0800 Blackfin: strncpy: fix handling of zero lengths The jump to 4f will cause the NUL padding loop to run at least one time, so if string length is zero just jump to the end. Otherwise we wrongly write one NUL byte when size==0. Signed-off-by: Steven Miao Signed-off-by: Mike Frysinger commit b273fa9716aa1564bee88ceee62f9042981cdc81 Author: Frederic Weisbecker Date: Thu Mar 31 18:27:42 2011 +0200 perf python: Fix argument name list of read_on_cpu() Mandatory arguments need to be present in the argument name list, as well as optional arguments, otherwise python barfs: # ./python/twatch.py Traceback (most recent call last): File "./python/twatch.py", line 41, in main() File "./python/twatch.py", line 32, in main event = evlist.read_on_cpu(cpu) RuntimeError: more argument specifiers than keyword list entries Hence, add cpu to the name list. Cc: David Ahern Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/r/1301588863-20210-1-git-send-email-fweisbec@gmail.com Signed-off-by: Frederic Weisbecker Signed-off-by: Arnaldo Carvalho de Melo commit 56722381b8506733852c44dacf6d7bc5f90aedaf Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 11:04:54 2011 -0300 perf evlist: Don't die if sample_{id_all|type} is invalid Fixes two more cases where the python binding would not load: . Not finding die(), which it shouldn't anyway, not good to just stop the world because some particular perf.data file is invalid, just propagate the error to the caller. . Not finding perf_sample_size: fix it by moving it from event.c to evsel, where it belongs, as most cases are moving to operate on an evsel object.o One of the fixed problems: [root@emilia ~]# python >>> import perf Traceback (most recent call last): File "", line 1, in ImportError: /home/acme/git/build/perf/python/perf.so: undefined symbol: perf_sample_size >>> [root@emilia ~]# Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-1hkj7b2cvgbfnoizsekjb6c9@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 9c850d6c4b95bb07fb066eb7f43dd4e3b4842b85 Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 10:55:10 2011 -0300 perf python: Use exception to propagate errors We were using pr_debug to tell the user about not being able to parse a sample where we should really use the python way of reporting errors: exceptions. Fixes this problem: [root@emilia ~]# python >>> import perf Traceback (most recent call last): File "", line 1, in ImportError: /home/acme/git/build/perf/python/perf.so: undefined symbol: eprintf >>> [root@emilia ~] As we want to keep the objects linked in the python binding (and in the future in a shared library) minimal. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-m9dba9kaluas0kq8r58z191c@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit d21cc9f67d689effbfd24bac878bc2c057de8c46 Author: Arnaldo Carvalho de Melo Date: Thu Jun 2 10:39:43 2011 -0300 perf evlist: Remove dependency on debug routines So far we avoided having to link debug.o in the python binding, keep it that way by not using ui__warning() in evlist.c. Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Link: http://lkml.kernel.org/n/tip-4wtew8hd3g7ejnlehtspys2t@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 1c3cc11602111d1318c2a5743bd2e88c82813927 Author: Sebastian Andrzej Siewior Date: Sat May 21 12:58:28 2011 +0200 timers: Consider slack value in mod_timer() There is an optimization which does not update the timer if the timer was pending and the expiration time was unchanged. Since commit 3bbb9ec9 ("timers: Introduce the concept of timer slack for legacy timers") this optimization is no longer applied for timers where the expiration time got extended due to the slack value. So we need to check again after the expiration time might have been updated. [ tglx: Made it a single check by applying slack first and sorting out the slack = 0 value (all timeouts < 256 jiffies) early ] Signed-off-by: Sebastian Andrzej Siewior Link: http://lkml.kernel.org/r/20110521105828.GA29442@Chamillionaire.breakpoint.cc Signed-off-by: Thomas Gleixner commit c5182b8867e189e14a8df5dbfcba1c73f286e061 Author: Mark Brown Date: Thu Jun 2 18:55:13 2011 +0100 genirq: Ensure we locate the passed IRQ in irq_alloc_descs() When irq_alloc_descs() is called with no base IRQ specified then it will search for a range of IRQs starting from a specified base address. In the case where an IRQ is specified it still does this search in order to ensure that none of the requested range is already allocated and it still uses the from parameter to specify the base for the search. This means that in the case where a base is specified but from is zero (which is reasonable as any IRQ number is in the range specified by a zero from) the function will get confused and try to allocate the first suitably sized block of free IRQs it finds. Instead use a specified IRQ as the base address for the search, and insist that any from that is specified can support that IRQ. Signed-off-by: Mark Brown Link: http://lkml.kernel.org/r/1307037313-15733-1-git-send-email-broonie@opensource.wolfsonmicro.com Signed-off-by: Thomas Gleixner commit e7fbad300a7a6432238f086e3c9a61538a905858 Author: Linus Walleij Date: Tue May 31 18:14:39 2011 +0200 genirq: Fix descriptor init on non-sparse IRQs The genirq changes are initializing descriptors for sparse IRQs quite differently from how non-sparse (stacked?) IRQs are initialized, with the effect that on my platform all IRQs are default-disabled on sparse IRQs and default-enabled if non-sparse IRQs are used, crashing some GPIO driver. Fix this by refactoring the non-sparse IRQs to use the same descriptor init function as the sparse IRQs. Signed-off: Linus Walleij Link: http://lkml.kernel.org/r/1306858479-16622-1-git-send-email-linus.walleij@stericsson.com Cc: stable@kernel.org # 2.6.39 Signed-off-by: Thomas Gleixner commit 3a43e05f4d0600e906fa09f4a65d749288c44592 Author: Sebastian Andrzej Siewior Date: Tue May 31 08:56:11 2011 +0200 irq: Handle spurios irq detection for threaded irqs The detection of spurios interrupts is currently limited to first level handler. In force-threaded mode we never notice if the threaded irq does not feel responsible. This patch catches the return value of the threaded handler and forwards it to the spurious detector. If the primary handler returns only IRQ_WAKE_THREAD then the spourious detector ignores it because it gets called again from the threaded handler. [ tglx: Report the erroneous return value early and bail out ] Signed-off-by: Sebastian Andrzej Siewior Link: http://lkml.kernel.org/r/1306824972-27067-2-git-send-email-sebastian@breakpoint.cc Signed-off-by: Thomas Gleixner commit ef26f20cd117eb3c185038ed7cbf7b235575751d Author: Sebastian Andrzej Siewior Date: Tue May 31 08:56:10 2011 +0200 genirq: Print threaded handler in spurious debug output In forced threaded mode (or with an explicit threaded handler) we only see the primary handler, but not the threaded handler. Signed-off-by: Sebastian Andrzej Siewior Link: http://lkml.kernel.org/r/1306824972-27067-1-git-send-email-sebastian@breakpoint.cc Signed-off-by: Thomas Gleixner commit d50a2fb63643dce8506520dab5ffb8f49cc45cb2 Author: Joe Perches Date: Fri Jun 3 02:28:49 2011 -0700 ALSA: asihpi: Use angle brackets for system includes Use the normal include style. Signed-off-by: Joe Perches Signed-off-by: Takashi Iwai commit 1b054b67d3bfc6dca9f634c104780f3f24ff3eec Author: Thomas Gleixner Date: Fri Jun 3 11:13:33 2011 +0200 clockevents: Handle empty cpumask gracefully For UP it's stupid to request an initialized cpumask for the clock event devices. Though we need the mask set even on UP to avoid a horrible ifdeffery especially in the broadcast code. For SMP we can at least try to survive with a warning and set the cpumask of the cpu we're running on. That gives a decent chance to bring the machine up and retrieve the debug info. Signed-off-by: Thomas Gleixner Cc: Linus Walleij Cc: Russell King - ARM Linux Cc: Stephen Boyd commit 840d8e5e964dc51673d0f26e119b27d2898e8417 Author: Joachim Eastwood Date: Wed Jun 1 23:59:10 2011 +0200 ASoC: atmel_ssc: Don't try to free ssc if request failed We should only call ssc_free() when ssc_request() succeeds or bad things will happen. Signed-off-by: Joachim Eastwood Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 9676001559fce06e37c7dc230ab275f605556176 Author: Dan Carpenter Date: Thu May 26 11:47:35 2011 +0300 ALSA: fm801: add error handling if auto-detect fails In the original code if auto detect failed and tea575x_tuner == 4 then we copy bogus information to chip->tea.card. I've changed the autodetect code to cleanup and return -ENODEV on error instead. Signed-off-by: Dan Carpenter Signed-off-by: Takashi Iwai commit a01ef051d584c12ede5cd5275b008b2ded57f3d9 Author: Raymond Yau Date: Wed Jun 1 15:09:48 2011 +0800 ALSA: hda - Check pin support EAPD in ad198x_power_eapd_write Check whether the pin supports EAPD in ad198x_power_eapd_write. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 4dffbe03d1e940aba878f9420e67feb8423cdd08 Author: Takashi Iwai Date: Fri Jun 3 10:05:02 2011 +0200 ALSA: hda - Fix HP and Front pins of ad1988/ad1989 in ad198x_power_eapd() In ad198x_power_eapd(), wrong pin NIDs are used for controlling EAPD for HP and Front outputs of AD1988/AD1989. These are actually same with the ones for AD1984 & co, port-A is 0x11 and port-D 0x12. Reported-by: Raymond Yau Signed-off-by: Takashi Iwai commit 9a2e0fb0893ddf595d0a372e681f5b98017c6d90 Author: Matt Carlson Date: Thu Jun 2 13:01:39 2011 +0000 tg3: Fix tg3_skb_error_unmap() This function attempts to free one fragment beyond the number of fragments that were actually mapped. This patch brings back the limit to the correct spot. Signed-off-by: Matt Carlson Tested-by: Alex Williamson Signed-off-by: David S. Miller commit 8c47f8d07e16034dfbf736bb4478809aba8a53f1 Author: David S. Miller Date: Thu Jun 2 22:49:11 2011 -0700 sparc: PCIC_PCI needs SPARC32 dependency Reported-by: Stephen Rothwell Signed-off-by: David S. Miller commit 704102a6799ecf7c1b268a43452761dae335f29c Author: Shaohui Xie Date: Fri Jun 3 10:45:11 2011 +0800 powerpc/85xx: fix race bug of calling request_irq after enable elbc interrupts Signed-off-by: Shaohui Xie Signed-off-by: Kumar Gala commit f5182b4155b9d686c5540a6822486400e34ddd98 Author: Sarah Sharp Date: Thu Jun 2 11:33:02 2011 -0700 xhci: Disable MSI for some Fresco Logic hosts. Some Fresco Logic hosts, including those found in the AUAU N533V laptop, advertise MSI, but fail to actually generate MSI interrupts. Add a new xHCI quirk to skip MSI enabling for the Fresco Logic host controllers. Fresco Logic confirms that all chips with PCI vendor ID 0x1b73 and device ID 0x1000, regardless of PCI revision ID, do not support MSI. This should be backported to stable kernels as far back as 2.6.36, which was the first kernel to support MSI on xHCI hosts. Signed-off-by: Sarah Sharp Reported-by: Sergey Galanov Cc: stable@kernel.org commit eb7073db1076777496495483854993165e14790f Author: Tomoya MORINAGA Date: Thu Jun 2 11:31:29 2011 +0900 8250_pci: add -ENODEV code for Intel EG20T PCH Intel EG20T PCH has UART device which is compatible with 8250. Currently, with general configuration, the PCH UART driver is not loaded but 8250 standard driver is loaded. Therefore, in case of using PCH UART driver, need to disable 8250 pci function. However, this procedure is not best solution. This patch, in 8250_pci, if the device is the PCH or the family IOH, '-ENODEV' is returned. As a result, disabling 8250-pci processing becomes unnecessary. Signed-off-by: Tomoya MORINAGA Signed-off-by: Greg Kroah-Hartman commit 001fd3826f4c736ce292315782d015f768399080 Author: Maarten Lankhorst Date: Wed Jun 1 23:27:50 2011 +0200 xhci: Do not issue device reset when device is not setup xHCI controllers respond to a Reset Device command when the Slot is in the Enabled/Disabled state by returning an error. This is fine on other host controllers, but the Etron xHCI host controller returns a vendor-specific error code that the xHCI driver doesn't understand. The xHCI driver then gives up on device enumeration. Instead of issuing a command that will fail, just return. This fixes the issue with the xhci driver not working on ASRock P67 Pro/Extreme boards. This should be backported to stable kernels as far back as 2.6.34. Signed-off-by: Maarten Lankhorst Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit e2b0217715c6d10379d94bdfe5560af96eecbb7c Author: Maarten Lankhorst Date: Wed Jun 1 23:27:49 2011 +0200 xhci: Add defines for hardcoded slot states This needs to be added to the stable trees back to 2.6.34 to support an upcoming bug fix. Signed-off-by: Maarten Lankhorst Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit 2c7d1644406748d7c5da7b9db3c5080296af55bf Author: Geert Uytterhoeven Date: Fri May 27 21:39:56 2011 +0000 sparc: Do not select GENERIC_HARDIRQS_NO_DEPRECATED Config option GENERIC_HARDIRQS_NO_DEPRECATED was removed in commit 78c89825649a9a5ed526c507603196f467d781a5 ("genirq: Remove the now obsolete config options and select statements"), but the select was accidentally reintroduced in commit 6baa9b20a68a88c2fd751cbe8d7652009379351b ("sparc32: genirq support") Signed-off-by: Geert Uytterhoeven Signed-off-by: David S. Miller commit 4819fef5e7cb9a39e1fd59ecd85861b3ffebdcaa Author: Matt Evans Date: Wed Jun 1 13:01:07 2011 +1000 xhci: Bigendian fix for xhci_check_bandwidth() Commit 834cb0fc4712a3b21c6b8c5cb55bd13607191311 "xhci: Fix memory leak bug when dropping endpoints" added a small endian bug. This patch fixes xhci_check_bandwidth() to read add/drop_flags LE. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 5d07b7869a48aec43ee0de6413a6657457287b63 Author: Daniel Hellstrom Date: Mon May 23 21:04:48 2011 +0000 sparc32,leon: add GRPCI2 PCI Host driver The DMA region must be accessible in order for PCI peripheral drivers to work, the sparc32 has DMA in the normal memory zone which requires the GRPCI2 to PCI target BARs so that all kernel low mem (192MB) can be mapped 1:1 to PCI address space. The GRPCI2 has resizeable target BARs, by default the first is made 256MB and all other BARs are disabled. I/O space are always located on 0x1000-0x10000, but accessed through the GRPCI2 PCI I/O Window memory mapped to virtual address space. Configuration space is accessed through the 64KB GRPCI2 PCI CFG Window using LDA bypassing the MMU. The GRPCI2 has a single PCI Window for prefetchable and non- prefetchable address space, it is up to the AHB master requesting PCI data to determine access type. Memory space is mapped 1:1. The GRPCI2 core can be configured in 4 different IRQ modes, where PCI Interrupt, Error Interrupt and DMA Interrupt are shared on a single IRQ line or at most 5 IRQs are used. The GRPCI2 can mask/unmask PCI interrupts, Err and DMA in the control and check status bits which tells us which IRQ really happended. The GENIRQ layer is used to unmask/mask each individual IRQ source by creating virtual IRQs and implementing a IRQ chip. The optional DMA functionality of the GRPCI2 is not supported by this patch. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 26893c1368aeb96e06e4f9dce61bbde3351d5e9f Author: Daniel Hellstrom Date: Mon May 23 21:04:47 2011 +0000 sparc32,leon: added LEON-common low-level PCI routines The LEON architecture does not have a BIOS or bootloader that initializes PCI for us, instead Linux generic PCI layer is used to set up resources and IRQ. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit cfe3af5dde34a019c1bd2485b1dc0f2d7a326ccd Author: Daniel Hellstrom Date: Mon May 23 21:04:46 2011 +0000 sparc32: added CONFIG_PCIC_PCI Kconfig setting Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit ec764bf083a6ff396234351b51fd236f53c903bf Author: Koki Sanagi Date: Mon May 30 21:48:34 2011 +0000 net: tracepoint of net_dev_xmit sees freed skb and causes panic Because there is a possibility that skb is kfree_skb()ed and zero cleared after ndo_start_xmit, we should not see the contents of skb like skb->len and skb->dev->name after ndo_start_xmit. But trace_net_dev_xmit does that and causes panic by NULL pointer dereference. This patch fixes trace_net_dev_xmit not to see the contents of skb directly. If you want to reproduce this panic, 1. Get tracepoint of net_dev_xmit on 2. Create 2 guests on KVM 2. Make 2 guests use virtio_net 4. Execute netperf from one to another for a long time as a network burden 5. host will panic(It takes about 30 minutes) Signed-off-by: Koki Sanagi Signed-off-by: David S. Miller commit fb9be2349f099d7c68b706e04fd62c478d3c0ed2 Author: Kumar Gala Date: Thu Jun 2 11:26:13 2011 -0500 powerpc/book3e: Fix CPU feature handling on e5500 in 32-bit mode We are missing FPU feature bit that user space may require. In the 64-bit mode this gets set since we pull it in via COMMON_USER_PPC64. We just explicitly set it so user space will be happy again. Signed-off-by: Kumar Gala commit a3623239ad941c7fa5440231f601e8f6de1f2a54 Author: Kumar Gala Date: Thu Jun 2 11:18:53 2011 -0500 powerpc/fsl_rio: Fix compile error when CONFIG_FSL_RIO not set arch/powerpc/kernel/built-in.o: In function `machine_check_e500mc': arch/powerpc/kernel/traps.c:429: undefined reference to `fsl_rio_mcheck_exception' arch/powerpc/kernel/built-in.o: In function `machine_check_e500': arch/powerpc/kernel/traps.c:519: undefined reference to `fsl_rio_mcheck_exception' make: *** [.tmp_vmlinux1] Error 1 Reported-by: Timur Tabi Signed-off-by: Kumar Gala commit b36a968927b789b2dd8de0aaf7a72ef7c1f0d012 Author: Chris Metcalf Date: Thu Jun 2 14:21:45 2011 -0400 asm-generic/unistd.h: support sendmmsg syscall Signed-off-by: Chris Metcalf Acked-by: Arnd Bergmann commit bf0be0e951cf1c4c9ce38032195cd8095a16d828 Author: Jesper Juhl Date: Mon May 30 12:49:01 2011 +0200 ALSA: 6fire: Don't leak firmware in error path One of the error paths in sound/usb/6fire/firmware.c::usb6fire_fw_ezusb_upload() neglects to free the memory allocated for the firmware before returning, thus leaking the memory. Signed-off-by: Jesper Juhl Signed-off-by: Takashi Iwai commit 9bf7174949aef2f43253956e1f3ab01698abbd79 Author: Steven Rostedt Date: Wed Jun 1 23:27:19 2011 -0400 ktest: Ignore unset values of the minconfig in config_bisect By ignoring the unset values of the minconfig in deciding what to test in the config_bisect can cause the problem config from being tested too. Just do not test the configs that are set in the minconfig. Signed-off-by: Steven Rostedt commit 4da46da2d295c0d9f4aaf28dd2b70a1ecb42d972 Author: Steven Rostedt Date: Wed Jun 1 23:25:13 2011 -0400 ktest: Fix result of rebooting the kernel The command that is called that reboots the kernel may fail but the return code is not passed back to the ktest.pl script. This is because a ';' is used between the two commands and if the second command fails, only the first command's return code is returned. Using a '&&' between the two commands fixes this. Signed-off-by: Steven Rostedt commit 4c8cc55b3c0ebe989e727017933945b68b4327cd Author: Steven Rostedt Date: Wed Jun 1 23:22:30 2011 -0400 ktest: Fix off-by-one in config bisect result Because in perl the array size returned by $#arr, is the last index and not the actually size of the array, we end the config bisect early, thinking there is only one config left when there are in fact two. Thus the result has a 50% chance of picking the correct config that caused the problem. Signed-off-by: Steven Rostedt commit e3a57b3ccf5c04934ac43b5b80e32ba51b817288 Merge: e2bd967 9b83c77 Author: Jens Axboe Date: Thu Jun 2 13:14:15 2011 +0200 Merge branch 'for-jens/xen-blkback.fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus commit e2bd9678fc0085acf540dc4cb48ff961cd4d88c0 Author: Paul Bolle Date: Thu Jun 2 13:05:02 2011 +0200 block: Use hlist_entry() for io_context.cic_list.first list_entry() and hlist_entry() are both simply aliases for container_of(), but since io_context.cic_list.first is an hlist_node one should at least use the correct alias. Signed-off-by: Paul Bolle Signed-off-by: Jens Axboe commit 28304f485c3627cc5e1665b92e26eb7fcfe98088 Author: Paul Bolle Date: Thu Jun 2 13:05:02 2011 +0200 cfq-iosched: Remove bogus check in queue_fail path queue_fail can only be reached if cic is NULL, so its check for cic must be bogus. Signed-off-by: Paul Bolle Signed-off-by: Jens Axboe commit e73e079bf128d68284efedeba1fbbc18d78610f9 Author: James Bottomley Date: Wed May 25 15:52:14 2011 -0500 [SCSI] Fix oops caused by queue refcounting failure In certain circumstances, we can get an oops from a torn down device. Most notably this is from CD roms trying to call scsi_ioctl. The root cause of the problem is the fact that after scsi_remove_device() has been called, the queue is fully torn down. This is actually wrong since the queue can be used until the sdev release function is called. Therefore, we add an extra reference to the queue which is released in sdev->release, so the queue always exists. Reported-by: Parag Warudkar Cc: stable@kernel.org Signed-off-by: James Bottomley commit 1b86d775dd4c13967e1895df09d0cef198956e81 Author: Joe Perches Date: Sat May 28 11:13:33 2011 -0700 video: Convert vmalloc/memset to vzalloc Signed-off-by: Joe Perches Acked-by: Konrad Rzeszutek Wilk Signed-off-by: Paul Mundt commit bb8b26627267a82c49f47fc52a0785f079a7b063 Author: Andy Lutomirski Date: Thu May 26 10:13:34 2011 -0400 efifb: Disallow manual bind and unbind Both were buggy: bind would happily scribble over a real graphics device and unbind wouldn't destroy the framebuffer. Hotplugging efifb makes no sense anyway, so just disable it. As an added benefit, we save some runtime memory. Signed-off-by: Andy Lutomirski Signed-off-by: Peter Jones Signed-off-by: Paul Mundt commit da0241f12bf785f74e57ad6d67abdf269216f76b Author: Andy Lutomirski Date: Thu May 26 10:13:32 2011 -0400 efifb: Fix mismatched request/release_mem_region Signed-off-by: Andy Lutomirski Signed-off-by: Peter Jones Signed-off-by: Paul Mundt commit 3c004b4f7eab239e726c6dde0f6cfca46a96956b Author: Andy Lutomirski Date: Thu May 26 10:13:31 2011 -0400 efifb: Enable write-combining Running fbcon on an uncached framebuffer is remarkably slow. So try to enable write combining in efifb. Without this patch, it takes 5.8 seconds from efifb probe to i915 probe (default options; no plymouth or quiet mode). With this patch, it only takes 1.7 seconds. That means we wasted over 4 seconds just writing to UC memory. Signed-off-by: Andy Lutomirski Signed-off-by: Peter Jones Signed-off-by: Paul Mundt commit 0057f1809d44b26765ec2374e0107a2f8ab256f5 Author: Julia Lawall Date: Wed Jun 1 17:10:13 2011 +0000 drivers/video/pxa168fb.c: add missing clk_put Add a label for error-handling code in the case where only clk_get has succeeded. Rename the label failed to be consistent with the rest. A simplified version of the semantic match that finds the missing clk_put is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Signed-off-by: Paul Mundt commit 609d3bbf044a6766f6505d8a29d4ed48020c014c Author: Julia Lawall Date: Wed Jun 1 17:10:11 2011 +0000 drivers/video/imxfb.c: add missing clk_put Reorder the labels at the end of the function to correspond to the order in which the resources are allocated. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Acked-by: Sascha Hauer Signed-off-by: Paul Mundt commit 70f289db31502ac030049450e63d380f3bc30cd2 Author: Steven Miao Date: Mon May 30 03:23:36 2011 +0000 fbdev: bf537-lq035: add missing blacklight properties type Seems this new field was missed, probably due to this driver being merged around the time this new backlight field was being added. At any rate, initial the type field to avoid ugly WARN() dumps. Signed-off-by: Steven Miao Signed-off-by: Mike Frysinger Signed-off-by: Paul Mundt commit 1bae852fb0beca3cc95b8de84efbc7254cae62e1 Author: Tormod Volden Date: Sat May 28 15:06:11 2011 +0000 savagefb: Use panel CVT mode as default If there is no EDID but an LCD panel is detected, generate a CVT mode from the panel resolution (at 60 Hz), and use this as a default mode instead of the hardcoded 800x600x8 mode. Signed-off-by: Tormod Volden Signed-off-by: Paul Mundt commit 554cc1028603587e28ae49e9594b1508df5f29aa Author: Paul Mundt Date: Thu May 26 15:01:22 2011 +0900 fbdev: sh_mobile_lcdcfb: Fix up fallout from MERAM changes. The LCDC driver does no longer compile: CC drivers/video/sh_mobile_meram.o CC drivers/video/sh_mobile_lcdcfb.o drivers/video/sh_mobile_lcdcfb.c: In function 'sh_mobile_lcdc_start': drivers/video/sh_mobile_lcdcfb.c:640:4: error: 'ret' undeclared (first use in this function) drivers/video/sh_mobile_lcdcfb.c:640:4: note: each undeclared identifier is reported only once for each function it appears in make[2]: *** [drivers/video/sh_mobile_lcdcfb.o] Error 1 make[1]: *** [drivers/video] Error 2 make: *** [drivers] Error 2 Reported-by: Magnus Damm Signed-off-by: Paul Mundt commit 2e4ceec4edaef6e903422792de4f7f37de98cec6 Author: Julia Lawall Date: Wed Jun 1 19:48:50 2011 +0000 drivers/net/can/flexcan.c: add missing clk_put The failed_get label is used after the call to clk_get has succeeded, so it should be moved up above the call to clk_put. The failed_req labels doesn't do anything different than failed_get, so delete it. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit 816af7422f5bdbb74a0c9bb09735a9aeb9522c30 Author: Guennadi Liakhovetski Date: Wed Jun 1 07:32:07 2011 +0000 ARM: mach-shmobile: add DMAC clock definitions on SH7372 These definitions are needed to let the runtime PM subsystem turn off DMAC clocks, when it is suspended by the driver. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit a1b2cc50679c1d2eed44e2885f6178ce907498b7 Author: Guennadi Liakhovetski Date: Tue May 31 09:25:16 2011 +0000 dmaengine: shdma: fix a regression: initialise DMA channels for memcpy A recent patch has introduced a regression, where repeating a memcpy DMA test with shdma module unloading between them skips the DMA channel configuration. Fix this regression by always configuring the channel during its allocation. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 6979d5dd96a4a4975ce240982436e92a3da23315 Author: Mark Brown Date: Wed Jun 1 10:18:09 2011 +0000 net: dm9000: Get the chip in a known good state before enabling interrupts Currently the DM9000 driver requests the primary interrupt before it resets the chip and puts it into a known good state. This means that if the chip is asserting interrupt for some reason we can end up with a screaming IRQ that the interrupt handler is unable to deal with. Avoid this by only requesting the interrupt after we've reset the chip so we know what state it's in. This started manifesting itself on one of my boards in the past month or so, I suspect as a result of some core infrastructure changes removing some form of mitigation against bad behaviour here, even when things boot it seems that the new code brings the interface up more quickly. Signed-off-by: Mark Brown Signed-off-by: David S. Miller commit b722dbf176b67c75fe0f5a6b1b31f5ea8aa6117d Author: Julia Lawall Date: Wed Jun 1 07:10:10 2011 +0000 drivers/net/davinci_emac.c: add missing clk_put Go to existing error handling code at the end of the function that calls clk_put. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression e1,e2; statement S; @@ e1 = clk_get@p1(...); ... when != e1 = e2 when != clk_put(e1) when any if (...) { ... when != clk_put(e1) when != if (...) { ... clk_put(e1) ... } * return@p3 ...; } else S // Signed-off-by: Julia Lawall Acked-by: Kevin Hilman Signed-off-by: David S. Miller commit a3bcc23e890a6d49d6763d9eb073d711de2e0469 Author: Ben Greear Date: Wed Jun 1 06:49:10 2011 +0000 af-packet: Add flag to distinguish VID 0 from no-vlan. Currently, user-space cannot determine if a 0 tcp_vlan_tci means there is no VLAN tag or the VLAN ID was zero. Add flag to make this explicit. User-space can check for TP_STATUS_VLAN_VALID || tp_vlan_tci > 0, which will be backwards compatible. Older could would have just checked for tp_vlan_tci, so it will work no worse than before. Signed-off-by: Ben Greear Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit 41be5a4a3668810bf3687a76c2b017bd437039e0 Author: sjur.brandeland@stericsson.com Date: Wed Jun 1 00:55:37 2011 +0000 caif: Fix race when conditionally taking rtnl lock Take the RTNL lock unconditionally when calling dev_close. Taking the lock conditionally may cause race conditions. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 85e3c65fa3a1d0542c181510a950a2be7733ff29 Author: Stefan Metzmacher Date: Wed Jun 1 02:01:41 2011 +0000 usbnet/cdc_ncm: add missing .reset_resume hook This avoids messages like this after suspend: cdc_ncm 2-1.4:1.6: no reset_resume for driver cdc_ncm? cdc_ncm 2-1.4:1.7: no reset_resume for driver cdc_ncm? cdc_ncm 2-1.4:1.6: usb0: unregister 'cdc_ncm' usb-0000:00:1d.0-1.4, CDC NCM This is important for the Ericsson F5521gw GSM/UMTS modem. Otherwise modemmanager looses the fact that the cdc_ncm and cdc_acm devices belong together. The cdc_ether module does the same. Signed-off-by: Stefan Metzmacher Signed-off-by: David S. Miller commit 307f73df2b9829ee5a261d1ed432ff683c426cdf Author: Wei Yongjun Date: Tue May 31 22:53:19 2011 +0000 vlan: fix typo in vlan_dev_hard_start_xmit() commit 4af429d29b341bb1735f04c2fb960178ed5d52e7 (vlan: lockless transmit path) have a typo in vlan_dev_hard_start_xmit(), using u64_stats_update_begin() to end the stat update, it should be u64_stats_update_end(). Signed-off-by: Wei Yongjun Reviewed-by: WANG Cong Acked-by: Eric Dumazet Signed-off-by: David S. Miller commit d0733d2e29b652b2e7b1438ececa732e4eed98eb Author: Marcus Meissner Date: Wed Jun 1 21:05:22 2011 -0700 net/ipv4: Check for mistakenly passed in non-IPv4 address Check against mistakenly passing in IPv6 addresses (which would result in an INADDR_ANY bind) or similar incompatible sockaddrs. Signed-off-by: Marcus Meissner Cc: Reinhard Max Signed-off-by: David S. Miller commit bb9973e4e73f43bd86698483d0c3f7a362ff94ce Author: Guenter Roeck Date: Wed Jun 1 11:03:41 2011 -0700 hwmon: (coretemp) Further relax temperature range checks Further relax temperature range checks after reading the IA32_TEMPERATURE_TARGET register. If the register returns a value other than 0 in bits 16..32, assume that the returned value is correct. This change applies to both packet and core temperature limits. Cc: Carsten Emde Cc: Fenghua Yu Cc: Jean Delvare Signed-off-by: Guenter Roeck Acked-by: Fenghua Yu commit 4f5f71a7abe329bdad81ee6a8e4545054a7cc30a Author: Guenter Roeck Date: Tue May 31 06:54:21 2011 -0700 hwmon: (coretemp) Fix TjMax detection for older CPUs Commit a321cedb12904114e2ba5041a3673ca24deb09c9 excludes CPU models 0xe, 0xf, 0x16, and 0x1a from TjMax temperature adjustment, even though several of those CPUs are known to have TiMax other than 100 degrees C, and even though the code in adjust_tjmax() explicitly handles those CPUs and points to a Web document listing several of the affected CPU IDs. Reinstate original TjMax adjustment if TjMax can not be determined using the IA32_TEMPERATURE_TARGET register. https://bugzilla.kernel.org/show_bug.cgi?id=32582 Signed-off-by: Guenter Roeck Cc: Huaxu Wan Cc: Carsten Emde Cc: Valdis Kletnieks Cc: Henrique de Moraes Holschuh Cc: Yong Wang Cc: Rudolf Marek Cc: Fenghua Yu Tested-by: Jean Delvare Acked-by: Jean Delvare Acked-by: Fenghua Yu Cc: # .35.x .36.x .37.x .38.x .39.x commit d576fe49ca5c238e99d2d010a410480cb2aa29a0 Author: Mark Brown Date: Wed Jun 1 11:13:16 2011 +0100 rtc: Staticize non-exported __rtc_set_alarm() It's not referenced outside this file so there's no need for it to be in the global namespace and sparse warns about that. Signed-off-by: Mark Brown Signed-off-by: John Stultz commit e17fd4ba2a81f1d29875b20464e4899185a3c946 Author: John Stultz Date: Tue May 31 23:26:11 2011 -0700 rtc: Fix ioctl error path return Bryan Henderson noticed that the "RTC: Fix rtc driver ioctl specific shortcutting" commit has a small bug: When an ioctl is called with an invalid command code and the clock driver does not have an "ioctl" method, the ioctl returns rc 0 instead of -ENOTTY. This patch fixes the issue. CC: Bryan Henderson CC: Gabor Z. Papp Reported-by: Bryan Henderson Signed-off-by: John Stultz commit fb5a18cf7c771a12c3f42a5eb4b476eed68b77cb Author: Dan Carpenter Date: Sun May 29 22:54:07 2011 +0300 ptp: Fix some locking bugs in ptp_read() In ptp_read there is an unlock missing on an error path, and a double unlock on another error path. Signed-off-by: Dan Carpenter Acked-by: Richard Cochran Signed-off-by: John Stultz commit e23ef227d10878ff3f323a1dfed10205a1825b71 Author: Dan Carpenter Date: Sun May 29 22:53:12 2011 +0300 ptp: Return -EFAULT on copy_to_user() errors copy_to_user() returns the number of bytes remaining, but we want a negative error code in ptp_ioctl. Signed-off-by: Dan Carpenter Acked-by: Richard Cochran Signed-off-by: John Stultz commit fe6f0bd03d697835e76dd18d232ba476c65b8282 Author: Marek Olšák Date: Sat May 7 01:09:57 2011 +0200 drm/radeon/kms: add missing Evergreen texture formats to the CS parser BC6 and BC7 are described in ARB_texture_compression_bptc. No idea what FMT_32_AS_32_32_32_32 is good for. Signed-off-by: Marek Olšák Signed-off-by: Dave Airlie commit adcfde516e10aad72d66f6fefd36e6d0e6bd7be7 Author: Alex Deucher Date: Fri May 27 10:05:03 2011 -0400 drm/radeon/kms: viewport height has to be even Otherwise, no vblank interrupts. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=37522 Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 8a5617bdc111aa7ba49c81fa694fde63d3474f94 Author: Alex Deucher Date: Thu May 26 14:20:38 2011 -0400 drm/radeon/kms: remove duplicate reg from r600 safe regs It got added twice by accident. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d5c5a72f2a5821ba3ebdbe02bce03345790458aa Author: Alex Deucher Date: Tue May 31 15:42:48 2011 -0400 drm/radeon/kms: add support for Llano Fusion APUs - add gpu init support - add blit support - add ucode loader Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3b68a26ec058fda2d6b470cdd8fedc5a3c854916 Author: Alex Deucher Date: Tue May 31 15:42:49 2011 -0400 drm/radeon/kms: add llano pci ids Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 89da5a375ad797ad5e38ad7a9ec64ea40afe8c7a Author: Alex Deucher Date: Tue May 31 15:42:47 2011 -0400 drm/radeon/kms: fill in asic struct for llano Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 4df64e65025dfa493bf75fddf50d83bba069e1eb Author: Alex Deucher Date: Tue May 31 15:42:46 2011 -0400 drm/radeon/kms: add family ids for llano APUs Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 498c555f56a02ec1059bc150cde84411ba0ac010 Author: Dave Airlie Date: Sun May 29 17:48:32 2011 +1000 drm/radeon: fix oops in ttm reserve when pageflipping (v2) We need to take a reference to this object, pinning doesn't take a reference so if userspace deletes the object it can disappear even if pinned. v2: fix error paths to unreference properly also. should fix: https://bugzilla.kernel.org/show_bug.cgi?id=32402 and https://bugzilla.redhat.com/show_bug.cgi?id=680651 Acked-By: Alex Deucher Signed-off-by: Dave Airlie commit f69753140d5c95087a3352710ae5edd541710da6 Author: Matt Evans Date: Wed Jun 1 13:01:01 2011 +1000 xhci: Bigendian fix for skip_isoc_td() Commit 926008c9386dde09b015753b6681c502177baa30 "USB: xhci: simplify logic of skipping missed isoc TDs" added a small endian bug. This patch fixes skip_isoc_td() to read the DMA pointer correctly. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 08115a139229ca84adfef4d5983c3c186b9d1c30 Author: Kukjin Kim Date: Wed Jun 1 15:09:05 2011 -0700 ARM: S5P: Should be S3C_VA_USB_HSPHY instead of S5P_VA_XX Basically, other S3C SoCs and S5PC100 use 'S3C_VA_USB_HSPHY' commonly. It should be changed to 'S3C_VA_USB_HSPHY' for common usage and others. Now happens build error on S5PC100. Cc: Greg Kroah-Hartman Signed-off-by: Kukjin Kim commit 457d4fe85138c0d313c92ef34ea892c73b0fe2f5 Author: Padmavathi Venna Date: Tue May 31 14:10:51 2011 -0700 ARM: S5P64X0: Fix SPI platform device name Changed the SPI platform device name from S5P6450 to S5P64x0 as it is defined common for both S5p6440 and S5P6450 in dev-spi.c of S5P64x0. Signed-off-by: Padmavathi Venna Signed-off-by: Kukjin Kim commit d62fa31123d557bca9a1e3b5da9672e8cc9753db Author: Jonghwan Choi Date: Thu May 12 18:31:20 2011 +0900 ARM: S5PV210: Fix possible null pointer dereference Signed-off-by: Jonghwan Choi Signed-off-by: Kukjin Kim commit 1fa7b6a29c61358cc2ca6f64cef4aa0e1a7ca74c Author: Linus Torvalds Date: Thu Jun 2 06:11:24 2011 +0900 Revert "mm: fail GFP_DMA allocations when ZONE_DMA is not configured" This reverts commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac. As rmk says: "Commit a197b59ae6e8 (mm: fail GFP_DMA allocations when ZONE_DMA is not configured) is causing regressions on ARM with various drivers which use GFP_DMA. The behaviour up until now has been to silently ignore that flag when CONFIG_ZONE_DMA is not enabled, and to allocate from the normal zone. However, as a result of the above commit, such allocations now fail which causes drivers to fail. These are regressions compared to the previous kernel version." so just revert it. Requested-by: Russell King Acked-by: Andrew Morton Cc: David Rientjes Signed-off-by: Linus Torvalds commit f0f52a9463839c52a63c05d6e7d4a330d94a9794 Merge: 0f48f26 70e535d Author: Linus Torvalds Date: Thu Jun 2 05:48:50 2011 +0900 Merge git://git.infradead.org/iommu-2.6 * git://git.infradead.org/iommu-2.6: intel-iommu: Fix off-by-one in RMRR setup intel-iommu: Add domain check in domain_remove_one_dev_info intel-iommu: Remove Host Bridge devices from identity mapping intel-iommu: Use coherent DMA mask when requested intel-iommu: Dont cache iova above 32bit intel-iommu: Speed up processing of the identity_mapping function intel-iommu: Check for identity mapping candidate using system dma mask intel-iommu: Only unlink device domains from iommu intel-iommu: Enable super page (2MiB, 1GiB, etc.) support intel-iommu: Flush unmaps at domain_exit intel-iommu: Remove obsolete comment from detect_intel_iommu intel-iommu: fix VT-d PMR disable for TXT on S3 resume commit 0f48f2600911d5de6393829e4a9986d4075558b3 Author: Linus Torvalds Date: Thu Jun 2 05:29:19 2011 +0900 block: fix mismerge of the DISK_EVENT_MEDIA_CHANGE removal Jens' back-merge commit 698567f3fa79 ("Merge commit 'v2.6.39' into for-2.6.40/core") was incorrectly done, and re-introduced the DISK_EVENT_MEDIA_CHANGE lines that had been removed earlier in commits - 9fd097b14918 ("block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers") - 7eec77a1816a ("ide: unexport DISK_EVENT_MEDIA_CHANGE for ide-gd and ide-cd") because of conflicts with the "g->flags" updates near-by by commit d4dc210f69bc ("block: don't block events on excl write for non-optical devices") As a result, we re-introduced the hanging behavior due to infinite disk media change reports. Tssk, tssk, people! Don't do back-merges at all, and *definitely* don't do them to hide merge conflicts from me - especially as I'm likely better at merging them than you are, since I do so many merges. Reported-by: Steven Rostedt Cc: Jens Axboe Signed-off-by: Linus Torvalds commit 3cc39b3f061e90f69cb1f65d72c005c56cddd6a6 Author: Chris Metcalf Date: Wed Jun 1 16:06:04 2011 -0400 tile: enable CONFIG_BUGVERBOSE Trivial config change to enable backtraces on panic. Signed-off-by: Chris Metcalf commit 6e33a852a37dee02979ec9d82bea26c07cee5bce Author: Márton Németh Date: Sat May 14 19:27:33 2011 +0200 x86/PCI/ACPI: fix type mismatch The flags field of struct resource from linux/ioport.h is "unsigned long". Change the "type" parameter of coalesce_windows() function to match that field. This fixes the following warning messages when compiling with "make C=1 W=1 bzImage modules": arch/x86/pci/acpi.c: In function ‘coalesce_windows’: arch/x86/pci/acpi.c:198: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result arch/x86/pci/acpi.c:203: warning: conversion to ‘long unsigned int’ from ‘int’ may change the sign of the result Signed-off-by: Márton Németh Signed-off-by: Jesse Barnes commit 3f37d6229ca309f96b163b943ff982f4697630cd Author: Randy Dunlap Date: Wed May 25 19:21:25 2011 -0700 PCI: fix new kernel-doc warning Fix pci.c kernel-doc warnings: Warning(drivers/pci/pci.c:3292): No description found for parameter 'flags' Warning(drivers/pci/pci.c:3292): Excess function parameter 'change_bridge_flags' description in 'pci_set_vga_state' Signed-off-by: Randy Dunlap Signed-off-by: Jesse Barnes commit dfe21582ac5ebc460dda98c67e8589dd506d02cd Author: Stanislaw Gruszka Date: Wed Jun 1 17:17:57 2011 +0200 iwl4965: correctly validate temperature value In some cases we can read wrong temperature value. If after that temperature value will not be updated to good one, we badly configure tx power parameters and device is unable to send a data. Resolves: https://bugzilla.kernel.org/show_bug.cgi?id=35932 Cc: stable@kernel.org # 2.6.39+ Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit a7567b2059020bf3fa96c389ec25eed8e28ad4ba Author: Johannes Berg Date: Wed Jun 1 08:29:54 2011 +0200 bluetooth l2cap: fix locking in l2cap_global_chan_by_psm read_lock() ... read_unlock_bh() is clearly bogus. This was broken by commit 23691d75cdc69c3b285211b4d77746aa20a17d18 Author: Gustavo F. Padovan Date: Wed Apr 27 18:26:32 2011 -0300 Bluetooth: Remove l2cap_sk_list Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 21fdc87248d1d28492c775e05fa92b3c8c7bc8db Author: Daniel Halperin Date: Tue May 31 11:59:30 2011 -0700 ath9k: fix two more bugs in tx power This is the same fix as commit 841051602e3fa18ea468fe5a177aa92b6eb44b56 Author: Matteo Croce Date: Fri Dec 3 02:25:08 2010 +0100 The ath9k driver subtracts 3 dBm to the txpower as with two radios the signal power is doubled. The resulting value is assigned in an u16 which overflows and makes the card work at full power. in two more places. I grepped the ath tree and didn't find any others. Cc: stable@kernel.org Signed-off-by: Daniel Halperin Signed-off-by: John W. Linville commit 333ba7325213f0a09dfa5ceeddb056d6ad74b3b5 Author: Eliad Peller Date: Sun May 29 15:53:20 2011 +0300 cfg80211: don't drop p2p probe responses Commit 0a35d36 ("cfg80211: Use capability info to detect mesh beacons") assumed that probe response with both ESS and IBSS bits cleared means that the frame was sent by a mesh sta. However, these capabilities are also being used in the p2p_find phase, and the mesh-validation broke it. Rename the WLAN_CAPABILITY_IS_MBSS macro, and verify that mesh ies exist before assuming this frame was sent by a mesh sta. Signed-off-by: Eliad Peller Signed-off-by: John W. Linville commit 4c6e0f8101e62d8b2d01dc94b835a98b191a1454 Author: Jean Delvare Date: Tue May 31 15:50:51 2011 -0400 hwmon: (coretemp) Relax target temperature range check The current temperature range check of MSR_IA32_TEMPERATURE_TARGET seems too strict to me, some TjMax values documented in Documentation/hwmon/coretemp wouldn't pass. Relax the check so that all the documented values pass. Signed-off-by: Jean Delvare Cc: Carsten Emde Cc: Fenghua Yu Signed-off-by: Guenter Roeck commit 614198bbf8d74617381aea82521b261c7f9baaf6 Author: Per Dalen Date: Tue May 31 06:54:21 2011 -0700 hwmon: (max6642) Rename temp_fault sysfs attribute to temp2_fault The temp_fault sysfs attribute is wrong, it should be temp2_fault instead. Reported-by: Guenter Roeck Signed-off-by: Per Dalen Acked-by: Jean Delvare Signed-off-by: Guenter Roeck commit d364ee4fdb33a329b16cdf9342e9770b4d4ddc83 Author: Mauro Carvalho Chehab Date: Wed Jun 1 15:03:56 2011 -0300 [media] soc_camera: preserve const attribute drivers/media/video/soc_camera.c: In function ‘soc_camera_video_start’: drivers/media/video/soc_camera.c:1515: warning: initialization discards qualifiers from pointer target type Signed-off-by: Mauro Carvalho Chehab commit 76df01eacd5fa41b607426a8cb091fb21ae35554 Author: Mauro Carvalho Chehab Date: Wed Jun 1 14:44:41 2011 -0300 [media] uvc_entity: initialize return value drivers/media/video/uvc/uvc_entity.c: In function ‘uvc_mc_register_entities’: drivers/media/video/uvc/uvc_entity.c:33: warning: ‘ret’ may be used uninitialized in this function Signed-off-by: Mauro Carvalho Chehab commit 8c89ddd536bbe97c1e50424778a139abbf5763c3 Author: Laurent Pinchart Date: Mon May 30 15:45:47 2011 -0300 [media] media: Fix media device minor registration The find_next_zero_bit() is called with the from and to arguments in the wrong order. This results in the function always returning 0, and all media devices being registered with minor 0. Furthermore, mdev->minor is then used before being assigned with the find_next_zero_bit() return value. This really makes sure we'll always use minor 0. Fix this and let the system support more than one media device. Signed-off-by: Laurent Pinchart Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab commit 67e27c741339faedcc8e9c2c613487745d1c4b8b Author: Hans Petter Selasky Date: Mon May 23 08:09:18 2011 -0300 [media] Make nchg variable signed because the code compares this variable against negative values The sonixj driver compares the value for nchg with: if (sd->nchg < -6 || sd->nchg >= 12) { With u8, negative values won't work. Signed-off-by: Hans Petter Selasky Acked-by: Jean-Francois Moine Signed-off-by: Mauro Carvalho Chehab commit 9b83c771214cf6a256ee875050e6eaf320cf7983 Author: Dan Carpenter Date: Fri May 27 09:27:16 2011 +0300 xen/blkback: potential null dereference in error handling blkbk->pending_pages can be NULL here so I added a check for it. Signed-off-by: Dan Carpenter [v1: Redid the loop a bit] Signed-off-by: Konrad Rzeszutek Wilk commit 6464920a6e30604cb71d0ecbaa20e35009bd76fb Author: Laszlo Ersek Date: Wed May 25 12:24:25 2011 +0200 xen/blkback: don't call vbd_size() if bd_disk is NULL ...because vbd_size() dereferences bd_disk if bd_part is NULL. Signed-off-by: Laszlo Ersek Signed-off-by: Konrad Rzeszutek Wilk commit 3f303103b884ca577908d3e5c0650ad12e40c586 Merge: 5c6cce9 63da029 Author: Linus Torvalds Date: Wed Jun 1 21:47:39 2011 +0900 Merge git://git.infradead.org/mtd-2.6 * git://git.infradead.org/mtd-2.6: mtd: fix physmap.h warnings commit 6c20c635b8bb110d5c610bf19233462dcfa3b39b Author: Sanjeev Premi Date: Wed May 18 13:06:51 2011 -0300 [media] omap3isp: fix compiler warning This patch fixes this compiler warning: drivers/media/video/omap3isp/isp.c: In function 'isp_isr_dbg': drivers/media/video/omap3isp/isp.c:392:2: warning: zero-length gnu_printf format string Signed-off-by: Sanjeev Premi Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 6e3ea0e711b1c4dca3c4f87ef0ab5c896c940c81 Author: Laurent Pinchart Date: Mon May 2 16:21:03 2011 -0300 [media] v4l: Fix media_entity_to_video_device macro argument name The name 'entity' is used twice in the macro body, once as the macro argument, and once as a structure field name. This breaks compilation if the macro is called with its argument not named 'entity'. Fix this by renaming the macro argument '__e'. This should avoid namespace clashes. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 70e535d1e5d1e4317e894d6228b762cf9c3fbc6a Author: David Woodhouse Date: Tue May 31 00:22:52 2011 +0100 intel-iommu: Fix off-by-one in RMRR setup We were mapping an extra byte (and hence usually an extra page): iommu_prepare_identity_map() expects to be given an 'end' argument which is the last byte to be mapped; not the first byte *not* to be mapped. Signed-off-by: David Woodhouse commit 1fcecf281b99f9ca262ae7fbc3703c421be5c857 Author: Balaji T K Date: Wed Jun 1 16:45:22 2011 +0530 ARM: OMAP4: MMC: increase delay for pbias 4 micro seconds is not enough for PBIAS if MMC regulator is enabled from MMC regulator OFF. Increase the delay for PBIAS to stabilize. Wait for PBIAS and timeout if not. Resolves MMC/SD failure on OMAP4 "Pbias Voltage is not same as LDO" Signed-off-by: Balaji T K Acked-by: Kishore Kadiyala Signed-off-by: Tony Lindgren commit 8519dc4401ddf8a5399f979870bbeeadbc111186 Author: Mike Habeck Date: Sat May 28 13:15:07 2011 -0500 intel-iommu: Add domain check in domain_remove_one_dev_info The comment in domain_remove_one_dev_info() states "No need to compare PCI domain; it has to be the same". But for the si_domain that isn't going to be true, as it consists of all the PCI devices that are identity mapped thus multiple PCI domains can be in si_domain. The code needs to validate the PCI domain too. Signed-off-by: Mike Habeck Signed-off-by: Mike Travis Cc: stable@kernel.org Signed-off-by: David Woodhouse commit 825507d6d059f1cbe2503e0e5a3926225b983aec Author: Mike Travis Date: Sat May 28 13:15:06 2011 -0500 intel-iommu: Remove Host Bridge devices from identity mapping When using the 1:1 (identity) PCI DMA remapping, PCI Host Bridge devices that do not use the IOMMU causes a kernel panic. Fix that by not inserting those devices into the si_domain. Signed-off-by: Mike Travis Reviewed-by: Mike Habeck Cc: stable@kernel.org Signed-off-by: David Woodhouse commit c681d0ba1252954208220ad32248a3e8e2fc98e4 Author: Mike Travis Date: Sat May 28 13:15:05 2011 -0500 intel-iommu: Use coherent DMA mask when requested The __intel_map_single function is not honoring the passed in DMA mask. This results in not using the coherent DMA mask when called from intel_alloc_coherent(). Signed-off-by: Mike Travis Acked-by: Chris Wright Reviewed-by: Mike Habeck Cc: stable@kernel.org Signed-off-by: David Woodhouse commit 1c9fc3d11b84fbd0c4f4aa7855702c2a1f098ebb Author: Chris Wright Date: Sat May 28 13:15:04 2011 -0500 intel-iommu: Dont cache iova above 32bit Mike Travis and Mike Habeck reported an issue where iova allocation would return a range that was larger than a device's dma mask. https://lkml.org/lkml/2011/3/29/423 The dmar initialization code will reserve all PCI MMIO regions and copy those reservations into a domain specific iova tree. It is possible for one of those regions to be above the dma mask of a device. It is typical to allocate iovas with a 32bit mask (despite device's dma mask possibly being larger) and cache the result until it exhausts the lower 32bit address space. Freeing the iova range that is >= the last iova in the lower 32bit range when there is still an iova above the 32bit range will corrupt the cached iova by pointing it to a region that is above 32bit. If that region is also larger than the device's dma mask, a subsequent allocation will return an unusable iova and cause dma failure. Simply don't cache an iova that is above the 32bit caching boundary. Reported-by: Mike Travis Reported-by: Mike Habeck Cc: stable@kernel.org Acked-by: Mike Travis Tested-by: Mike Habeck Signed-off-by: Chris Wright Signed-off-by: David Woodhouse commit cb452a4040bb051d92e85d6e7eb60c11734c1781 Author: Mike Travis Date: Sat May 28 13:15:03 2011 -0500 intel-iommu: Speed up processing of the identity_mapping function When there are a large count of PCI devices, and the pass through option for iommu is set, much time is spent in the identity_mapping function hunting though the iommu domains to check if a specific device is "identity mapped". Speed up the function by checking the cached info to see if it's mapped to the static identity domain. Signed-off-by: Mike Travis Reviewed-by: Mike Habeck Cc: stable@kernel.org Signed-off-by: David Woodhouse commit 8fcc5372fbac085199d84a880503ed67aba3fe49 Author: Chris Wright Date: Sat May 28 13:15:02 2011 -0500 intel-iommu: Check for identity mapping candidate using system dma mask The identity mapping code appears to make the assumption that if the devices dma_mask is greater than 32bits the device can use identity mapping. But that is not true: take the case where we have a 40bit device in a 44bit architecture. The device can potentially receive a physical address that it will truncate and cause incorrect addresses to be used. Instead check to see if the device's dma_mask is large enough to address the system's dma_mask. Signed-off-by: Mike Travis Reviewed-by: Mike Habeck Cc: stable@kernel.org Signed-off-by: David Woodhouse commit 9b4554b21ed07e8556405510638171f0c787742a Author: Alex Williamson Date: Tue May 24 12:19:04 2011 -0400 intel-iommu: Only unlink device domains from iommu Commit a97590e5 added unlinking domains from iommus to reciprocate the iommu from domains unlinking that was already done. We actually want to only do this for device domains and never for the static identity map domain or VM domains. The SI domain is special and never freed, while VM domain->id lives in their own special address space, separate from iommu->domain_ids. In the current code, a VM can get domain->id zero, then mark that domain unused when unbound from pci-stub. This leads to DMAR write faults when the device is re-bound to the host driver. Signed-off-by: Alex Williamson Cc: stable@kernel.org Signed-off-by: David Woodhouse commit c5874c9245d298c65f81c2f91f89e1da8ea66409 Author: Ian Armstrong Date: Sun May 29 21:33:17 2011 -0300 [media] ivtv: Internally separate encoder & decoder standard setting Internally separates the setting of the broadcast standard for the encoder & decoder. Externally there's no change in functionality. [awalls@md.metrocast.net: Edited to fix a checkpatch gripe about multiple assignment and to remove a now unused DEFINE_WAIT() due to this patch] Signed-off-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 6600cc301d0762e3db8bd2b44d2d5fef36a4fd68 Author: Ian Armstrong Date: Sat May 28 22:15:41 2011 -0300 [media] ivtvfb: Add sanity check to ivtvfb_pan_display() Add sanity check to ivtvfb_pan_display() to ensure only valid values are used to pan the display. Invalid values are rejected with -EINVAL Signed-off-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 5d9c08dea0c13c09408f97fe61d34c198c4f3277 Author: Laurent Pinchart Date: Wed May 25 06:41:23 2011 -0300 [media] ivtvfb: use display information in info not in var for panning We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Also use the aligned fix.line_length and not the (possible) unaligned xres_virtual. Signed-off-by: Laurent Pinchart Reviewed-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 7700a0d293ad8b1b1759ad06ac868f9a42fd0951 Author: Ian Armstrong Date: Sun May 29 20:09:24 2011 -0300 [media] ivtv: Make two ivtv_msleep_timeout calls uninterruptable Two ivtv_msleep_timeout() calls are incorrectly flagged as interruptable. The first is in the init sequence for a capture and is required for stable hardware setup. The second is at the end of the capture and used to handle the last data transfer. Failure to wait for this last transfer can result in stale data being read at the start of the next capture. Signed-off-by: Ian Armstrong Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 21d2e938d34d201276de3470587a3aa2047c77a1 Author: Antti Palosaari Date: Tue May 24 06:04:08 2011 -0300 [media] anysee: return EOPNOTSUPP for unsupported I2C messages Check I2C messages and return error properly. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit c8ef0a5b70a9821b3d75097aba672f531619231b Author: Jean-François Moine Date: Mon May 23 06:08:49 2011 -0300 [media] gspca - ov519: Set the default frame rate to 15 fps The frame rate variable was not initialized, so, the lowest frame rate was used for most webcams. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 5ff01d54fe218be1b7e50fec30e111eb1bc224ea Author: Jean-François Moine Date: Mon May 23 04:51:10 2011 -0300 [media] gspca - stv06xx: Set a lower default value of gain for hdcs sensors Many users said that the default gain value (128) was giving white images. The value which was in the original qc-usb driver (50) is better. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 6dd9a7c73761a8a5f5475d5cfdc15368a0f4c06d Author: Youquan Song Date: Wed May 25 19:13:49 2011 +0100 intel-iommu: Enable super page (2MiB, 1GiB, etc.) support There are no externally-visible changes with this. In the loop in the internal __domain_mapping() function, we simply detect if we are mapping: - size >= 2MiB, and - virtual address aligned to 2MiB, and - physical address aligned to 2MiB, and - on hardware that supports superpages. (and likewise for larger superpages). We automatically use a superpage for such mappings. We never have to worry about *breaking* superpages, since we trust that we will always *unmap* the same range that was mapped. So all we need to do is ensure that dma_pte_clear_range() will also cope with superpages. Adjust pfn_to_dma_pte() to take a superpage 'level' as an argument, so it can return a PTE at the appropriate level rather than always extending the page tables all the way down to level 1. Again, this is simplified by the fact that we should never encounter existing small pages when we're creating a mapping; any old mapping that used the same virtual range will have been entirely removed and its obsolete page tables freed. Provide an 'intel_iommu=sp_off' argument on the command line as a chicken bit. Not that it should ever be required. == The original commit seen in the iommu-2.6.git was Youquan's implementation (and completion) of my own half-baked code which I'd typed into an email. Followed by half a dozen subsequent 'fixes'. I've taken the unusual step of rewriting history and collapsing the original commits in order to keep the main history simpler, and make life easier for the people who are going to have to backport this to older kernels. And also so I can give it a more coherent commit comment which (hopefully) gives a better explanation of what's going on. The original sequence of commits leading to identical code was: Youquan Song (3): intel-iommu: super page support intel-iommu: Fix superpage alignment calculation error intel-iommu: Fix superpage level calculation error in dma_pfn_level_pte() David Woodhouse (4): intel-iommu: Precalculate superpage support for dmar_domain intel-iommu: Fix hardware_largepage_caps() intel-iommu: Fix inappropriate use of superpages in __domain_mapping() intel-iommu: Fix phys_pfn in __domain_mapping for sglist pages Signed-off-by: Youquan Song Signed-off-by: David Woodhouse commit 0e44173b1246261c8e29fe637017944a19a79869 Author: Jean-François Moine Date: Sun May 22 05:36:33 2011 -0300 [media] gspca: Remove coarse_expo_autogain.h This file is replaced by autogain_functions.h. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 9cf208e844d41441b3ad393d1da4f41fa3426795 Author: Jean-François Moine Date: Sun May 22 05:05:11 2011 -0300 [media] gspca - ov519: Change the ovfx2 bulk transfer size The 'normal' bulk transfer size did not work for 800x600. By git commit c42cedbb658b, this 'normal' size was used for 1600x1200 only. It will now be used back again for all resolutions but 800x600. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 9d2b909544bcdac337340a4b44d8c50d4da62bc1 Author: Jean-François Moine Date: Sun May 22 04:56:32 2011 -0300 [media] gspca - ov519: Fix a regression for ovfx2 webcams By git commit c42cedbb658b, the bulk transfer size was changed to a lower value for resolutions != 1600x1200, but the image extraction routine still worked with the previous value, giving bad truncated images. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 63da029015b5255915cd6d61f19ffc276ad4635d Author: Randy Dunlap Date: Mon May 23 11:37:09 2011 -0700 mtd: fix physmap.h warnings Fix build warnings in physmap.h: include/linux/mtd/physmap.h:25: warning: 'struct platform_device' declared inside parameter list include/linux/mtd/physmap.h:25: warning: its scope is only this definition or declaration, which is probably not what you want include/linux/mtd/physmap.h:26: warning: 'struct platform_device' declared inside parameter list include/linux/mtd/physmap.h:27: warning: 'struct platform_device' declared inside parameter list Signed-off-by: Randy Dunlap Signed-off-by: David Woodhouse commit da8b94ea61c5d80aae0cc7b7541f1e0fa7459391 Author: Artem Bityutskiy Date: Thu May 26 08:58:19 2011 +0300 UBIFS: fix recovery broken by the previous recovery fix Unfortunately, the recovery fix d1606a59b6be4ea392eabd40d1250aa1eeb19efb (UBIFS: fix extremely rare mount failure) broke recovery. This commit make UBIFS drop the last min. I/O unit in all journal heads, but this is needed only for the GC head. And this does not work for non-GC heads. For example, if suppose we have min. I/O units A and B, and A contains a valid node X, which was fsynced, and then a group of nodes Y which spans the rest of A and B. In this case we'll drop not only Y, but also X, which is obviously incorrect. This patch fixes the issue and additionally makes recovery to drop last min. I/O unit only for the GC head, and leave things as they have been for ages for the other heads - this is safer. Signed-off-by: Artem Bityutskiy commit efcfde54ca68091b164f9aec544c7233a9760aff Author: Artem Bityutskiy Date: Thu May 26 08:36:52 2011 +0300 UBIFS: amend ubifs_recover_leb interface Instead of passing "grouped" parameter to 'ubifs_recover_leb()' which tells whether the nodes are grouped in the LEB to recover, pass the journal head number and let 'ubifs_recover_leb()' look at the journal head's 'grouped' flag. This patch is a preparation to a further fix where we'll need to know the journal head number for other purposes. Signed-off-by: Artem Bityutskiy commit 1a0b06997ceca96db9259e537eb935f9fe59a3de Author: Artem Bityutskiy Date: Thu May 26 08:26:05 2011 +0300 UBIFS: introduce a "grouped" journal head flag Journal heads are different in a way how UBIFS writes nodes there. All normal journal heads receive grouped nodes, while the GC journal heads receives ungrouped nodes. This patch adds a 'grouped' flag to 'struct ubifs_jhead' which describes this property. This patch is a preparation to a further recovery fix. Signed-off-by: Artem Bityutskiy commit ab75950b11e74145ffe61376ac073d56645aab8a Author: Artem Bityutskiy Date: Thu May 26 06:51:48 2011 +0300 UBIFS: supress false error messages Commit ab51afe05273741f72383529ef488aa1ea598ec6 was a good clean-up, but it introduced a regression - now UBIFS prints scary error messages during recovery on all corrupted nodes, even though the corruptions are expected (due to a power cut). This patch fixes the issue. Additionally fix a typo in a commentary introduced by the same commit. Signed-off-by: Artem Bityutskiy commit 1704bf15deb6de20f8f4272c8d8232b36bbc7484 Author: Igor Grinberg Date: Mon May 30 00:11:45 2011 -0700 arm: omap2plus: move NAND_BLOCK_SIZE out of boards Several boards defining mtd partitions also defined NAND_BLOCK_SIZE as SZ_128K. Move the define to common-board-devices.h This removes multiple defines of NAND_BLOCK_SIZE. Signed-off-by: Igor Grinberg [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren commit 4998b245732572b027eef6b7221d80da0a3486e9 Author: Shubhrajyoti D Date: Wed May 4 14:57:44 2011 -0700 omap4: hwmod: Enable the keypad Commit 407a6888f7362cb3dabe69ea6d9dcf3c750dc56a (OMAP4: hwmod data: Add AESS, McPDM, bandgap, counter_32k, MMC, KBD, ISS & IPU) added the entry for keypad, but did not enable it. Enable the keypad in the hwmod database so it works. Signed-off-by: Shubhrajyoti D Acked-by: Benoit Cousson [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren commit 5e2ffc308a3aa44a318452fccae7b23a029eeeb8 Author: Tasslehoff Kjappfot Date: Tue May 31 04:58:56 2011 -0700 omap3: Free Beagle rev gpios when they are read, so others can read them later Free Beagle rev gpios when they are read, so others can read them later Signed-off-by: Tasslehoff Kjappfot [tony@atomide.com: updated comments] Signed-off-by: Tony Lindgren commit e2a346a2a054f702fd76f328ff747b9ad9264a4c Author: Alexander Holler Date: Tue Apr 5 15:40:08 2011 +0200 arm: omap3: beagle: Ensure msecure is mux'd to be able to set the RTC Without msecure beeing high it isn't possible to set (or start) the RTC. Tested with a BeagleBoard C4. Signed-off-by: Alexander Holler Signed-off-by: Tony Lindgren commit c0ad4fac5011c5534c45011ee8dee2b3de256663 Author: Jarkko Nikula Date: Tue May 31 11:27:01 2011 +0300 omap: rx51: Don't power up speaker amplifier at bootup Speaker amplifier is accidentally powered up in early TWL gpio setup. This causes a few mA of needless battery current consumption. Without this patch the amplifier can be shutdown only by having one active audio playback and shutdown cycle to speaker output. Thanks to Kalle Jokiniemi for noticing the issue. Signed-off-by: Jarkko Nikula Cc: Kalle Jokiniemi Signed-off-by: Tony Lindgren commit 2827411e25d7da7913463474606fe624404b2339 Author: Jarkko Nikula Date: Tue May 31 11:27:00 2011 +0300 omap: rx51: Set regulator V28_A always on The V28_A domain in Nokia N900 that supplies VDD voltages to TLV320AIC34 and TPA6130A2 should not be shutdown. This is because otherwise there will be leak from VIO to VDD in TLV320AIC34 and this leak consumes more battery current that is saved from keeping V28_A off. With this patch the battery current consumption is approximately 1.5 mA lower. Thanks to Kalle Jokiniemi for noticing the issue. Signed-off-by: Jarkko Nikula Cc: Kalle Jokiniemi Signed-off-by: Tony Lindgren commit b1c1df7a7d50bf94de89704e963467bc94b1fef9 Author: Balaji T K Date: Mon May 30 19:55:34 2011 +0530 ARM: OMAP4: MMC: no regulator off during probe for eMMC eMMC does not handle power off when not in sleep state, Skip regulator disable during probe when eMMC is not in known state - state left by bootloader. Resolves eMMC failure on OMAP4 mmc0: error -110 whilst initialising MMC card Signed-off-by: Balaji T K Tested-by: Kishore Kadiyala Acked-by: Kishore Kadiyala Signed-off-by: Tony Lindgren commit e68273baf30390e9c907831b47384085c7f664d5 Author: Igor Grinberg Date: Wed May 4 18:04:55 2011 +0300 arm: omap2plus: fix ads7846 pendown gpio request introduced by: 96974a24 (omap: consolidate touch screen initialization among different boards) ads7846 driver can use either gpio_pendown or get_pendown_state() callback. In case of gpio_pendown, it requests the provided gpio_pendown thus resulting in double requesting that gpio: ads7846 spi1.0: failed to request pendown GPIO57 ads7846: probe of spi1.0 failed with error -16 Fix this by restricting the gpio request to the case of get_pendown_state() callback is used. Signed-off-by: Igor Grinberg Tested-by: Thomas Weber Signed-off-by: Tony Lindgren commit 03b562d7859c6d7c640f071b422d521146471d6d Author: Todd Poynor Date: Thu May 26 12:25:53 2011 -0700 ARM: OMAP2: Add missing iounmap in omap4430_phy_init !dev case needs iounmap before return. Signed-off-by: Todd Poynor Signed-off-by: Tony Lindgren commit 21a42c92750446008dc0847a78aba5459e3b6b5a Author: Colin Cross Date: Wed May 4 14:57:57 2011 -0700 ARM: omap4: Pass core and wakeup mux tables to omap4_mux_init OMAP4 contains two separate instances of the padconf registers, one in the core system config and one in the wakeup system config. Pass in two tables to apply the correct values to each instance. Signed-off-by: Colin Cross Signed-off-by: Tony Lindgren commit d4ff6121b44081601206980cafcd6ed3ecb367b6 Author: Colin Cross Date: Tue May 31 12:00:09 2011 -0700 ARM: omap2+: mux: Allow board mux settings to be NULL OMAP4 has two mux instances, and the board may not have settings for one of them. Allow the board file to pass NULL for an instance's mux settings, which will initialize the mux instance but skip writing board settings. Signed-off-by: Colin Cross Signed-off-by: Tony Lindgren commit 1499f2dbafafe844e485ff8945f60cd9f3d5cbd9 Author: Rabin Vincent Date: Sat May 7 22:28:47 2011 +0530 OMAP4: fix return value of omap4_l3_init Don't PTR_ERR() a non-error pointer: initcall omap4_l3_init+0x0/0xdc returned -544980480 after 0 usecs initcall omap4_l3_init+0x0/0xdc returned with error code -544980480 Signed-off-by: Rabin Vincent Signed-off-by: Tony Lindgren commit 50b4860d577b4bef76c71ad38ef83b9f368283c2 Author: Omar Ramirez Luna Date: Fri Mar 25 14:04:31 2011 -0600 OMAP: iovmm: fix SW flags passed by user Commit d038aee24dcd5a2a0d8547f5396f67ae9698ac8e "omap: iovmm: don't check 'da' to set IOVMF_DA_FIXED flag", changes iovmm to receive flags specified by user, however the upper 16 bits of the flags are wiped by iovmm itself. This fixes IOVMF_DA_FIXED flags from being lost, and lets the user map its desired "device addresses". Signed-off-by: Omar Ramirez Luna Acked-by: Hiroshi DOYU Signed-off-by: Tony Lindgren commit 77f7059a329fc8a514bbcc2f204aaa7c150e8046 Author: Julia Lawall Date: Fri May 13 18:46:10 2011 +0200 arch/arm/mach-omap1/dma.c: Invert calls to platform_device_put and platform_device_del Platform_device_del should be called before platform_device_put, as platform_device_put can delete the structure. Additionally, improve the error handling code for the call to ioremap, so that it calls platform_device_put. The semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @@ expression e1,e2; @@ *platform_device_put(e1); ... when != e1 = e2 *platform_device_del(e1); // Signed-off-by: Julia Lawall Signed-off-by: Tony Lindgren commit 5c6cce92bc8aee751aafe82c5d9caf7553226a3d Merge: 603d04b a5b2c5b Author: Linus Torvalds Date: Wed Jun 1 16:35:37 2011 +0900 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: AppArmor: fix oops in apparmor_setprocattr commit 603d04b2010976a52f62b7633f9999d104046900 Author: Mike Frysinger Date: Sat May 28 10:04:25 2011 -0400 kgdbts: only use new asm-generic/ptrace.h api when needed The new instruction_pointer_set helper is defined for people who have converted to asm-generic/ptrace.h, so don't use it generally unless the arch needs it (in which case it has been converted). This should fix building of kgdb tests for arches not yet converted. Signed-off-by: Mike Frysinger Acked-by: Stephen Rothwell Cc: Jason Wessel Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 30ebad9d756a0b2c97c6c4ca6c5e6b799e3b64da Author: Govindraj.R Date: Wed Jun 1 11:28:56 2011 +0530 OMAP2+: mux: fix compilation warnings Fix below compilation warnings. arch/arm/mach-omap2/omap_hwmod.c: In function 'omap_hwmod_for_each': arch/arm/mach-omap2/omap_hwmod.c:1631: warning: 'ret' may be used uninitialized in this function arch/arm/mach-omap2/mux.c: In function 'omap_mux_get_gpio': arch/arm/mach-omap2/mux.c:917: warning: 'm' may be used uninitialized in this function Signed-off-by: Govindraj.R Signed-off-by: Tony Lindgren commit 4c49ff3fe128ca68dabd07537415c419ad7f82f9 Author: Tejun Heo Date: Wed Jun 1 08:27:41 2011 +0200 block: blkdev_get() should access ->bd_disk only after success d4dc210f69 (block: don't block events on excl write for non-optical devices) added dereferencing of bdev->bd_disk to test GENHD_FL_BLOCK_EVENTS_ON_EXCL_WRITE; however, bdev->bd_disk can be %NULL if open failed which can lead to an oops. Test the flag after testing open was successful, not before. Signed-off-by: Tejun Heo Reported-by: David Miller Tested-by: David Miller Cc: stable@kernel.org Signed-off-by: Jens Axboe commit a5b2c5b2ad5853591a6cac6134cd0f599a720865 Author: Kees Cook Date: Tue May 31 11:31:41 2011 -0700 AppArmor: fix oops in apparmor_setprocattr When invalid parameters are passed to apparmor_setprocattr a NULL deref oops occurs when it tries to record an audit message. This is because it is passing NULL for the profile parameter for aa_audit. But aa_audit now requires that the profile passed is not NULL. Fix this by passing the current profile on the task that is trying to setprocattr. Signed-off-by: Kees Cook Signed-off-by: John Johansen Cc: stable@kernel.org Signed-off-by: James Morris commit 948252cb9e01d65a89ecadf67be5018351eee15e Author: David S. Miller Date: Tue May 31 19:27:48 2011 -0700 Revert "net: fix section mismatches" This reverts commit e5cb966c0838e4da43a3b0751bdcac7fe719f7b4. It causes new build regressions with gcc-4.2 which is pretty common on non-x86 platforms. Reported-by: James Bottomley Signed-off-by: David S. Miller commit ebf30dc91cc8592cd72b004219cfc276b3ad2854 Author: Stephen Boyd Date: Tue May 31 16:10:00 2011 -0700 msm: timer: Fix SMP build error Fix build breakage on SMP=y builds due to 0f7b332 (ARM: consolidate SMP cross call implementation, 2011-04-03) arch/arm/mach-msm/timer.c: In function 'local_timer_setup': arch/arm/mach-msm/timer.c:295: error: implicit declaration of function 'gic_enable_ppi' Signed-off-by: Stephen Boyd Signed-off-by: David Brown commit 930a6eac9f40e692bd9670d89bcd9ac0f4019356 Author: Alexey Khoroshilov Date: Mon May 30 07:06:24 2011 +0000 drivers/net/usb/catc.c: Fix potential deadlock in catc_ctrl_run() catc_ctrl_run() calls usb_submit_urb() with GFP_KERNEL, while it is called from catc_ctrl_async() and catc_ctrl_done() with catc->ctrl_lock spinlock held. The patch replaces GFP_KERNEL with GFP_ATOMIC. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: David S. Miller commit a000c01e60e40e15304ffe48fff051d17a7bea91 Author: Wei Yongjun Date: Sun May 29 23:23:36 2011 +0000 sctp: stop pending timers and purge queues when peer restart asoc If the peer restart the asoc, we should not only fail any unsent/unacked data, but also stop the T3-rtx, SACK, T4-rto timers, and teardown ASCONF queues. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit b10cec8a4e8167075b9e1ff3f05419769e7f381a Author: Dennis Aberilla Date: Sun May 29 11:46:54 2011 +0000 drivers/net: ks8842 Fix crash on received packet when in PIO mode. This patch fixes a driver crash during packet reception due to not enough bytes allocated in the skb. Since the loop reads out 4 bytes at a time, we need to allow for up to 3 bytes of slack space. Signed-off-by: Dennis Aberilla Signed-off-by: David S. Miller commit 48bdf072c3f1f8f739f76d19c74f4c79605cac46 Author: Chris Metcalf Date: Sun May 29 10:55:44 2011 +0000 ip_options_compile: properly handle unaligned pointer The current code takes an unaligned pointer and does htonl() on it to make it big-endian, then does a memcpy(). The problem is that the compiler decides that since the pointer is to a __be32, it is legal to optimize the copy into a processor word store. However, on an architecture that does not handled unaligned writes in kernel space, this produces an unaligned exception fault. The solution is to track the pointer as a "char *" (which removes a bunch of unpleasant casts in any case), and then just use put_unaligned_be32() to write the value to memory. Signed-off-by: Chris Metcalf Signed-off-by: David S. Miller commit e12ca23d41bd157354a5d1aadff30211a410c53a Merge: 850761b 7a66f78 Author: Linus Torvalds Date: Wed Jun 1 06:45:08 2011 +0900 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: virtio_net: delay TX callbacks virtio: add api for delayed callbacks virtio_test: support event index vhost: support event index virtio_ring: support event idx feature virtio ring: inline function to check for events virtio: event index interface virtio: add full three-clause BSD text to headers. virtio balloon: kill tell-host-first logic virtio console: don't manually set or finalize VIRTIO_CONSOLE_F_MULTIPORT. drivers, block: virtio_blk: Replace cryptic number with the macro virtio_blk: allow re-reading config space at runtime lguest: remove support for VIRTIO_F_NOTIFY_ON_EMPTY. lguest: fix up compilation after move lguest: fix timer interrupt setup commit 850761b2b13aec5d4f9935199e917f9a4ae00cce Merge: af0d6a0 83caba8 Author: Linus Torvalds Date: Wed Jun 1 06:44:10 2011 +0900 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] wire up sendmmsg() syscall for Itanium commit 5aceca9d3cbdacbd017712513387d930f9f944d9 Author: David S. Miller Date: Mon May 23 17:12:22 2011 -0700 PCI: Fix warning in drivers/pci/probe.c on sparc64 IO_SPACE_LIMIT is currently used in two ways: 1) As a way to mask I/O port values read out of PCI base address registers. This value should be 64-bit. 2) As a value which is the upper limit for all I/O "ports" in the system. On sparc64 we store the full 64-bit physical I/O address in the resources. For this reason we define IO_SPACE_LIMIT at a 64-bit "all 1's". This is the right value to use for ioport_resource.end and for the check made in drivers/pcmcia/rsrc_nonstatic.c:adjust_io(). But in driver/pci/probe.c:__pci_read_base() we mask this against a "u32" variable and thus get the following warning: drivers/pci/probe.c: In function ¡__pci_read_base¢: drivers/pci/probe.c:207: warning: large integer implicitly truncated to unsigned type Fix this by using an explicit "u32" cast. I considered changing sparc64 to define a 32-bit "all 1's" like most other systems do, but this wouldn't work because the checks in PCMCIA's rsrc_nonstatic.c would no longer be right since they are testing against fully formed 64-bit resources. As described above, on sparc64 such resources will hold full 64-bit physical I/O addresses, not bus-centric 32-bit ones. Signed-off-by: David S. Miller Signed-off-by: Jesse Barnes commit 1144181c1bc054dc5e001a6f10b4820167e6c883 Author: Wey-Yi Guy Date: Mon May 30 09:32:52 2011 -0700 iwlagn: fix incorrect PCI subsystem id for 6150 devices For 6150 devices, modify the supported PCI subsystem ID. Cc: stable@kernel.org Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 59342f6a6bc35df623fb44784daa5e1077063b8f Author: Jussi Kivilinna Date: Mon May 30 10:15:47 2011 +0300 zd1211rw: fix to work on OHCI zd1211 devices register 'EP 4 OUT' endpoint as Interrupt type on USB 2.0: Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 1 However on USB 1.1 endpoint becomes Bulk: Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x04 EP 4 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Commit 37939810b937aba830dd751291fcdc51cae1a6cb assumed that endpoint is always interrupt type and changed usb_bulk_msg() calls to usb_interrupt_msg(). Problem here is that usb_bulk_msg() on interrupt endpoint selfcorrects the call and changes requested pipe to interrupt type (see usb_bulk_msg). However with usb_interrupt_msg() on bulk endpoint does not correct the pipe type to bulk, but instead URB is submitted with interrupt type pipe. So pre-2.6.39 used usb_bulk_msg() and therefore worked with both endpoint types, however in 2.6.39 usb_interrupt_msg() with bulk endpoint causes ohci_hcd to fail submitted URB instantly with -ENOSPC and preventing zd1211rw from working with OHCI. Fix this by detecting endpoint type and using correct endpoint/pipe types for URB. Also fix asynchronous zd_usb_iowrite16v_async() to use right URB type on 'EP 4 OUT'. Cc: stable@kernel.org Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit 66870b1ccd5c1460e437c18b0026e2dcaab1ece9 Author: Luciano Coelho Date: Fri May 27 15:34:48 2011 +0300 wl12xx: fix oops in sched_scan when forcing a passive scan Fix kernel oops when trying to use passive scheduled scans. The reason was that in passive scans there are no SSIDs, so there was a NULL pointer dereference. To solve the problem, we now check the number of SSIDs provided in the sched_scan request and only access the list if there's one or more (ie. passive scan is not forced). We also force all the channels to be passive by adding the IEEE80211_CHAN_PASSIVE_SCAN flag locally before the checks in the wl1271_scan_get_sched_scan_channels() function. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 50a66d7f04adbfab9db55144c58dc693358cb635 Author: Luciano Coelho Date: Fri May 27 15:34:47 2011 +0300 wl12xx: add separate config value for DFS dwell time on sched scan Use a different value for DFS dwell time when performing a scheduled scan. Previously we were using the same value as for normal passive scans. This adds some flexibility between these two different types of passive scan. For now we use 150 TUs for DFS channel dwell time. This may need to be fine-tuned in the future. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 2497a246e880d1fb537f754f551177c01fa39242 Author: Luciano Coelho Date: Fri May 27 15:34:46 2011 +0300 wl12xx: fix DFS channels handling in scheduled scan DFS channels were never getting included in the scheduled scans, because they always contain the passive flag as well and the call was asking for DFS and active channels. Fix this by ignoring the passive flag when collecting DFS channels. Also, move the DFS channels in the channel list before the 5GHz active channels (this was implemented in the FW differently than specified). Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit dd08682150e1815fe5cdd0673a2f2e9cd2d55a7a Author: Luciano Coelho Date: Fri May 27 15:34:45 2011 +0300 wl12xx: fix passive and radar channel generation for scheduled scan We were comparing bitwise AND results with a boolean, so when the boolean was set to true, it was not matching as it should. Fix this by booleanizing the bitwise AND results with !!. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 71005be40a7fc95edda3cc462361ce0243e4f5fa Author: Daniel Drake Date: Thu May 26 21:31:08 2011 +0100 libertas: Set command sequence number later to ensure consistency Before this patch, the command sequence number is being set before lbs_queue_cmd() adds the command to the queue. However, lbs_queue_cmd() sometimes forces commands to queue-jump (e.g. CMD_802_11_WAKEUP_CONFIRM). It currently does this without considering that sequence numbers might need adjusting to keep things running in order. Fix this by setting the sequence number at a later stage, just before we're actually submitting the command to the hardware. Also fixes a possible race where seqnum was being modified outside of the driver lock. Signed-off-by: Daniel Drake Acked-by: Dan Williams Signed-off-by: John W. Linville commit 4495a7d41dbda03841c2a1c2a5ce7135a45131ba Author: Kyungmin Park Date: Tue May 31 10:04:09 2011 +0200 CFQ: Fix typo and remove unnecessary semicolon Fix comment typo and remove unnecessary semicolon at macro Signed-off-by: Kyungmin Park Signed-off-by: Jens Axboe commit 83caba8436b28bd9081013fd840424983127d4ca Author: Tony Luck Date: Tue May 31 10:09:24 2011 -0700 [IA64] wire up sendmmsg() syscall for Itanium Add entries in unistd.h and entry.S to make this new syscall visible. Signed-off-by: Tony Luck commit af0d6a0a3a30946f7df69c764791f1b0643f7cd6 Merge: 07ef3c3 4f3c125 Author: Linus Torvalds Date: Wed Jun 1 02:07:22 2011 +0900 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Fix mwait_play_dead() faulting on mwait-incapable cpus x86 idle: Fix mwait deprecation warning message Evil merge to remove extra quote noticed by Joe Perches commit 07ef3c3b44896bc0432a901fe6ae0d0deaca47ce Merge: 643d2d7 d72bce0 Author: Linus Torvalds Date: Wed Jun 1 02:03:22 2011 +0900 Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rcu: Cure load woes commit e5ac0bda96c495321dbad9b57a4b1a93a5a72e7f Author: Stefano Stabellini Date: Wed May 25 12:33:23 2011 +0100 xen: use the trigger info we already have to choose the irq handler Do not use pirq_needs_eoi to decide which irq handler to use because Xen always returns true if the guest does not support pirq_eoi_map. Use the trigger information we already have from MP-tables and ACPI. Signed-off-by: Stefano Stabellini Reported-by: Thomas Goetz Tested-by: Thomas Goetz Signed-off-by: Konrad Rzeszutek Wilk commit fe47ae7f53e179d2ef6771024feb000cbb86640f Author: Robert Richter Date: Tue May 31 12:35:41 2011 +0200 oprofile, dcookies: Fix possible circular locking dependency The lockdep warning below detects a possible A->B/B->A locking dependency of mm->mmap_sem and dcookie_mutex. The order in sync_buffer() is mm->mmap_sem/dcookie_mutex, while in sys_lookup_dcookie() it is vice versa. Fixing it in sys_lookup_dcookie() by unlocking dcookie_mutex before copy_to_user(). oprofiled/4432 is trying to acquire lock: (&mm->mmap_sem){++++++}, at: [] might_fault+0x53/0xa3 but task is already holding lock: (dcookie_mutex){+.+.+.}, at: [] sys_lookup_dcookie+0x45/0x149 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (dcookie_mutex){+.+.+.}: [] lock_acquire+0xf8/0x11e [] mutex_lock_nested+0x63/0x309 [] get_dcookie+0x30/0x144 [] sync_buffer+0x196/0x3ec [oprofile] [] task_exit_notify+0x16/0x1a [oprofile] [] notifier_call_chain+0x37/0x63 [] __blocking_notifier_call_chain+0x50/0x67 [] blocking_notifier_call_chain+0x14/0x16 [] profile_task_exit+0x1a/0x1c [] do_exit+0x2a/0x6fc [] do_group_exit+0x83/0xae [] sys_exit_group+0x17/0x1b [] system_call_fastpath+0x16/0x1b -> #0 (&mm->mmap_sem){++++++}: [] __lock_acquire+0x1085/0x1711 [] lock_acquire+0xf8/0x11e [] might_fault+0x80/0xa3 [] sys_lookup_dcookie+0x104/0x149 [] system_call_fastpath+0x16/0x1b other info that might help us debug this: 1 lock held by oprofiled/4432: #0: (dcookie_mutex){+.+.+.}, at: [] sys_lookup_dcookie+0x45/0x149 stack backtrace: Pid: 4432, comm: oprofiled Not tainted 2.6.39-00008-ge5a450d #9 Call Trace: [] print_circular_bug+0xae/0xbc [] __lock_acquire+0x1085/0x1711 [] ? get_parent_ip+0x11/0x42 [] ? might_fault+0x53/0xa3 [] lock_acquire+0xf8/0x11e [] ? might_fault+0x53/0xa3 [] ? path_put+0x22/0x27 [] might_fault+0x80/0xa3 [] ? might_fault+0x53/0xa3 [] sys_lookup_dcookie+0x104/0x149 [] system_call_fastpath+0x16/0x1b References: https://bugzilla.kernel.org/show_bug.cgi?id=13809 Cc: # .27+ Signed-off-by: Robert Richter commit 130c5ce716c9bfd1c2a2ec840a746eb7ff9ce1e6 Author: Robert Richter Date: Thu May 26 18:39:35 2011 +0200 oprofile: Fix locking dependency in sync_start() This fixes the A->B/B->A locking dependency, see the warning below. The function task_exit_notify() is called with (task_exit_notifier) .rwsem set and then calls sync_buffer() which locks buffer_mutex. In sync_start() the buffer_mutex was set to prevent notifier functions to be started before sync_start() is finished. But when registering the notifier, (task_exit_notifier).rwsem is locked too, but now in different order than in sync_buffer(). In theory this causes a locking dependency, what does not occur in practice since task_exit_notify() is always called after the notifier is registered which means the lock is already released. However, after checking the notifier functions it turned out the buffer_mutex in sync_start() is unnecessary. This is because sync_buffer() may be called from the notifiers even if sync_start() did not finish yet, the buffers are already allocated but empty. No need to protect this with the mutex. So we fix this theoretical locking dependency by removing buffer_mutex in sync_start(). This is similar to the implementation before commit: 750d857 oprofile: fix crash when accessing freed task structs which introduced the locking dependency. Lockdep warning: oprofiled/4447 is trying to acquire lock: (buffer_mutex){+.+...}, at: [] sync_buffer+0x31/0x3ec [oprofile] but task is already holding lock: ((task_exit_notifier).rwsem){++++..}, at: [] __blocking_notifier_call_chain+0x39/0x67 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 ((task_exit_notifier).rwsem){++++..}: [] lock_acquire+0xf8/0x11e [] down_write+0x44/0x67 [] blocking_notifier_chain_register+0x52/0x8b [] profile_event_register+0x2d/0x2f [] sync_start+0x47/0xc6 [oprofile] [] oprofile_setup+0x60/0xa5 [oprofile] [] event_buffer_open+0x59/0x8c [oprofile] [] __dentry_open+0x1eb/0x308 [] nameidata_to_filp+0x60/0x67 [] do_last+0x5be/0x6b2 [] path_openat+0xc7/0x360 [] do_filp_open+0x3d/0x8c [] do_sys_open+0x110/0x1a9 [] sys_open+0x20/0x22 [] system_call_fastpath+0x16/0x1b -> #0 (buffer_mutex){+.+...}: [] __lock_acquire+0x1085/0x1711 [] lock_acquire+0xf8/0x11e [] mutex_lock_nested+0x63/0x309 [] sync_buffer+0x31/0x3ec [oprofile] [] task_exit_notify+0x16/0x1a [oprofile] [] notifier_call_chain+0x37/0x63 [] __blocking_notifier_call_chain+0x50/0x67 [] blocking_notifier_call_chain+0x14/0x16 [] profile_task_exit+0x1a/0x1c [] do_exit+0x2a/0x6fc [] do_group_exit+0x83/0xae [] sys_exit_group+0x17/0x1b [] system_call_fastpath+0x16/0x1b other info that might help us debug this: 1 lock held by oprofiled/4447: #0: ((task_exit_notifier).rwsem){++++..}, at: [] __blocking_notifier_call_chain+0x39/0x67 stack backtrace: Pid: 4447, comm: oprofiled Not tainted 2.6.39-00007-gcf4d8d4 #10 Call Trace: [] print_circular_bug+0xae/0xbc [] __lock_acquire+0x1085/0x1711 [] ? sync_buffer+0x31/0x3ec [oprofile] [] lock_acquire+0xf8/0x11e [] ? sync_buffer+0x31/0x3ec [oprofile] [] ? mark_lock+0x42f/0x552 [] ? sync_buffer+0x31/0x3ec [oprofile] [] mutex_lock_nested+0x63/0x309 [] ? sync_buffer+0x31/0x3ec [oprofile] [] sync_buffer+0x31/0x3ec [oprofile] [] ? __blocking_notifier_call_chain+0x39/0x67 [] ? __blocking_notifier_call_chain+0x39/0x67 [] task_exit_notify+0x16/0x1a [oprofile] [] notifier_call_chain+0x37/0x63 [] __blocking_notifier_call_chain+0x50/0x67 [] blocking_notifier_call_chain+0x14/0x16 [] profile_task_exit+0x1a/0x1c [] do_exit+0x2a/0x6fc [] ? retint_swapgs+0xe/0x13 [] do_group_exit+0x83/0xae [] sys_exit_group+0x17/0x1b [] system_call_fastpath+0x16/0x1b Reported-by: Marcin Slusarz Cc: Carl Love Cc: # .36+ Signed-off-by: Robert Richter commit 6ac6519b93065625119a347be1cbcc1b89edb773 Author: Robert Richter Date: Thu May 26 18:22:54 2011 +0200 oprofile: Free potentially owned tasks in case of errors After registering the task free notifier we possibly have tasks in our dying_tasks list. Free them after unregistering the notifier in case of an error. Cc: # .36+ Signed-off-by: Robert Richter commit 26a510ba12448d3af26951376eae202bee8cdf65 Author: Santosh Shilimkar Date: Mon Apr 4 14:20:08 2011 +0530 OMAP: SRAM: Fix warning: format '%08lx' expects type 'long unsigned int' Fix below build warning. CC arch/arm/plat-omap/sram.o arch/arm/plat-omap/sram.c: In function 'omap_map_sram': arch/arm/plat-omap/sram.c:224: warning: format '%08lx' expects type 'long unsigned int', but argument 2 has type 'unsigned int' While at this, convert SRAM printk(* "") to pr_*(""). Signed-off-by: Santosh Shilimkar Acked-by: Russell King Signed-off-by: Tony Lindgren commit 026fe79d75c3a7a257ca72250f46b472835784c9 Author: Igor Grinberg Date: Mon May 30 00:11:45 2011 -0700 arm: omap3: cm-t3517: fix section mismatch warning WARNING: arch/arm/mach-omap2/built-in.o(.text+0x11014): Section mismatch in reference from the function cm_t3517_init_usbh() to the (unknown reference) .init.data:(unknown) The function cm_t3517_init_usbh() references the (unknown reference) __initdata (unknown). This is often because cm_t3517_init_usbh lacks a __initdata annotation or the annotation of (unknown) is wrong. Signed-off-by: Igor Grinberg Signed-off-by: Tony Lindgren commit 89c4705ed58a9e6faa7649eb561aead79bb77b3f Author: Santosh Shilimkar Date: Mon May 30 00:11:45 2011 -0700 OMAP2+: Fix 9 section mismatch(es) warnings from mach-omap2/built-in.o The serial*_data should have been marked as __initdata as per it's usage in the board files. Fix the same to remove the section mismatch warnings caused by it. Signed-off-by: Santosh Shilimkar Signed-off-by: Silesh C V [tony@atomide.com: updated with additional fixes from Silesh] Signed-off-by: Tony Lindgren commit f9fa1bb9d7a3c9537d6abd4ad47c58fe27862625 Author: Axel Lin Date: Tue May 31 20:55:44 2011 +0800 ARM: OMAP2: Add missing include of linux/gpio.h I got some build error like below while executing "make omap2plus_defconfig". CC arch/arm/mach-omap2/board-2430sdp.o arch/arm/mach-omap2/board-2430sdp.c: In function 'omap_2430sdp_init': arch/arm/mach-omap2/board-2430sdp.c:247: error: 'GPIOF_OUT_INIT_LOW' undeclared (first use in this function) arch/arm/mach-omap2/board-2430sdp.c:247: error: (Each undeclared identifier is reported only once arch/arm/mach-omap2/board-2430sdp.c:247: error: for each function it appears in.) This patch fixes the build error by include linux/gpio.h instead of mach/gpio.h. Signed-off-by: Axel Lin Cc: Syed Mohammed Khasim Cc: Grazvydas Ignotas Cc: Steve Sakoman Signed-off-by: Tony Lindgren commit 046d886db18260d4435c942985392b7ef872337f Author: Janusz Krzysztofik Date: Tue May 31 00:44:31 2011 +0200 OMAP: fix compilation error Forward-declare platform_device structure in arch/arm/plat-omap/include/plat/flash.h, otherwise compilation may break with: In file included from arch/arm/mach-omap1/flash.c:15: arch/arm/plat-omap/include/plat/flash.h:14: warning: 'struct platform_device' declared inside parameter list arch/arm/plat-omap/include/plat/flash.h:14: warning: its scope is only this definition or declaration, which is probably not what you want arch/arm/mach-omap1/flash.c:16: warning: 'struct platform_device' declared inside parameter list arch/arm/mach-omap1/flash.c:17: error: conflicting types for 'omap1_set_vpp' arch/arm/plat-omap/include/plat/flash.h:14: error: previous declaration of 'omap1_set_vpp' was here Detected and corrected while building for Amstrad Delta, confirmed with omap1_defconfig. Signed-off-by: Janusz Krzysztofik Signed-off-by: Tony Lindgren commit 74c355fbdfedd3820046dba4f537876cea54c207 Author: Peter Zijlstra Date: Mon May 30 16:48:06 2011 +0200 perf, cgroups: Fix up for new API Ben changed the cgroup API in commit f780bdb7c1c (cgroups: add per-thread subsystem callbacks) in an incompatible way, but forgot to convert the perf cgroup bits. Avoid compile warnings and runtime splats and convert perf too ;-) Acked-by: Ben Blum Cc: Stephane Eranian Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1306767651.1200.2990.camel@twins Signed-off-by: Ingo Molnar commit f339b9dc1f03591761d5d930800db24bc0eda1e1 Author: Peter Zijlstra Date: Tue May 31 10:49:20 2011 +0200 sched: Fix schedstat.nr_wakeups_migrate While looking over the code I found that with the ttwu rework the nr_wakeups_migrate test broke since we now switch cpus prior to calling ttwu_stat(), hence the test is always true. Cure this by passing the migration state in wake_flags. Also move the whole test under CONFIG_SMP, its hard to migrate tasks on UP :-) Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-pwwxl7gdqs5676f1d4cx6pj7@git.kernel.org Signed-off-by: Ingo Molnar commit f01114cb59d670e9b4f2c335930dd57db96e9360 Author: Peter Zijlstra Date: Tue May 31 12:26:55 2011 +0200 sched: Fix cross-cpu clock sync on remote wakeups Markus reported that commit 317f394160e ("sched: Move the second half of ttwu() to the remote cpu") caused some accounting funnies on his AMD Phenom II X4, such as weird 'top' results. It turns out that this is due to non-synced TSC and the queued remote wakeups stopped coupeling the two relevant cpu clocks, which leads to wakeups seeing time jumps, which in turn lead to skewed runtime stats. Add an explicit call to sched_clock_cpu() to couple the per-cpu clocks to restore the normal flow of time. Reported-and-tested-by: Markus Trippelsdorf Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1306835745.2353.3.camel@twins Signed-off-by: Ingo Molnar commit ea9d6553b3b3044e7374774cc33bb1b2eee19dd3 Author: Namhyung Kim Date: Tue May 31 13:45:53 2011 +0200 block: remove unwanted semicolons Since those defined functions require additional semicolon from the caller, they could cause potential syntax errors when used in if-else statements. Signed-off-by: Namhyung Kim Acked-by: Martin K. Petersen Signed-off-by: Jens Axboe commit 643d2d7992f4ce4f983d455b579f77b1e9c0af0c Merge: 89c1222 89e1be5 Author: Linus Torvalds Date: Tue May 31 20:32:54 2011 +0900 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Put back -pg to tsc.o and add no GCOV to vread_tsc_64.o commit 89c122236e60747f920008c9cf4e9cbde3333e50 Merge: 339dedf c7427d2 Author: Linus Torvalds Date: Tue May 31 20:30:59 2011 +0900 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: autofs4: bogus dentry_unhash() added in ->unlink() vfs: shrink_dcache_parent before rmdir, dir rename commit 339dedf709e21d5718d6596750166f70e8bed40a Author: Benjamin Herrenschmidt Date: Tue May 31 18:01:23 2011 +1000 powerpc/pmac: Don't register pmac PIC syscore ops when HW not present The Apple custom PIC only exist in some earlier machine models, anything with an MPIC will crash on suspend if we register those syscore ops unconditionally. This is a regression caused by commit f5a592f7d74e ("PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM") Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit 1adffbae22332bb558c2a29de19d9aca391869f6 Author: OGAWA Hirofumi Date: Tue May 31 19:38:07 2011 +0900 fat: Fix corrupt inode flags when remove ATTR_SYS flag We are clearly missing '~' in fat_ioctl_set_attributes(). Cc: Reported-by: Dmitry Dmitriev Signed-off-by: OGAWA Hirofumi commit d72bce0e67e8afc6eb959f656013cbb577426f1e Author: Peter Zijlstra Date: Mon May 30 13:34:51 2011 +0200 rcu: Cure load woes Commit cc3ce5176d83 (rcu: Start RCU kthreads in TASK_INTERRUPTIBLE state) fudges a sleeping task' state, resulting in the scheduler seeing a TASK_UNINTERRUPTIBLE task going to sleep, but a TASK_INTERRUPTIBLE task waking up. The result is unbalanced load calculation. The problem that patch tried to address is that the RCU threads could stay in UNINTERRUPTIBLE state for quite a while and triggering the hung task detector due to on-demand wake-ups. Cure the problem differently by always giving the tasks at least one wake-up once the CPU is fully up and running, this will kick them out of the initial UNINTERRUPTIBLE state and into the regular INTERRUPTIBLE wait state. [ The alternative would be teaching kthread_create() to start threads as INTERRUPTIBLE but that needs a tad more thought. ] Reported-by: Damien Wyart Signed-off-by: Peter Zijlstra Acked-by: Paul E. McKenney Link: http://lkml.kernel.org/r/1306755291.1200.2872.camel@twins Signed-off-by: Ingo Molnar commit 1222de7c415cfa70f441f836588fd79a3334d4fe Merge: db7eba2 5c2de44 Author: Paul Mundt Date: Tue May 31 16:00:58 2011 +0900 Merge branch 'sh/runtime-pm-misery' into sh-fixes-for-linus commit 5c2de44417523385010b529599a2b30f290831a3 Author: Paul Mundt Date: Tue May 31 15:53:03 2011 +0900 dmaengine: shdma: Fix up fallout from runtime PM changes. The runtime PM changes introduce sh_dmae_rst() wrapping via the runtime_resume helper, depending on dev_get_drvdata() to fetch the platform data needed for the DMAOR initialization default at a time where drvdata hasn't yet been established by the probe path, resulting in general probe misery: Unable to handle kernel NULL pointer dereference at virtual address 000000c4 pc = 8025adee *pde = 00000000 Oops: 0000 [#1] Modules linked in: Pid : 1, Comm: swapper CPU : 0 Not tainted (3.0.0-rc1-00012-g9436b4a-dirty #1456) PC is at sh_dmae_rst+0x28/0x86 PR is at sh_dmae_rst+0x22/0x86 PC : 8025adee SP : 9e803d10 SR : 400080f1 TEA : 000000c4 R0 : 000000c4 R1 : 0000fff8 R2 : 00000000 R3 : 00000040 R4 : 000000f0 R5 : 00000000 R6 : 00000000 R7 : 804f184c R8 : 00000000 R9 : 804dd0e8 R10 : 80283204 R11 : ffffffda R12 : 000000a0 R13 : 804dd18c R14 : 9e803d10 MACH: 00000000 MACL: 00008f20 GBR : 00000000 PR : 8025ade8 Call trace: [<8025ae70>] sh_dmae_runtime_resume+0x24/0x34 [<80283238>] pm_generic_runtime_resume+0x34/0x3c [<80283370>] rpm_callback+0x4a/0x7e [<80283efc>] rpm_resume+0x240/0x384 [<80283f54>] rpm_resume+0x298/0x384 [<8028428c>] __pm_runtime_resume+0x44/0x7c [<8038a358>] __ioremap_caller+0x0/0xec [<80284296>] __pm_runtime_resume+0x4e/0x7c [<8038a358>] __ioremap_caller+0x0/0xec [<80666254>] sh_dmae_probe+0x180/0x6a0 [<802803ae>] platform_drv_probe+0x26/0x2e Fix up the ordering accordingly. Signed-off-by: Paul Mundt commit 9436b4abec28a22edd961ae375535d940625f1f2 Author: Paul Mundt Date: Tue May 31 15:26:42 2011 +0900 Revert "clocksource: sh_cmt: Runtime PM support" This reverts commit 01fa68b58492a5d6708a91c1f474b6a099a9509e. The same note as per the sh_tmu change applies here, too. Signed-off-by: Paul Mundt commit d4905ce38c73964b868037e49a5945e1cf47a7f2 Author: Paul Mundt Date: Tue May 31 15:23:20 2011 +0900 Revert "clocksource: sh_tmu: Runtime PM support" This reverts commit 1b842e91fea9447eff5eb687e28ad61c02f5033e. There is a fundamental ordering race between the early and late probe paths and the runtime PM tie-in that results in __pm_runtime_resume() attempting to take a lock that hasn't been initialized yet (which by proxy also suggests that pm_runtime_init() hasn't yet been run on the device either, making the entire thing unsafe) -- resulting in instant death on SMP or on UP with spinlock debugging enabled: sh_tmu.0: used for clock events sh_tmu.0: used for periodic clock events BUG: spinlock trylock failure on UP on CPU#0, swapper/0 lock: 804db198, .magic: 00000000, .owner: /-1, .owner_cpu: 0 ... Revert it for now until the ordering issues can be resolved, or we can get some more help from the runtime PM framework to make this possible. Signed-off-by: Paul Mundt commit db7eba292e913390fa881272bfbc3da0a5380513 Author: Paul Mundt Date: Tue May 31 14:39:49 2011 +0900 sh: Fix up asm-generic/ptrace.h fallout. There was an ordering issue with regards to instruction_pointer() being used in profile_pc() prior to the asm-generic/ptrace.h include, which subsequently provided the instruction_pointer() definition. In the interest of simplicity we simply open-code the regs->pc deref for the profile_pc() definition instead. The FP functions were also broken due to a lack of a common regs->fp, so provide a common GET_FP() that is safe for both architectures in order to fix up the frame pointer helpers too. Signed-off-by: Paul Mundt commit 3f9b8520b06013939ad247ba08b69529b5f14be1 Author: Paul Mundt Date: Tue May 31 14:38:29 2011 +0900 sh64: Move from P1SEG to CAC_ADDR for consistent sync. sh64 doesn't define a P1SEGADDR, resulting in a build failure. The proper mapping can be attained for both sh32 and 64 via the CAC_ADDR macro, so switch to that instead. Signed-off-by: Paul Mundt commit 65d517eb7224d24ee4206416161390f30d69e622 Author: Paul Mundt Date: Tue May 31 14:37:44 2011 +0900 sh64: asm/pgtable.h needs asm/mmu.h Needed to satisfy the __in_29bit_mode() check. Signed-off-by: Paul Mundt commit 194cd8dfc9e4f29249b3bd45c5cb5c0a33a6438c Author: Nobuhiro Iwamatsu Date: Tue May 31 13:27:41 2011 +0900 sh: asm/tlb.h needs linux/swap.h Commit 1e56a56410bb64bce62d44563e35a143fc2d515f introduced the mmu_gather rework for sh, but missed a linux/swap.h include: CC arch/sh/mm/tlb-urb.o In file included from arch/sh/mm/tlb-urb.c:14:0: arch/sh/include/asm/tlb.h: In function '__tlb_remove_page': arch/sh/include/asm/tlb.h:92:2: error: implicit declaration of function 'free_page_and_swap_cache' Signed-off-by: Nobuhiro Iwamatsu CC: Peter Zijlstra Signed-off-by: Paul Mundt commit 8181d3ef26ed1d9eb21e2cdcac374e1f457fdc06 Merge: 5452555 55922c9 Author: Paul Mundt Date: Tue May 31 13:10:26 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into sh-fixes-for-linus commit cbf74cea070fa1f705de4712e25d9e56ae6543c7 Author: Robert Richter Date: Mon May 30 16:31:11 2011 +0200 oprofile, x86: Add comments to IBS LVT offset initialization Adding a comment in the code as IBS LVT setup is not obvious at all ... Signed-off-by: Robert Richter commit 4f3c125c7420c85eaff627145557e392a871922d Author: Avi Kivity Date: Mon May 30 08:23:57 2011 -0400 x86: Fix mwait_play_dead() faulting on mwait-incapable cpus A logic error in mwait_play_dead() causes the kernel to use mwait even on cpus which don't support it, such as KVM virtual cpus. Introduced by: 349c004e3d31: x86: A fast way to check capabilities of the current cpu Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=36222 Reported-by: Török Edwin Signed-off-by: Avi Kivity Cc: Christoph Lameter Cc: Tejun Heo Link: http://lkml.kernel.org/r/1306758237-9327-1-git-send-email-avi@redhat.com Signed-off-by: Ingo Molnar commit 598e887d8b01655780c81cc86a9e7820ed091580 Author: Borislav Petkov Date: Mon May 30 11:38:06 2011 +0200 x86 idle: Fix mwait deprecation warning message Fix: arch/x86/kernel/process.c:645:1: warning: unknown escape sequence '\i' due to missing escape backslash, introduced by this commit: 5d4c47e0195b: x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param Signed-off-by: Borislav Petkov Cc: Len Brown Cc: Linus Torvalds Link: http://lkml.kernel.org/r/1306748286-24701-1-git-send-email-bp@alien8.de Signed-off-by: Ingo Molnar commit 27721a52d6c8e33327ec3cae9f730204be99d251 Author: Kyungmin Park Date: Mon May 30 10:24:47 2011 +0900 gpio: Fix gpio-exynos4 build fails in mainline After the GPIO driver move, some symbols became selectable when they shouldn't be. Tighten the dependencies. Reported-by: Randy Dunlap Signed-off-by: Grant Likely commit c7427d23f7ed695ac226dbe3a84d7f19091d34ce Author: Al Viro Date: Mon May 30 01:50:53 2011 -0400 autofs4: bogus dentry_unhash() added in ->unlink() Signed-off-by: Al Viro commit 3cebde2413ba42504cf2c10ec1d47582912435cd Author: Sage Weil Date: Sun May 29 21:20:59 2011 -0700 vfs: shrink_dcache_parent before rmdir, dir rename The dentry_unhash push-down series missed that shink_dcache_parent needs to be called prior to rmdir or dir rename to clear DCACHE_REFERENCED and allow efficient dentry reclaim. Reported-by: Dave Chinner Signed-off-by: Sage Weil Signed-off-by: Al Viro commit a1706ac4c0201ea0143dc0db0659001b26ceeabb Author: Jens Axboe Date: Mon May 30 07:42:51 2011 +0200 Revert "block: Remove extra discard_alignment from hd_struct." It was not a good idea to start dereferencing disk->queue from the fs sysfs strategy for displaying discard alignment. We ran into first a NULL pointer deref, and after fixing that we sometimes see unvalid disk->queue pointer values. Since discard is the only one of the bunch actually looking into the queue, just revert the change. This reverts commit 23ceb5b7719e9276d4fa72a3ecf94dd396755276. Conflicts: fs/partitions/check.c commit 7a66f784375c5922315bbe879b789ee50b924d26 Author: Michael S. Tsirkin Date: Fri May 20 02:11:23 2011 +0300 virtio_net: delay TX callbacks Ask for delayed callbacks on TX ring full, to give the other side more of a chance to make progress. Signed-off-by: Michael S. Tsirkin Acked-by: David S. Miller Signed-off-by: Rusty Russell commit 7ab358c23cbf15cea08129cd722d1ce77433a94d Author: Michael S. Tsirkin Date: Fri May 20 02:11:14 2011 +0300 virtio: add api for delayed callbacks Add an API that tells the other side that callbacks should be delayed until a lot of work has been done. Implement using the new event_idx feature. Note: it might seem advantageous to let the drivers ask for a callback after a specific capacity has been reached. However, as a single head can free many entries in the descriptor table, we don't really have a clue about capacity until get_buf is called. The API is the simplest to implement at the moment, we'll see what kind of hints drivers can pass when there's more than one user of the feature. Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell commit 4423fe40b03f32b11e72ecfa03077e702e55d5a9 Author: Michael S. Tsirkin Date: Fri May 20 02:11:05 2011 +0300 virtio_test: support event index Add ability to test the new event idx feature, enable by default. Signed-off-by: Rusty Russell commit 8ea8cf89e19aeb596b818ee5f2bec8a8b0586b60 Author: Michael S. Tsirkin Date: Fri May 20 02:10:54 2011 +0300 vhost: support event index Support the new event index feature. When acked, utilize it to reduce the # of interrupts sent to the guest. Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell commit a5c262c5fd83ece01bd649fb08416c501d4c59d7 Author: Michael S. Tsirkin Date: Fri May 20 02:10:44 2011 +0300 virtio_ring: support event idx feature Support for the new event idx feature: 1. When enabling interrupts, publish the current avail index value to the host to get interrupts on the next update. 2. Use the new avail_event feature to reduce the number of exits from the guest. Simple test with the simulator: [virtio]# time ./virtio_test spurious wakeus: 0x7 real 0m0.169s user 0m0.140s sys 0m0.019s [virtio]# time ./virtio_test --no-event-idx spurious wakeus: 0x11 real 0m0.649s user 0m0.295s sys 0m0.335s Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell commit bf7035bf20563a6cadcb9e870406e7b21daf5e30 Author: Michael S. Tsirkin Date: Fri May 20 02:10:27 2011 +0300 virtio ring: inline function to check for events With the new used_event and avail_event and features, both host and guest need similar logic to check whether events are enabled, so it helps to put the common code in the header. Note that Xen has similar logic for notification hold-off in include/xen/interface/io/ring.h with req_event and req_prod corresponding to event_idx + 1 and new_idx respectively. +1 comes from the fact that req_event and req_prod in Xen start at 1, while event index in virtio starts at 0. Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell commit 770b31a85e000b0194974922f238a30ade4246b6 Author: Michael S. Tsirkin Date: Fri May 20 02:10:17 2011 +0300 virtio: event index interface Define a new feature bit for the guest and host to utilize an event index (like Xen) instead if a flag bit to enable/disable interrupts and kicks. Signed-off-by: Michael S. Tsirkin Signed-off-by: Rusty Russell commit a1b383870a28cfbd1657d4922c0fafc634a62ebd Author: Rusty Russell Date: Mon May 30 11:14:13 2011 -0600 virtio: add full three-clause BSD text to headers. It's unclear to me if it's important, but it's obviously causing my technical colleages some headaches and I'd hate such imprecision to slow virtio adoption. I've emailed this to all non-trivial contributors for approval, too. Signed-off-by: Rusty Russell Acked-by: Grant Likely Acked-by: Ryan Harper Acked-by: Anthony Liguori Acked-by: Eric Van Hensbergen Acked-by: john cooper Acked-by: Aneesh Kumar K.V Acked-by: Christian Borntraeger Acked-by: Fernando Luis Vazquez Cao commit bf50e69f63d21091e525185c3ae761412be0ba72 Author: Dave Hansen Date: Thu Apr 7 10:43:25 2011 -0700 virtio balloon: kill tell-host-first logic The virtio balloon driver has a VIRTIO_BALLOON_F_MUST_TELL_HOST feature bit. Whenever the bit is set, the guest kernel must always tell the host before we free pages back to the allocator. Without this feature, we might free a page (and have another user touch it) while the hypervisor is unprepared for it. But, if the bit is _not_ set, we are under no obligation to reverse the order; we're under no obligation to do _anything_. As of now, qemu-kvm defines the bit, but doesn't set it. This patch makes the "tell host first" logic the only case. This should make everybody happy, and reduce the amount of untested or untestable code in the kernel. This _also_ means that we don't have to preserve a pfn list after the pages are freed, which should let us get rid of some temporary storage (vb->pfns) eventually. Signed-off-by: Dave Hansen Signed-off-by: Rusty Russell commit 177dbd95637a52b9118aca757d5856ec3995d3e7 Author: Rusty Russell Date: Mon May 30 11:14:13 2011 -0600 virtio console: don't manually set or finalize VIRTIO_CONSOLE_F_MULTIPORT. That's already been done by the virtio infrastructure before the probe function is called. Reported-by: alexey.kardashevskiy@au1.ibm.com Acked-by: Amit Shah Tested-by: Amit Shah Signed-off-by: Rusty Russell commit 6917f83ffe5e6b6414ccc845263b792ed201c0f1 Author: Liu Yuan Date: Sun Apr 24 02:49:26 2011 +0800 drivers, block: virtio_blk: Replace cryptic number with the macro It is easier to figure out the context by reading SCSI_SENSE_BUFFERSIZE instead of plain '96'. Signed-off-by: Liu Yuan Signed-off-by: Rusty Russell commit 7a7c924cf03da2a76ea4dc0aac1a788cf95a9c29 Author: Christoph Hellwig Date: Tue Feb 1 21:43:48 2011 +0100 virtio_blk: allow re-reading config space at runtime Wire up the virtio_driver config_changed method to get notified about config changes raised by the host. For now we just re-read the device size to support online resizing of devices, but once we add more attributes that might be changeable they could be added as well. Note that the config_changed method is called from irq context, so we'll have to use the workqueue infrastructure to provide us a proper user context for our changes. Signed-off-by: Christoph Hellwig Signed-off-by: Rusty Russell commit 990c91f0af46c57f0291060d928c7ab82f9d5667 Author: Rusty Russell Date: Mon May 30 11:14:12 2011 -0600 lguest: remove support for VIRTIO_F_NOTIFY_ON_EMPTY. No virtio device does this any more, so no need to clutter lguest with it. Signed-off-by: Rusty Russell commit bc805a03c26e1e25171bc627c6264553d27f746c Author: Rusty Russell Date: Mon May 30 11:14:11 2011 -0600 lguest: fix up compilation after move ed16648eb5b86917f0b90bdcdbc857202da72f90 "Move kvm, uml, and lguest subdirectories" broke the lguest example launcher. Signed-off-by: Rusty Russell commit 15517f7c213442e4d8a098cf0732b237f764c576 Author: Rusty Russell Date: Mon May 30 11:14:08 2011 -0600 lguest: fix timer interrupt setup Without an IRQ chip set, we now get a WARN_ON and no timer interrupt. This prevents booting. Fortunately, the fix is a one-liner: set up the timer IRQ like everything else. Signed-off-by: Rusty Russell Cc: stable@kernel.org # .39.x commit 55922c9d1b84b89cb946c777fddccb3247e7df2c Author: Linus Torvalds Date: Sun May 29 17:43:36 2011 -0700 Linux 3.0-rc1 .. except there are various scripts that really know that there are three numbers, so it calls itself "3.0.0-rc1". Hopefully by the time the final 3.0 is out, we'll have that extra zero all figured out. Signed-off-by: Linus Torvalds commit bd1bfe40ac6bdf9593da29b822bc301b77a97d6a Merge: cd1acdf 3063287 Author: Linus Torvalds Date: Sun May 29 14:13:25 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6: eCryptfs: Remove ecryptfs_header_cache_2 eCryptfs: Cleanup and optimize ecryptfs_lookup_interpose() eCryptfs: Return useful code from contains_ecryptfs_marker eCryptfs: Fix new inode race condition eCryptfs: Cleanup inode initialization code eCryptfs: Consolidate inode functions into inode.c commit cd1acdf1723d71b28175f95b04305f1cc74ce363 Merge: fac0486 9342077 Author: Linus Torvalds Date: Sun May 29 14:10:13 2011 -0700 Merge branch 'pnfs-submit' of git://git.open-osd.org/linux-open-osd * 'pnfs-submit' of git://git.open-osd.org/linux-open-osd: (32 commits) pnfs-obj: pg_test check for max_io_size NFSv4.1: define nfs_generic_pg_test NFSv4.1: use pnfs_generic_pg_test directly by layout driver NFSv4.1: change pg_test return type to bool NFSv4.1: unify pnfs_pageio_init functions pnfs-obj: objlayout_encode_layoutcommit implementation pnfs: encode_layoutcommit pnfs-obj: report errors and .encode_layoutreturn Implementation. pnfs: encode_layoutreturn pnfs: layoutret_on_setattr pnfs: layoutreturn pnfs-obj: osd raid engine read/write implementation pnfs: support for non-rpc layout drivers pnfs-obj: define per-inode private structure pnfs: alloc and free layout_hdr layoutdriver methods pnfs-obj: objio_osd device information retrieval and caching pnfs-obj: decode layout, alloc/free lseg pnfs-obj: pnfs_osd XDR client implementation pnfs-obj: pnfs_osd XDR definitions pnfs-obj: objlayoutdriver module skeleton ... commit fac04863cef53a69830590b2e1c54345068a9747 Author: Linus Torvalds Date: Sun May 29 14:06:42 2011 -0700 arm gpio drivers: make them 'depends on ARM' We had a few drivers move from arch/arm into drivers/gpio, but they don't actually compile without the ARM platform headers etc. As a result they were messing up allyesconfig on x86. Make them depend on ARM. Reported-by: Ingo Molnar Cc: Andrew Morton Signed-off-by: Linus Torvalds commit 3063287053bca5207e121c567b95b2b6f0bdc2c8 Author: Tyler Hicks Date: Tue May 24 05:11:12 2011 -0500 eCryptfs: Remove ecryptfs_header_cache_2 Now that ecryptfs_lookup_interpose() is no longer using ecryptfs_header_cache_2 to read in metadata, the kmem_cache can be removed and the ecryptfs_header_cache_1 kmem_cache can be renamed to ecryptfs_header_cache. Signed-off-by: Tyler Hicks commit 778aeb42a708d2a57e491d2cbb5a1e74f61270b9 Author: Tyler Hicks Date: Tue May 24 04:56:23 2011 -0500 eCryptfs: Cleanup and optimize ecryptfs_lookup_interpose() ecryptfs_lookup_interpose() has turned into spaghetti code over the years. This is an effort to clean it up. - Shorten overly descriptive variable names such as ecryptfs_dentry - Simplify gotos and error paths - Create helper function for reading plaintext i_size from metadata It also includes an optimization when reading i_size from the metadata. A complete page-sized kmem_cache_alloc() was being done to read in 16 bytes of metadata. The buffer for that is now statically declared. Signed-off-by: Tyler Hicks commit 7a86617e553f47761b10f57de472d7262562b7de Author: Tyler Hicks Date: Mon May 2 00:39:54 2011 -0500 eCryptfs: Return useful code from contains_ecryptfs_marker Instead of having the calling functions translate the true/false return code to either 0 or -EINVAL, have contains_ecryptfs_marker() return 0 or -EINVAL so that the calling functions can just reuse the return code. Also, rename the function to ecryptfs_validate_marker() to avoid callers mistakenly thinking that it returns true/false codes. Signed-off-by: Tyler Hicks commit 3b06b3ebf44170c90c893c6c80916db6e922b9f2 Author: Tyler Hicks Date: Tue May 24 03:49:02 2011 -0500 eCryptfs: Fix new inode race condition Only unlock and d_add() new inodes after the plaintext inode size has been read from the lower filesystem. This fixes a race condition that was sometimes seen during a multi-job kernel build in an eCryptfs mount. https://bugzilla.kernel.org/show_bug.cgi?id=36002 Signed-off-by: Tyler Hicks Reported-by: David Tested-by: David commit 2ba781ced93922e249dee2ac0751faccb4fb0656 Merge: 6345d24 437cb0d Author: Linus Torvalds Date: Sun May 29 11:44:33 2011 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (43 commits) acer-wmi: support integer return type from WMI methods msi-laptop: fix section mismatch in reference from the function load_scm_model_init acer-wmi: support to set communication device state by new wmid method acer-wmi: allow 64-bits return buffer from WMI methods acer-wmi: check the existence of internal 3G device when set capability platform/x86:delete two unused variables support wlan hotkey on Acer Travelmate 5735Z platform-x86: intel_mid_thermal: Fix memory leak platform/x86: Fix Makefile for intel_mid_powerbtn platform/x86: Simplify intel_mid_powerbtn acer-wmi: Delete out-of-date documentation acerhdf: Clean up includes acerhdf: Drop pointless dependency on THERMAL_HWMON acer-wmi: Update MAINTAINERS wmi: Orphan ACPI-WMI driver tc1100-wmi: Orphan driver acer-wmi: does not allow negative number set to initial device state platform/oaktrail: ACPI EC Extra driver for Oaktrail thinkpad_acpi: Convert printks to pr_ thinkpad_acpi: Correct !CONFIG_THINKPAD_ACPI_VIDEO warning ... commit 6345d24daf0c1fffe6642081d783cdf653ebaa5c Author: Linus Torvalds Date: Sun May 29 11:32:28 2011 -0700 mm: Fix boot crash in mm_alloc() Thomas Gleixner reports that we now have a boot crash triggered by CONFIG_CPUMASK_OFFSTACK=y: BUG: unable to handle kernel NULL pointer dereference at (null) IP: [] find_next_bit+0x55/0xb0 Call Trace: [] cpumask_any_but+0x2a/0x70 [] flush_tlb_mm+0x2b/0x80 [] pud_populate+0x35/0x50 [] pgd_alloc+0x9a/0xf0 [] mm_init+0xec/0x120 [] mm_alloc+0x53/0xd0 which was introduced by commit de03c72cfce5 ("mm: convert mm->cpu_vm_cpumask into cpumask_var_t"), and is due to wrong ordering of mm_init() vs mm_init_cpumask Thomas wrote a patch to just fix the ordering of initialization, but I hate the new double allocation in the fork path, so I ended up instead doing some more radical surgery to clean it all up. Reported-by: Thomas Gleixner Reported-by: Ingo Molnar Cc: KOSAKI Motohiro Cc: Andrew Morton Signed-off-by: Linus Torvalds commit cab0d85c8dfcad4d799f9c294571440c6f1db091 Merge: 57ed609 3c5cffb Author: Linus Torvalds Date: Sun May 29 11:30:20 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] mm: fix mmu_gather rework [S390] mm: fix storage key handling commit 57ed609d4b64139b4d2cf5f3b4880a573a7905d2 Merge: a74d70b f133ecc Author: Linus Torvalds Date: Sun May 29 11:29:28 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: arch/tile: more /proc and /sys file support commit 437cb0dbd104a1564e0e78f0d486b97677f80909 Merge: 139f37f 987dfba Author: Matthew Garrett Date: Sun May 29 14:27:13 2011 -0400 Merge branch 'x86-platform-next' into x86-platform commit a74d70b63f1a0230831bcca3145d85ae016f9d4c Merge: b11b06d c47d832 Author: Linus Torvalds Date: Sun May 29 11:21:12 2011 -0700 Merge branch 'for-2.6.40' of git://linux-nfs.org/~bfields/linux * 'for-2.6.40' of git://linux-nfs.org/~bfields/linux: (22 commits) nfsd: make local functions static NFSD: Remove unused variable from nfsd4_decode_bind_conn_to_session() NFSD: Check status from nfsd4_map_bcts_dir() NFSD: Remove setting unused variable in nfsd_vfs_read() nfsd41: error out on repeated RECLAIM_COMPLETE nfsd41: compare request's opcnt with session's maxops at nfsd4_sequence nfsd v4.1 lOCKT clientid field must be ignored nfsd41: add flag checking for create_session nfsd41: make sure nfs server process OPEN with EXCLUSIVE4_1 correctly nfsd4: fix wrongsec handling for PUTFH + op cases nfsd4: make fh_verify responsibility of nfsd_lookup_dentry caller nfsd4: introduce OPDESC helper nfsd4: allow fh_verify caller to skip pseudoflavor checks nfsd: distinguish functions of NFSD_MAY_* flags svcrpc: complete svsk processing on cb receive failure svcrpc: take advantage of tcp autotuning SUNRPC: Don't wait for full record to receive tcp data svcrpc: copy cb reply instead of pages svcrpc: close connection if client sends short packet svcrpc: note network-order types in svc_process_calldir ... commit b11b06d90a41766c2d31f0acb8a87aa0f2a7188f Merge: f1d1c9f fa34ce7 Author: Linus Torvalds Date: Sun May 29 11:20:48 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: dm kcopyd: return client directly and not through a pointer dm kcopyd: reserve fewer pages dm io: use fixed initial mempool size dm kcopyd: alloc pages from the main page allocator dm kcopyd: add gfp parm to alloc_pl dm kcopyd: remove superfluous page allocation spinlock dm kcopyd: preallocate sub jobs to avoid deadlock dm kcopyd: avoid pointless job splitting dm mpath: do not fail paths after integrity errors dm table: reject devices without request fns dm table: allow targets to support discards internally commit f1d1c9fa8f360990e263bdcb73e35ab6fbdc41fe Merge: 2ff55e9 176e21e Author: Linus Torvalds Date: Sun May 29 11:20:02 2011 -0700 Merge branch 'nfs-for-2.6.40' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 * 'nfs-for-2.6.40' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6: SUNRPC: Support for RPC over AF_LOCAL transports SUNRPC: Remove obsolete comment SUNRPC: Use AF_LOCAL for rpcbind upcalls SUNRPC: Clean up use of curly braces in switch cases NFS: Revert NFSROOT default mount options SUNRPC: Rename xs_encode_tcp_fragment_header() nfs,rcu: convert call_rcu(nfs_free_delegation_callback) to kfree_rcu() nfs41: Correct offset for LAYOUTCOMMIT NFS: nfs_update_inode: print current and new inode size in debug output NFSv4.1: Fix the handling of NFS4ERR_SEQ_MISORDERED errors NFSv4: Handle expired stateids when the lease is still valid SUNRPC: Deal with the lack of a SYN_SENT sk->sk_state_change callback... commit 2ff55e98d6e662a4887d2c688a4ab2ae510a97df Merge: daa9422 d5b72ce Author: Linus Torvalds Date: Sun May 29 11:19:45 2011 -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: Fix sanity check patches on big-endian systems commit daa94222b638bfe34f745d0982de7a165ce7f67c Merge: f310642 751516f Author: Linus Torvalds Date: Sun May 29 11:19:16 2011 -0700 Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI EC: remove redundant code ACPI: Add D3 cold state ACPI: processor: fix processor_physically_present in UP kernel ACPI: Split out custom_method functionality into an own driver ACPI: Cleanup custom_method debug stuff ACPI EC: enable MSI workaround for Quanta laptops ACPICA: Update to version 20110413 ACPICA: Execute an orphan _REG method under the EC device ACPICA: Move ACPI_NUM_PREDEFINED_REGIONS to a more appropriate place ACPICA: Update internal address SpaceID for DataTable regions ACPICA: Add more methods eligible for NULL package element removal ACPICA: Split all internal Global Lock functions to new file - evglock ACPI: EC: add another DMI check for ASUS hardware ACPI EC: remove dead code ACPICA: Fix code divergence of global lock handling ACPICA: Use acpi_os_create_lock interface ACPI: osl, add acpi_os_create_lock interface ACPI:Fix goto flows in thermal-sys commit f310642123e0d32d919c60ca3fab5acd130c4ba3 Merge: ef1d575 5d4c47e Author: Linus Torvalds Date: Sun May 29 11:18:09 2011 -0700 Merge branch 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6 * 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6: x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param x86 idle: deprecate "no-hlt" cmdline param x86 idle APM: deprecate CONFIG_APM_CPU_IDLE x86 idle floppy: deprecate disable_hlt() x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it x86 idle: clarify AMD erratum 400 workaround idle governor: Avoid lock acquisition to read pm_qos before entering idle cpuidle: menu: fixed wrapping timers at 4.294 seconds commit ef1d57599dc904fdb31b8e9b5336350d21a1fde1 Author: Al Viro Date: Sun May 29 13:46:08 2011 +0100 cifs/ubifs: Fix shrinker API change fallout Commit 1495f230fa77 ("vmscan: change shrinker API by passing shrink_control struct") changed the API of ->shrink(), but missed ubifs and cifs instances. Signed-off-by: Al Viro Signed-off-by: Linus Torvalds commit 9342077011d54f42fa1b88b7bc1f7008dcf5fff9 Author: Boaz Harrosh Date: Wed May 25 21:25:29 2011 +0300 pnfs-obj: pg_test check for max_io_size Implement pg_test vector to test for max IO sizes. We calculate a max_io_size member only once, and cache it in lseg so to not do so on every page insert. Signed-off-by: Boaz Harrosh [simplify logic] Signed-off-by: Benny Halevy commit 5b36c7dc41d87d39e779a84fdc2b44b39bba32ca Author: Boaz Harrosh Date: Sun May 29 11:45:39 2011 +0300 NFSv4.1: define nfs_generic_pg_test By default, unless pnfs is used coalesce pages until pg_bsize (rsize or wsize) is reached. pnfs layout drivers define their own pg_test methods that use pnfs_generic_pg_test and need to define their own I/O size limits (e.g. based on the file stripe size). [Move a check from nfs_pageio_do_add_request to nfs_generic_pg_test] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit 89a58e32d9105c01022a757fb32ddc3b51bf0025 Author: Benny Halevy Date: Wed May 25 20:54:40 2011 +0300 NFSv4.1: use pnfs_generic_pg_test directly by layout driver Signed-off-by: Benny Halevy commit 18ad0a9f2ccd260d37dd6bc5fa04c7819def4c84 Author: Benny Halevy Date: Wed May 25 21:03:56 2011 +0300 NFSv4.1: change pg_test return type to bool Signed-off-by: Benny Halevy commit dfed206b8857d41a91ebba030f99e30017a44dda Author: Benny Halevy Date: Wed May 25 20:25:22 2011 +0300 NFSv4.1: unify pnfs_pageio_init functions Use common code for pnfs_pageio_init_{read,write} and use a common generic pg_test function. Note that this function always assumes the the layout driver's pg_test method is implemented. [Fix BUG] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit a0fe8bf427f4987d7b82678292ca03cfd7331467 Author: Boaz Harrosh Date: Sun May 22 19:54:13 2011 +0300 pnfs-obj: objlayout_encode_layoutcommit implementation * Define API for io-engines to report delta_space_used in IOs * Encode the osd-layout specific information of the layoutcommit XDR buffer. Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit ac7db7264ac3314cae09893bc838fcb7e83267a4 Author: Benny Halevy Date: Sun May 22 19:53:48 2011 +0300 pnfs: encode_layoutcommit Add a layout driver method to encode the layout type specific opaque part of layout commit in-line in the xdr stream. Currently, the pnfs-objects layout driver uses it to encode metadata hints to the MDS and the blocks layout driver to commit provisionally allocated extents to the file. Signed-off-by: Benny Halevy commit adb58535e604a564495a7d50dfb0afa0ddc21bcb Author: Boaz Harrosh Date: Thu May 26 21:49:46 2011 +0300 pnfs-obj: report errors and .encode_layoutreturn Implementation. An io_state pre-allocates an error information structure for each possible osd-device that might error during IO. When IO is done if all was well the io_state is freed. (as today). If the I/O has ended with an error, the io_state is queued on a per-layout err_list. When eventually encode_layoutreturn() is called, each error is properly encoded on the XDR buffer and only then the io_state is removed from err_list and de-allocated. It is up to the io_engine to fill in the segment that fault and the type of osd_error that occurred. By calling objlayout_io_set_result() for each failing device. In objio_osd: * Allocate io-error descriptors space as part of io_state * Use generic objlayout error reporting at end of io. Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit 04a555498e03b3804e2dec916a4669f5f560e503 Author: Andy Adamson Date: Sun May 22 19:53:10 2011 +0300 pnfs: encode_layoutreturn Add a layout driver method to encode the layout type specific opaque part of layout return in-line in the xdr stream. Currently the pnfs-objects layout driver uses it to encode i/o error information on LAYOUTRETURN. Signed-off-by: Andy Adamson [fixup layout header pointer for encode_layoutreturn] Signed-off-by: Benny Halevy commit 8a1636c459cb7a4b32ba4024cd1b2ba21fba6aed Author: Benny Halevy Date: Wed Jul 14 15:43:57 2010 -0400 pnfs: layoutret_on_setattr With the objects layout security model, we have object capabilities that are associated with the layout and we anticipate that the server will issue a cb_layoutrecall for any setattr that changes security related attributes (user/group/mode/acl) or truncates the file. Therefore, the layout is returned before issuing the setattr to avoid the anticipated cb_layoutrecall. Signed-off-by: Benny Halevy commit cbe8260369c9f88eafa035cd327dc3e02fad528c Author: Benny Halevy Date: Sun May 22 19:52:37 2011 +0300 pnfs: layoutreturn NFSv4.1 LAYOUTRETURN implementation Currently, does not support layout-type payload encoding. Signed-off-by: Alexandros Batsakis Signed-off-by: Andy Adamson Signed-off-by: Andy Adamson Signed-off-by: Dean Hildebrand Signed-off-by: Fred Isaman Signed-off-by: Fred Isaman Signed-off-by: Marc Eshel Signed-off-by: Zhang Jingwang [call pnfs_return_layout right before pnfs_destroy_layout] [remove assert_spin_locked from pnfs_clear_lseg_list] [remove wait parameter from the layoutreturn path.] [remove return_type field from nfs4_layoutreturn_args] [remove range from nfs4_layoutreturn_args] [no need to send layoutcommit from _pnfs_return_layout] [don't wait on sync layoutreturn] [fix layout stateid in layoutreturn args] [fixed NULL deref in _pnfs_return_layout] [removed recaim member of nfs4_layoutreturn_args] Signed-off-by: Benny Halevy commit 04f83450388e87d86b387cf4a27b81eb7e69de7d Author: Boaz Harrosh Date: Sun May 22 19:52:19 2011 +0300 pnfs-obj: osd raid engine read/write implementation With the use of the in-kernel osd library. Implement read/write of data from/to osd-objects according to information specified in the objects-layout. Support for stripping over mirrors with a received stripe_unit. There are however a few constrains which are not supported: 1. Stripe Unit must be a multiple of PAGE_SIZE 2. stripe length (stripe_unit * number_of_stripes) can not be bigger then 32bit. Also support raid-groups and partial-layout. Partial-layout is when not all the groups are received on the line, addressing only a partial range of the file. TODO: Only raid0! raid 4/5/6 support will come at later stage A none supported layout will send IO through the MDS [Important fallout from the last rebase] Signed-off-by: Boaz Harrosh [gfp_flags] Signed-off-by: Benny Halevy commit d20581aa4be11407c9eeeb75992df5ef176bba0f Author: Benny Halevy Date: Sun May 22 19:52:03 2011 +0300 pnfs: support for non-rpc layout drivers Non-rpc layout driver such as for objects and blocks implement their own I/O path and error handling logic. Therefore bypass NFS-based error handling for these layout drivers. [fix lseg ref-count bugs, and null de-refs] [Fall out from: non-rpc layout drivers] Signed-off-by: Boaz Harrosh [get rid of PNFS_USE_RPC_CODE] [get rid of __nfs4_write_done_cb] [revert useless change in nfs4_write_done_cb] Signed-off-by: Benny Halevy commit e51b841dd0be9ff53f740c44c32c32679edcb7c8 Author: Benny Halevy Date: Sun May 22 19:51:48 2011 +0300 pnfs-obj: define per-inode private structure allocate and deallocate per-inode private pnfs_layout_hdr in preparation for I/O implementation. Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit 636fb9c89d7e216aac3d406e458864420057e981 Author: Benny Halevy Date: Sun May 22 19:51:33 2011 +0300 pnfs: alloc and free layout_hdr layoutdriver methods [gfp_flags] Signed-off-by: Benny Halevy commit b6c05f1693115164c7b797152ac7ea3ef8e5d296 Author: Boaz Harrosh Date: Thu May 26 21:45:34 2011 +0300 pnfs-obj: objio_osd device information retrieval and caching When a new layout is received in objio_alloc_lseg all device_ids referenced are retrieved. The device information is queried for from MDS and then the osd_device is looked-up from the osd-initiator library. The devices are cached in a per-mount-point list, for later use. At unmount all devices are "put" back to the library. objlayout_get_deviceinfo(), objlayout_put_deviceinfo() middleware API for retrieving device information given a device_id. TODO: The device cache can get big. Cap its size. Keep an LRU and start to return devices which were not used, when list gets to big, or when new entries allocation fail. [pnfs-obj: Bugs in new global-device-cache code] Signed-off-by: Boaz Harrosh [gfp_flags] [use global device cache] [use layout driver in global device cache] Signed-off-by: Benny Halevy commit 09f5bf4e6d0607399c16ec7a2d8d166f31086686 Author: Boaz Harrosh Date: Sun May 22 19:50:20 2011 +0300 pnfs-obj: decode layout, alloc/free lseg objlayout_alloc_lseg prepares an xdr_stream and calls the raid engins objio_alloc_lseg() to allocate a private pnfs_layout_segment. objio_osd.c::objio_alloc_lseg() uses passed xdr_stream to decode and store the layout_segment information in an objio_segment struct, using the pnfs_osd_xdr.h API for the actual parsing the layout xdr. objlayout_free_lseg calls objio_free_lseg() to free the allocated space. Signed-off-by: Boaz Harrosh [gfp_flags] [removed "extern" from function definitions] Signed-off-by: Benny Halevy commit f1bc893a89d012649e4e7f43575b2c290e08ee42 Author: Boaz Harrosh Date: Sun May 22 19:49:57 2011 +0300 pnfs-obj: pnfs_osd XDR client implementation * Add the fs/nfs/objlayout/pnfs_osd_xdr_cli.c file, which will include the XDR encode/decode implementations for the pNFS client objlayout driver. [Wrong type in comments] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit 38b7c401f6ade50543f246c4bc2c971edf2b19dd Author: Benny Halevy Date: Sun May 22 19:49:32 2011 +0300 pnfs-obj: pnfs_osd XDR definitions * Add the pnfs_osd_xdr.h header * defintions the pnfs_osd_layout structure including all it's sub-types and constants. * Declare the pnfs_osd_xdr_decode_layout API + all needed inline helpers. * Define the pnfs_osd_deviceaddr structure and all its subtypes and constants. * Declare API for decoding of a pnfs_osd_deviceaddr from XDR stream. * Define the pnfs_osd_ioerr structure, its substructures and constants. * Declare API for encoding of a pnfs_osd_ioerr into XDR stream. * Define the pnfs_osd_layoutupdate structure and its substructures. * Declare API for encoding of a pnfs_osd_layoutupdate into XDR stream. [Remove server definitions] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit c93407d03c3ccf60b33a309e5fcd41cd98969901 Author: Benny Halevy Date: Sun May 22 19:49:06 2011 +0300 pnfs-obj: objlayoutdriver module skeleton * Define the PNFS_OBJLAYOUT Kconfig option in the nfs master Kconfig file. * Add the objlayout driver to the Kernel's Kbuild system. * Add the fs/nfs/objlayout/Kbuild file for building the objlayoutdriver.ko driver * Define fs/nfs/objlayout/objio_osd.c, register the driver on module initialization and unregister on exit. [pnfs-obj: remove of CONFIG_PNFS fallout] Signed-off-by: Boaz Harrosh [added "unsure" clause] [depend on NFS_V4_1] Signed-off-by: Benny Halevy commit ae50c0b5c6f6fa340f1fe2d244b358145f7e5a15 Author: J. Bruce Fields Date: Sun May 22 19:48:21 2011 +0300 pnfs: client stats A pNFS client auto-negotiates a lot of features (minorversion level, pNFS layout type, etc.). This is convenient, but makes certain kinds of failures hard for a user to detect. For example, if the client falls back on 4.0, or falls back to MDS IO because the user didn't connect to the right iscsi disks before mounting, the only symptoms may be reduced performance, which may not be noticed till long after the actual failure, and may be difficult for a user to diagnose. However, such "failures" may also be perfectly normal in some cases, so we don't want to spam the system logs with them. One approach would be to put some more information into /proc/self/mountstats. Signed-off-by: J. Bruce Fields Signed-off-by: Benny Halevy [pnfs: add commit client stats] [fixup data types for "ret" variables in pnfs_try_to* inline funcs.] Signed-off-by: Benny Halevy [fix definition of show_pnfs for !CONFIG_PNFS] Signed-off-by: Benny Halevy [nfs41: Fix show_sessions in the not CONFIG_NFS_V4_1 case] There is a build error when CONFIG_NFS_V4 is set but CONFIG_NFS_V4_1 is *not* set. show_sessions() prototype was unbalanced between the two cases. Signed-off-by: Boaz Harrosh [pnfs: super.c remove CONFIG_PNFS] Signed-off-by: Andy Adamson Signed-off-by: Benny Halevy commit 778b5502fdba5b183553f3f2ef1672ba78ac58b6 Author: Benny Halevy Date: Sun May 22 19:48:02 2011 +0300 pnfs: Use byte-range for cb_layoutrecall Use recalled range to invalidate particular layout segments in the layout cache. Signed-off-by: Benny Halevy commit 707ed5fdb587c71fdb7ad224ba1d80231f33c974 Author: Benny Halevy Date: Sun May 22 19:47:46 2011 +0300 pnfs: align layoutget requests on page boundaries Signed-off-by: Benny Halevy commit fb3296eb4636763918edef2d22e45b85b15d4518 Author: Benny Halevy Date: Sun May 22 19:47:26 2011 +0300 pnfs: Use byte-range for layoutget Add offset and count parameters to pnfs_update_layout and use them to get the layout in the pageio path. Order cache layout segments in the following order: * offset (ascending) * length (descending) * iomode (RW before READ) Test byte range against the layout segment in use in pnfs_{read,write}_pg_test so not to coalesce pages not using the same layout segment. [fix lseg ordering] [clean up pnfs_find_lseg lseg arg] [remove unnecessary FIXME] [fix ordering in pnfs_insert_layout] [clean up pnfs_insert_layout] Signed-off-by: Benny Halevy commit f7da7a129d57bfe0f74573dc03531c63e1360fae Author: Benny Halevy Date: Thu May 19 14:16:47 2011 -0400 SUNRPC: introduce xdr_init_decode_pages Initialize xdr_stream and xdr_buf using an array of page pointers and length of buffer. Signed-off-by: Benny Halevy commit 35c8bb543c9e83197e6375142d1d1c2ee3cf017d Author: Benny Halevy Date: Tue May 24 18:04:02 2011 +0300 NFSv4.1: use layout driver in global device cache pnfs deviceids are unique per server, per layout type. struct nfs_client is currently used to distinguish deviceids from different nfs servers, yet these may clash between different layout types on the same server. Therefore, use the layout driver associated with each deviceid at insertion time to look it up, unhash, or delete it. Signed-off-by: Benny Halevy commit 1be5683b03a766670b3b629bf6bfeab3ca9239d8 Author: Marc Eshel Date: Sun May 22 19:47:09 2011 +0300 pnfs: CB_NOTIFY_DEVICEID Note: This functionlaity is incomplete as all layout segments referring to the 'to be removed device id' need to be reaped, and all in flight I/O drained. [use be32 res in nfs4_callback_devicenotify] [use nfs_client to qualify deviceid for cb_notify_deviceid] [use global deviceid cache for CB_NOTIFY_DEVICEID] [refactor device cache _lookup_deviceid] [refactor device cache _find_get_deviceid] Signed-off-by: Benny Halevy [Bug in new global-device-cache code] [layout_driver MUST set free_deviceid_node if using dev-cache] Signed-off-by: Boaz Harrosh Signed-off-by: Benny Halevy commit 5ccf92037c7c6e6f28175fd245284923f939259f Author: Tyler Hicks Date: Tue May 24 02:16:51 2011 -0500 eCryptfs: Cleanup inode initialization code The eCryptfs inode get, initialization, and dentry interposition code has two separate paths. One is for when dentry interposition is needed after doing things like a mkdir in the lower filesystem and the other is needed after a lookup. Unlocking new inodes and doing a d_add() needs to happen at different times, depending on which type of dentry interposing is being done. This patch cleans up the inode get and initialization code paths and splits them up so that the locking and d_add() differences mentioned above can be handled appropriately in a later patch. Signed-off-by: Tyler Hicks Tested-by: David commit 1775bc342c6eacd6304493cbb2e0cda1a0182246 Author: Benny Halevy Date: Fri May 20 13:47:33 2011 +0200 NFSv4.1: purge deviceid cache on nfs_free_client Use the pnfs_layoutdriver_type both as a qualifier for the deviceid, distinguishing deviceid from different layout types on the server, and for freeing the layout-driver allocated structure containing the nfs4_deviceid_node. [BUG in _deviceid_purge_client] [layout_driver MUST set free_deviceid_node if using dev-cache] [let ver < 4.1 compile] Signed-off-by: Boaz Harrosh [removed EXPORT_SYMBOL_GPL(nfs4_deviceid_purge_client)] Signed-off-by: Benny Halevy commit c4f790736ca8d7d86883c5aee2ba1caa15cd8da3 Author: Tyler Hicks Date: Mon May 23 21:18:20 2011 -0500 eCryptfs: Consolidate inode functions into inode.c These functions should live in inode.c since their focus is on inodes and they're primarily used by functions in inode.c. Also does a simple cleanup of ecryptfs_inode_test() and rolls ecryptfs_init_inode() into ecryptfs_inode_set(). Signed-off-by: Tyler Hicks Tested-by: David commit bc658c96037fc87463f0703ad2ea7c895344cb7e Author: Peter Zijlstra Date: Sun May 29 10:33:44 2011 +0200 mm, rmap: Add yet more comments to page_get_anon_vma/page_lock_anon_vma Inspired by an analysis from Hugh on why again all this doesn't explode in our face. Signed-off-by: Peter Zijlstra Signed-off-by: Linus Torvalds commit fa34ce73072f90ecd90dcc43f29d82e70e5f8676 Author: Mikulas Patocka Date: Sun May 29 13:03:13 2011 +0100 dm kcopyd: return client directly and not through a pointer Return client directly from dm_kcopyd_client_create, not through a parameter, making it consistent with dm_io_client_create. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 5f43ba2950414dc0abf4ac44c397d88069056746 Author: Mikulas Patocka Date: Sun May 29 13:03:11 2011 +0100 dm kcopyd: reserve fewer pages Reserve just the minimum of pages needed to process one job. Because we allocate pages from page allocator, we don't need to reserve a large number of pages. The maximum job size is SUB_JOB_SIZE and we calculate the number of reserved pages based on this. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit bda8efec5c706a672e0714d341a342e811f0262a Author: Mikulas Patocka Date: Sun May 29 13:03:09 2011 +0100 dm io: use fixed initial mempool size Replace the arbitrary calculation of an initial io struct mempool size with a constant. The code calculated the number of reserved structures based on the request size and used a "magic" multiplication constant of 4. This patch changes it to reserve a fixed number - itself still chosen quite arbitrarily. Further testing might show if there is a better number to choose. Note that if there is no memory pressure, we can still allocate an arbitrary number of "struct io" structures. One structure is enough to process the whole request. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit d04714580f12379fcf7a0f799e86c92b96dd4e1f Author: Mikulas Patocka Date: Sun May 29 13:03:07 2011 +0100 dm kcopyd: alloc pages from the main page allocator This patch changes dm-kcopyd so that it allocates pages from the main page allocator with __GFP_NOWARN | __GFP_NORETRY flags (so that it can fail in case of memory pressure). If the allocation fails, dm-kcopyd allocates pages from its own reserve. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit f99b55eec795bd0fd577ab3ca06f3acfbe3b1ab1 Author: Mikulas Patocka Date: Sun May 29 13:03:04 2011 +0100 dm kcopyd: add gfp parm to alloc_pl Introduce a parameter for gfp flags to alloc_pl() for use in following patches. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 4cc1b4cffd187a5c5d6264c8d766c49b3c57fb05 Author: Mikulas Patocka Date: Sun May 29 13:03:02 2011 +0100 dm kcopyd: remove superfluous page allocation spinlock Remove the spinlock protecting the pages allocation. The spinlock is only taken on initialization or from single-threaded workqueue. Therefore, the spinlock is useless. The spinlock is taken in kcopyd_get_pages and kcopyd_put_pages. kcopyd_get_pages is only called from run_pages_job, which is only called from process_jobs called from do_work. kcopyd_put_pages is called from client_alloc_pages (which is initialization function) or from run_complete_job. run_complete_job is only called from process_jobs called from do_work. Another spinlock, kc->job_lock is taken each time someone pushes or pops some work for the worker thread. Once we take kc->job_lock, we guarantee that any written memory is visible to the other CPUs. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit c6ea41fbbe08f270a8edef99dc369faf809d1bd6 Author: Mikulas Patocka Date: Sun May 29 13:03:00 2011 +0100 dm kcopyd: preallocate sub jobs to avoid deadlock There's a possible theoretical deadlock in dm-kcopyd because multiple allocations from the same mempool are required to finish a request. Avoid this by preallocating sub jobs. There is a mempool of 512 entries. Each request requires up to 9 entries from the mempool. If we have at least 57 concurrent requests running, the mempool may overflow and mempool allocations may start blocking until another entry is freed to the mempool. Because the same thread is used to free entries to the mempool and allocate entries from the mempool, this may result in a deadlock. This patch changes it so that one mempool entry contains all 9 "struct kcopyd_job" required to fulfill the whole request. The allocation is done only once in dm_kcopyd_copy and no further mempool allocations are done during request processing. If dm_kcopyd_copy is not run in the completion thread, this implementation is deadlock-free. MIN_JOBS needs reducing accordingly and we've chosen to reduce it further to 8. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit a705a34a565a5445bf731bd8006d51ea4d2b4236 Author: Mikulas Patocka Date: Sun May 29 13:02:58 2011 +0100 dm kcopyd: avoid pointless job splitting Don't split SUB_JOB_SIZE jobs If the job size equals SUB_JOB_SIZE, there is no point in splitting it. Splitting it just unnecessarily wastes time, because the split job size is SUB_JOB_SIZE too. Signed-off-by: Mikulas Patocka Signed-off-by: Alasdair G Kergon commit 6f13f6fba76edc7d0e7580c5deee829d59a41b2f Author: Martin K. Petersen Date: Sun May 29 13:02:55 2011 +0100 dm mpath: do not fail paths after integrity errors Integrity errors need to be passed to the owner of the integrity metadata for processing. Consequently EILSEQ should be passed up the stack. Cc: stable@kernel.org Signed-off-by: Martin K. Petersen Acked-by: Mike Snitzer Signed-off-by: Alasdair G Kergon commit f4808ca99a203f20b4475601748e44b25a65bdec Author: Milan Broz Date: Sun May 29 13:02:52 2011 +0100 dm table: reject devices without request fns This patch adds a check that a block device has a request function defined before it is used. Otherwise, misconfiguration can cause an oops. Because we are allowing devices with zero size e.g. an offline multipath device as in commit 2cd54d9bedb79a97f014e86c0da393416b264eb3 ("dm: allow offline devices") there needs to be an additional check to ensure devices are initialised. Some block devices, like a loop device without a backing file, exist but have no request function. Reproducer is trivial: dm-mirror on unbound loop device (no backing file on loop devices) dmsetup create x --table "0 8 mirror core 2 8 sync 2 /dev/loop0 0 /dev/loop1 0" and mirror resync will immediatelly cause OOps. BUG: unable to handle kernel NULL pointer dereference at (null) ? generic_make_request+0x2bd/0x590 ? kmem_cache_alloc+0xad/0x190 submit_bio+0x53/0xe0 ? bio_add_page+0x3b/0x50 dispatch_io+0x1ca/0x210 [dm_mod] ? read_callback+0x0/0xd0 [dm_mirror] dm_io+0xbb/0x290 [dm_mod] do_mirror+0x1e0/0x748 [dm_mirror] Signed-off-by: Milan Broz Reported-by: Zdenek Kabelac Acked-by: Mike Snitzer Cc: stable@kernel.org Signed-off-by: Alasdair G Kergon commit 4c2593270133708698d4b8cea2dab469479ad13b Author: Mike Snitzer Date: Sun May 29 12:52:55 2011 +0100 dm table: allow targets to support discards internally Permit a target to support discards regardless of whether or not all its underlying devices do. Signed-off-by: Mike Snitzer Signed-off-by: Alasdair G Kergon commit 3c5cffb66d8ea94832650fcb55194715b0229088 Author: Heiko Carstens Date: Sun May 29 12:40:51 2011 +0200 [S390] mm: fix mmu_gather rework Quite a few functions that get called from the tlb gather code require that preemption must be disabled. So disable preemption inside of the called functions instead. The only drawback is that rcu_table_freelist_finish() doesn't get necessarily called on the cpu(s) that filled the free lists. So we may see a delay, until we finally see an rcu callback. However over time this shouldn't matter. So we get rid of lots of "BUG: using smp_processor_id() in preemptible" messages. Signed-off-by: Heiko Carstens commit a43a9d93d40a69eceeb4e4a4c860cc20186d475c Author: Heiko Carstens Date: Sun May 29 12:40:50 2011 +0200 [S390] mm: fix storage key handling page_get_storage_key() and page_set_storage_key() expect a page address and not its page frame number. This got inconsistent with 2d42552d "[S390] merge page_test_dirty and page_clear_dirty". Result is that we read/write storage keys from random pages and do not have a working dirty bit tracking at all. E.g. SetPageUpdate() doesn't clear the dirty bit of requested pages, which for example ext4 doesn't like very much and panics after a while. Unable to handle kernel paging request at virtual user address (null) Oops: 0004 [#1] PREEMPT SMP DEBUG_PAGEALLOC Modules linked in: CPU: 1 Not tainted 2.6.39-07551-g139f37f-dirty #152 Process flush-94:0 (pid: 1576, task: 000000003eb34538, ksp: 000000003c287b70) Krnl PSW : 0704c00180000000 0000000000316b12 (jbd2_journal_file_inode+0x10e/0x138) R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:0 PM:0 EA:3 Krnl GPRS: 0000000000000000 0000000000000000 0000000000000000 0700000000000000 0000000000316a62 000000003eb34cd0 0000000000000025 000000003c287b88 0000000000000001 000000003c287a70 000000003f1ec678 000000003f1ec000 0000000000000000 000000003e66ec00 0000000000316a62 000000003c287988 Krnl Code: 0000000000316b04: f0a0000407f4 srp 4(11,%r0),2036,0 0000000000316b0a: b9020022 ltgr %r2,%r2 0000000000316b0e: a7740015 brc 7,316b38 >0000000000316b12: e3d0c0000024 stg %r13,0(%r12) 0000000000316b18: 4120c010 la %r2,16(%r12) 0000000000316b1c: 4130d060 la %r3,96(%r13) 0000000000316b20: e340d0600004 lg %r4,96(%r13) 0000000000316b26: c0e50002b567 brasl %r14,36d5f4 Call Trace: ([<0000000000316a62>] jbd2_journal_file_inode+0x5e/0x138) [<00000000002da13c>] mpage_da_map_and_submit+0x2e8/0x42c [<00000000002daac2>] ext4_da_writepages+0x2da/0x504 [<00000000002597e8>] writeback_single_inode+0xf8/0x268 [<0000000000259f06>] writeback_sb_inodes+0xd2/0x18c [<000000000025a700>] writeback_inodes_wb+0x80/0x168 [<000000000025aa92>] wb_writeback+0x2aa/0x324 [<000000000025abde>] wb_do_writeback+0xd2/0x274 [<000000000025ae3a>] bdi_writeback_thread+0xba/0x1c4 [<00000000001737be>] kthread+0xa6/0xb0 [<000000000056c1da>] kernel_thread_starter+0x6/0xc [<000000000056c1d4>] kernel_thread_starter+0x0/0xc INFO: lockdep is turned off. Last Breaking-Event-Address: [<0000000000316a8a>] jbd2_journal_file_inode+0x86/0x138 Reported-by: Sebastian Ott Signed-off-by: Heiko Carstens commit a1eaecbc4c8307e27772d6584ef85a2e93250661 Author: Benny Halevy Date: Thu May 19 22:14:47 2011 -0400 NFSv4.1: make deviceid cache global Move deviceid cache from the pnfs files layout driver to the generic layer in preparation for the objects layout driver. Signed-off-by: Benny Halevy commit 45df3c8b0f3a58facb125d7631890426706c0bfa Author: Benny Halevy Date: Thu May 5 08:28:46 2011 +0300 pnfs: resolve header dependency in pnfs.h Some definitions in the header file depend on nfs_fs.h so pnfs.h can't be included independently. Signed-off-by: Benny Halevy commit 67d51f65bde233b17de304baec4f7c4d086471fe Author: Benny Halevy Date: Fri May 20 10:45:05 2011 +0200 NFSv4.1: use struct nfs_client to qualify deviceid deviceids are unique per server, per layout type. Therefore, in the global cache in the files layout driver deviceids from different servers may clash so we need to qualify them with a struct nfs_client that represents the nfs server that returned the deviceid. Introduced in 2.6.39 commit ea8eecdd "NFSv4.1 move deviceid cache to filelayout driver" Signed-off-by: Benny Halevy commit 3b6445a6f68b839d1b437756b9c72312e33339b2 Author: Jim Rees Date: Tue Feb 22 19:31:57 2011 -0500 NFSv4.1: fix typo in filelayout_check_layout Signed-off-by: Jim Rees Signed-off-by: Benny Halevy commit d5b72ce15ea99a0b8f0d1973074c584daf92d70e Author: Phillip Lougher Date: Sun May 29 00:38:46 2011 +0100 Squashfs: Fix sanity check patches on big-endian systems le64 values should be swapped when accessing on big-endian systems. Signed-off-by: Phillip Lougher commit 751516f0a9bad32544f40f471037c0e45fb639c9 Merge: 6288cf1 08b53f0 Author: Len Brown Date: Sun May 29 04:40:39 2011 -0400 Merge branch 'ec-cleanup' into release Conflicts: drivers/platform/x86/compal-laptop.c commit 6288cf1e768ae73db5ddaaae54d85245cc1c2b56 Merge: 0a63e23 526b4af 932df74 534bc4e 28c2103 af986d1 b299eb5 Author: Len Brown Date: Sun May 29 04:38:48 2011 -0400 Merge branches 'acpica', 'aml-custom', 'bugzilla-16548', 'bugzilla-20242', 'd3-cold', 'ec-asus' and 'thermal-fix' into release commit 5d4c47e0195b989f284907358bd5c268a44b91c7 Author: Len Brown Date: Fri Apr 1 15:46:09 2011 -0400 x86 idle: deprecate mwait_idle() and "idle=mwait" cmdline param mwait_idle() is a C1-only idle loop intended to be more efficient than HLT on SMP hardware that supports it. But mwait_idle() has been replaced by the more general mwait_idle_with_hints(), which handles both C1 and deeper C-states. ACPI uses only mwait_idle_with_hints(), and never uses mwait_idle(). Deprecate mwait_idle() and the "idle=mwait" cmdline param to simplify the x86 idle code. After this change, kernels configured with (!CONFIG_ACPI=n && !CONFIG_INTEL_IDLE=n) when run on hardware that support MWAIT will simply use HLT. If MWAIT is desired on those systems, cpuidle and the cpuidle drivers above can be used. cc: x86@kernel.org cc: stable@kernel.org # .39.x Signed-off-by: Len Brown commit cdaab4a0d330f70c0e5ad8c3f7c65c2e375ea180 Author: Len Brown Date: Fri Apr 1 15:41:17 2011 -0400 x86 idle: deprecate "no-hlt" cmdline param We'd rather that modern machines not check if HLT works on every entry into idle, for the benefit of machines that had marginal electricals 15-years ago. If those machines are still running the upstream kernel, they can use "idle=poll". The only difference will be that they'll now invoke HLT in machine_hlt(). cc: x86@kernel.org # .39.x Signed-off-by: Len Brown commit 99c63221435963e0cee2402686ba99293c2ffa9e Author: Len Brown Date: Fri Apr 1 15:19:23 2011 -0400 x86 idle APM: deprecate CONFIG_APM_CPU_IDLE We don't want to export the pm_idle function pointer to modules. Currently CONFIG_APM_CPU_IDLE w/ CONFIG_APM_MODULE forces us to. CONFIG_APM_CPU_IDLE is of dubious value, it runs only on 32-bit uniprocessor laptops that are over 10 years old. It calls into the BIOS during idle, and is known to cause a number of machines to fail. Removing CONFIG_APM_CPU_IDLE and will allow us to stop exporting pm_idle. Any systems that were calling into the APM BIOS at run-time will simply use HLT instead. cc: x86@kernel.org cc: Jiri Kosina cc: stable@kernel.org # .39.x Signed-off-by: Len Brown commit 3b70b2e5fcf6315eb833a1bcc2b810bdc75484ff Author: Len Brown Date: Fri Apr 1 15:08:48 2011 -0400 x86 idle floppy: deprecate disable_hlt() Plan to remove floppy_disable_hlt in 2012, an ancient workaround with comments that it should be removed. This allows us to remove clutter and a run-time branch from the idle code. WARN_ONCE() on invocation until it is removed. cc: x86@kernel.org cc: stable@kernel.org # .39.x Signed-off-by: Len Brown commit 06ae40ce073daf233607a3c54a489f2c1e44683e Author: Len Brown Date: Fri Apr 1 15:28:09 2011 -0400 x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it In the long run, we don't want default_idle() or (pm_idle)() to be exported outside of process.c. Start by not exporting them to modules, unless the APM build demands it. cc: x86@kernel.org cc: Jiri Kosina Signed-off-by: Len Brown commit 02c68a02018669d1817c43c42de800975cbec467 Author: Len Brown Date: Fri Apr 1 16:59:53 2011 -0400 x86 idle: clarify AMD erratum 400 workaround The workaround for AMD erratum 400 uses the term "c1e" falsely suggesting: 1. Intel C1E is somehow involved 2. All AMD processors with C1E are involved Use the string "amd_c1e" instead of simply "c1e" to clarify that this workaround is specific to AMD's version of C1E. Use the string "e400" to clarify that the workaround is specific to AMD processors with Erratum 400. This patch is text-substitution only, with no functional change. cc: x86@kernel.org Acked-by: Borislav Petkov Signed-off-by: Len Brown commit 08b53f0e6b565fe8dc0b8f929960ed16d76291bd Author: Zhang Rui Date: Tue Apr 26 16:29:55 2011 +0800 ACPI EC: remove redundant code ec->handle is set in ec_parse_device(), so don't bother to set it again. Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 28c2103dad04dba29ba86e22dad5735db8f0e13c Author: Lin Ming Date: Wed May 4 22:56:43 2011 +0800 ACPI: Add D3 cold state _SxW returns an Integer containing the lowest D-state supported in state Sx. If OSPM has not indicated that it supports _PR3, then the value “3” corresponds to D3. If it has indicated _PR3 support, the value “3” represents D3hot and the value “4” represents D3cold. Linux does set _OSC._PR3, so we should fix it to expect that _SxW can return 4. Signed-off-by: Lin Ming Acked-by: Jesse Barnes Signed-off-by: Len Brown commit 932df7414336a00f45e5aec62724cf736b0bcfd4 Author: Lin Ming Date: Mon May 16 09:11:00 2011 +0800 ACPI: processor: fix processor_physically_present in UP kernel Usually, there are multiple processors defined in ACPI table, for example Scope (_PR) { Processor (CPU0, 0x00, 0x00000410, 0x06) {} Processor (CPU1, 0x01, 0x00000410, 0x06) {} Processor (CPU2, 0x02, 0x00000410, 0x06) {} Processor (CPU3, 0x03, 0x00000410, 0x06) {} } processor_physically_present(...) will be called to check whether those processors are physically present. Currently we have below codes in processor_physically_present, cpuid = acpi_get_cpuid(...); if ((cpuid == -1) && (num_possible_cpus() > 1)) return false; return true; In UP kernel, acpi_get_cpuid(...) always return -1 and num_possible_cpus() always return 1, so processor_physically_present(...) always returns true for all passed in processor handles. This is wrong for UP processor or SMP processor running UP kernel. This patch removes the !SMP version of acpi_get_cpuid(), so both UP and SMP kernel use the same acpi_get_cpuid function. And for UP kernel, only processor 0 is valid. https://bugzilla.kernel.org/show_bug.cgi?id=16548 https://bugzilla.kernel.org/show_bug.cgi?id=16357 Tested-by: Anton Kochkov Tested-by: Ambroz Bizjak Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 139f37f5e14cd883eee2a8a36289f544b5390a44 Merge: 5be7ef0 c320afe Author: Linus Torvalds Date: Sat May 28 23:12:28 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: Blackfin: debug-mmrs: include RSI_PID[4567] MMRs Blackfin: bf51x: fix up RSI_PID# MMR defines Blackfin: bf52x/bf54x: fix up usb MMR defines Blackfin: debug-mmrs: fix typos with gptimers/mdma/ppi Blackfin: gptimers: add structure for hardware register layout Blackfin: wire up new sendmmsg syscall Blackfin: mach/bfin_serial_5xx.h: punt now-unused header Blackfin: bfin_serial.h: turn default port wrappers into stubs commit 5be7ef002469eaf757065ee16b4100c6d3ead1cc Author: Randy Dunlap Date: Sat May 28 17:26:40 2011 -0700 scsi: fix scsi_proc new kernel-doc warning Fix kernel-doc warnings in scsi_proc.c: Warning(drivers/scsi/scsi_proc.c:390): No description found for parameter 'dev' Warning(drivers/scsi/scsi_proc.c:390): No description found for parameter 'data' Warning(drivers/scsi/scsi_proc.c:390): Excess function parameter 's' description in 'always_match' Warning(drivers/scsi/scsi_proc.c:390): Excess function parameter 'p' description in 'always_match' Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 526b4af47f44148c9d665e57723ed9f86634c6e3 Author: Thomas Renninger Date: Thu May 26 12:26:24 2011 +0200 ACPI: Split out custom_method functionality into an own driver With /sys/kernel/debug/acpi/custom_method root can write to arbitrary memory and increase his priveleges, even if these are restricted. -> Make this an own debug .config option and warn about the security issue in the config description. -> Still keep acpi/debugfs.c which now only creates an empty /sys/kernel/debug/acpi directory. There might be other users of it later. Signed-off-by: Thomas Renninger Acked-by: Rafael J. Wysocki Acked-by: rui.zhang@intel.com Signed-off-by: Len Brown commit aecad432fd68dafa5b3b497c4816fbfce6fd4066 Author: Thomas Renninger Date: Thu May 26 12:26:23 2011 +0200 ACPI: Cleanup custom_method debug stuff - Move param aml_debug_output to other params into sysfs.c - Split acpi_debugfs_init to prepare custom_method to be an own .config option and driver. Signed-off-by: Thomas Renninger Acked-by: Rafael J. Wysocki Acked-by: rui.zhang@intel.com Signed-off-by: Len Brown commit 534bc4e3d27096e2f3fc00c14a20efd597837a4f Author: Zhang Rui Date: Tue Apr 26 16:30:02 2011 +0800 ACPI EC: enable MSI workaround for Quanta laptops Enable MSI workaround for Quanta laptops. https://bugzilla.kernel.org/show_bug.cgi?id=20242 Tested-by: Jan-Matthias Braun Signed-off-by: Zhang Rui Signed-off-by: Len Brown commit 333c5ae9948194428fe6c5ef5c088304fc98263b Author: Tim Chen Date: Fri Feb 11 12:49:04 2011 -0800 idle governor: Avoid lock acquisition to read pm_qos before entering idle Thanks to the reviews and comments by Rafael, James, Mark and Andi. Here's version 2 of the patch incorporating your comments and also some update to my previous patch comments. I noticed that before entering idle state, the menu idle governor will look up the current pm_qos target value according to the list of qos requests received. This look up currently needs the acquisition of a lock to access the list of qos requests to find the qos target value, slowing down the entrance into idle state due to contention by multiple cpus to access this list. The contention is severe when there are a lot of cpus waking and going into idle. For example, for a simple workload that has 32 pair of processes ping ponging messages to each other, where 64 cpu cores are active in test system, I see the following profile with 37.82% of cpu cycles spent in contention of pm_qos_lock: - 37.82% swapper [kernel.kallsyms] [k] _raw_spin_lock_irqsave - _raw_spin_lock_irqsave - 95.65% pm_qos_request menu_select cpuidle_idle_call - cpu_idle 99.98% start_secondary A better approach will be to cache the updated pm_qos target value so reading it does not require lock acquisition as in the patch below. With this patch the contention for pm_qos_lock is removed and I saw a 2.2X increase in throughput for my message passing workload. cc: stable@kernel.org Signed-off-by: Tim Chen Acked-by: Andi Kleen Acked-by: James Bottomley Acked-by: mark gross Signed-off-by: Len Brown commit 7467571f4480b273007517b26297c07154c73924 Author: Tero Kristo Date: Thu Feb 24 17:19:23 2011 +0200 cpuidle: menu: fixed wrapping timers at 4.294 seconds Cpuidle menu governor is using u32 as a temporary datatype for storing nanosecond values which wrap around at 4.294 seconds. This causes errors in predicted sleep times resulting in higher than should be C state selection and increased power consumption. This also breaks cpuidle state residency statistics. cc: stable@kernel.org # .32.x through .39.x Signed-off-by: Tero Kristo Signed-off-by: Len Brown commit eee0f252c6537da2e883f75d22cff1427515eaf3 Author: Hugh Dickins Date: Sat May 28 13:20:21 2011 -0700 mm: fix page_lock_anon_vma leaving mutex locked On one machine I've been getting hangs, a page fault's anon_vma_prepare() waiting in anon_vma_lock(), other processes waiting for that page's lock. This is a replay of last year's f18194275c39 "mm: fix hang on anon_vma->root->lock". The new page_lock_anon_vma() places too much faith in its refcount: when it has acquired the mutex_trylock(), it's possible that a racing task in anon_vma_alloc() has just reallocated the struct anon_vma, set refcount to 1, and is about to reset its anon_vma->root. Fix this by saving anon_vma->root, and relying on the usual page_mapped() check instead of a refcount check: if page is still mapped, the anon_vma is still ours; if page is not still mapped, we're no longer interested. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit 5dbe0af47f8a8f968bac2991c3ec974c6e3eaabc Author: Hugh Dickins Date: Sat May 28 13:17:04 2011 -0700 mm: fix kernel BUG at mm/rmap.c:1017! I've hit the "address >= vma->vm_end" check in do_page_add_anon_rmap() just once. The stack showed khugepaged allocation trying to compact pages: the call to page_add_anon_rmap() coming from remove_migration_pte(). That path holds anon_vma lock, but does not hold mmap_sem: it can therefore race with a split_vma(), and in commit 5f70b962ccc2 "mmap: avoid unnecessary anon_vma lock" we just took away the anon_vma lock protection when adjusting vma->vm_end. I don't think that particular BUG_ON ever caught anything interesting, so better replace it by a comment, than reinstate the anon_vma locking. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit 826267cf1e6c6899eda1325a19f1b1d15c558b20 Author: Hugh Dickins Date: Sat May 28 13:14:09 2011 -0700 tmpfs: fix race between truncate and writepage While running fsx on tmpfs with a memhog then swapoff, swapoff was hanging (interruptibly), repeatedly failing to locate the owner of a 0xff entry in the swap_map. Although shmem_writepage() does abandon when it sees incoming page index is beyond eof, there was still a window in which shmem_truncate_range() could come in between writepage's dropping lock and updating swap_map, find the half-completed swap_map entry, and in trying to free it, leave it in a state that swap_shmem_alloc() could not correct. Arguably a bug in __swap_duplicate()'s and swap_entry_free()'s handling of the different cases, but easiest to fix by moving swap_shmem_alloc() under cover of the lock. More interesting than the bug: it's been there since 2.6.33, why could I not see it with earlier kernels? The mmotm of two weeks ago seems to have some magic for generating races, this is just one of three I found. With yesterday's git I first saw this in mainline, bisected in search of that magic, but the easy reproducibility evaporated. Oh well, fix the bug. Signed-off-by: Hugh Dickins Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit c320afe965bf3f857249d223801d8f2fc95615c2 Author: Mike Frysinger Date: Thu May 26 18:07:11 2011 -0400 Blackfin: debug-mmrs: include RSI_PID[4567] MMRs The documentation is a little iffy as to whether these are actual MMRs, but reading them on the hardware works, and the previous version of this logic (the SDH) had PID[4567]. So add it for RSI too. Signed-off-by: Mike Frysinger commit fcb243918f9e8414bf5ad6fb0361447ac3d3fddb Author: Mike Frysinger Date: Thu May 26 18:05:15 2011 -0400 Blackfin: bf51x: fix up RSI_PID# MMR defines Looks like the copying of MMR defines from the SDH block missed updating the addresses of the RSI_PID# registers. So tweak them to reflect the actual hardware. Signed-off-by: Mike Frysinger commit 61aa818f7bfdb5dd0aef4687513566c75c0e4c21 Author: Mike Frysinger Date: Thu May 26 17:39:17 2011 -0400 Blackfin: bf52x/bf54x: fix up usb MMR defines The bf52x/bf54x have the incorrect addresses for USB_EP_NI7_RXINTERVAL and USB_EP_NI7_TXCOUNT, so adjust those. Further, the bf54x header puts the USB defines in the wrong place, so shuffle them back to the right grouping. Signed-off-by: Mike Frysinger commit d09fb602030e3247c21452ee2b3229baf115f71f Author: Mike Frysinger Date: Thu May 26 17:27:36 2011 -0400 Blackfin: debug-mmrs: fix typos with gptimers/mdma/ppi This code was mostly developed against a BF54x, so some BF537-specific issues were missed. The PPI block starts at PPI_CONTROL, not PPI_STATUS (which is the reverse of the EPPI block). The MDMA block starts at MDMA_NEXT_DESC_PTR, not MDMA_CONFIG. Seems the sim does not catch misreads here so that'll need to get fixed. The gptimer block is mostly 32bit regs, not 16bit. Use the gptimer struct to figure that out rather than hardcoding it locally. Signed-off-by: Mike Frysinger commit a4ffd956924e265865a4425bd888927059fd46a9 Author: Mike Frysinger Date: Thu May 26 17:26:58 2011 -0400 Blackfin: gptimers: add structure for hardware register layout Signed-off-by: Mike Frysinger commit 427472c967977256db42ffbf16f65f2770278b7f Author: Mike Frysinger Date: Mon May 23 21:45:42 2011 -0400 Blackfin: wire up new sendmmsg syscall Signed-off-by: Mike Frysinger commit 63917efc4feb856e134eedc9ad7a9810fec12968 Author: Mike Frysinger Date: Mon Sep 28 03:16:01 2009 +0000 Blackfin: mach/bfin_serial_5xx.h: punt now-unused header Now that the serial code has been unified in bfin_serial.h, and the Blackfin UART driver pushed its resources to the boards files, we don't need these headers anymore. Signed-off-by: Mike Frysinger commit 091c75985e2f3d1b60eb25d577f04923c1b8e022 Author: Mike Frysinger Date: Wed Oct 27 03:41:03 2010 -0400 Blackfin: bfin_serial.h: turn default port wrappers into stubs Any consumer that needs to access the MMRs has to provide these helpers, so make the default into useless stubs. Signed-off-by: Mike Frysinger commit 36947a76826111e661a26cb0f668a5be6cc3ddb4 Merge: a947e23 69b4573 Author: Linus Torvalds Date: Sat May 28 13:03:41 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (36 commits) Cache xattr security drop check for write v2 fs: block_page_mkwrite should wait for writeback to finish mm: Wait for writeback when grabbing pages to begin a write configfs: remove unnecessary dentry_unhash on rmdir, dir rename fat: remove unnecessary dentry_unhash on rmdir, dir rename hpfs: remove unnecessary dentry_unhash on rmdir, dir rename minix: remove unnecessary dentry_unhash on rmdir, dir rename fuse: remove unnecessary dentry_unhash on rmdir, dir rename coda: remove unnecessary dentry_unhash on rmdir, dir rename afs: remove unnecessary dentry_unhash on rmdir, dir rename affs: remove unnecessary dentry_unhash on rmdir, dir rename 9p: remove unnecessary dentry_unhash on rmdir, dir rename ncpfs: fix rename over directory with dangling references ncpfs: document dentry_unhash usage ecryptfs: remove unnecessary dentry_unhash on rmdir, dir rename hostfs: remove unnecessary dentry_unhash on rmdir, dir rename hfsplus: remove unnecessary dentry_unhash on rmdir, dir rename hfs: remove unnecessary dentry_unhash on rmdir, dir rename omfs: remove unnecessary dentry_unhash on rmdir, dir rneame udf: remove unnecessary dentry_unhash from rmdir, dir rename ... commit a947e23a8ec04bccbfe98c5a2d64cd1f88b612d5 Merge: 08a8b79 9a3865b Author: Linus Torvalds Date: Sat May 28 12:57:01 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, asm: Clean up desc.h a bit x86, amd: Do not enable ARAT feature on AMD processors below family 0x12 x86: Move do_page_fault()'s error path under unlikely() x86, efi: Retain boot service code until after switching to virtual mode x86: Remove unnecessary check in detect_ht() x86: Reorder mm_context_t to remove x86_64 alignment padding and thus shrink mm_struct x86, UV: Clean up uv_tlb.c x86, UV: Add support for SGI UV2 hub chip x86, cpufeature: Update CPU feature RDRND to RDRAND commit 08a8b79600101fd6e13dcf05409b330e7f5b0478 Merge: 1ba4b8c 1e1b6c5 Author: Linus Torvalds Date: Sat May 28 12:56:46 2011 -0700 Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: cpuset: Fix cpuset_cpus_allowed_fallback(), don't update tsk->rt.nr_cpus_allowed sched: Fix ->min_vruntime calculation in dequeue_entity() sched: Fix ttwu() for __ARCH_WANT_INTERRUPTS_ON_CTXSW sched: More sched_domain iterations fixes commit 1ba4b8cb94e59b17fd0142a509eb583695c36db6 Merge: c4a227d cc3ce51 Author: Linus Torvalds Date: Sat May 28 12:56:32 2011 -0700 Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: rcu: Start RCU kthreads in TASK_INTERRUPTIBLE state rcu: Remove waitqueue usage for cpu, node, and boost kthreads rcu: Avoid acquiring rcu_node locks in timer functions atomic: Add atomic_or() Documentation: Add statistics about nested locks rcu: Decrease memory-barrier usage based on semi-formal proof rcu: Make rcu_enter_nohz() pay attention to nesting rcu: Don't do reschedule unless in irq rcu: Remove old memory barriers from rcu_process_callbacks() rcu: Add memory barriers rcu: Fix unpaired rcu_irq_enter() from locking selftests commit c4a227d89f758e582fd167bb15245f2704de99ef Merge: 87367a0 f506b3d Author: Linus Torvalds Date: Sat May 28 12:55:55 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (25 commits) perf: Fix SIGIO handling perf top: Don't stop if no kernel symtab is found perf top: Handle kptr_restrict perf top: Remove unused macro perf events: initialize fd array to -1 instead of 0 perf tools: Make sure kptr_restrict warnings fit 80 col terms perf tools: Fix build on older systems perf symbols: Handle /proc/sys/kernel/kptr_restrict perf: Remove duplicate headers ftrace: Add internal recursive checks tracing: Update btrfs's tracepoints to use u64 interface tracing: Add __print_symbolic_u64 to avoid warnings on 32bit machine ftrace: Set ops->flag to enabled even on static function tracing tracing: Have event with function tracer check error return ftrace: Have ftrace_startup() return failure code jump_label: Check entries limit in __jump_label_update ftrace/recordmcount: Avoid STT_FUNC symbols as base on ARM scripts/tags.sh: Add magic for trace-events for etags too scripts/tags.sh: Fix ctags for DEFINE_EVENT() x86/ftrace: Fix compiler warning in ftrace.c ... commit 87367a0b71a5188e34a913c05673b5078f71a64d Merge: 4cb865d 2cf95c1 Author: Linus Torvalds Date: Sat May 28 12:36:15 2011 -0700 Merge branch 'for-usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci * 'for-usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: Intel xhci: Limit number of active endpoints to 64. Intel xhci: Ignore spurious successful event. Intel xhci: Support EHCI/xHCI port switching. Intel xhci: Add PCI id for Panther Point xHCI host. xhci: STFU: Be quieter during URB submission and completion. xhci: STFU: Don't print event ring dequeue pointer. xhci: STFU: Remove function tracing. xhci: Don't submit commands when the host is dead. xhci: Clear stopped_td when Stop Endpoint command completes. commit 4cb865deec59ef31d966622d1ec87411ae32dfab Merge: 55f08e1 19d78a6 Author: Linus Torvalds Date: Sat May 28 12:35:15 2011 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (33 commits) x86: poll waiting for I/OAT DMA channel status maintainers: add dma engine tree details dmaengine: add TODO items for future work on dma drivers dmaengine: Add API documentation for slave dma usage dmaengine/dw_dmac: Update maintainer-ship dmaengine: move link order dmaengine/dw_dmac: implement pause and resume in dwc_control dmaengine/dw_dmac: Replace spin_lock* with irqsave variants and enable submission from callback dmaengine/dw_dmac: Divide one sg to many desc, if sg len is greater than DWC_MAX_COUNT dmaengine/dw_dmac: set residue as total len in dwc_tx_status if status is !DMA_SUCCESS dmaengine/dw_dmac: don't call callback routine in case dmaengine_terminate_all() is called dmaengine: at_hdmac: pause: no need to wait for FIFO empty pch_dma: modify pci device table definition pch_dma: Support new device ML7223 IOH pch_dma: Support I2S for ML7213 IOH pch_dma: Fix DMA setting issue pch_dma: modify for checkpatch pch_dma: fix dma direction issue for ML7213 IOH video-in dmaengine: at_hdmac: use descriptor chaining help function dmaengine: at_hdmac: implement pause and resume in atc_control ... Fix up trivial conflict in drivers/dma/dw_dmac.c commit 55f08e1baa3ef11c952b626dbc7ef9e3e8332a63 Merge: d02bf06 66c500f Author: Linus Torvalds Date: Sat May 28 12:33:51 2011 -0700 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: mfd: Fix build breakage caused by tps65910 gpio directory move mfd: Use mfd cell platform_data for db8500-prcmu cells platform bits commit d02bf062fbb5e714d84ecefd05106062b9a45159 Merge: 04830fc 9c3e737 Author: Linus Torvalds Date: Sat May 28 10:57:39 2011 -0700 Merge branch 'spi/next' of git://git.secretlab.ca/git/linux-2.6 * 'spi/next' of git://git.secretlab.ca/git/linux-2.6: spi/spi_bfin_sport: new driver for a SPI bus via the Blackfin SPORT peripheral spi/tle620x: add missing device_remove_file() commit 04830fccdcafa7e0ea913990ae56437253553fef Merge: 571503e 1486a74 Author: Linus Torvalds Date: Sat May 28 10:56:34 2011 -0700 Merge branch 'gpio/next' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6: gpio/pch_gpio: Support new device ML7223 gpio: make gpio_{request,free}_array gpio array parameter const GPIO: OMAP: move to drivers/gpio GPIO: OMAP: move register offset defines into gpio: Convert gpio_is_valid to return bool gpio: Move the s5pc100 GPIO to drivers/gpio gpio: Move the s5pv210 GPIO to drivers/gpio gpio: Move the exynos4 GPIO to drivers/gpio gpio: Move to Samsung common GPIO library to drivers/gpio gpio/nomadik: add function to read GPIO pull down status gpio/nomadik: show all pins in debug gpio: move Nomadik GPIO driver to drivers/gpio gpio: move U300 GPIO driver to drivers/gpio langwell_gpio: add runtime pm support gpio/pca953x: Add support for pca9574 and pca9575 devices gpio/cs5535: Show explicit dependency between gpio_cs5535 and mfd_cs5535 commit 571503e10045c89af951962ea0bb783482663aad Merge: 29a6ccc 7b21fdd Author: Linus Torvalds Date: Sat May 28 10:51:01 2011 -0700 Merge branch 'setns' * setns: ns: Wire up the setns system call Done as a merge to make it easier to fix up conflicts in arm due to addition of sendmmsg system call commit 7b21fddd087678a70ad64afc0f632e0f1071b092 Author: Eric W. Biederman Date: Fri May 27 19:28:27 2011 -0700 ns: Wire up the setns system call 32bit and 64bit on x86 are tested and working. The rest I have looked at closely and I can't find any problems. setns is an easy system call to wire up. It just takes two ints so I don't expect any weird architecture porting problems. While doing this I have noticed that we have some architectures that are very slow to get new system calls. cris seems to be the slowest where the last system calls wired up were preadv and pwritev. avr32 is weird in that recvmmsg was wired up but never declared in unistd.h. frv is behind with perf_event_open being the last syscall wired up. On h8300 the last system call wired up was epoll_wait. On m32r the last system call wired up was fallocate. mn10300 has recvmmsg as the last system call wired up. The rest seem to at least have syncfs wired up which was new in the 2.6.39. v2: Most of the architecture support added by Daniel Lezcano v3: ported to v2.6.36-rc4 by: Eric W. Biederman v4: Moved wiring up of the system call to another patch v5: ported to v2.6.39-rc6 v6: rebased onto parisc-next and net-next to avoid syscall conflicts. v7: ported to Linus's latest post 2.6.39 tree. >  arch/blackfin/include/asm/unistd.h     |    3 ++- >  arch/blackfin/mach-common/entry.S      |    1 + Acked-by: Mike Frysinger Oh - ia64 wiring looks good. Acked-by: Tony Luck Signed-off-by: Eric W. Biederman Signed-off-by: Linus Torvalds commit 69b4573296469fd3f70cf7044693074980517067 Author: Andi Kleen Date: Sat May 28 08:25:51 2011 -0700 Cache xattr security drop check for write v2 Some recent benchmarking on btrfs showed that a major scaling bottleneck on large systems on btrfs is currently the xattr lookup on every write. Why xattr lookup on every write I hear you ask? write wants to drop suid and security related xattrs that could set o capabilities for executables. To do that it currently looks up security.capability on EVERY write (even for non executables) to decide whether to drop it or not. In btrfs this causes an additional tree walk, hitting some per file system locks and quite bad scalability. In a simple read workload on a 8S system I saw over 90% CPU time in spinlocks related to that. Chris Mason tells me this is also a problem in ext4, where it hits the global mbcache lock. This patch adds a simple per inode to avoid this problem. We only do the lookup once per file and then if there is no xattr cache the decision. All xattr changes clear the flag. I also used the same flag to avoid the suid check, although that one is pretty cheap. A file system can also set this flag when it creates the inode, if it has a cheap way to do so. This is done for some common file systems in followon patches. With this patch a major part of the lock contention disappears for btrfs. Some testing on smaller systems didn't show significant performance changes, but at least it helps the larger systems and is generally more efficient. v2: Rename is_sgid. add file system helper. Cc: chris.mason@oracle.com Cc: josef@redhat.com Cc: viro@zeniv.linux.org.uk Cc: agruen@linbit.com Cc: Serge E. Hallyn Signed-off-by: Andi Kleen Signed-off-by: Al Viro commit cc3ce5176d83cd8ae1134f86e208ea758d6cb78e Author: Paul E. McKenney Date: Wed May 25 13:42:06 2011 -0700 rcu: Start RCU kthreads in TASK_INTERRUPTIBLE state Upon creation, kthreads are in TASK_UNINTERRUPTIBLE state, which can result in softlockup warnings. Because some of RCU's kthreads can legitimately be idle indefinitely, start them in TASK_INTERRUPTIBLE state in order to avoid those warnings. Suggested-by: Peter Zijlstra Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Tested-by: Yinghai Lu Signed-off-by: Ingo Molnar commit 08bca60a6912ad225254250c0a9c3a05b4152cfa Author: Peter Zijlstra Date: Fri May 20 16:06:29 2011 -0700 rcu: Remove waitqueue usage for cpu, node, and boost kthreads It is not necessary to use waitqueues for the RCU kthreads because we always know exactly which thread is to be awakened. In addition, wake_up() only issues an actual wakeup when there is a thread waiting on the queue, which was why there was an extra explicit wake_up_process() to get the RCU kthreads started. Eliminating the waitqueues (and wake_up()) in favor of wake_up_process() eliminates the need for the initial wake_up_process() and also shrinks the data structure size a bit. The wakeup logic is placed in a new rcu_wait() macro. Signed-off-by: Peter Zijlstra Signed-off-by: Paul E. McKenney Signed-off-by: Ingo Molnar commit 8826f3b0397562eee6f8785d548be9dfdb169100 Author: Paul E. McKenney Date: Wed May 11 05:41:41 2011 -0700 rcu: Avoid acquiring rcu_node locks in timer functions This commit switches manipulations of the rcu_node ->wakemask field to atomic operations, which allows rcu_cpu_kthread_timer() to avoid acquiring the rcu_node lock. This should avoid the following lockdep splat reported by Valdis Kletnieks: [ 12.872150] usb 1-4: new high speed USB device number 3 using ehci_hcd [ 12.986667] usb 1-4: New USB device found, idVendor=413c, idProduct=2513 [ 12.986679] usb 1-4: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 12.987691] hub 1-4:1.0: USB hub found [ 12.987877] hub 1-4:1.0: 3 ports detected [ 12.996372] input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input10 [ 13.071471] udevadm used greatest stack depth: 3984 bytes left [ 13.172129] [ 13.172130] ======================================================= [ 13.172425] [ INFO: possible circular locking dependency detected ] [ 13.172650] 2.6.39-rc6-mmotm0506 #1 [ 13.172773] ------------------------------------------------------- [ 13.172997] blkid/267 is trying to acquire lock: [ 13.173009] (&p->pi_lock){-.-.-.}, at: [] try_to_wake_up+0x29/0x1aa [ 13.173009] [ 13.173009] but task is already holding lock: [ 13.173009] (rcu_node_level_0){..-...}, at: [] rcu_cpu_kthread_timer+0x27/0x58 [ 13.173009] [ 13.173009] which lock already depends on the new lock. [ 13.173009] [ 13.173009] [ 13.173009] the existing dependency chain (in reverse order) is: [ 13.173009] [ 13.173009] -> #2 (rcu_node_level_0){..-...}: [ 13.173009] [] check_prevs_add+0x8b/0x104 [ 13.173009] [] validate_chain+0x36f/0x3ab [ 13.173009] [] __lock_acquire+0x369/0x3e2 [ 13.173009] [] lock_acquire+0xfc/0x14c [ 13.173009] [] _raw_spin_lock+0x36/0x45 [ 13.173009] [] rcu_read_unlock_special+0x8c/0x1d5 [ 13.173009] [] __rcu_read_unlock+0x4f/0xd7 [ 13.173009] [] rcu_read_unlock+0x21/0x23 [ 13.173009] [] cpuacct_charge+0x6c/0x75 [ 13.173009] [] update_curr+0x101/0x12e [ 13.173009] [] check_preempt_wakeup+0xf7/0x23b [ 13.173009] [] check_preempt_curr+0x2b/0x68 [ 13.173009] [] ttwu_do_wakeup+0x76/0x128 [ 13.173009] [] ttwu_do_activate.constprop.63+0x57/0x5c [ 13.173009] [] scheduler_ipi+0x48/0x5d [ 13.173009] [] smp_reschedule_interrupt+0x16/0x18 [ 13.173009] [] reschedule_interrupt+0x13/0x20 [ 13.173009] [] rcu_read_unlock+0x21/0x23 [ 13.173009] [] find_get_page+0xa9/0xb9 [ 13.173009] [] filemap_fault+0x6a/0x34d [ 13.173009] [] __do_fault+0x54/0x3e6 [ 13.173009] [] handle_pte_fault+0x12c/0x1ed [ 13.173009] [] handle_mm_fault+0x1cd/0x1e0 [ 13.173009] [] do_page_fault+0x42d/0x5de [ 13.173009] [] page_fault+0x1f/0x30 [ 13.173009] [ 13.173009] -> #1 (&rq->lock){-.-.-.}: [ 13.173009] [] check_prevs_add+0x8b/0x104 [ 13.173009] [] validate_chain+0x36f/0x3ab [ 13.173009] [] __lock_acquire+0x369/0x3e2 [ 13.173009] [] lock_acquire+0xfc/0x14c [ 13.173009] [] _raw_spin_lock+0x36/0x45 [ 13.173009] [] __task_rq_lock+0x8b/0xd3 [ 13.173009] [] wake_up_new_task+0x41/0x108 [ 13.173009] [] do_fork+0x265/0x33f [ 13.173009] [] kernel_thread+0x6b/0x6d [ 13.173009] [] rest_init+0x21/0xd2 [ 13.173009] [] start_kernel+0x3bb/0x3c6 [ 13.173009] [] x86_64_start_reservations+0xaf/0xb3 [ 13.173009] [] x86_64_start_kernel+0xf0/0xf7 [ 13.173009] [ 13.173009] -> #0 (&p->pi_lock){-.-.-.}: [ 13.173009] [] check_prev_add+0x68/0x20e [ 13.173009] [] check_prevs_add+0x8b/0x104 [ 13.173009] [] validate_chain+0x36f/0x3ab [ 13.173009] [] __lock_acquire+0x369/0x3e2 [ 13.173009] [] lock_acquire+0xfc/0x14c [ 13.173009] [] _raw_spin_lock_irqsave+0x44/0x57 [ 13.173009] [] try_to_wake_up+0x29/0x1aa [ 13.173009] [] wake_up_process+0x10/0x12 [ 13.173009] [] rcu_cpu_kthread_timer+0x44/0x58 [ 13.173009] [] call_timer_fn+0xac/0x1e9 [ 13.173009] [] run_timer_softirq+0x1aa/0x1f2 [ 13.173009] [] __do_softirq+0x109/0x26a [ 13.173009] [] call_softirq+0x1c/0x30 [ 13.173009] [] do_softirq+0x44/0xf1 [ 13.173009] [] irq_exit+0x58/0xc8 [ 13.173009] [] smp_apic_timer_interrupt+0x79/0x87 [ 13.173009] [] apic_timer_interrupt+0x13/0x20 [ 13.173009] [] get_page_from_freelist+0x2aa/0x310 [ 13.173009] [] __alloc_pages_nodemask+0x178/0x243 [ 13.173009] [] pte_alloc_one+0x1e/0x3a [ 13.173009] [] __pte_alloc+0x22/0x14b [ 13.173009] [] handle_mm_fault+0x17e/0x1e0 [ 13.173009] [] do_page_fault+0x42d/0x5de [ 13.173009] [] page_fault+0x1f/0x30 [ 13.173009] [ 13.173009] other info that might help us debug this: [ 13.173009] [ 13.173009] Chain exists of: [ 13.173009] &p->pi_lock --> &rq->lock --> rcu_node_level_0 [ 13.173009] [ 13.173009] Possible unsafe locking scenario: [ 13.173009] [ 13.173009] CPU0 CPU1 [ 13.173009] ---- ---- [ 13.173009] lock(rcu_node_level_0); [ 13.173009] lock(&rq->lock); [ 13.173009] lock(rcu_node_level_0); [ 13.173009] lock(&p->pi_lock); [ 13.173009] [ 13.173009] *** DEADLOCK *** [ 13.173009] [ 13.173009] 3 locks held by blkid/267: [ 13.173009] #0: (&mm->mmap_sem){++++++}, at: [] do_page_fault+0x1f3/0x5de [ 13.173009] #1: (&yield_timer){+.-...}, at: [] call_timer_fn+0x0/0x1e9 [ 13.173009] #2: (rcu_node_level_0){..-...}, at: [] rcu_cpu_kthread_timer+0x27/0x58 [ 13.173009] [ 13.173009] stack backtrace: [ 13.173009] Pid: 267, comm: blkid Not tainted 2.6.39-rc6-mmotm0506 #1 [ 13.173009] Call Trace: [ 13.173009] [] print_circular_bug+0xc8/0xd9 [ 13.173009] [] check_prev_add+0x68/0x20e [ 13.173009] [] ? save_stack_trace+0x28/0x46 [ 13.173009] [] check_prevs_add+0x8b/0x104 [ 13.173009] [] validate_chain+0x36f/0x3ab [ 13.173009] [] __lock_acquire+0x369/0x3e2 [ 13.173009] [] ? try_to_wake_up+0x29/0x1aa [ 13.173009] [] lock_acquire+0xfc/0x14c [ 13.173009] [] ? try_to_wake_up+0x29/0x1aa [ 13.173009] [] ? rcu_check_quiescent_state+0x82/0x82 [ 13.173009] [] _raw_spin_lock_irqsave+0x44/0x57 [ 13.173009] [] ? try_to_wake_up+0x29/0x1aa [ 13.173009] [] try_to_wake_up+0x29/0x1aa [ 13.173009] [] ? rcu_check_quiescent_state+0x82/0x82 [ 13.173009] [] wake_up_process+0x10/0x12 [ 13.173009] [] rcu_cpu_kthread_timer+0x44/0x58 [ 13.173009] [] ? rcu_check_quiescent_state+0x82/0x82 [ 13.173009] [] call_timer_fn+0xac/0x1e9 [ 13.173009] [] ? del_timer+0x75/0x75 [ 13.173009] [] ? rcu_check_quiescent_state+0x82/0x82 [ 13.173009] [] run_timer_softirq+0x1aa/0x1f2 [ 13.173009] [] __do_softirq+0x109/0x26a [ 13.173009] [] ? tick_dev_program_event+0x37/0xf6 [ 13.173009] [] ? time_hardirqs_off+0x1b/0x2f [ 13.173009] [] call_softirq+0x1c/0x30 [ 13.173009] [] do_softirq+0x44/0xf1 [ 13.173009] [] irq_exit+0x58/0xc8 [ 13.173009] [] smp_apic_timer_interrupt+0x79/0x87 [ 13.173009] [] apic_timer_interrupt+0x13/0x20 [ 13.173009] [] ? get_page_from_freelist+0x114/0x310 [ 13.173009] [] ? get_page_from_freelist+0x2aa/0x310 [ 13.173009] [] ? clear_page_c+0x7/0x10 [ 13.173009] [] ? prep_new_page+0x14c/0x1cd [ 13.173009] [] get_page_from_freelist+0x2aa/0x310 [ 13.173009] [] __alloc_pages_nodemask+0x178/0x243 [ 13.173009] [] ? __pmd_alloc+0x87/0x99 [ 13.173009] [] pte_alloc_one+0x1e/0x3a [ 13.173009] [] ? __pmd_alloc+0x87/0x99 [ 13.173009] [] __pte_alloc+0x22/0x14b [ 13.173009] [] handle_mm_fault+0x17e/0x1e0 [ 13.173009] [] do_page_fault+0x42d/0x5de [ 13.173009] [] ? sys_brk+0x32/0x10c [ 13.173009] [] ? time_hardirqs_off+0x1b/0x2f [ 13.173009] [] ? trace_hardirqs_off_caller+0x3f/0x9c [ 13.173009] [] ? trace_hardirqs_off_thunk+0x3a/0x3c [ 13.173009] [] page_fault+0x1f/0x30 [ 14.010075] usb 5-1: new full speed USB device number 2 using uhci_hcd Reported-by: Valdis Kletnieks Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Signed-off-by: Ingo Molnar commit 55c2945aa9d4d907ec5ca4f6a4e30ae908d8d30d Author: Paul E. McKenney Date: Wed May 11 05:33:33 2011 -0700 atomic: Add atomic_or() An atomic_or() function is needed by TREE_RCU to avoid deadlock, so add a generic version. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Signed-off-by: Ingo Molnar commit 29f742f88a32c9ab8cf6d9ba69e1ea918be5aa58 Merge: f62508f 23b5c8f Author: Ingo Molnar Date: Fri May 27 12:38:52 2011 +0200 Merge branch 'rcu/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/urgent commit f506b3dc0ec454a16d40cab9ee5d75435b39dc50 Author: Peter Zijlstra Date: Thu May 26 17:02:53 2011 +0200 perf: Fix SIGIO handling Vince noticed that unless we mmap() a buffer, SIGIO gets lost. So explicitly push the wakeup (including signals) when requested. Reported-by: Vince Weaver Signed-off-by: Peter Zijlstra Cc: Link: http://lkml.kernel.org/n/tip-2euus3f3x3dyvdk52cjxw8zu@git.kernel.org Signed-off-by: Ingo Molnar commit f62508f68d04adefc4cf9b0177ba02c8818b3eec Author: Juri Lelli Date: Thu May 19 12:53:53 2011 +0200 Documentation: Add statistics about nested locks Explain what the trailing "/1" on some lock class names of lock_stat output means. Reviewed-by: Yong Zhang Signed-off-by: Juri Lelli Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/4DD4F6C1.5090701@gmail.com Signed-off-by: Ingo Molnar commit 1e1b6c511d1b23cb7c3b619d82fc7bd9f620565d Author: KOSAKI Motohiro Date: Thu May 19 15:08:58 2011 +0900 cpuset: Fix cpuset_cpus_allowed_fallback(), don't update tsk->rt.nr_cpus_allowed The rule is, we have to update tsk->rt.nr_cpus_allowed if we change tsk->cpus_allowed. Otherwise RT scheduler may confuse. Signed-off-by: KOSAKI Motohiro Cc: Oleg Nesterov Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/4DD4B3FA.5060901@jp.fujitsu.com Signed-off-by: Ingo Molnar commit 1e876231785d82443a5ac8b6c660e9f51bc5dede Author: Peter Zijlstra Date: Tue May 17 16:21:10 2011 -0700 sched: Fix ->min_vruntime calculation in dequeue_entity() Dima Zavin reported: "After pulling the thread off the run-queue during a cgroup change, the cfs_rq.min_vruntime gets recalculated. The dequeued thread's vruntime then gets normalized to this new value. This can then lead to the thread getting an unfair boost in the new group if the vruntime of the next task in the old run-queue was way further ahead." Reported-by: Dima Zavin Signed-off-by: John Stultz Recalls-having-tested-once-upon-a-time-by: Mike Galbraith Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1305674470-23727-1-git-send-email-john.stultz@linaro.org Signed-off-by: Ingo Molnar commit d6aa8f85f16379d42c147b22b59e33b67f9ff466 Author: Peter Zijlstra Date: Thu May 26 14:21:33 2011 +0200 sched: Fix ttwu() for __ARCH_WANT_INTERRUPTS_ON_CTXSW Marc reported that e4a52bcb9 (sched: Remove rq->lock from the first half of ttwu()) broke his ARM-SMP machine. Now ARM is one of the few __ARCH_WANT_INTERRUPTS_ON_CTXSW users, so that exception in the ttwu() code was suspect. Yong found that the interrupt could hit after context_switch() changes current but before it clears p->on_cpu, if that interrupt were to attempt a wake-up of p we would indeed find ourselves spinning in IRQ context. Fix this by reverting to the old behaviour for this situation and perform a full remote wake-up. Cc: Frank Rowand Cc: Yong Zhang Cc: Oleg Nesterov Reported-by: Marc Zyngier Tested-by: Marc Zyngier Signed-off-by: Peter Zijlstra Signed-off-by: Ingo Molnar commit cd4ae6adf8b1c21d88e83ed56afeeef97b28f356 Author: Xiaotian Feng Date: Fri Apr 22 18:53:54 2011 +0800 sched: More sched_domain iterations fixes sched_domain iterations needs to be protected by rcu_read_lock() now, this patch adds another two places which needs the rcu lock, which is spotted by following suspicious rcu_dereference_check() usage warnings. kernel/sched_rt.c:1244 invoked rcu_dereference_check() without protection! kernel/sched_stats.h:41 invoked rcu_dereference_check() without protection! Signed-off-by: Xiaotian Feng Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1303469634-11678-1-git-send-email-dfeng@redhat.com Signed-off-by: Ingo Molnar commit 5988ce239682854d4e632fb58bff000700830394 Author: Namhyung Kim Date: Sat May 28 14:44:46 2011 +0200 nbd: adjust 'max_part' according to part_shift The 'max_part' parameter determines how many partitions are supported on each nbd device. However the actual number can be changed to the power of 2 minus 1 form during the module initialization as alloc_disk() is called with (1 << part_shift) for some reason. So adjust 'max_part' also at least for consistency with loop and brd. It is exported via sysfs already, and a user should check this value after module loading if [s]he wants to use that number correctly (i.e. fdisk or something). Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: Paul Clements Signed-off-by: Jens Axboe commit 3b2710824e00d238554c13b5add347e6c701ab1a Author: Namhyung Kim Date: Sat May 28 14:44:46 2011 +0200 nbd: limit module parameters to a sane value The 'max_part' parameter controls the number of maximum partition a nbd device can have. However if a user specifies very large value it would exceed the limitation of device minor number and can cause a kernel oops (or, at least, produce invalid device nodes in some cases). In addition, specifying large 'nbds_max' value causes same problem for the same reason. On my desktop, following command results to the kernel bug: $ sudo modprobe nbd max_part=100000 kernel BUG at /media/Linux_Data/project/linux/fs/sysfs/group.c:65! invalid opcode: 0000 [#1] SMP last sysfs file: /sys/devices/virtual/block/nbd4/range CPU 1 Modules linked in: nbd(+) bridge stp llc kvm_intel kvm asus_atk0110 sg sr_mod cdrom Pid: 2522, comm: modprobe Tainted: G W 2.6.39-leonard+ #159 System manufacturer System Product Name/P5G41TD-M PRO RIP: 0010:[] [] internal_create_group+0x2f/0x166 RSP: 0018:ffff8801009f1de8 EFLAGS: 00010246 RAX: 00000000ffffffef RBX: ffff880103920478 RCX: 00000000000a7bd3 RDX: ffffffff81a2dbe0 RSI: 0000000000000000 RDI: ffff880103920478 RBP: ffff8801009f1e38 R08: ffff880103920468 R09: ffff880103920478 R10: ffff8801009f1de8 R11: ffff88011eccbb68 R12: ffffffff81a2dbe0 R13: ffff880103920468 R14: 0000000000000000 R15: ffff880103920400 FS: 00007f3c49de9700(0000) GS:ffff88011f800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00007f3b7fe7c000 CR3: 00000000cd58d000 CR4: 00000000000406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process modprobe (pid: 2522, threadinfo ffff8801009f0000, task ffff8801009a93a0) Stack: ffff8801009f1e58 ffffffff812e8f6e ffff8801009f1e58 ffffffff812e7a80 ffff880000000010 ffff880103920400 ffff8801002fd0c0 ffff880103920468 0000000000000011 ffff880103920400 ffff8801009f1e48 ffffffff8115ab6a Call Trace: [] ? device_add+0x4f1/0x5e4 [] ? dev_set_name+0x41/0x43 [] sysfs_create_group+0x13/0x15 [] blk_trace_init_sysfs+0x14/0x16 [] blk_register_queue+0x4c/0xfd [] add_disk+0xe4/0x29c [] nbd_init+0x2ab/0x30d [nbd] [] ? 0xffffffffa007dfff [] do_one_initcall+0x7f/0x13e [] sys_init_module+0xa1/0x1e3 [] system_call_fastpath+0x16/0x1b Code: 41 57 41 56 41 55 41 54 53 48 83 ec 28 0f 1f 44 00 00 48 89 fb 41 89 f6 49 89 d4 48 85 ff 74 0b 85 f6 75 0b 48 83 7f 30 00 75 14 <0f> 0b eb fe b9 ea ff ff ff 48 83 7f 30 00 0f 84 09 01 00 00 49 RIP [] internal_create_group+0x2f/0x166 RSP ---[ end trace 753285ffbf72c57c ]--- Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: Paul Clements Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 35fbf5bcf497d6ddbe7b6478141e7526d1474ff5 Author: Namhyung Kim Date: Sat May 28 14:44:46 2011 +0200 nbd: pass MSG_* flags to kernel_recvmsg() Unlike kernel_sendmsg(), kernel_recvmsg() requires passing flags explicitly via last parameter instead of struct msghdr.msg_flags. Therefore calls to sock_xmit(lo, 0, ..., MSG_WAITALL) have not been processed properly by tcp layer wrt. the flag. Fix it. Signed-off-by: Namhyung Kim Cc: Paul Clements Signed-off-by: Jens Axboe commit 6df87e65dbe4528ef07b917af89913abb8caaaba Author: Andreas Gruenbacher Date: Sat May 28 14:44:46 2011 +0200 block: improve the bio_add_page() and bio_add_pc_page() descriptions The descriptions of bio_add_page() and bio_add_pc_page() are slightly inconsistent; improve them. Signed-off-by: Andreas Gruenbacher Cc: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Jens Axboe commit ff5714cca971848963b87d6b477c16ca8abbaa54 Merge: 174ba50 d90c732 Author: Chris Mason Date: Sat May 28 07:00:39 2011 -0400 Merge branch 'for-chris' of git://git.kernel.org/pub/scm/linux/kernel/git/josef/btrfs-work into for-linus Conflicts: fs/btrfs/disk-io.c fs/btrfs/extent-tree.c fs/btrfs/free-space-cache.c fs/btrfs/inode.c fs/btrfs/transaction.c Signed-off-by: Chris Mason commit 66c500ff36d74c6669ad260deda4ce8125b55304 Author: Liam Girdwood Date: Fri May 27 22:13:08 2011 +0100 mfd: Fix build breakage caused by tps65910 gpio directory move Signed-off-by: Liam Girdwood Acked-by: Randy Dunlap Signed-off-by: Samuel Ortiz commit 1ed7891f8dcdba62041dfa265aea038afb49635c Author: Mattias Wallin Date: Fri May 27 11:49:43 2011 +0200 mfd: Use mfd cell platform_data for db8500-prcmu cells platform bits With the addition of a device platform mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Signed-off-by: Mattias Wallin Signed-off-by: Samuel Ortiz commit 1486a7409b42ec434be310e091ef68660a2f6cd0 Merge: bc786cc e5cdb13 Author: Grant Likely Date: Fri May 27 23:52:58 2011 -0600 Merge branch 'for_2.6.40/gpio-move' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into gpio/next commit d76ee18a8551e33ad7dbd55cac38bc7b094f3abb Author: Darrick J. Wong Date: Fri May 27 12:23:41 2011 -0700 fs: block_page_mkwrite should wait for writeback to finish For filesystems such as nilfs2 and xfs that use block_page_mkwrite, modify that function to wait for pending writeback before allowing the page to become writable. This is needed to stabilize pages during writeback for those two filesystems. Signed-off-by: Darrick J. Wong Signed-off-by: Al Viro commit 3d08bcc887a1c8d12be8d81f747ffa2e8a44b67b Author: Darrick J. Wong Date: Fri May 27 12:23:34 2011 -0700 mm: Wait for writeback when grabbing pages to begin a write When grabbing a page for a buffered IO write, the mm should wait for writeback on the page to complete so that the page does not become writable during the IO operation. This change is needed to provide page stability during writes for all filesystems. Signed-off-by: Darrick J. Wong Signed-off-by: Al Viro commit 98702467f829177b3993f17da9fe5c202d160e5e Author: Sage Weil Date: Fri May 27 13:42:19 2011 -0700 configfs: remove unnecessary dentry_unhash on rmdir, dir rename configfs does not have problems with references to unlinked directories. CC: Joel Becker Signed-off-by: Sage Weil Signed-off-by: Al Viro commit f4ff0e25c5093dd89e9cac4a8f71a57587ada787 Author: Sage Weil Date: Fri May 27 13:42:18 2011 -0700 fat: remove unnecessary dentry_unhash on rmdir, dir rename fat does not have problems with references to unlinked directories. CC: OGAWA Hirofumi Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 45adfef7d023004ff95bf63b5f2f0e2d88afac3f Author: Sage Weil Date: Fri May 27 13:42:17 2011 -0700 hpfs: remove unnecessary dentry_unhash on rmdir, dir rename Hpfs has no problems with references to unlinked directories. We leave one dentry_unhash call in place, in hpfs_unlink's strange path where it tries to truncate a file because the disk is full. I'm not sure what the full story is there. CC: Mikulas Patocka Signed-off-by: Sage Weil Signed-off-by: Al Viro commit b80d2c228d8206cadc32226750dbbf3b707bdd19 Author: Sage Weil Date: Fri May 27 13:42:16 2011 -0700 minix: remove unnecessary dentry_unhash on rmdir, dir rename Minix has no issues with references to unlinked directories. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 526e7ce5528c8addcf154acec41b615f71dce7e1 Author: Sage Weil Date: Fri May 27 13:42:15 2011 -0700 fuse: remove unnecessary dentry_unhash on rmdir, dir rename Fuse has no problems with references to unlinked directories. CC: Miklos Szeredi CC: fuse-devel@lists.sourceforge.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 42b850b2806f8f55f5c3a0e3c78af738d5054fdc Author: Sage Weil Date: Fri May 27 13:42:14 2011 -0700 coda: remove unnecessary dentry_unhash on rmdir, dir rename Coda has no problems with references to unlinked directories. CC: Jan Harkes CC: coda@cs.cmu.edu CC: codalist@coda.cs.cmu.edu Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 705da2de95ce79199a52f21d82dd9f36b89afd12 Author: Sage Weil Date: Fri May 27 13:42:13 2011 -0700 afs: remove unnecessary dentry_unhash on rmdir, dir rename afs has no problems with references to unlinked directories. CC: David Howells CC: linux-afs@lists.infradead.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 94f9901b6c05d5e1e38d887179b8307efbc8e10c Author: Sage Weil Date: Fri May 27 13:42:12 2011 -0700 affs: remove unnecessary dentry_unhash on rmdir, dir rename affs has no problems with references to unlinked directories. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 86905d6d96f138a99326016e4f0ca933200e0729 Author: Sage Weil Date: Fri May 27 13:42:11 2011 -0700 9p: remove unnecessary dentry_unhash on rmdir, dir rename 9p has no problems with references to unlinked directories. CC: Eric Van Hensbergen CC: Ron Minnich CC: Latchesar Ionkov CC: v9fs-developer@lists.sourceforge.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 76cc071a06afb4d2dd17bb1b855a233a419e7e02 Author: Sage Weil Date: Fri May 27 13:42:10 2011 -0700 ncpfs: fix rename over directory with dangling references ncpfs does not handle references to unlinked directories (or so it would seem given the ncp_rmdir check). Since it is also possible to rename over an empty directory, perform the same check here. CC: Petr Vandrovec CC: linux-kernel@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 7ce605d93b775e8a960b0be244f7be565e73b3c1 Author: Sage Weil Date: Fri May 27 13:42:09 2011 -0700 ncpfs: document dentry_unhash usage ncpfs returns EBUSY if there are any references to the directory. The dentry_unhash call only unhashes the dentry if there are no references. CC: Petr Vandrovec CC: linux-kernel@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 55e5b7e022eaaa805a44e3b6ecd5c8638d862050 Author: Sage Weil Date: Fri May 27 13:42:08 2011 -0700 ecryptfs: remove unnecessary dentry_unhash on rmdir, dir rename ecryptfs does not have problems with references to unlinked directories. CC: Tyler Hicks CC: Dustin Kirkland CC: ecryptfs-devel@lists.launchpad.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit e41a59e0550b7bb40fe8c3438d690712e9fd511c Author: Sage Weil Date: Fri May 27 13:42:07 2011 -0700 hostfs: remove unnecessary dentry_unhash on rmdir, dir rename hostfs does not have problems with references to unlinked directories. CC: Jeff Dike CC: Richard Weinberger CC: user-mode-linux-devel@lists.sourceforge.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit e3911785b8ae6897b3dae2af4fa296aa5a0f2c56 Author: Sage Weil Date: Fri May 27 13:42:06 2011 -0700 hfsplus: remove unnecessary dentry_unhash on rmdir, dir rename hfsplus does not have problems with references to unlinked directories. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 4e82d61b6ac4966b3b61c2d97ddf04928f037be1 Author: Sage Weil Date: Fri May 27 13:42:05 2011 -0700 hfs: remove unnecessary dentry_unhash on rmdir, dir rename hfs does not have problems with references to unlinked directories. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 8aaa0f5431d8d1181b3d1a1bcd8f3330c0ce275f Author: Sage Weil Date: Fri May 27 13:42:04 2011 -0700 omfs: remove unnecessary dentry_unhash on rmdir, dir rneame omfs does not have problems with references to unlinked directories. CC: Bob Copeland CC: linux-karma-devel@lists.sourceforge.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 7020739df2fa0e2126fc9739987e016860f14323 Author: Sage Weil Date: Fri May 27 13:42:03 2011 -0700 udf: remove unnecessary dentry_unhash from rmdir, dir rename udf does not have problems with references to unlinked directories. CC: Jan Kara Signed-off-by: Sage Weil Signed-off-by: Al Viro commit cc350c2764a657ee012efd5bd260a6cd5be2f877 Author: Sage Weil Date: Fri May 27 13:42:02 2011 -0700 reiserfs: remove unnecessary dentry_unhash from rmdir, dir rename Reiserfs does not have problems with references to unlinked directories. CC: reiserfs-devel@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 87161faae26503a8ebe1be5ba72073ae860dbfc7 Author: Sage Weil Date: Fri May 27 13:42:01 2011 -0700 ufs: remove unnecessary dentry_unhash from rmdir, dir rename ufs does not have problems with references to unlinked directories. CC: Evgeniy Dushistov Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 0e54ec1c3a002a9d5e57b5ac73a934cc15a0fe06 Author: Sage Weil Date: Fri May 27 13:42:00 2011 -0700 ubifs: remove unnecessary dentry_unhash from rmdir, dir rename ubifs does not have problems with references to unlinked directories. CC: Artem Bityutskiy CC: Adrian Hunter CC: linux-mtd@lists.infradead.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit dfb55de89879a1c32a70d0a510b3701ed9a6b855 Author: Sage Weil Date: Fri May 27 13:41:59 2011 -0700 nilfs2: remove unnecessary dentry_unhash from rmdir, dir rename nilfs2 does not have problems with references to unlinked directories. CC: KONISHI Ryusuke CC: linux-nilfs@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 64370e2f9df572977757d70b1ad293b743dd9e20 Author: Sage Weil Date: Fri May 27 13:41:58 2011 -0700 logfs: remove unnecessary dentry_unhash from rmdir, dir rename logfs does not have problems with references to unlinked directories. CC: Joern Engel CC: logfs@logfs.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 44a8e6364e48ab93a1d86385b5fc9efe81395fa9 Author: Sage Weil Date: Fri May 27 13:41:57 2011 -0700 jfs: remove unnecessary dentry_unhash from rmdir, dir rename jfs does not have problems with references to unlinked directories. CC: Dave Kleikamp CC: jfs-discussion@lists.sourceforge.net Signed-off-by: Sage Weil Signed-off-by: Al Viro commit cf0f0536fa65ca1353476c49feed34891f3f7134 Author: Sage Weil Date: Fri May 27 13:41:56 2011 -0700 jffs2: remove unnecessary dentry_unhash from rmdir, dir rename jffs2 does not have problems with references to unlinked directories. CC: David Woodhouse CC: linux-mtd@lists.infradead.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 873ae4d5a8b282c6e2bbc09c6d59eeb1bec97ef7 Author: Sage Weil Date: Fri May 27 13:41:55 2011 -0700 sysv: remove unnecessary dentry_unhash from rmdir, dir rename sysv does not have problems with references to unlinked directories. CC: Christoph Hellwig Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 76f0b8d2d2c8d417623142069cdfde1cf1e108d5 Author: Sage Weil Date: Fri May 27 13:41:54 2011 -0700 bfs: remove unnecessary dentry_unhash on dir rename Bfs does not have problems with references to unlinked directories. CC: tigran@aivazian.fsnet.co.uk Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 89e1be50c68eb5e58b873dce87bbac627ee18d1f Author: Steven Rostedt Date: Fri May 27 23:11:24 2011 -0400 x86: Put back -pg to tsc.o and add no GCOV to vread_tsc_64.o The commit 44259b1abfaa8bb819d25d41d71e8e33e25dd36a Author: Andy Lutomirski x86-64: Move vread_tsc into a new file with sensible options Removed the -pg from tsc.o which caused the function graph tracer to go into an infinite function call recursion as it uses the tsc internally outside its recursion protection, thus tracing the tsc breaks the function graph tracer. This commit also added the file vread_tsc_64.c that gets used by vdso but failed to prevent GCOV from monkeying with it, causing userspace to try to access kernel data when GCOV was enabled. Thanks to Thomas Gleixner for pointing out GCOV as the likely culprit that added strange kernel accesses into the vread_tsc() call. Cc: Author: Andy Lutomirski Cc: Thomas Gleixner Signed-off-by: Steven Rostedt commit 29a6ccca3869bbe33879dae0cd7df2a1559eff54 Merge: 4260483 6a8a98b Author: Linus Torvalds Date: Fri May 27 20:06:53 2011 -0700 Merge git://git.infradead.org/mtd-2.6 * git://git.infradead.org/mtd-2.6: (97 commits) mtd: kill CONFIG_MTD_PARTITIONS mtd: remove add_mtd_partitions, add_mtd_device and friends mtd: convert remaining users to mtd_device_register() mtd: samsung onenand: convert to mtd_device_register() mtd: omap2 onenand: convert to mtd_device_register() mtd: txx9ndfmc: convert to mtd_device_register() mtd: tmio_nand: convert to mtd_device_register() mtd: socrates_nand: convert to mtd_device_register() mtd: sharpsl: convert to mtd_device_register() mtd: s3c2410 nand: convert to mtd_device_register() mtd: ppchameleonevb: convert to mtd_device_register() mtd: orion_nand: convert to mtd_device_register() mtd: omap2: convert to mtd_device_register() mtd: nomadik_nand: convert to mtd_device_register() mtd: ndfc: convert to mtd_device_register() mtd: mxc_nand: convert to mtd_device_register() mtd: mpc5121_nfc: convert to mtd_device_register() mtd: jz4740_nand: convert to mtd_device_register() mtd: h1910: convert to mtd_device_register() mtd: fsmc_nand: convert to mtd_device_register() ... Fixed up trivial conflicts in - drivers/mtd/maps/integrator-flash.c: removed in ARM tree - drivers/mtd/maps/physmap.c: addition of afs partition probe type clashing with removal of CONFIG_MTD_PARTITIONS commit 426048313dfa7d65dbd2379b1665755511f9544f Merge: 2a56d22 7ad20aa Author: Linus Torvalds Date: Fri May 27 19:52:57 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (60 commits) [SCSI] lpfc 8.3.24: Extend BSG infrastructure and add link diagnostics [SCSI] lpfc 8.3.24: Add resource extent support [SCSI] lpfc 8.3.24: Add request-firmware support [SCSI] lpfc 8.3.24: Add SR-IOV control [SCSI] lpfc 8.3.24: Extended hardware support and support dump images [SCSI] lpfc 8.3.24: Miscellaneous Fixes and Corrections [SCSI] libsas: Add option for SATA soft reset [SCSI] libsas: check dev->gone before submitting sata i/o [SCSI] libsas: fix/amend device gone notification in sas_deform_port() [SCSI] MAINTAINERS update for SCSI (new email address) [SCSI] Fix Ultrastor asm snippet [SCSI] osst: fix warning [SCSI] osst: wrong index used in inner loop [SCSI] aic94xx: world-writable sysfs update_bios file [SCSI] MAINTAINERS: Add drivers/target/ entry [SCSI] target: Convert TASK_ATTR to scsi_tcq.h definitions [SCSI] target: Convert REPORT_LUNs to use int_to_scsilun [SCSI] target: Fix task->task_execute_queue=1 clear bug + LUN_RESET OOPs [SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks release [SCSI] target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req ... commit 2a56d2220284b0e4dd8569fa475d7053f1c40a63 Merge: 46f2cc8 239df0f Author: Linus Torvalds Date: Fri May 27 19:51:32 2011 -0700 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (45 commits) ARM: 6945/1: Add unwinding support for division functions ARM: kill pmd_off() ARM: 6944/1: mm: allow ASID 0 to be allocated to tasks ARM: 6943/1: mm: use TTBR1 instead of reserved context ID ARM: 6942/1: mm: make TTBR1 always point to swapper_pg_dir on ARMv6/7 ARM: 6941/1: cache: ensure MVA is cacheline aligned in flush_kern_dcache_area ARM: add sendmmsg syscall ARM: 6863/1: allow hotplug on msm ARM: 6832/1: mmci: support for ST-Ericsson db8500v2 ARM: 6830/1: mach-ux500: force PrimeCell revisions ARM: 6829/1: amba: make hardcoded periphid override hardware ARM: 6828/1: mach-ux500: delete SSP PrimeCell ID ARM: 6827/1: mach-netx: delete hardcoded periphid ARM: 6940/1: fiq: Briefly document driver responsibilities for suspend/resume ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2 ARM: 6914/1: sparsemem: fix highmem detection when using SPARSEMEM ARM: 6913/1: sparsemem: allow pfn_valid to be overridden when using SPARSEMEM at91: drop at572d940hf support at91rm9200: introduce at91rm9200_set_type to specficy cpu package at91: drop boot_params and PLAT_PHYS_OFFSET ... commit 46f2cc80514e389bacfb642a32a4181fa1f1d20b Author: Linus Torvalds Date: Fri May 27 19:45:28 2011 -0700 ALSA: fix hda AZX_DCAPS_NO_TCSEL quirk check in driver_caps Commit 9477c58e3308 ("ALSA: hda - Reorganize controller quriks with bit flags") changed the driver type compares into various quirk bits. However, the check for AZX_DCAPS_NO_TCSEL got reverted: instead of clearing TCSEL for chipsets that have that standard capability, it cleared then when the NO_TCSEL bit was set. This can lead to noise and repeated sounds - a weird "echo" behavior. As the comment just above says: "Ensuring these bits are 0 clears playback static on some HD Audio codecs". Which is definitely true at least on my Core i5 Westmere system. Cc: Takashi Iwai Signed-off-by: Linus Torvalds commit bc786ccead15262a12bd673ed7a5afa6cbf0edcf Author: Tomoya MORINAGA Date: Mon May 9 19:58:49 2011 +0900 gpio/pch_gpio: Support new device ML7223 Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Signed-off-by: Grant Likely commit 7c295975a85b049385dfe0d5ee0d4d543619fbdc Author: Lars-Peter Clausen Date: Wed May 25 16:20:31 2011 -0700 gpio: make gpio_{request,free}_array gpio array parameter const gpio_{request,free}_array should not (and do not) modify the passed gpio array, so make the parameter const. Signed-off-by: Lars-Peter Clausen Acked-by: Eric Miao Acked-by: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Grant Likely commit 239df0fd5ee25588f8a5ba7f7ee646940cc403f4 Merge: cc780af ae1d3b9 81479c2 Author: Russell King Date: Fri May 27 22:59:57 2011 +0100 Merge branches 'devel', 'devel-stable' and 'fixes' into for-linus commit 81479c246c07b703aeb4bf54933b7d928cb5b717 Author: Laura Abbott Date: Fri May 27 17:23:16 2011 +0100 ARM: 6945/1: Add unwinding support for division functions The software division functions never had unwinding annotations added. Currently, when a division by zero occurs the backtrace shown will stop at Ldiv0 or some completely unrelated function. Add unwinding annotations in hopes of getting a more useful backtrace when a division by zero occurs. Signed-off-by: Laura Abbott Acked-by: Dave Martin Signed-off-by: Russell King commit 176e21ee2ec89cae8d45cf1a850ea45a45428fb8 Author: Chuck Lever Date: Mon May 9 15:22:44 2011 -0400 SUNRPC: Support for RPC over AF_LOCAL transports TI-RPC introduces the capability of performing RPC over AF_LOCAL sockets. It uses this mainly for registering and unregistering local RPC services securely with the local rpcbind, but we could also conceivably use it as a generic upcall mechanism. This patch provides a client-side only implementation for the moment. We might also consider a server-side implementation to provide AF_LOCAL access to NLM (for statd downcalls, and such like). Autobinding is not supported on kernel AF_LOCAL transports at this time. Kernel ULPs must specify the pathname of the remote endpoint when an AF_LOCAL transport is created. rpcbind supports registering services available via AF_LOCAL, so the kernel could handle it with some adjustment to ->rpcbind and ->set_port. But we don't need this feature for doing upcalls via well-known named sockets. This has not been tested with ULPs that move a substantial amount of data. Thus, I can't attest to how robust the write_space and congestion management logic is. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 559649efb9b0d248541933197bdf7b75529da457 Author: Chuck Lever Date: Mon May 9 15:23:04 2011 -0400 SUNRPC: Remove obsolete comment Clean up. The documenting comment at the top of net/sunrpc/clnt.c is out of date. We adopted BSD's RTO estimation mechanism years ago. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 7402ab19cdd5943c7dd4f3399afe3abda8077ef5 Author: Chuck Lever Date: Mon May 9 15:22:55 2011 -0400 SUNRPC: Use AF_LOCAL for rpcbind upcalls As libtirpc does in user space, have our registration API try using an AF_LOCAL transport first when registering and unregistering. This means we don't chew up privileged ports, and our registration is bound to an "owner" (the effective uid of the process on the sending end of the transport). Only that "owner" may unregister the service. The kernel could probe rpcbind via an rpcbind query to determine whether rpcbind has an AF_LOCAL service. For simplicity, we use the same technique that libtirpc uses: simply fail over to network loopback if creating an AF_LOCAL transport to the well-known rpcbind service socket fails. This means we open-code the pathname of the rpcbind socket in the kernel. For now we have to do that anyway because the kernel's RPC over AF_LOCAL implementation does not support autobind. That may be undesirable in the long term. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit da09eb93033e7204cb3e3f3140b46cf108c42c8f Author: Chuck Lever Date: Mon May 9 15:22:25 2011 -0400 SUNRPC: Clean up use of curly braces in switch cases Clean up. Preferred style is not to use curly braces around switch cases. I'm about to add another case that needs a third type cast. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 4251c94833aa516c1fc7a0f8f504a26eadd4b91e Author: Chuck Lever Date: Mon May 9 15:22:15 2011 -0400 NFS: Revert NFSROOT default mount options Marek Belisko reports that recent attempts to fix regressions in NFSROOT have broken his configuration: > After update from 2.6.38-rc8 to 2.6.38 is mounting rootfs over nfs not possible. > Log: > VFS: Mounted root (nfs filesystem) on device 0:14. > Freeing init memory: 132K > nfs: server 10.146.1.21 not responding, still trying > nfs: server 10.146.1.21 not responding, still trying > > This is never ending. I make short bisect (not too much commits > between versions) > and bad commit was reported: 53d4737580535e073963b91ce87d4216e434fab5 > > NFS: NFSROOT should default to "proto=udp" > > I've tested on mini2440 board (DM9000, static IP). > Is there some missing option or something else to be checked? An examination of a network trace captured during the failure shows that the mount is actually succeeding, but that the client is not seeing READ replies larger than 16KB. This could be a local packet filtering issue on the client, but we didn't troubleshoot this further because of the reported "git bisect" result. Last fall we removed the ad hoc mount option parser in fs/nfs/nfsroot.c in favor of using the main parser in fs/nfs/super.c (see commit 56463e50 "NFS: Use super.c for NFSROOT mount option parsing"). That commit changed the default NFSROOT mount options to be the same as those employed by user space mounts. As it turns out, these new default mount options are not tolerated by many embedded systems. So far these problems have been due to specific behavior of certain embedded NICs. The NFS community does not have such hardware on hand for running tests. Commit 53d47375 recently introduced a clean way to specify default mount options for NFSROOT, so we can now easily restore the traditional defaults for NFSROOT: vers=2,udp,rsize=4096,wsize=4096 This should revert the new default NFSROOT mount options introduced with commit 56463e50. Tested-by: Marek Belisto Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 61677eeec29e87edc03a1061ae0a04b92507450d Author: Chuck Lever Date: Mon May 9 15:22:34 2011 -0400 SUNRPC: Rename xs_encode_tcp_fragment_header() Clean up: Use a more generic name for xs_encode_tcp_fragment_header(); it's appropriate to use for all stream transport types. We're about to add new stream transport. Also, move it to a place where it is more easily shared amongst the various send_request methods. And finally, replace the "htonl" macro invocation with its modern equivalent. Signed-off-by: Chuck Lever Signed-off-by: Trond Myklebust commit 26f04dde681c6a48b2bacfc5fe01fef204419b0c Author: Lai Jiangshan Date: Sun May 1 06:21:54 2011 -0700 nfs,rcu: convert call_rcu(nfs_free_delegation_callback) to kfree_rcu() The rcu callback nfs_free_delegation_callback() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(nfs_free_delegation_callback). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: Trond Myklebust Signed-off-by: Trond Myklebust commit 4b8ee2b82e8b0b6e17ee33feb74fcdb5c6d8dbdd Author: Vitaliy Gusev Date: Fri May 20 01:34:46 2011 +0400 nfs41: Correct offset for LAYOUTCOMMIT A client sends offset to MDS as it was seen by DS. As result, file size after copy is only half of original file size in case of 2 DS. Signed-off-by: Vitaliy Gusev Cc: stable@kernel.org [2.6.39] Signed-off-by: Trond Myklebust commit 60c16ea877546e559988a8b1e4f4256afbbd83e6 Author: Harshula Jayasuriya Date: Mon May 23 22:52:11 2011 +1000 NFS: nfs_update_inode: print current and new inode size in debug output Hi Trond, In nfs_update_inode debug output, print the current and new inode size when the file size changes on the NFS server. Signed-off-by: Harshula Jayasuriya Reviewed-by: Jeff Layton Signed-off-by: Trond Myklebust commit 444f72fe7e7b5f4db34cee933fa3546ebb8e9122 Author: Trond Myklebust Date: Thu May 26 14:26:35 2011 -0400 NFSv4.1: Fix the handling of NFS4ERR_SEQ_MISORDERED errors Currently, the call to nfs4_schedule_session_recovery() will actually just result in a test of the lease when what we really want is to force a session reset. Signed-off-by: Trond Myklebust Cc: stable@kernel.org commit 0ced63d1a245ac11241a5d37932e6d04d9c8040d Author: Trond Myklebust Date: Thu May 26 14:26:35 2011 -0400 NFSv4: Handle expired stateids when the lease is still valid Currently, if the server returns NFS4ERR_EXPIRED in reply to a READ or WRITE, but the RENEW test determines that the lease is still active, we fail to recover and end up looping forever in a READ/WRITE + RENEW death spiral. Signed-off-by: Trond Myklebust Cc: stable@kernel.org commit fe19a96b10032035a35779f42ad59e35d6dd8ffd Author: Trond Myklebust Date: Fri Mar 18 20:21:23 2011 -0400 SUNRPC: Deal with the lack of a SYN_SENT sk->sk_state_change callback... The TCP connection state code depends on the state_change() callback being called when the SYN_SENT state is set. However the networking layer doesn't actually call us back in that case. Signed-off-by: Trond Myklebust Cc: stable@kernel.org commit f23a5e1405e47df6cdc86568ea75df266b9e151f Merge: d24c2af 0775a60 Author: Linus Torvalds Date: Fri May 27 14:27:34 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM: Fix PM QOS's user mode interface to work with ASCII input PM / Hibernate: Update kerneldoc comments in hibernate.c PM / Hibernate: Remove arch_prepare_suspend() PM / Hibernate: Update some comments in core hibernate code commit d24c2af42292cb4ad9c829d71fe0d795112ca6e7 Merge: a0c3061 4f61258 Author: Linus Torvalds Date: Fri May 27 14:07:44 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Follow on to cifsacl endian patch (__constant_cpu_to_le32 was required) commit a0c3061093c8b49facef95dc09a618c6e0d17cb5 Merge: 10799db 174ba50 Author: Linus Torvalds Date: Fri May 27 13:57:12 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (58 commits) Btrfs: use the device_list_mutex during write_dev_supers Btrfs: setup free ino caching in a more asynchronous way btrfs scrub: don't coalesce pages that are logically discontiguous Btrfs: return -ENOMEM in clear_extent_bit Btrfs: add mount -o auto_defrag Btrfs: using rcu lock in the reader side of devices list Btrfs: drop unnecessary device lock Btrfs: fix the race between remove dev and alloc chunk Btrfs: fix the race between reading and updating devices Btrfs: fix bh leak on __btrfs_open_devices path Btrfs: fix unsafe usage of merge_state Btrfs: allocate extent state and check the result properly fs/btrfs: Add missing btrfs_free_path Btrfs: check return value of btrfs_inc_extent_ref() Btrfs: return error to caller if read_one_inode() fails Btrfs: BUG_ON is deleted from the caller of btrfs_truncate_item & btrfs_extend_item Btrfs: return error code to caller when btrfs_del_item fails Btrfs: return error code to caller when btrfs_previous_item fails btrfs: fix typo 'testeing' -> 'testing' btrfs: typo: 'btrfS' -> 'btrfs' ... commit 4f61258f6111e2afd56cf40989e5a43cba9e59c8 Author: Steve French Date: Fri May 27 20:40:18 2011 +0000 [CIFS] Follow on to cifsacl endian patch (__constant_cpu_to_le32 was required) As Jeff just pointed out, __constant_cpu_to_le32 was required instead of cpu_to_le32 in previous patch to cifsacl.c 383c55350fb4ab6bd08abfab82038ae0364f1f48 (Fix endian error comparing authusers when cifsacl enabled) CC: Stable Reviewed-by: Jeff Layton CC: Shirish Pargaonkar Signed-off-by: Steve French commit 11ad2f52826ac6d58d6780d3d8a3e098c88d9142 Merge: c5c177b 1df85ec Author: John W. Linville Date: Fri May 27 15:18:35 2011 -0400 Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit 2cf95c18d5069e13c02a8667d91e064df8e17e09 Author: Sarah Sharp Date: Wed May 11 16:14:58 2011 -0700 Intel xhci: Limit number of active endpoints to 64. The Panther Point chipset has an xHCI host controller that has a limit to the number of active endpoints it can handle. Ideally, it would signal that it can't handle anymore endpoints by returning a Resource Error for the Configure Endpoint command, but they don't. Instead it needs software to keep track of the number of active endpoints, across configure endpoint commands, reset device commands, disable slot commands, and address device commands. Add a new endpoint context counter, xhci_hcd->num_active_eps, and use it to track the number of endpoints the xHC has active. This gets a little tricky, because commands to change the number of active endpoints can fail. This patch adds a new xHCI quirk for these Intel hosts, and the new code should not have any effect on other xHCI host controllers. Fail a new device allocation if we don't have room for the new default control endpoint. Use the endpoint ring pointers to determine what endpoints were active before a Reset Device command or a Disable Slot command, and drop those once the command completes. Fail a configure endpoint command if it would add too many new endpoints. We have to be a bit over zealous here, and only count the number of new endpoints to be added, without subtracting the number of dropped endpoints. That's because a second configure endpoint command for a different device could sneak in before we know if the first command is completed. If the first command dropped resources, the host controller fails the command for some reason, and we're nearing the limit of endpoints, we could end up oversubscribing the host. To fix this race condition, when evaluating whether a configure endpoint command will fix in our bandwidth budget, only add the new endpoints to xhci->num_active_eps, and don't subtract the dropped endpoints. Ignore changed endpoints (ones that are dropped and then re-added), as that shouldn't effect the host's endpoint resources. When the configure endpoint command completes, subtract off the dropped endpoints. This may mean some configuration changes may temporarily fail, but it's always better to under-subscribe than over-subscribe resources. (Originally my plan had been to push the resource allocation down into the ring allocation functions. However, that would cause us to allocate unnecessary resources when endpoints were changed, because the xHCI driver allocates a new ring for the changed endpoint, and only deletes the old ring once the Configure Endpoint command succeeds. A further complication would have been dealing with the per-device endpoint ring cache.) Signed-off-by: Sarah Sharp commit ad808333d8201d53075a11bc8dd83b81f3d68f0b Author: Sarah Sharp Date: Wed May 25 10:43:56 2011 -0700 Intel xhci: Ignore spurious successful event. The xHCI host controller in the Panther Point chipset sometimes produces spurious events on the event ring. If it receives a short packet, it first puts a Transfer Event with a short transfer completion code on the event ring. Then it puts a Transfer Event with a successful completion code on the ring for the same TD. The xHCI driver correctly processes the short transfer completion code, gives the URB back to the driver, and then prints a warning in dmesg about the spurious event. These warning messages really fill up dmesg when an HD webcam is plugged into xHCI. This spurious successful event behavior isn't technically disallowed by the xHCI specification, so make the xHCI driver just ignore the spurious completion event. Signed-off-by: Sarah Sharp commit 69e848c2090aebba5698a1620604c7dccb448684 Author: Sarah Sharp Date: Tue Feb 22 09:57:15 2011 -0800 Intel xhci: Support EHCI/xHCI port switching. The Intel Panther Point chipsets contain an EHCI and xHCI host controller that shares some number of skew-dependent ports. These ports can be switched from the EHCI to the xHCI host (and vice versa) by a hardware MUX that is controlled by registers in the xHCI PCI configuration space. The USB 3.0 SuperSpeed terminations on the xHCI ports can be controlled separately from the USB 2.0 data wires. This switchover mechanism is there to support users who do a custom install of certain non-Linux operating systems that don't have official USB 3.0 support. By default, the ports are under EHCI, SuperSpeed terminations are off, and USB 3.0 devices will show up under the EHCI controller at reduced speeds. (This was more palatable for the marketing folks than having completely dead USB 3.0 ports if no xHCI drivers are available.) Users should be able to turn on xHCI by default through a BIOS option, but users are happiest when they don't have to change random BIOS settings. This patch introduces a driver method to switchover the ports from EHCI to xHCI before the EHCI driver finishes PCI enumeration. We want to switch the ports over before the USB core has the chance to enumerate devices under EHCI, or boot from USB mass storage will fail if the boot device connects under EHCI first, and then gets disconnected when the port switches over to xHCI. Add code to the xHCI PCI quirk to switch the ports from EHCI to xHCI. The PCI quirks code will run before any other PCI probe function is called, so this avoids the issue with boot devices. Another issue is with BIOS behavior during system resume from hibernate. If the BIOS doesn't support xHCI, it may switch the devices under EHCI to allow use of the USB keyboard, mice, and mass storage devices. It's supposed to remember the value of the port routing registers and switch them back when the OS attempts to take control of the xHCI host controller, but we all know not to trust BIOS writers. Make both the xHCI driver and the EHCI driver attempt to switchover the ports in their PCI resume functions. We can't guarantee which PCI device will be resumed first, so this avoids any race conditions. Writing a '1' to an already set port switchover bit or a '0' to a cleared port switchover bit should have no effect. The xHCI PCI configuration registers will be documented in the EDS-level chipset spec, which is not public yet. I have permission from legal and the Intel chipset group to release this patch early to allow good Linux support at product launch. I've tried to document the registers as much as possible, so please let me know if anything is unclear. Signed-off-by: Sarah Sharp commit e4a338d05df93ab1ebf291aca1e753064319d301 Author: Arnaldo Carvalho de Melo Date: Fri May 27 13:42:16 2011 -0300 perf top: Don't stop if no kernel symtab is found We now just warn the user about the fact and go on providing just userspace samples. This fixes a problem when no vmlinux is explicetely passed by the user, thus symbol_conf.vmlinux_name is NULL, no suitable vmlinux is found, and then we get: aldebaran:~> perf top -p 7557 [kernel.kallsyms] with build id 44d9a989eabbd79e486bc079d6b743d397c204e0 not found, continuing without symbols The (null) file can't be used Reported-by: Ingo Molnar Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-cj2g81hn64wv2bipmqk4fy2m@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 5f6f55809758e106eca72c6e01402c8080a88ee8 Author: Arnaldo Carvalho de Melo Date: Fri May 27 11:53:28 2011 -0300 perf top: Handle kptr_restrict Reported-by: Ingo Molnar Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-cyl5zmi1nu35vyu7l5im2pyv@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 59fb1ee95e74e8e0777289c44300cbe812aca836 Author: Arnaldo Carvalho de Melo Date: Fri May 27 11:14:00 2011 -0300 perf top: Remove unused macro Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-weqbs0tkk2u0qp1xxdxxosfg@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 4af4c9550ccaaf0b53013ff730bc15068ffe6abc Author: David Ahern Date: Fri May 27 09:58:34 2011 -0600 perf events: initialize fd array to -1 instead of 0 perf_evsel__alloc_fd allocates an array of file descriptors with the memory initialized to 0. The array has dimensions for cpus and threads. Later, __perf_evsel__open calls sys_perf_event_open for each cpu and thread dimensions. If the open fails for any of the cpus or threads then the fd's for this event are closed and the fd entry in the array is set to -1. Now, if the first attempt fails for the event (e.g., the event is not supported) the remaining dimensions (cpu > 0 and thread > 0) are not touched and left at the initialized value of 0. builtin-stat catches ENOENT and ENOSYS failures and allows the command to continue. The end result is that stat attempts to read from an fd of 0 which of course is stdin and so the command hangs until you type ctrl-D. Resolve by initializing the array to -1 since an fd < 0 is already handled. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Thomas Gleixner Link: http://lkml.kernel.org/r/1306511914-8016-1-git-send-email-dsahern@gmail.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 646aaea615704010b5fd2c8c8891ff1a3a4b4f1a Author: Arnaldo Carvalho de Melo Date: Fri May 27 11:00:41 2011 -0300 perf tools: Make sure kptr_restrict warnings fit 80 col terms Suggested-by: Ingo Molnar Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-i1p8vrhq7xveyui6t1sc914e@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 10799db60cbc4f990dd69eb49883477095c66af7 Merge: aaab184 c5c177b Author: Linus Torvalds Date: Fri May 27 11:16:27 2011 -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: net: Kill ratelimit.h dependency in linux/net.h net: Add linux/sysctl.h includes where needed. net: Kill ether_table[] declaration. inetpeer: fix race in unused_list manipulations atm: expose ATM device index in sysfs IPVS: bug in ip_vs_ftp, same list heaad used in all netns. bug.h: Move ratelimit warn interfaces to ratelimit.h bonding: cleanup module option descriptions net:8021q:vlan.c Fix pr_info to just give the vlan fullname and version. net: davinci_emac: fix dev_err use at probe can: convert to %pK for kptr_restrict support net: fix ETHTOOL_SFEATURES compatibility with old ethtool_ops.set_flags netfilter: Fix several warnings in compat_mtw_from_user(). netfilter: ipset: fix ip_set_flush return code netfilter: ipset: remove unused variable from type_pf_tdel() netfilter: ipset: Use proper timeout value to jiffies conversion commit aaab184276a6e20834f63735d433f94ef52a0497 Merge: e52e713 a058bfb Author: Linus Torvalds Date: Fri May 27 11:07:50 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6: MAINTAINERS: Update eCryptfs mailing list eCryptfs: Allow 2 scatterlist entries for encrypted filenames eCryptfs: Clear i_nlink in rmdir commit c5c177b4aca83338781e72be2e6dd1601c560cb3 Author: David S. Miller Date: Fri May 27 13:41:33 2011 -0400 net: Kill ratelimit.h dependency in linux/net.h Ingo Molnar noticed that we have this unnecessary ratelimit.h dependency in linux/net.h, which hid compilation problems from people doing builds only with CONFIG_NET enabled. Move this stuff out to a seperate net/net_ratelimit.h file and include that in the only two places where this thing is needed. Signed-off-by: David S. Miller Acked-by: Ingo Molnar commit bee95250f015ffc3a6efb99516489e70d1b52da2 Author: David S. Miller Date: Thu May 26 16:40:37 2011 -0400 net: Add linux/sysctl.h includes where needed. Several networking headers were depending upon the implicit linux/sysctl.h include they get when including linux/net.h Add explicit includes. Signed-off-by: David S. Miller commit 9d931dd2ed62c14d7bf7c4c3ab3ef7610c46ca9b Author: David S. Miller Date: Thu May 26 16:30:57 2011 -0400 net: Kill ether_table[] declaration. This got missed back in 2006 when Jes Sorensen deleted net/ethernet/sysctl_net_ether.c Signed-off-by: David S. Miller commit 686a7e32ca7fdd819eb9606abd3db52b77d1479f Author: Eric Dumazet Date: Thu May 26 17:27:11 2011 +0000 inetpeer: fix race in unused_list manipulations Several crashes in cleanup_once() were reported in recent kernels. Commit d6cc1d642de9 (inetpeer: various changes) added a race in unlink_from_unused(). One way to avoid taking unused_peers.lock before doing the list_empty() test is to catch 0->1 refcnt transitions, using full barrier atomic operations variants (atomic_cmpxchg() and atomic_inc_return()) instead of previous atomic_inc() and atomic_add_unless() variants. We then call unlink_from_unused() only for the owner of the 0->1 transition. Add a new atomic_add_unless_return() static helper With help from Arun Sharma. Refs: https://bugzilla.kernel.org/show_bug.cgi?id=32772 Reported-by: Arun Sharma Reported-by: Maximilian Engelhardt Reported-by: Yann Dupont Reported-by: Denys Fedoryshchenko Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e52e713ec30a31e9a4663d9aebbaae5ec07466a6 Merge: bdf7cf1 2f3e4af Author: Linus Torvalds Date: Fri May 27 10:25:02 2011 -0700 Merge branch 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs * 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs: Create Documentation/security/, move LSM-, credentials-, and keys-related files from Documentation/ to Documentation/security/, add Documentation/security/00-INDEX, and update all occurrences of Documentation/ to Documentation/security/. commit bdf7cf1c83872a0586ce4c4da6889103cc36dbd3 Merge: 40efeb4 ac04fee Author: Linus Torvalds Date: Fri May 27 10:24:40 2011 -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: loop: export module parameters block: export blk_{get,put}_queue() block: remove unused variable in bio_attempt_front_merge() block: always allocate genhd->ev if check_events is implemented brd: export module parameters brd: fix comment on initial device creation brd: handle on-demand devices correctly brd: limit 'max_part' module param to DISK_MAX_PARTS brd: get rid of unused members from struct brd_device block: fix oops on !disk->queue and sysfs discard alignment display commit 40efeb4d0bb1993c3c10baff9b7d86839f99171e Merge: 81faae7 383c553 Author: Linus Torvalds Date: Fri May 27 10:23:51 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: [CIFS] Fix endian error comparing authusers when cifsacl enabled [CIFS] Rename three structures to avoid camel case Fix extended security auth failure CIFS: Add rwpidforward mount option CIFS: Migrate to shared superblock model [CIFS] Migrate from prefixpath logic CIFS: Fix memory leak in cifs_do_mount [CIFS] When mandatory encryption on share, fail mount CIFS: Use pid saved from cifsFileInfo in writepages and set_file_size cifs: add cifs_async_writev cifs: clean up wsize negotiation and allow for larger wsize cifs: convert cifs_writepages to use async writes CIFS: Fix undefined behavior when mount fails cifs: don't call mid_q_entry->callback under the Global_MidLock (try #5) CIFS: Simplify mount code for further shared sb capability CIFS: Simplify connection structure search calls cifs: remove unused SMB2 config and mount options cifs: add ignore_pend flag to cifs_call_async cifs: make cifs_send_async take a kvec array cifs: consolidate SendReceive response checks commit 81faae7f9c245a17f585d6edb7d4683cc6336b11 Merge: 95948c3 d194f1a Author: Linus Torvalds Date: Fri May 27 10:23:10 2011 -0700 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: Ocfs2/move_extents: Validate moving goal after the adjustment. Ocfs2/move_extents: Avoid doing division in extent moving. commit 95948c31bec26e631ecf138cb04dcd547519c7af Merge: 45acab0 69dbb2f Author: Linus Torvalds Date: Fri May 27 10:18:00 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] mm: add ZONE_DMA to 31-bit config again [S390] mm: add page fault retry handling [S390] mm: handle kernel caused page fault oom situations [S390] delay: implement ndelay [S390] topology,sched: fix cpu_coregroup_mask/cpu_book_mask definitions [S390] hwsampler: allow cpu hotplug [S390] uaccess: turn __access_ok() into a define [S390] irq: merge irq.c and s390_ext.c [S390] irq: fix service signal external interrupt handling [S390] pfault: always enable service signal interrupt commit 45acab01ca6389371ec39e16844768a60f5f1380 Merge: c0880dc 9693ebd Author: Linus Torvalds Date: Fri May 27 10:17:30 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/fsl_rio: Error interrupt handler for sRIO on MPC85xx powerpc/fsl_rio: move machine_check handler powerpc/fsl_lbc: Add workaround for ELBC-A001 erratum commit c0880dcded3ffe77700184e9d96c110ce0094c11 Merge: f7fc06e 616a4b8 Author: Linus Torvalds Date: Fri May 27 10:14:22 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] v1.88 DM04/QQBOX Move remote to use rc_core dvb-usb-remote [media] Add missing include guard to header file [media] Inlined functions should be static [media] Remove invalid parameter description [media] cpia2: fix warning about invalid trigraph sequence [media] s5p-csis: Add missing dependency on PLAT_S5P [media] gspca/kinect: wrap gspca_debug with GSPCA_DEBUG [media] fintek-cir: new driver for Fintek LPC SuperIO CIR function [media] uvcvideo: Connect video devices to media entities [media] uvcvideo: Register subdevices for each entity [media] uvcvideo: Register a v4l2_device [media] add V4L2-PIX-FMT-SRGGB12 & friends to docbook [media] Documentation/DocBook: Rename media fops xml files [media] Media DocBook: fix validation errors [media] wl12xx: g_volatile_ctrl fix: wrong field set [media] fix kconfig dependency warning for VIDEO_TIMBERDALE [media] dm1105: GPIO handling added, I2C on GPIO added, LNB control through GPIO reworked [media] Add support for M-5MOLS 8 Mega Pixel camera ISP commit f7fc06e3a47d68831a21f6aabf2a80648846602b Merge: ea0ca3a cb220d1 Author: Linus Torvalds Date: Fri May 27 10:13:01 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (42 commits) regulator: Fix _regulator_get_voltage if get_voltage callback is NULL USB: TWL6025 allow different regulator name REGULATOR: TWL6025: add support to twl-regulator regulator: twl6030: do not write to _GRP for regulator disable regulator: twl6030: do not write to _GRP for regulator enable TPS65911: Comparator: Add comparator driver TPS65911: Add support for added GPIO lines GPIO: TPS65910: Move driver to drivers/gpio/ TPS65911: Add new irq definitions regulator: tps65911: Add new chip version MFD: TPS65910: Add support for TPS65911 device regulator: Fix off-by-one value range checking for mc13xxx_regulator_get_voltage regulator: mc13892: Fix voltage unit in test case. regulator: Remove MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros mfd: Fix off-by-one value range checking for tps65910_i2c_write regulator: Only apply voltage constraints from consumers that set them regulator: If we can't configure optimum mode we're always in the best one regulator: max8997: remove useless code regulator: Fix memory leak in max8998_pmic_probe failure path regulator: Fix desc_id for tps65023/6507x/65910 ... commit ea0ca3a843babd50c22dfbb5cf2d9a14df821b2b Merge: 74e6392 906649d Author: Linus Torvalds Date: Fri May 27 10:12:35 2011 -0700 Merge git://git.infradead.org/battery-2.6 * git://git.infradead.org/battery-2.6: PXA: Use dev_pm_ops in z2_battery ds2760_battery: Fix rated capacity of the hx4700 1800mAh battery ds2760_battery: Fix indexing of the 4 active full EEPROM registers power: Make test_power driver more dynamic. bq27x00_battery: Name of cycle count property max8903_charger: Add GENERIC_HARDIRQS as a dependency (fixes S390 build) ARM: RX-51: Enable isp1704 power on/off isp1704_charger: Allow board specific powering routine gpio-charger: Add gpio_charger_resume power_supply: Add driver for MAX8903 charger commit 74e6392ca3fd445a775dd42b54d5e42cf1e706e6 Merge: 09cefbb 582e1b2 Author: Linus Torvalds Date: Fri May 27 10:11:42 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (coretemp) Fix section mismatch hwmon: (pmbus) Initialize sysfs attributes hwmon: (coretemp) Update comments describing the handling of HT CPUs hwmon: (coretemp) Initialize sysfs attributes commit 09cefbb605ccb07c65f313253268a634e0dcd283 Merge: dc7acbb cf73df1 Author: Linus Torvalds Date: Fri May 27 10:10:51 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (26 commits) ASoC: Fix power down for widgetless per-card DAPM context case ASoC: wm1250-ev1: Define "WM1250 Output" with SND_SOC_DAPM_OUTPUT ASoC: Remove duplicate linux/delay.h inclusion. ASoC: sam9g20_wm8731: use the proper SYSCKL value ASoC: wm8731: fix wm8731_check_osc() connected condition ALSA: hda - Reorganize controller quriks with bit flags ALSA: hda - Use snd_printd() in snd_hda_parse_pin_def_config() ALSA: core: remove unused variables. ALSA: HDA: Increase MAX_HDMI_PINS ALSA: PCM - Don't check DMA time-out too shortly MAINTAINERS: add FireWire audio maintainer ALSA: usb-audio: more control quirks for M-Audio FastTrack devices ALSA: usb-audio: add new quirk type QUIRK_AUDIO_STANDARD_MIXER ALSA: usb-audio: export snd_usb_feature_unit_ctl ALSA: usb-audio: rework add_control_to_empty() ALSA: usb-audio: move assignment of chip->ctrl_intf ALSA: hda - Use model=auto for Lenovo G555 ALSA: HDA: Unify HDMI hotplug handling. ALSA: hda - Force AD1988_6STACK_DIG for Asus M3N-HT Deluxe ASoC: core - remove superfluous new line. ... commit e7a46b4d0839c2a3aa2e0ae0b145f293f6738498 Author: Dan Williams Date: Fri May 27 04:51:54 2011 +0000 atm: expose ATM device index in sysfs It's currently exposed only through /proc which, besides requiring screen-scraping, doesn't allow userspace to distinguish between two identical ATM adapters with different ATM indexes. The ATM device index is required when using PPPoATM on a system with multiple ATM adapters. Signed-off-by: Dan Williams Reviewed-by: Eric Dumazet Tested-by: David Woodhouse Cc: stable@kernel.org Signed-off-by: David S. Miller commit 58bf2dbccc5aca12df77e2328f478e239a68bdd5 Merge: 86e4ca6 c74c0bf Author: David S. Miller Date: Fri May 27 13:04:40 2011 -0400 Merge branch 'pablo/nf-2.6-updates' of git://1984.lsi.us.es/net-2.6 commit 1df85ecec36ad5da3f0165760704310d6c03f65f Author: Adrian Chadd Date: Fri May 27 01:08:04 2011 +0800 ath9k: Fix AR9287 calibration The AR9287 calibration code was not being called because of an incorrect MAC revision check. This forced the AR9287 to use the AR9285 initial calibration code and bypass the AR9287 code entirely. Signed-off-by: Adrian Chadd Signed-off-by: John W. Linville commit 64c754ed3b0009e4fa248f739000dc234eb0d2c9 Author: Jesper Juhl Date: Thu May 26 10:53:17 2011 +0200 mac80211: Remove duplicate linux/slab.h include from net/mac80211/scan.c Commit 79f460ca49d8d5700756ab7071c951311c7f29cc add a duplicate linux/slab.h include to net/mac80211/scan.c - remove it. Signed-off-by: Jesper Juhl Acked-by: Luciano Coelho Signed-off-by: John W. Linville commit a331400bf01231253a0d9ab211c83212d2ac4edb Author: Eliad Peller Date: Thu May 26 11:46:37 2011 +0300 mac80211: clear local->ps_data on disassoc local->ps_data wasn't cleared on disassociation, which (in some corner cases) caused reconnections to enter psm before association completed. Signed-off-by: Eliad Peller Signed-off-by: John W. Linville commit 64bd0821a3b66c3307d7a4ee5523e3e35ec2df0e Author: Tao Ma Date: Wed May 25 09:44:05 2011 +0800 wireless: Default to 'n' for 2 new added devices in Kconfig. We make oldconfig every time when a new kernel arrives, but if we don't have such a device(I guess this is the most common case for a new device), the default value should be 'n' so that the kernel size we build doesn't grow up too much quickly. For anyone who has the device, it is OK for them to turn it on by themselves. Cc: "John W. Linville" Cc: Johannes Berg Signed-off-by: Tao Ma Signed-off-by: John W. Linville commit aac11c1b351413aa3412e258e2b2dcba31777209 Author: Stanislaw Gruszka Date: Tue May 24 16:28:55 2011 +0200 iwl4965: fix 5GHz operation rx_status.band is used uninitialized, what disallow to work on 5GHz . Cc: stable@kernel.org # 2.6.39+ Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit a058bfbbeca576cf7c93ac4f16092f13f414434e Author: Tyler Hicks Date: Fri May 27 11:47:59 2011 -0500 MAINTAINERS: Update eCryptfs mailing list The eCryptfs mailing list has moved from lists.launchpad.net to vger.kernel.org. Signed-off-by: Tyler Hicks commit 8d08dab786ad5cc2aca2bf870de370144b78c85a Author: Tyler Hicks Date: Tue May 17 00:50:33 2011 -0500 eCryptfs: Allow 2 scatterlist entries for encrypted filenames The buffers allocated while encrypting and decrypting long filenames can sometimes straddle two pages. In this situation, virt_to_scatterlist() will return -ENOMEM, causing the operation to fail and the user will get scary error messages in their logs: kernel: ecryptfs_write_tag_70_packet: Internal error whilst attempting to convert filename memory to scatterlist; expected rc = 1; got rc = [-12]. block_aligned_filename_size = [272] kernel: ecryptfs_encrypt_filename: Error attempting to generate tag 70 packet; rc = [-12] kernel: ecryptfs_encrypt_and_encode_filename: Error attempting to encrypt filename; rc = [-12] kernel: ecryptfs_lookup: Error attempting to encrypt and encode filename; rc = [-12] The solution is to allow up to 2 scatterlist entries to be used. Signed-off-by: Tyler Hicks Cc: commit 07850552b92b3637fa56767b5e460b4238014447 Author: Tyler Hicks Date: Fri Apr 29 16:26:27 2011 -0500 eCryptfs: Clear i_nlink in rmdir eCryptfs wasn't clearing the eCryptfs inode's i_nlink after a successful vfs_rmdir() on the lower directory. This resulted in the inode evict and destroy paths to be missed. https://bugs.launchpad.net/ecryptfs/+bug/723518 Signed-off-by: Tyler Hicks Cc: commit 987dfbaa65b2c3568b85e29d2598da08a011ee09 Author: Lee, Chun-Yi Date: Fri May 27 14:52:14 2011 +0800 acer-wmi: support integer return type from WMI methods Acer WMID_GUID1/2 method's return value was declared to integer type on Gateway notebook. So, add this patch for support integer return type. Reference: bko#33032 https://bugzilla.kernel.org/show_bug.cgi?id=33032 Tested on Gateway NV5909H laptop Tested-by: Filipus Klutiero Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit d436514e21b827ab602d1714028c34179c42d09f Author: Lee, Chun-Yi Date: Thu May 26 11:09:19 2011 +0800 msi-laptop: fix section mismatch in reference from the function load_scm_model_init There have section mismatch warning message shows up when building the kernel with make CONFIG_DEBUG_SECTION_MISMATCH=y. The problem is the load_scm_model_init() calls msi_laptop_input_setup() which is an __init function, but load_scm_model_init() lacks a __init annotation. This patch add __init on load_scm_model_init() to avoid warning message. Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit 6d88ff0f8ef3529f68233d3963b2a7e07f8e4f69 Author: Lee, Chun-Yi Date: Sun May 22 07:33:54 2011 +0800 acer-wmi: support to set communication device state by new wmid method Have many Acer notebooks' BIOS already support new WMID_GUID3 method. On those machines, that will be better set communication device by evaluate WMID_GUID3 method. Tested on Acer Travelmate 8572 Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit ab6a931620cfa5c565b351d1982306c3c8b97f96 Author: Lee, Chun-Yi Date: Sun May 22 07:33:53 2011 +0800 acer-wmi: allow 64-bits return buffer from WMI methods Acer WMID_GUID1/2 method's return buffer was declared to 64-bits on some Acer notebook, but WMI method only use 32-bits in return buffer. So, add this patch for allow 64-bits return buffer. Reference: bko#34142 https://bugzilla.kernel.org/show_bug.cgi?id=34142 Tested on Acer Travelmate 5735Z-452G32Mnss Tested-by: Melchior FRANZ Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit a8d1a266eee5f8b822449fe19d1735189377ef47 Author: Lee, Chun-Yi Date: Sun May 22 07:33:52 2011 +0800 acer-wmi: check the existence of internal 3G device when set capability That will be better to check the existence of internal 3G device when we set threeg capability and generate killswitch for threeg. It can avoid userland access 3G rfkill but the machine doesn't have internal 3G device. Reference: bko#32862 https://bugzilla.kernel.org/show_bug.cgi?id=32862 Tested on Acer Aspire 8930G, Acer Travelmate 8572 Tested-by: Hector Martin Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Cc: Thomas Renninger Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit 5ddf9c5fa5a78036790ed72aaed3b84ee7dd4532 Author: Weiping Pan Date: Mon May 16 14:49:47 2011 +0800 platform/x86:delete two unused variables variable handle is not used in these two functions, just delete them. Signed-off-by: Weiping Pan Signed-off-by: Matthew Garrett commit 8ae68de15d5ddaa8d41e197a730e19223adab2e1 Author: Melchior FRANZ Date: Tue May 24 10:35:55 2011 +0200 support wlan hotkey on Acer Travelmate 5735Z On an Acer Travelmate 5735Z-452G32Mnss the WLAN-enable/disable key doesn't send 0x1 as acpi event key code, but 0x3. This patch also makes the module ignore hotkey acpi events for functions that are already handled without. This avoids warning message "keyboard: can't emulate rawmode for keycode 240". Signed-off-by: Melchior FRANZ Signed-off-by: Matthew Garrett commit 239dca9e9aff6630c22fef696978ba3a878f7d96 Author: Ameya Palande <2ameya@gmail.com> Date: Thu Apr 7 16:30:02 2011 +0300 platform-x86: intel_mid_thermal: Fix memory leak Signed-off-by: Ameya Palande <2ameya@gmail.com> Signed-off-by: Matthew Garrett commit cb8b646d8b27053d311595b4fc7dbe161d92683e Author: Ameya Palande <2ameya@gmail.com> Date: Wed Apr 6 17:45:03 2011 +0300 platform/x86: Fix Makefile for intel_mid_powerbtn Signed-off-by: Ameya Palande <2ameya@gmail.com> Signed-off-by: Matthew Garrett commit b9e066942981c6de3897de94953bea295ae18ec8 Author: Ameya Palande <2ameya@gmail.com> Date: Wed Apr 6 17:44:37 2011 +0300 platform/x86: Simplify intel_mid_powerbtn This patch: 1. Removes unnecessay #defines 2. Removes 'mfld_pb_priv' data structure which results in simpler error handling and less memory allocations. Signed-off-by: Ameya Palande <2ameya@gmail.com> Signed-off-by: Matthew Garrett commit 020036678e810be10a352339faa9a1df2bd8f5a3 Author: Carlos Corbacho Date: Mon May 2 09:57:23 2011 +0100 acer-wmi: Delete out-of-date documentation The documentation file for acer-wmi is long out of date, and there's not much point in keeping it around either. Signed-off-by: Carlos Corbacho Signed-off-by: Matthew Garrett commit c4bae98c4f913d3220d185c47d8817b5e2bba007 Author: Jean Delvare Date: Sun Apr 24 18:07:55 2011 +0200 acerhdf: Clean up includes * The acerhdf driver isn't an ACPI driver, so it needs not include . All it uses is ec_read() and ec_write(), for which is sufficient. * I couldn't find any reason why and were included. This should avoid unneeded rebuilds of the acerhdf driver. Signed-off-by: Jean Delvare Cc: Peter Feuerer Cc: Matthew Garrett Signed-off-by: Matthew Garrett commit e569b223d53cb2720f55be72932f5758a056ff6d Author: Jean Delvare Date: Sun Apr 24 11:00:08 2011 +0200 acerhdf: Drop pointless dependency on THERMAL_HWMON The THERMAL_HWMON config option simply exposes the thermal zone temperature values and limits to user-space. It makes no sense for a kernel driver to depend on this. Signed-off-by: Jean Delvare Cc: Peter Feuerer Cc: Matthew Garrett Signed-off-by: Matthew Garrett commit d9269a7146e33147866ecbf1ae485f6d1a1379f1 Author: Carlos Corbacho Date: Mon May 2 09:57:18 2011 +0100 acer-wmi: Update MAINTAINERS I don't have the time or much interest these days in maintaining acer-wmi, as I don't have access to newer Acer hardware. As he's been doing most of the work these days anyway, Joey Lee has kindly agreed to take over. Signed-off-by: Carlos Corbacho Cc: Joey Lee Signed-off-by: Matthew Garrett commit 5b9272594b5144538b96ca7eb82898c49519ec16 Author: Carlos Corbacho Date: Mon May 2 09:57:13 2011 +0100 wmi: Orphan ACPI-WMI driver I no longer have the time to work on this, and haven't really been doing any work to this either. Time to let someone else take the reins. Signed-off-by: Carlos Corbacho Signed-off-by: Matthew Garrett commit 95c7021540661a1d19130296be3e799d5a9135f8 Author: Carlos Corbacho Date: Mon May 2 09:57:08 2011 +0100 tc1100-wmi: Orphan driver I've never owned the hardware, this was a port of an existing driver to prove that the ACPI-WMI code was useful to more than just acer-wmi. Signed-off-by: Carlos Corbacho Signed-off-by: Matthew Garrett commit c2647b5e99c8ff1b3f535c7c84564cdc53214edf Author: Lee, Chun-Yi Date: Fri Apr 15 18:42:47 2011 +0800 acer-wmi: does not allow negative number set to initial device state The driver set module parameter value: mailled, threeg and brightness to BIOS by evaluate wmi method when driver was initialed. The default values for those parameters are -1, so, that will be better don't set negative value to BIOS. Cc: Carlos Corbacho Cc: Matthew Garrett Cc: Dmitry Torokhov Cc: Corentin Chary Signed-off-by: Lee, Chun-Yi Signed-off-by: Matthew Garrett commit bb3ce2020451bdebe5ceac770504f427724008a9 Author: Yin Kangkai Date: Wed Apr 6 15:05:24 2011 +0100 platform/oaktrail: ACPI EC Extra driver for Oaktrail This driver implements an Extra ACPI EC driver for products based on Intel Oaktrail platform. This driver does below things: 1. registers itself in the Linux backlight control in /sys/class/backlight/intel_oaktrail/ 2. registers in the rfkill subsystem here: /sys/class/rfkill/rfkillX/ for these components: wifi, bluetooth, wwan (3g), gps Signed-off-by: Yin Kangkai [Extracted from a bigger patch by Yin Kangkai, this version leaves out some sysfs bits that probably want to be driver managed, and ACPI i2c enumeration] Signed-off-by: Alan Cox Signed-off-by: Matthew Garrett commit 0978e012cfbaca8bd312933e98cdea2d11778e11 Author: Joe Perches Date: Mon Apr 4 10:06:25 2011 -0700 thinkpad_acpi: Convert printks to pr_ Add pr_fmt. Removed local TPACPI_ #defines, convert to pr_. Neaten dbg_ macros. Added a few missing newlines to logging messages. Added static inline str_supported for !CONFIG_THINKPAD_ACPI_DEBUG vdbg_printk defect reported by Sedat Dilek . Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 112a6ee053f9e9f014ab64f2549d3a25551aa349 Author: Joe Perches Date: Mon Apr 4 10:06:24 2011 -0700 thinkpad_acpi: Correct !CONFIG_THINKPAD_ACPI_VIDEO warning Move TPACPI_HANDLE declaration into #ifdef block and neaten it a bit. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 253a0069d7a222f7ad55f2c40f541a7648920c77 Author: Ameya Palande Date: Fri Apr 1 16:54:11 2011 +0300 platform-x86: intel_mid_thermal: Fix coding style Before fixing checkpatch.pl reported 74 errors and 234 warnings Signed-off-by: Ameya Palande Signed-off-by: Matthew Garrett commit ad3f2f038fbd67f3341f760507aed90381114145 Author: Joe Perches Date: Tue Mar 29 15:21:54 2011 -0700 xo15-ebook: Use pr_ Use the current logging styles. Remove local #define PREFIX. Add pr_fmt. Convert printk to pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit dd8e908e82964b8b493ef241707fb6109aa41cfd Author: Joe Perches Date: Tue Mar 29 15:21:53 2011 -0700 wmi: Removed trailing whitespace from logging message. Just neatening. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 7e33460d8d991843a5821d667b55c75a092cf6e3 Author: Joe Perches Date: Tue Mar 29 15:21:52 2011 -0700 toshiba: Convert printks to pr_ Add pr_fmt. Remove local MY_ #defines. Convert printks to pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 93c1d05b5fa83ac771b5d1a5b4eb0fe6f54b3b46 Author: Joe Perches Date: Tue Mar 29 15:21:51 2011 -0700 topstar-laptop: Convert remaining printk to pr_info To be similar to all other uses. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 33cab1b71ec1bd02d55cede277bbc91485a68068 Author: Joe Perches Date: Tue Mar 29 15:21:49 2011 -0700 tc1100-wmi: Add pr_fmt, use pr_ Use the more normal logging styles. Removed now unused local logging #defines. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 50f581a4f09f5b7f78a1c791e09b2c8d24a1e20c Author: Joe Perches Date: Tue Mar 29 15:21:48 2011 -0700 sony-laptop: Add and use #define pr_fmt Add pr_fmt. Remove now unused #define DRV_PRX. Neaten dprintk macro. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit dd3c7f2308e91d6ecbe5cd8a3310bb49e47e1ae7 Author: Joe Perches Date: Tue Mar 29 15:21:47 2011 -0700 msi-wmi: Use pr_fmt and pr_ Added pr_fmt. Removed now unused #define DRV_PFX Convert dprintk to pr_debug. Convert printks to pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit f9dcf192ed527fbf2f3a8a3574006d1ae855100b Author: Joe Perches Date: Tue Mar 29 15:21:46 2011 -0700 msi-laptop: pr_ neatening Just making it a bit more like other logging message uses. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 9a2ffd168ef8ec3705060ffb21d6dcb20eeb9506 Author: Joe Perches Date: Tue Mar 29 15:21:45 2011 -0700 intel_pmic_gpio: Convert printks to pr_ Add #define pr_fmt(fmt) "%s: " fmt, __func__ to prefix function name to each output message. Convert printks to pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 4686f6df69c5bca5ea795e01048d32f6eed07ba7 Author: Joe Perches Date: Tue Mar 29 15:21:44 2011 -0700 intel_menlow: Add pr_fmt and use pr_ Add pr_fmt to prefix the logging messages. Convert printk to pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 9ab23989d3e774f4545c83eeab0137e35f7115be Author: Joe Perches Date: Tue Mar 29 15:21:43 2011 -0700 ideapad-laptop: Add pr_fmt Add pr_fmt to prefix logging messages. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 323623a717c7feec3f36099f4caa18b3319c5cca Author: Joe Perches Date: Tue Mar 29 15:21:42 2011 -0700 ibm_rtl: Use pr_fmt and pr_ Remove hard coded prefixes from logging messages. Neaten RTL_DEBUG macro and uses. Convert __FUNCTION__ to __func__. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit b5a4223c1ce5edbaae3db9494de8dcb2d08a755b Author: Joe Perches Date: Tue Mar 29 15:21:41 2011 -0700 hp-wmi: Convert printks to pr_ Added pr_fmt and converted printks to pr_. Removed now unused PREFIX and UNIMPL #defines. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 611f5763fd0e38f896aa38346d4bc3f5c388b608 Author: Joe Perches Date: Tue Mar 29 15:21:40 2011 -0700 hdaps: Convert printks to pr_ Added pr_fmt, converted printks and removed hard coded prefixes. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 77bad7c830e20085deba6a760ce85c13ecb12f4d Author: Joe Perches Date: Tue Mar 29 15:21:39 2011 -0700 fujitsu-laptop: Convert printks to pr_ Added pr_fmt, converted printks and removed hard coded prefixes. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 22441ffeed17b94b28bd7c609f2cdb24d11e81f3 Author: Joe Perches Date: Tue Mar 29 15:21:38 2011 -0700 eeepc: Use pr_warn Just a trivial pr_warning to pr_warn conversion while adding a few missing newlines. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit eb8895241dfb6c26114928b186cc1810cbd57f1b Author: Joe Perches Date: Tue Mar 29 15:21:37 2011 -0700 dell: Convert printks to pr_ Add pr_fmt. Remove hard coded prefixes and use pr_. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit b4a4bc0bd1328b587a905e346d8494f9b9423cc5 Author: Joe Perches Date: Tue Mar 29 15:21:36 2011 -0700 compal-laptop: Convert printks to pr_ Add pr_fmt. Convert printks to pr_ removing DRIVER_NAME prefix. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 5ad77dcfb49a85715bcb9174a133cba140eda1bc Author: Joe Perches Date: Tue Mar 29 15:21:35 2011 -0700 asus: Add pr_fmt and convert printks to pr_ Add pr_fmt, prefixes each log message. Convert printks to pr_. Convert pr_warning to pr_warn. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 249c720d88fa325522cb763dda09f8c9e8e964cb Author: Joe Perches Date: Tue Mar 29 15:21:34 2011 -0700 acer-wmi: pr_ cleanups Convert pr_warning to pr_warn. Add some missing newlines to pr_ uses. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 3a35125f97be0658305c9509c51077959c19b244 Author: Joe Perches Date: Tue Mar 29 15:21:33 2011 -0700 ibm_rtl: Remove warnings from casts of pointer to int Just print them as %p. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit 39ddf3bf6463bc86041e806b43e014d50a144aa4 Author: Joe Perches Date: Tue Mar 29 15:21:32 2011 -0700 asus-wmi: Remove __init from asus_wmi_platform_init It's used by a non-init function. Signed-off-by: Joe Perches Signed-off-by: Matthew Garrett commit e5cdb13ff95e1400bc94d3e6610fc5e95be3b5b1 Author: Kevin Hilman Date: Fri May 20 11:53:37 2011 +0200 GPIO: OMAP: move to drivers/gpio Move OMAP GPIO driver to drivers/gpio. Builds whenever CONFIG_ARCH_OMAP=y. Signed-off-by: Kevin Hilman commit 5ee1a81b84ee8b0bd0b4f8cdbac48b472863c1f2 Author: Kevin Hilman Date: Wed Apr 20 15:44:11 2011 -0700 GPIO: OMAP: move register offset defines into Register offset defines are moved to so they can be used by SoC-specific device init code to fill out platform_data register offsets. Signed-off-by: Kevin Hilman commit 383c55350fb4ab6bd08abfab82038ae0364f1f48 Author: Steve French Date: Fri May 27 15:19:12 2011 +0000 [CIFS] Fix endian error comparing authusers when cifsacl enabled Fix sparse warning: CHECK fs/cifs/cifsacl.c fs/cifs/cifsacl.c:41:36: warning: incorrect type in initializer (different base types) fs/cifs/cifsacl.c:41:36: expected restricted __le32 fs/cifs/cifsacl.c:41:36: got int fs/cifs/cifsacl.c:461:52: warning: restricted __le32 degrades to integer fs/cifs/cifsacl.c:461:73: warning: restricted __le32 degrades to integer The second one looks harmless but the first one (sid_authusers) was added in commit 2fbc2f1729e785a7b2faf9d8d60926bb1ff62af0 and only affects 2.6.38/2.6.39 CC: Stable Reviewed-and-Tested-by: Shirish Pargaonkar Signed-off-by: Steve French commit f133ecca9cbb31b5e6e9bda27cbe3034fbf656df Author: Chris Metcalf Date: Thu May 26 12:40:09 2011 -0400 arch/tile: more /proc and /sys file support This change introduces a few of the less controversial /proc and /proc/sys interfaces for tile, along with sysfs attributes for various things that were originally proposed as /proc/tile files. It also adjusts the "hardwall" proc API. Arnd Bergmann reviewed the initial arch/tile submission, which included a complete set of all the /proc/tile and /proc/sys/tile knobs that we had added in a somewhat ad hoc way during initial development, and provided feedback on where most of them should go. One knob turned out to be similar enough to the existing /proc/sys/debug/exception-trace that it was re-implemented to use that model instead. Another knob was /proc/tile/grid, which reported the "grid" dimensions of a tile chip (e.g. 8x8 processors = 64-core chip). Arnd suggested looking at sysfs for that, so this change moves that information to a pair of sysfs attributes (chip_width and chip_height) in the /sys/devices/system/cpu directory. We also put the "chip_serial" and "chip_revision" information from our old /proc/tile/board file as attributes in /sys/devices/system/cpu. Other information collected via hypervisor APIs is now placed in /sys/hypervisor. We create a /sys/hypervisor/type file (holding the constant string "tilera") to be parallel with the Xen use of /sys/hypervisor/type holding "xen". We create three top-level files, "version" (the hypervisor's own version), "config_version" (the version of the configuration file), and "hvconfig" (the contents of the configuration file). The remaining information from our old /proc/tile/board and /proc/tile/switch files becomes an attribute group appearing under /sys/hypervisor/board/. Finally, after some feedback from Arnd Bergmann for the previous version of this patch, the /proc/tile/hardwall file is split up into two conceptual parts. First, a directory /proc/tile/hardwall/ which contains one file per active hardwall, each file named after the hardwall's ID and holding a cpulist that says which cpus are enclosed by the hardwall. Second, a /proc/PID file "hardwall" that is either empty (for non-hardwall-using processes) or contains the hardwall ID. Finally, this change pushes the /proc/sys/tile/unaligned_fixup/ directory, with knobs controlling the kernel code for handling the fixup of unaligned exceptions. Reviewed-by: Arnd Bergmann Signed-off-by: Chris Metcalf commit ea02c63d57d7ec099f66ddb2942b4022e865cd5f Author: Mark Brown Date: Fri May 27 21:56:16 2011 +0800 ASoC: Fix wm_hubs input PGA ZC bits Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 174ba50915b08dcfd07c8b5fb795b46a165fa09a Author: Chris Mason Date: Fri May 27 10:03:58 2011 -0400 Btrfs: use the device_list_mutex during write_dev_supers write_dev_supers was changed to use RCU to protect the list of devices, but it was then sleeping while it actually wrote the supers. This fixes it to just use the mutex, since we really don't any concurrency in write_dev_supers anyway. Signed-off-by: Chris Mason commit 1007da0604b1d2f064bfecece0f131d57237b03f Author: Stephen Warren Date: Thu May 26 09:57:33 2011 -0600 ASoC: Fix dapm_is_shared_kcontrol so everything isn't shared Commit af46800 ("ASoC: Implement mux control sharing") introduced function dapm_is_shared_kcontrol. When this function returns true, the naming of DAPM controls is derived from the kcontrol_new. Otherwise, the name comes from the widget (and possibly a widget's naming prefix). A bug in the implementation of dapm_is_shared_kcontrol made it return 1 in all cases. Hence, that commit caused a change in control naming for all controls instead of just shared controls. Specifically, a control is always considered shared because it is always compared against itself. Solve this by never comparing against the widget containing the control being created. Equally, controls should never be shared between DAPM contexts; when the same codec is instantiated multiple times, the same kcontrol_new will be used. However, the control should no be shared between the multiple instances. I tested that with the Tegra WM8903 driver: * Shared is now mostly 0 as expected, and sometimes 1. * The expected controls are still generated after this change. However, I don't have any systems that have a widget/control naming prefix, so I can't test that aspect. Thanks for Jarkko Nikula for pointing out how to fix this. Reported-by: Liam Girdwood Tested-by: Jarkko Nikula Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4b4563dc80594c6a2580aa52d9fcf0177a27074e Author: Christoph Hellwig Date: Fri May 27 09:28:01 2011 -0400 fs: cosmetic inode.c cleanups Move the lock order description after all the includes, remove several fairly outdated and/or incorrect comments, move Andrea's copyright/changelog to the top where it belongs, remove the pointless filename in the top of the file comment, and remove to useless macros. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit c642808454ac81d6a6701da6022e93bbe47bb38b Author: Andreas Gruenbacher Date: Fri May 27 14:52:09 2011 +0200 vfs: Improve the bio_add_page() and bio_add_pc_page() descriptions The descriptions of bio_add_page() and bio_add_pc_page() are slightly inconsistent; improve them. Signed-off-by: Andreas Gruenbacher Signed-off-by: Al Viro commit 55b23bde19c08f14127a27d461a4e079942c7258 Author: Andreas Gruenbacher Date: Fri May 27 14:50:36 2011 +0200 xattr: Fix error results for non-existent / invisible attributes Return -ENODATA when trying to read a user.* attribute which cannot exist: user space otherwise does not have a reasonable way to distinguish between non-existent and inaccessible attributes. Likewise, return -ENODATA when an unprivileged process tries to read a trusted.* attribute: to unprivileged processes, those attributes are invisible (listxattr() won't include them). Related to this bug report: https://bugzilla.redhat.com/660613 Signed-off-by: Andreas Gruenbacher Signed-off-by: Al Viro commit d6a72fe465f4c54654a1d5488daeb820b4ecf275 Merge: b1d2dc3 b1cff0a Author: Ingo Molnar Date: Fri May 27 14:28:09 2011 +0200 Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent commit b1d2dc3c06d8da7d58fb43d7123a91c1d6a4f576 Merge: 75911c9 b76a06e Author: Ingo Molnar Date: Fri May 27 14:08:09 2011 +0200 Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent commit 61db1802bf33bf027cd97ba3f79566b2b2fce5c6 Author: Nicholas Bellinger Date: Thu May 19 20:19:14 2011 -0700 [SCSI] target: Convert TASK_ATTR to scsi_tcq.h definitions This patch converts target core and follwing scsi-misc upstream fabric modules to use include/scsi/scsi_tcq.h includes for SIMPLE, HEAD_OF_QUEUE and ORDERED SCSI tasks instead of scsi/libsas.h with TASK_ATTR* *) tcm_loop: Convert tcm_loop_allocate_core_cmd() + tcm_loop_device_reset() to scsi_tcq.h *) tcm_fc: Convert ft_send_cmd() from FCP_PTA_* to scsi_tcq.h Reported-by: Christoph Hellwig Signed-off-by: Nicholas A. Bellinger Signed-off-by: James Bottomley commit 1078da163fd2c1d3cba76cd4018e897a4f98efc5 Author: Nicholas Bellinger Date: Thu May 19 20:19:13 2011 -0700 [SCSI] target: Convert REPORT_LUNs to use int_to_scsilun This patch converts transport_core_report_lun_response() to use drivers/scsi/scsi_scan.c:int_to_scsilun instead of using the struct target_core_fabric_ops->pack_lun() fabric provided API vector. It also removes the tfo->pack_lun check from target_fabric_tf_ops_check() and removes from struct target_core_fabric_ops->pack_lun() from target_core_fabric_ops.h, and the following mainline scsi-misc fabric modules: *) tcm_loop: Drop tcm_loop_pack_lun() usage *) tcm_fc: Drop ft_pack_lun() usage Reported-by: Mike Christie Signed-off-by: Nicholas A. Bellinger Signed-off-by: James Bottomley commit ccf4d680f80941f0073a9bc6a5e0ed41496b46e7 Author: Nicholas Bellinger Date: Thu May 19 20:19:12 2011 -0700 [SCSI] target: Fix task->task_execute_queue=1 clear bug + LUN_RESET OOPs This patch fixes a bug where task->task_execute_queue=1 was not being cleared once se_task had been removed from se_device->execute_task_list, resulting in an OOPs in core_tmr_lun_reset() for the task->task_active=0 case where transport_remove_task_from_execute_queue() was incorrectly being called. This patch fixes two cases in transport_get_task_from_execute_queue() and transport_remove_task_from_execute_queue() to properly clear task->task_execute_queue=0 once list_del(&task->t_execute_list) has been called. It also adds an explict check in transport_remove_task_from_execute_queue() to dump_stack + return if called with task->task_execute_queue=0. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 42c6951e2f7a665bcb57b92fe3f806ba48152c0e Author: Nicholas Bellinger Date: Thu May 19 20:19:11 2011 -0700 [SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks release This patch addresses a bug in the target core release path for HW operation where transport_free_dev_tasks() was incorrectly being called from transport_lun_remove_cmd() while releasing a se_cmd reference and calling struct target_core_fabric_ops->queue_data_in(). This would result in a OOPs with HW target mode when the release of se_task->task_sg[] would happen before pci_unmap_sg() can be called in HW target mode fabric module code. This patch addresses the issue by moving transport_free_dev_tasks() from transport_lun_remove_cmd() into transport_generic_free_cmd(), and adding TRANSPORT_FREE_CMD_INTR and transport_generic_free_cmd_intr() to allow se_cmd descriptor release to happen fromfrom within transport_processing_thread() process context when release of se_cmd is not possible from HW interrupt context. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 1e7de68c57daf75ec4b721f101f88cccf029e38c Author: Nicholas Bellinger Date: Thu May 19 20:19:10 2011 -0700 [SCSI] target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req This patch fixes two bugs wrt to the interrupt context usage of target core with HW target mode drivers. It first converts the usage of struct se_device->stats_lock in transport_get_lun_for_cmd() and core_tmr_lun_reset() to properly use spin_lock_irq() to address an BUG with CONFIG_LOCKDEP_SUPPORT=y enabled. This patch also adds a 'in_interrupt()' check to allow GFP_ATOMIC usage from core_tmr_alloc_req() to fix a 'sleeping in interrupt context' BUG with HW target fabrics that require this logic to function. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 4a8fcc2cc34b7546584bf9ebd8f0caf433e4736e Author: Nicholas Bellinger Date: Thu May 19 20:19:09 2011 -0700 [SCSI] target: Fix multi task->task_sg[] chaining logic bug This patch fixes a bug in transport_do_task_sg_chain() used by HW target mode modules with sg_chain() to provide a single sg_next() walkable memory layout for use with pci_map_sg() and friends. This patch addresses an issue with mapping multiple small block max_sector tasks across multiple struct se_task->task_sg[] mappings for HW target mode operation. This was causing OOPs with (cmd->t_task->t_tasks_no > 1) I/O traffic for HW target drivers using transport_do_task_sg_chain(), and has been tested so far with tcm_fc(openfcoe), tcm_qla2xxx, and ib_srpt fabrics with t_tasks_no > 1 IBLOCK backends using a smaller max_sectors to trigger the original issue. Signed-off-by: Nicholas Bellinger Acked-by: Kiran Patil Cc: stable@kernel.org Signed-off-by: James Bottomley commit c74c0bfe0b61cf41a897c2444c038e0d3f600556 Author: Hans Schillstrom Date: Tue May 24 14:11:05 2011 +0200 IPVS: bug in ip_vs_ftp, same list heaad used in all netns. When ip_vs was adapted to netns the ftp application was not adapted in a correct way. However this is a fix to avoid kernel errors. In the long term another solution might be chosen. I.e the ports that the ftp appl, uses should be per netns. Signed-off-by: Hans Schillstrom Acked-by: Julian Anastasov Signed-off-by: Pablo Neira Ayuso commit aa38572954ade525817fe88c54faebf85e5a61c0 Author: Christoph Hellwig Date: Fri May 27 06:53:02 2011 -0400 fs: pass exact type of data dirties to ->dirty_inode Tell the filesystem if we just updated timestamp (I_DIRTY_SYNC) or anything else, so that the filesystem can track internally if it needs to push out a transaction for fdatasync or not. This is just the prototype change with no user for it yet. I plan to push large XFS changes for the next merge window, and getting this trivial infrastructure in this window would help a lot to avoid tree interdependencies. Also remove incorrect comments that ->dirty_inode can't block. That has been changed a long time ago, and many implementations rely on it. Signed-off-by: Christoph Hellwig Signed-off-by: Al Viro commit d6e9bd256c88ce5f4b668249e363a74f51393daa Author: Al Viro Date: Fri May 27 07:03:15 2011 -0400 Lift the check for automount points into do_lookup() Signed-off-by: Al Viro commit dea3937619cb67d2ad08e2d29ae923875b1eeee9 Author: Al Viro Date: Fri May 27 06:53:39 2011 -0400 Trim excessive arguments of follow_mount_rcu() ... and kill a useless local variable in follow_dotdot_rcu(), while we are at it - follow_mount_rcu(nd, path, inode) *always* assigned value to *inode, and always it had been path->dentry->d_inode (aka nd->path.dentry->d_inode, since it always got &nd->path as the second argument). Signed-off-by: Al Viro commit 287548e46aa752ce9bb87fcff46f8aa794cc5037 Author: Al Viro Date: Fri May 27 06:50:06 2011 -0400 split __follow_mount_rcu() into normal and .. cases Signed-off-by: Al Viro commit cb220d16f91f8d5fa1450c7af17e028e8cb3f0f1 Author: Axel Lin Date: Mon May 23 20:08:10 2011 +0800 regulator: Fix _regulator_get_voltage if get_voltage callback is NULL In the case of get_voltage callback is NULL, current implementation in _regulator_get_voltage will return -EINVAL. Also returns proper error if ret is negative value. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 5ccee4ae8eab957ab6d534283db5bd27703dba03 Author: Graeme Gregory Date: Sun May 22 21:21:24 2011 +0100 USB: TWL6025 allow different regulator name The twl6025 uses a different regulator for USB than the 6030 so select the correct regulator name depending on the subclass of device. Since V1 Use features passed via platform data instead of global variable. Signed-off-by: Graeme Gregory Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 4d94aee577ea8179bd40f0f17e64cada25c66b85 Author: Graeme Gregory Date: Sun May 22 21:21:23 2011 +0100 REGULATOR: TWL6025: add support to twl-regulator Adding support for the twl6025. Major difference in the twl6025 is the group functionality has been removed from the chip so this affects how regulators are enabled and disabled. The names of the regulators also changed. The DCDCs of the 6025 are software controllable as well. Since V1 Use the features variable passed via platform data instead of calling global function. Change the very switch like if statements to be a more readable switch statement. Since V2 twl6025 doesn't use remap so remove it from the macros. Since V3 enable/disable functions for 4030/6030 were seperated upstream so rebase on top of this. Change DCDC reference to SMPS as this is used in TRM. Change list_voltage slightly to have less code. Signed-off-by: Graeme Gregory Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 0ff3897d79d4607d37432b3eb81a304f7e4b4841 Author: Balaji T K Date: Fri May 20 19:03:52 2011 +0530 regulator: twl6030: do not write to _GRP for regulator disable TWL6030: regulator is disabled via VREG_STATE TWL4030: regulator is disabled via VREG_GRP Since there is nothing common, split twlreg_enable similar to other regulator_ops Signed-off-by: Balaji T K Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit f8c2940bcd623b4d185d4ff7ff5678a4508939b3 Author: Balaji T K Date: Fri May 20 19:03:51 2011 +0530 regulator: twl6030: do not write to _GRP for regulator enable TWL6030: regulator is enabled via VREG_STATE TWL4030: regulator is enabled via VREG_GRP Since there is nothing common, split twlreg_enable similar to other regulator_ops Signed-off-by: Balaji T K Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 6851ad3ab3461966adfffe8789372fe8256da792 Author: Jorge Eduardo Candelaria Date: Mon May 16 18:35:48 2011 -0500 TPS65911: Comparator: Add comparator driver This driver adds functionality to the tps65911 chip driver. Two of the comparators are configurable by software and measures VCCS voltage to detect high or low voltage scenarios. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit 11ad14f86a7847b084d3e3f114180be39b1c7322 Author: Jorge Eduardo Candelaria Date: Mon May 16 18:35:42 2011 -0500 TPS65911: Add support for added GPIO lines GPIO 1 to 8 are added for TPS65911 chip version. The gpio driver now handles more than one gpio lines. Subsequent versions of the chip family can add new GPIO lines with minimal driver changes. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Grant Likely Signed-off-by: Liam Girdwood commit 83545d836cf12a6381b530c5c7aeacf057f86aa9 Author: Jorge Eduardo Candelaria Date: Mon May 16 18:35:37 2011 -0500 GPIO: TPS65910: Move driver to drivers/gpio/ The GPIO driver should reside in drivers/gpio/ for better organization. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Grant Likely Signed-off-by: Liam Girdwood commit a2974732ca7614aaf0baf9d6dd3ad893d50ce1c5 Author: Jorge Eduardo Candelaria Date: Mon May 16 18:35:07 2011 -0500 TPS65911: Add new irq definitions TPS65911 adds new interrupt sources, as well as two new registers to handle them, one for interrupt status and one for interrupt masking. The added irqs are: -VMBCH2 - Low and High threshold -GPIO1-8 - Rising and falling edge detection -WTCHDG - Watchdog interrupt -PWRDN - PWRDN reset interrupt The code should handle these new registers only when the chip version is TPS65911. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit a320e3c3d6351814afa5182159df88d2637e0f6f Author: Jorge Eduardo Candelaria Date: Mon May 16 18:35:03 2011 -0500 regulator: tps65911: Add new chip version The tps65911 chip introduces new features, including changes in the regulator module. - VDD1 and VDD2 remain unchanged. - VDD3 is now named VDDCTRL and has a wider voltage range. - LDOs are now named LDO1...8 and voltage ranges are sequential, making LDOs easier to handle. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 795570561cc9c8dc7f7582ed6c4d07121b1c4831 Author: Jorge Eduardo Candelaria Date: Mon May 16 18:34:59 2011 -0500 MFD: TPS65910: Add support for TPS65911 device The TPS65911 is the next generation of the TPS65910 family of PMIC chips. It adds a few features: - Watchdog Timer - PWM & LED generators - Comparators for system control status It also adds a set of Interrupts and GPIOs, among other things. The driver exports a function to identify between different versions of the tps65910 family, allowing other modules to identify the capabilities of the current chip. Signed-off-by: Jorge Eduardo Candelaria Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit 3c24019ddeab71ddf125ad2ad13a38041655c1fd Author: Axel Lin Date: Wed May 18 20:56:45 2011 +0800 regulator: Fix off-by-one value range checking for mc13xxx_regulator_get_voltage We use val as array index, thus the valid value rangae for val should be 0 .. n_voltages-1. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 6dc4efc6d5429292f29009f6569fbb9a53929dd6 Author: Fabio Estevam Date: Mon May 16 10:54:27 2011 -0300 regulator: mc13892: Fix voltage unit in test case. Voltage values should be expressed in microvolts, not in milivolts. Signed-off-by: Fabio Estevam Signed-off-by: Ranjani Vaidyanathan Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit ecb9c4f5956afa2ca0a20a1f99932b9ff81de854 Author: Axel Lin Date: Mon May 16 18:20:34 2011 +0800 regulator: Remove MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros In current implementation, the original macro implementation assumes the caller pass the parameter starting from 1 (to match the register names in datasheet). Thus we have unneeded plus one then minus one operations when using MAX8997_REG_BUCK1DVS/MAX8997_REG_BUCK2DVS/MAX8997_REG_BUCK5DVS macros. This patch removes these macros to avoid unneeded plus one then minus one operations without reducing readability. Signed-off-by: Axel Lin Acked-by: Kyungmin Park Acked-by: MyungJoo Ham Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 0514e9acd7655c708fbf12a659ea43d835bc688a Author: Axel Lin Date: Mon May 16 22:19:01 2011 +0800 mfd: Fix off-by-one value range checking for tps65910_i2c_write If bytes == (TPS65910_MAX_REGISTER + 1), we have a buffer overflow when doing memcpy(&msg[1], src, bytes). Signed-off-by: Axel Lin Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit 4aa922c024b2a194d7b68b22a66dfcf86e7838b3 Author: Mark Brown Date: Sat May 14 13:42:34 2011 -0700 regulator: Only apply voltage constraints from consumers that set them When applying the set_voltage() requests from consumers skip over those consumers that haven't set anything, otherwise we'll come out with a maximum voltage of zero. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit a4b4148379ef1ad460fc1aa6bcf2cde99cd91166 Author: Mark Brown Date: Sat May 14 11:19:45 2011 -0700 regulator: If we can't configure optimum mode we're always in the best one If either a regulator driver can't tell us what the optimum mode is (or doesn't have modes in the first place) or the system doesn't allow DRMS changes then it's more helpful for users to just say that we're in the optimal mode, even if it's from a selection of one. Still report errors if the process of picking and setting a mode changes as this may indicate that we're stuck in a low power mode and unable to deliver a higher current that the consumer just asked for. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit afdaaafe8e829364d9c1276b5435cc28ee5619df Author: Jonghwan Choi Date: Thu May 12 11:37:48 2011 +0900 regulator: max8997: remove useless code fix unreachable code. Signed-off-by: Jonghwan Choi Signed-off-by: MyungJoo Ham Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 6be6e96fe90962171f31c099a5e7c28a49a0d0ae Author: Axel Lin Date: Fri May 13 14:54:06 2011 +0800 regulator: Fix memory leak in max8998_pmic_probe failure path Signed-off-by: Axel Lin Acked-by: Kyungmin Park Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 77fa44d0e10711e899788c58fe53f8f7b18c7f67 Author: Axel Lin Date: Thu May 12 13:47:50 2011 +0800 regulator: Fix desc_id for tps65023/6507x/65910 The desc_id variable should not be a static variable. The rest of the code assumes the desc_id must less than TPSxxxxx_NUM_REGULATOR. If we set desc_id to be a static variable, checking the return value of rdev_get_id() may return error. Signed-off-by: Axel Lin Cc: Anuj Aggarwal Cc: Graeme Gregory Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit c01e36dde4632e0a7474fddf0716f1e54f01f13e Author: Jorge Eduardo Candelaria Date: Wed May 11 01:43:02 2011 -0500 linux-next: build failure after merge of the voltage tree On May 10, 2011, at 9:27 PM, Stephen Rothwell wrote: > Hi Jorge, > > On Tue, 10 May 2011 12:30:36 -0500 Jorge Eduardo Candelaria wrote: >> >> On May 10, 2011, at 3:38 AM, Liam Girdwood wrote: >> >>> On Tue, 2011-05-10 at 12:44 +1000, Stephen Rothwell wrote: >>>> Hi Liam, >>>> >>>> After merging the voltage tree, today's linux-next build (x86_64 >>>> allmodconfig) failed like this: >>>> >>>> ERROR: "tps65910_gpio_init" [drivers/mfd/tps65910.ko] undefined! >>>> ERROR: "tps65910_irq_init" [drivers/mfd/tps65910.ko] undefined! >>>> ERROR: "irq_modify_status" [drivers/mfd/tps65910-irq.ko] undefined! >>>> ERROR: "irq_set_chip_and_handler_name" [drivers/mfd/tps65910-irq.ko] undefined! >>>> ERROR: "handle_edge_irq" [drivers/mfd/tps65910-irq.ko] undefined! >>>> >>>> I have used the voltage tree from next-20110509 for today. >>> >>> Jorge, could you send a fix for this today. >> >> The following patch should solve this: >> >> From: Jorge Eduardo Candelaria >> MFD: Fix TPS65910 build >> >> Support for tps65910 as a module is not available. The driver can >> only be compiled as built-in. OTOH, the regulator driver can still >> be built as module without breaking the compilation. >> >> Signed-off-by: Jorge Eduardo Candelaria > > Today (even with the above patch included) I got these errors from the > x86_64 allmodconfig build: > > tps65910.c:(.text+0xf4140): undefined reference to `i2c_master_send' > drivers/built-in.o: In function `tps65910_i2c_read': > tps65910.c:(.text+0xf41d2): undefined reference to `i2c_transfer' > drivers/built-in.o: In function `tps65910_i2c_init': > tps65910.c:(.init.text+0xcb83): undefined reference to `i2c_register_driver' > drivers/built-in.o: In function `tps65910_i2c_exit': > tps65910.c:(.exit.text+0x6e0): undefined reference to `i2c_del_driver' > > I have used the voltage tree from next-20110509 again today. Following patch should fix the dependency problems. Please review: From: Jorge Eduardo Candelaria [PATCH] MFD: TPS65910: Fix I2C dependency TPS65910 driver can only be compiled built-in, so the I2C driver should be as well. Signed-off-by: Jorge Eduardo Candelaria Signed-off-by: Liam Girdwood commit 327e15af15248563c896c16adad6fc6e04bb5a4d Author: Axel Lin Date: Tue May 10 19:10:36 2011 +0800 Revert "regulator: Move VCOINCELL to be the last element of mc13892_regulators array" I check this patch again and found this actually is not a bug because MC13xxx_DEFINE explictly defines the order of each entry in the array. Thus revert the patch. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit cda53103284f87a8f2c1eb5b075131c2bd45bc95 Author: Mark Brown Date: Tue May 10 15:52:57 2011 +0200 regulator: Remove some unused variables from wm831x DCDCs These became unused with the IRQ removal patch, I'm fairly sure that a patch was sent earlier by someone else but it doesn't seem to have been applied and I don't have a copy sitting around any more. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit aec519b5ec95e2d8b33b7620a2830afc55707e40 Author: Jorge Eduardo Candelaria Date: Tue May 10 12:30:36 2011 -0500 linux-next: build failure after merge of the voltage tree On May 10, 2011, at 3:38 AM, Liam Girdwood wrote: > On Tue, 2011-05-10 at 12:44 +1000, Stephen Rothwell wrote: >> Hi Liam, >> >> After merging the voltage tree, today's linux-next build (x86_64 >> allmodconfig) failed like this: >> >> ERROR: "tps65910_gpio_init" [drivers/mfd/tps65910.ko] undefined! >> ERROR: "tps65910_irq_init" [drivers/mfd/tps65910.ko] undefined! >> ERROR: "irq_modify_status" [drivers/mfd/tps65910-irq.ko] undefined! >> ERROR: "irq_set_chip_and_handler_name" [drivers/mfd/tps65910-irq.ko] undefined! >> ERROR: "handle_edge_irq" [drivers/mfd/tps65910-irq.ko] undefined! >> >> I have used the voltage tree from next-20110509 for today. > > Jorge, could you send a fix for this today. > > Thanks > > Liam > The following patch should solve this: From: Jorge Eduardo Candelaria MFD: Fix TPS65910 build Support for tps65910 as a module is not available. The driver can only be compiled as built-in. OTOH, the regulator driver can still be built as module without breaking the compilation. Signed-off-by: Jorge Eduardo Candelaria Signed-off-by: Liam Girdwood commit 518fb721de3685c8326e72746151b534a241feda Author: Graeme Gregory Date: Mon May 2 16:20:08 2011 -0500 TPS65910: Add tps65910 regulator driver The regulator module consists of 3 DCDCs and 8 LDOs. The output voltages are configurable and are meant to supply power to the main processor and other components Signed-off-by: Graeme Gregory Signed-off-by: Jorge Eduardo Candelaria Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit e3471bdc2784ee20a0d636c5904200c2d1148ef9 Author: Graeme Gregory Date: Mon May 2 16:20:04 2011 -0500 TPS65910: IRQ: Add interrupt controller This module controls the interrupt handling for the tps chip. The interrupt sources are the following: - GPIO falling/rising edge detection - Battery voltage below/above threshold - PWRON signal - PWRHOLD signal - Temperature detection - RTC alarm and periodic event Signed-off-by: Graeme Gregory Signed-off-by: Jorge Eduardo Candelaria Reviewed-by: Mark Brown Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit 2537df722d338ab687d7ed91dc589265c0d14aec Author: Graeme Gregory Date: Mon May 2 16:19:52 2011 -0500 TPS65910: GPIO: Add GPIO driver TPS65910 has one configurable GPIO that can be used for several purposes. Subsequent versions of the TPS chip support more than one GPIO. Signed-off-by: Graeme Gregory Signed-off-by: Jorge Eduardo Candelaria Acked-by: Grant Likely Signed-off-by: Liam Girdwood commit 27c6750ec56fd3b22c670d9333d519a322996eb2 Author: Graeme Gregory Date: Mon May 2 16:19:46 2011 -0500 MFD: TPS65910: Add new mfd device for TPS65910 The TPS65910 chip is a power management IC for multimedia and handheld devices. It contains the following components: - Regulators - GPIO controller - RTC The tps65910 core driver is registered as a platform driver and provides communication through I2C with the host device for the different components. Signed-off-by: Graeme Gregory Signed-off-by: Jorge Eduardo Candelaria Acked-by: Samuel Ortiz Signed-off-by: Liam Girdwood commit 98ea5c218ed150bf7cabb879db4fc2c106b6fa5b Author: Axel Lin Date: Mon May 9 17:49:40 2011 +0800 regulator: Use mc13xxx_reg_write instead of mc13xxx_reg_rmw in mc13892_sw_regulator_set_voltage Currently, we call mc13xxx_reg_read and mc13xxx_reg_rmw for the same register. This can be converted to simply a mc13xxx_reg_read and a mc13xxx_reg_write, thus save a redundant register read. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit bf5892a8167e4aa5a9a6d72f803fde850e0c5753 Author: Mark Brown Date: Sun May 8 22:13:37 2011 +0100 regulator: Support voltage offsets to compensate for drops in system Some systems, particularly physically large systems used for early prototyping, may experience substantial voltage drops between the regulator and the consumers as a result of long traces in the system. With these systems voltages may need to be set higher than requested in order to ensure reliable system operation. Allow systems to work around such hardware issues by allowing constraints to supply an offset to be applied to any requested and reported voltages. This is not ideal, especially since the voltage drop may be load dependant, but is sufficient for most affected systems, it is not expected to be used in production hardware. The offset is applied after all constraint processing so constraints should be specified in terms of consumer values not physically configured values. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 492c826b9facefa84995f4dea917e301b5ee0884 Author: Mark Brown Date: Sun May 8 22:30:18 2011 +0100 regulator: Remove supply_regulator_dev from machine configuration supply_regulator_dev (using a struct pointer) has been deprecated in favour of supply_regulator (using a regulator name) for quite a few releases now with a warning generated if it is used and there are no current in tree users so just remove the code. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit ba413c5972676295862797a46f9070f81691d80e Author: Axel Lin Date: Thu May 5 23:32:58 2011 +0800 regulator: Move VCOINCELL to be the last element of mc13892_regulators array In include/linux/mfd/mc13892.h, we define MC13892_VCOINCELL as 23. Thus VCOINCELL should be defined as 23th element in mc13892_regulators array, not the first one. This actually fixes an off-by-one bug while accessing mc13892_regulators array. For example, In mc13892_regulator_probe, we use MC13892_VCAM as array index of mc13892_regulators array. mc13892_regulators[MC13892_VCAM].desc.ops->set_mode = mc13892_vcam_set_mode; Currently, it access mc13892_regulators[12] ,which is VAUDIO not VCAM. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 82d158397b6eeb464263a6ef6a739c4118a34720 Author: Mark Brown Date: Mon May 9 11:41:02 2011 +0200 regulator: Factor out references to rdev in regulator_force_disable() Don't go looking up the rdev pointer every time, just use a local variable like everything else. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 7ce8a2a05f249054e6bce109a15ee188b4124256 Author: Mark Brown Date: Sun May 8 22:19:09 2011 +0100 regulator: Convert WM8400 to get_voltage_sel() Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 22c51b47aa7cded7e4768540ebbbfddc91e31d90 Author: Axel Lin Date: Fri Apr 1 18:25:25 2011 +0800 regulator: Fix the argument of calling regulator_mode_constrain The second parameter of regulator_mode_constrain takes a pointer. This patch fixes below warning: drivers/regulator/core.c: In function 'regulator_set_mode': drivers/regulator/core.c:2014: warning: passing argument 2 of 'regulator_mode_constrain' makes pointer from integer without a cast drivers/regulator/core.c:200: note: expected 'int *' but argument is of type 'unsigned int' Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 1a39962fc4d1fccdf45fef2656b37acbae5fa793 Author: Saquib Herman Date: Fri Apr 1 10:22:46 2011 +0530 regulator: twl: add twl6030 set_mode Current set_mode logic does not support 6030. The logic for 4030 is not reusable for 6030 as the mode setting for 6030 now uses the new CFG_STATE register. We hence rename the old get_status as being specific to 4030. Signed-off-by: Nishanth Menon Signed-off-by: Saquib Herman Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 9a0244ad719258b0ae6064ad7da937cddcb109e0 Author: Saquib Herman Date: Fri Apr 1 10:22:45 2011 +0530 regulator: twl: add twl6030 get_status Current get_status logic does not support 6030 get_status. The logic for 4030 is not reusable for 6030 as the status check for 6030 now depends on the new CFG_STATE register. We hence rename the old get_status as being specific to 4030 and remove the redundant check for the same. Signed-off-by: Nishanth Menon Signed-off-by: Saquib Herman Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit b2456779f39e33ad63a63aabe9af77d1113f106e Author: Saquib Herman Date: Fri Apr 1 10:22:44 2011 +0530 regulator: twl: fix twl6030 regulator is_enabled With TWL6030, it is not enough to ensure that the regulator is the group of P1 group (CPU/Linux), but we need to check the state as far as APP is concerned as well. Split the current is_enabled to 6030 and 4030 specific ones. This split impacts few macros and variables as well, but sets up the stage for further fixes to set_mode and get_status in subsequent patches. Signed-off-by: Nishanth Menon Signed-off-by: Saquib Herman Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 776dc923f5c9cd0eea61475ed61350e377ad98b5 Author: Saquib Herman Date: Fri Apr 1 10:22:43 2011 +0530 regulator: twl: remap has no meaning for 6030 TWL6030 does not have remap register. The current implementation causes value of remap to be written to state register, accidentally causing the regulators which are probed to be switched on as well. This is wrong as regulators should be controllable based on calls to enable/disable for TWL regulator framework. Further, the values initialized make no sense as well. We hence remove this from the initalizers and also write to remap register only if the TWL is 4030. Signed-off-by: Nishanth Menon Signed-off-by: Saquib Herman Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 21657ebf868b9c7c6c0cab15a6797c3f1af64295 Author: Saquib Herman Date: Fri Apr 1 10:22:42 2011 +0530 regulator: twl: fix twl6030 enable/disable TWL6030 requires an additional register write to CFG_STATE register to explicitly state that the regulator is in a certain state. Merely associating the regulator with the group is not enough. Add the required register field definitions and fix the handling for TWL6030 enable/disable. Signed-off-by: Nishanth Menon Signed-off-by: Saquib Herman Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit f0f060bdd55e36adff4cc80b2a4ed026774db7a9 Author: Axel Lin Date: Tue Mar 29 17:54:58 2011 +0800 regulator: Add missing platform_set_drvdata in tps6105x_regulator_probe Otherwise, calling platform_get_drvdata in tps6105x_regulator_remove returns NULL. Signed-off-by: Axel Lin Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 2c6082341d1896218ca974cc2bb6876e36fcba5c Author: Mark Brown Date: Wed Mar 30 06:29:12 2011 +0900 regulator: When constraining modes fall back to higher power modes If a mode requested by a consumer is not allowed by constraints automatically fall back to a higher power mode if possible. This ensures that consumers get at least the output they requested while allowing machine drivers to transparently limit lower power modes if required. Signed-off-by: Mark Brown Signed-off-by: Liam Girdwood commit 582e1b270f6db93007f9af86d4f28fdad3da0505 Author: Jean Delvare Date: Thu May 26 06:01:54 2011 -0400 hwmon: (coretemp) Fix section mismatch chk_ucode_version() is only called from coretemp_probe() which is __devinit, so it can be marked __devinit too. Signed-off-by: Jean Delvare Cc: Durgadoss R Cc: Fenghua Yu Cc: Guenter Roeck Signed-off-by: Guenter Roeck commit eec752b2b99c794766926a9bac59b0d7df5b09c2 Author: Guenter Roeck Date: Tue May 24 12:16:40 2011 -0700 hwmon: (pmbus) Initialize sysfs attributes Initialize sysfs attrs before device_create_file() call to suppress lockdep_init_map() warning: WARNING: at kernel/lockdep.c:2701 lockdep_init_map+0x12d/0x140() Reviewed-by: Robert Coulson Signed-off-by: Guenter Roeck Cc: stable@kernel.org # .39.x commit 6777b9e47e4daf7116ec12b69e9b5cc980809217 Author: Guenter Roeck Date: Mon May 23 13:52:35 2011 -0700 hwmon: (coretemp) Update comments describing the handling of HT CPUs Update comments describing the handling of HT CPUs based on review feedback. Signed-off-by: Guenter Roeck Cc: Fenghua Yu Cc: Durgadoss R Acked-by: Jean Delvare commit 4258781ac720ff8f2fa6c34c1bd06a0cb8562188 Author: Sergey Senozhatsky Date: Tue May 24 07:28:31 2011 -0400 hwmon: (coretemp) Initialize sysfs attributes Initialize sysfs attrs before device_create_file() call to suppress lockdep_init_map() warning: [ 3.653628] WARNING: at kernel/lockdep.c:2885 lockdep_init_map+0xea/0x43c() [ 3.653698] Modules linked in: [ 3.654835] Pid: 1, comm: swapper Not tainted 2.6.39-dbg-git8-05624-g46187f8 #576 [ 3.656014] Call Trace: [ 3.657139] [] warn_slowpath_common+0x7e/0x96 [ 3.658298] [] warn_slowpath_null+0x15/0x17 [ 3.659460] [] lockdep_init_map+0xea/0x43c [ 3.660616] [] sysfs_add_file_mode+0x5d/0xa8 [ 3.661785] [] sysfs_add_file+0xc/0xe [ 3.662929] [] sysfs_create_file+0x23/0x25 [ 3.664045] [] device_create_file+0x14/0x16 [ 3.665172] [] coretemp_probe+0xf9/0x185 [ 3.666306] [] platform_drv_probe+0x12/0x14 [ 3.667420] [] driver_probe_device+0xb0/0x14b [ 3.668542] [] __device_attach+0x35/0x3a [ 3.669710] [] ? __driver_attach+0x7c/0x7c [ 3.670816] [] bus_for_each_drv+0x54/0x88 [ 3.671921] [] device_attach+0x77/0x9b [ 3.673027] [] bus_probe_device+0x22/0x39 [ 3.674137] [] device_add+0x3c1/0x550 [ 3.675249] [] ? dev_set_name+0x3c/0x3e [ 3.676371] [] platform_device_add+0x10c/0x156 [ 3.677491] [] get_core_online+0xab/0x16e [ 3.678608] [] coretemp_init+0x4b/0x80 [ 3.679724] [] ? hwmon_init+0xee/0xee [ 3.680853] [] do_one_initcall+0x7a/0x13c [ 3.681975] [] kernel_init+0xe1/0x15b [ 3.683081] [] kernel_thread_helper+0x4/0x10 [ 3.684174] [] ? finish_task_switch+0x76/0xf0 [ 3.685266] [] ? retint_restore_args+0x13/0x13 [ 3.686356] [] ? start_kernel+0x3ee/0x3ee [ 3.687425] [] ? gs_change+0x13/0x13 [ 3.688489] ---[ end trace 7392ad3e6a92ae39 ]--- Signed-off-by: Sergey Senozhatsky Signed-off-by: Guenter Roeck commit 9a3865b185e77d1a4ca2d8356e37c19b78168961 Author: Ingo Molnar Date: Fri May 27 09:29:32 2011 +0200 x86, asm: Clean up desc.h a bit I have looked at this file and found it rather ugly - improve readability a bit. No change in functionality. Link: http://lkml.kernel.org/n/tip-incpt6y26yd8586idx65t9ll@git.kernel.org Signed-off-by: Ingo Molnar commit d194f1aa194d83ba3df0975497f9eaed48c95f6d Merge: ece928d ea5e167 Author: Joel Becker Date: Fri May 27 00:24:03 2011 -0700 Merge branch 'move_extents' of git://oss.oracle.com/git/tye/linux-2.6 into ocfs2-merge-window commit 9c3e737561b2473ea1fc5b83a0c1d51e1ff3d294 Author: Cliff Cai Date: Mon Mar 28 04:57:11 2011 -0400 spi/spi_bfin_sport: new driver for a SPI bus via the Blackfin SPORT peripheral The Blackfin SPORT peripheral is a pretty flexible device. With enough coaching, we can make it generate SPI compatible waveforms. This is desirable as the SPORT can run at much higher clock frequencies than the dedicated on-chip SPI peripheral, and it can do full duplex DMA. It also opens up the possibility of multiple SPI buses in case someone wants to dedicate a whole bus to a specific part that does not play well with others. Signed-off-by: Cliff Cai Signed-off-by: Bryan Wu Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Signed-off-by: Grant Likely commit ea5e1675ac832b42889ac8d254ea8fbfbdfaa8b2 Author: Tristan Ye Date: Fri May 27 15:24:14 2011 +0800 Ocfs2/move_extents: Validate moving goal after the adjustment. though the goal_to_be_moved will be validated again in following moving, it's still a good idea to validate it after adjustment at the very beginning, instead of validating it before adjustment. Signed-off-by: Tristan Ye commit 6aea6f5068cb86e89a6ac243c3fc131045b6563a Author: Tristan Ye Date: Fri May 27 15:19:56 2011 +0800 Ocfs2/move_extents: Avoid doing division in extent moving. It's not wise enough to do a 64bits division anywhere in kernside, replace it with a decent helper or proper shifts. Signed-off-by: Tristan Ye commit cf73df1e2975ae8f88e573e5f593761339a65def Merge: d1227e3 ea77b94 Author: Takashi Iwai Date: Fri May 27 08:03:03 2011 +0200 Merge branch 'fix/asoc' into for-linus commit d1227e3fe0c63a258db855f4f1536b0b34cd8725 Merge: 9477c58 78fa2c4 Author: Takashi Iwai Date: Fri May 27 08:02:59 2011 +0200 Merge branch 'fix/misc' into for-linus commit ac04fee0b5c55bbac0858727a4154110b55d3f5a Author: Namhyung Kim Date: Fri May 27 07:59:25 2011 +0200 loop: export module parameters Export 'max_loop' and 'max_part' parameters to sysfs so user can know that how many devices are allowed and how many partitions are supported. If 'max_loop' is 0, there is no restriction on the number of loop devices. User can create/use the devices as many as minor numbers available. If 'max_part' is 0, it means simply the device doesn't support partitioning. Also note that 'max_part' can be adjusted to power of 2 minus 1 form if needed. User should check this value after the module loading if he/she want to use that number correctly (i.e. fdisk, mknod, etc.). Signed-off-by: Namhyung Kim Cc: Laurent Vivier Signed-off-by: Jens Axboe commit d86e0e83b32bc84600adb0b6ea1fce389b266682 Author: Jens Axboe Date: Fri May 27 07:44:43 2011 +0200 block: export blk_{get,put}_queue() We need them in SCSI to fix a bug, but currently they are not exported to modules. Export them. Signed-off-by: Jens Axboe commit 96daf2b09178d8ebde2b0d56b027de917c17dfdf Author: Steve French Date: Fri May 27 04:34:02 2011 +0000 [CIFS] Rename three structures to avoid camel case secMode to sec_mode and cifsTconInfo to cifs_tcon and cifsSesInfo to cifs_ses Signed-off-by: Steve French commit 07cc6cf9ef84bcf6a60ee513332bcb0ad5d628d8 Author: Steve French Date: Fri May 27 04:12:29 2011 +0000 Fix extended security auth failure Fix authentication failures using extended security mechanisms. cifs client does not take into consideration extended security bit in capabilities field in negotiate protocol response from the server. Please refer to Samba bugzilla 8046. Reported-and-tested by: Werner Maes Signed-off-by: Shirish Pargaonkar Signed-off-by: Steve French commit d4ffff1fa9695c5b5c0bf337e208d8833b88ff2d Author: Pavel Shilovsky Date: Thu May 26 06:02:00 2011 +0000 CIFS: Add rwpidforward mount option Add rwpidforward mount option that switches on a mode when we forward pid of a process who opened a file to any read and write operation. This can prevent applications like WINE from failing on read or write operation on a previously locked file region from the same netfd from another process if we use mandatory brlock style. It is actual for WINE because during a run of WINE program two processes work on the same netfd - share the same file struct between several VFS fds: 1) WINE-server does open and lock; 2) WINE-application does read and write. Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 25c7f41e9234f60af30e086278f1de7974f8816f Author: Pavel Shilovsky Date: Thu May 26 23:35:47 2011 +0400 CIFS: Migrate to shared superblock model Add cifs_match_super to use in sget to share superblock between mounts that have the same //server/sharename, credentials and mount options. It helps us to improve performance on work with future SMB2.1 leases. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit f87d39d951329cd8f462bf9007d334122c0599d0 Author: Steve French Date: Fri May 27 03:50:55 2011 +0000 [CIFS] Migrate from prefixpath logic Now we point superblock to a server share root and set a root dentry appropriately. This let us share superblock between mounts like //server/sharename/foo/bar and //server/sharename/foo further. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 7ad20aa9d39a525542b0840ac38bfc77be831e19 Author: James Smart Date: Tue May 24 11:44:28 2011 -0400 [SCSI] lpfc 8.3.24: Extend BSG infrastructure and add link diagnostics Extend BSG infrastructure and add link diagnostics: - Removed unnecessary copies in handling pass-through mbox cmds. - Add embedded SLI_CONFIG support for BSG. - Add multibuffer support. - Implemented the setting up and tearing down Lancer FC device for performing internal and external loopback diagnostic tests. - Implemented the driver support for performing new link diagnostic tests Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 6d368e532168cb621731b3936945cd910cb25bd0 Author: James Smart Date: Tue May 24 11:44:12 2011 -0400 [SCSI] lpfc 8.3.24: Add resource extent support This patch adds support for hardware that returns resource ids via extents rather than contiguous ranges. [jejb: checkpatch.pl fixes] Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 52d5244096017bbd11164479116baceaede342b0 Author: James Smart Date: Tue May 24 11:42:45 2011 -0400 [SCSI] lpfc 8.3.24: Add request-firmware support Add request-firmware support: - Add support for request_firmware interface for INTF2 SLI4 ports. - Add ability to reset SLI4 INTF2 ports. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 912e3acde60b3b9ebf46c5ec5ae6bd01b80132c8 Author: James Smart Date: Tue May 24 11:42:11 2011 -0400 [SCSI] lpfc 8.3.24: Add SR-IOV control Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit c0c1151276aae83dffbe3f2837a3b1d893894115 Author: James Smart Date: Tue May 24 11:41:34 2011 -0400 [SCSI] lpfc 8.3.24: Extended hardware support and support dump images Extended hardware support and support dump images: - Make the size to be MAILBOX_SYSFS_MAX (4096) so that it allows the maximum sysfs binary access interface possible. - Add ids and model names for new hardware - Add capability of inducing SLI4 firmware dump obj file Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 0558056c1ecd177f2621fc2a0484d565270f7ae1 Author: James Smart Date: Tue May 24 11:40:48 2011 -0400 [SCSI] lpfc 8.3.24: Miscellaneous Fixes and Corrections Miscellaneous Fixes and Corrections - Remove the memset in the lpfc_sli4_remove_rpi_hdrs call. - Correct swapping of SGE word 2 relative to offset value - Reorganize CQ and EQ usage to comply with SLI4 Specification. - Expand the driver to check the rn bit. Only detect an error if the error bit is set and the RN bit is NOT set. - If mailbox completion code is not success AND the mailbox status is success, then and only then will the driver overwrite the mailbox status. - When driver initializing device, if the device is on a PCIe bus, set PCI's "needs fundamental reset" bit so that EEH uses fundamental reset instead of hot reset for recovery. - Prevent driver from using new WWN when changed in firmware (until driver reload) - When HBA reports maximum SGE size > 0xffffffff (infinite), override with 0x80000000. - Fixed potential missed SLI4 device initialization failure conditions. - Added 100ms delay before driver action following IF_TYPE_2 function reset. - Reverted patch to UNREG/REG on PLOGI to mapped/unmapped node. - Add a check for the CVL received flag in the fcf inuse routine to avoid unregistering the fcf if Devloss fires before Delay discover timer fires. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 1ca1e43e55f4cd068f997154ffaf5fa62b08b802 Author: Dave Jiang Date: Tue May 24 13:18:04 2011 -0700 [SCSI] libsas: Add option for SATA soft reset This allows a libsas driver to optionally provide a soft reset handler for libata to drive. The isci driver allows software to control the assertion/deassertion of SRST. [jejb: checkpatch.pl fixes] Signed-off-by: Dave Jiang Signed-off-by: Dan Williams Signed-off-by: James Bottomley commit 3673f4bf6a277f4f2944ad153ceb167b340f9ffc Author: Dan Williams Date: Tue May 24 13:17:58 2011 -0700 [SCSI] libsas: check dev->gone before submitting sata i/o Head off doomed-to-fail i/o in sas_queuecommand before sending it down the ata path. Before: sd 7:0:0:0: [sdd] Synchronizing SCSI cache ata8: no sense translation for status: 0x00 ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00 ata8.00: device reported invalid CHS sector 0 ata8: status=0x00 { } ata8: no sense translation for status: 0x00 ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00 ata8.00: device reported invalid CHS sector 0 ata8: status=0x00 { } ata8: no sense translation for status: 0x00 ata8: translated ATA stat/err 0x00/00 to SCSI SK/ASC/ASCQ 0xb/00/00 ata8.00: device reported invalid CHS sector 0 ata8: status=0x00 { } sd 7:0:0:0: [sdd] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE sd 7:0:0:0: [sdd] Sense Key : Aborted Command [current] [descriptor] sd 7:0:0:0: [sdd] Add. Sense: No additional sense information sd 7:0:0:0: [sdd] Stopping disk After: sd 9:0:0:0: [sdd] Synchronizing SCSI cache sd 9:0:0:0: [sdd] Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK sd 9:0:0:0: [sdd] Stopping disk sd 9:0:0:0: [sdd] START_STOP FAILED sd 9:0:0:0: [sdd] Result: hostbyte=DID_BAD_TARGET driverbyte=DRIVER_OK This is a cosmetic change as sata i/o can still leak to a gone device, but this addresses the nominal hotplug case when releasing the target. Acked-by: Jack Wang Signed-off-by: Dan Williams Signed-off-by: James Bottomley commit 90f1e10d08bad84f8fd15d3469a60d437d4de64f Author: Dan Williams Date: Tue May 24 13:17:53 2011 -0700 [SCSI] libsas: fix/amend device gone notification in sas_deform_port() Commit 56dd2c06 "libsas: Don't issue commands to devices that have been hot-removed" edited Darrick's original patch to remove setting 'gone' in the sas_deform_port() path because that prevented scsi sync cache commands from being issued when the driver was unloaded. However, this allows true device gone notifications (as signaled port phy events) to trigger sync cache commands to devices that are known to be unreachable. Teach libsas which sas_deform_port() invocations are likely device gone events. Signed-off-by: Dan Williams Signed-off-by: James Bottomley commit 641a58d66d086327042e9d73c6606fd02c8f067c Author: Pavel Shilovsky Date: Thu May 26 00:02:16 2011 +0400 CIFS: Fix memory leak in cifs_do_mount and simplify error handling code. Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 80b4037033c2dae31e73810d506ce93b3783be05 Author: Axel Lin Date: Wed May 11 20:39:05 2011 +0800 spi/tle620x: add missing device_remove_file() This patch includes below fixes: 1. Add missing device_remove_file for dev_attr_status_show in tle62x0_remove. 2. Fix tle62x0_probe error handling: Currently, if the error happens when ptr > 0, gpio_attrs[0] is not properly remove. Signed-off-by: Axel Lin Acked-by: Ben Dooks Signed-off-by: Grant Likely commit 3474cb3cc0140f9cf6ca56983f8180b4b4c5c36a Author: Joe Perches Date: Tue May 10 16:23:07 2011 -0700 gpio: Convert gpio_is_valid to return bool Make the code a bit more readable. Instead of casting an int to an unsigned then comparing to MAX_NR_GPIOS, add a >= 0 test and let the compiler optimizer do the conversion to unsigned. The generated code should be the same. Signed-off-by: Joe Perches Acked-by: Linus Walleij Signed-off-by: Grant Likely commit dc7acbb2518f250050179c8581a972df3b6a24f1 Merge: f01e1af 4bf0ff2 Author: Linus Torvalds Date: Thu May 26 19:01:15 2011 -0700 Merge branch 'upstream/tidy-xen-mmu-2.6.39' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen * 'upstream/tidy-xen-mmu-2.6.39' of git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen: xen: fix compile without CONFIG_XEN_DEBUG_FS Use arbitrary_virt_to_machine() to deal with ioremapped pud updates. Use arbitrary_virt_to_machine() to deal with ioremapped pmd updates. xen/mmu: remove all ad-hoc stats stuff xen: use normal virt_to_machine for ptes xen: make a pile of mmu pvop functions static vmalloc: remove vmalloc_sync_all() from alloc_vm_area() xen: condense everything onto xen_set_pte xen: use mmu_update for xen_set_pte_at() xen: drop all the special iomap pte paths. commit f01e1af445fac107e91d62a2d59dd535f633810b Author: Linus Torvalds Date: Tue May 24 13:48:51 2011 -0700 selinux: don't pass in NULL avd to avc_has_perm_noaudit Right now security_get_user_sids() will pass in a NULL avd pointer to avc_has_perm_noaudit(), which then forces that function to have a dummy entry for that case and just generally test it. Don't do it. The normal callers all pass a real avd pointer, and this helper function is incredibly hot. So don't make avc_has_perm_noaudit() do conditional stuff that isn't needed for the common case. This also avoids some duplicated stack space. Signed-off-by: Linus Torvalds commit bc9bc72e2f9bb07384c00604d1a40d0b5f62be6c Merge: 968d803 d7f2ff6 Author: Linus Torvalds Date: Thu May 26 17:27:35 2011 -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: update email address Squashfs: add extra sanity checks at mount time Squashfs: add sanity checks to fragment reading at mount time Squashfs: add sanity checks to lookup table reading at mount time Squashfs: add sanity checks to id reading at mount time Squashfs: add sanity checks to xattr reading at mount time Squashfs: reverse order of filesystem table reading Squashfs: move table allocation into squashfs_read_table() commit 968d803c98410910fbadca031b6a873d4bc12dd5 Author: Akinobu Mita Date: Thu May 26 16:26:13 2011 -0700 m68knommu: use generic find_next_bit_le() The implementation of find_next_bit_le() on m68knommu is identical with the generic implementation of find_next_bit_le(). Signed-off-by: Akinobu Mita Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 802caabbededeecbe433bcdb8a8ee0721836f7db Author: Akinobu Mita Date: Thu May 26 16:26:12 2011 -0700 s390: use asm-generic/bitops/le.h The previous style change enables to use asm-generic/bitops/le.h on s390. Signed-off-by: Akinobu Mita Cc: Arnd Bergmann Cc: Russell King Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 04b18ff9ca69545a2447462a65c7ba5373e23f69 Author: Akinobu Mita Date: Thu May 26 16:26:11 2011 -0700 arm: use asm-generic/bitops/le.h The previous style change enables to use asm-generic/bitops/le.h on arm. Signed-off-by: Akinobu Mita Acked-by: Russell King Cc: Arnd Bergmann Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63e424c84429903c92a0f1e9654c31ccaf6694d0 Author: Akinobu Mita Date: Thu May 26 16:26:10 2011 -0700 arch: remove CONFIG_GENERIC_FIND_{NEXT_BIT,BIT_LE,LAST_BIT} By the previous style change, CONFIG_GENERIC_FIND_NEXT_BIT, CONFIG_GENERIC_FIND_BIT_LE, and CONFIG_GENERIC_FIND_LAST_BIT are not used to test for existence of find bitops anymore. Signed-off-by: Akinobu Mita Acked-by: Greg Ungerer Cc: Arnd Bergmann Cc: Russell King Cc: Martin Schwidefsky Cc: Heiko Carstens Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19de85ef574c3a2182e3ccad9581805052f14946 Author: Akinobu Mita Date: Thu May 26 16:26:09 2011 -0700 bitops: add #ifndef for each of find bitops The style that we normally use in asm-generic is to test the macro itself for existence, so in asm-generic, do: #ifndef find_next_zero_bit_le extern unsigned long find_next_zero_bit_le(const void *addr, unsigned long size, unsigned long offset); #endif and in the architectures, write static inline unsigned long find_next_zero_bit_le(const void *addr, unsigned long size, unsigned long offset) #define find_next_zero_bit_le find_next_zero_bit_le This adds the #ifndef for each of the find bitops in the generic header and source files. Suggested-by: Arnd Bergmann Signed-off-by: Akinobu Mita Acked-by: Russell King Cc: Martin Schwidefsky Cc: Heiko Carstens Cc: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2812e178321132811a53f7be40fe7e9bbffd9e0 Author: Akinobu Mita Date: Thu May 26 16:26:06 2011 -0700 arch: add #define for each of optimized find bitops The style that we normally use in asm-generic is to test the macro itself for existence, so in asm-generic, do: #ifndef find_next_zero_bit_le extern unsigned long find_next_zero_bit_le(const void *addr, unsigned long size, unsigned long offset); #endif and in the architectures, write static inline unsigned long find_next_zero_bit_le(const void *addr, unsigned long size, unsigned long offset) #define find_next_zero_bit_le find_next_zero_bit_le This adds the #define for each of the optimized find bitops in the architectures. Suggested-by: Arnd Bergmann Signed-off-by: Akinobu Mita Acked-by: Hans-Christian Egtvedt Acked-by: Russell King Acked-by: Greg Ungerer Cc: Martin Schwidefsky Cc: Heiko Carstens Acked-by: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e0819410dba141338ebf6ab1057c1863be6247ab Author: Akinobu Mita Date: Thu May 26 16:26:05 2011 -0700 m68knommu: fix build error due to the lack of find_next_bit_le() m68knommu can't build ext4, udf, and ocfs2 due to the lack of find_next_bit_le(). This implements find_next_bit_le() on m68knommu by duplicating the generic find_next_bit_le() in lib/find_next_bit.c. Signed-off-by: Akinobu Mita Acked-by: Greg Ungerer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 275ac74629c4d8ec430d7edecb16d936f46a47c5 Author: Clifton Barnes Date: Thu May 26 16:26:04 2011 -0700 w1: add Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC support Add support for the Maxim/Dallas DS2780 Stand-Alone Fuel Gauge IC. It was suggested to combine this functionality with the current ds2782 driver. Unfortunately, I'm unable to commit the time to refactoring this driver to that extent and I don't have a platform with the ds2782 part to validate that there are no regression issues by adding this functionality. [akpm@linux-foundation.org: use min_t()] Signed-off-by: Clifton Barnes Tested-by: Haojian Zhuang Cc: Evgeniy Polyakov Cc: Ryan Mallon Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 963bb101010169b9bb32b5c21af785e2f9abdaf3 Author: David Fries Date: Thu May 26 16:26:03 2011 -0700 w1: have netlink search update kernel list Reorganize so the netlink connector one wire search command will update the kernel list of detected slave devices. Otherwise, a newly detected device is unusable because unless it's in the kernel list of known devices any commands will result in ENODEV status. Signed-off-by: David Fries Cc: Evgeniy Polyakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26a6afb917a8e3eb603358be1238a69e8a16d0ee Author: Jean-François Dagenais Date: Thu May 26 16:26:02 2011 -0700 w1: complete the 1-wire (w1) ds1wm driver search algorithm This adds multi-slave support of the w1 bus for the ds1wm Synthesizable 1-Wire Bus Master. Also many fixes and tweaks based on the rev3 of the datasheet http://datasheets.maxim-ic.com/en/ds/DS1WM.pdf Signed-off-by: Jean-François Dagenais Cc: Evgeniy Polyakov Cc: Szabolcs Gyurko Cc: Matt Reimer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 89610274bd43edc68c66ff7cf58e05debd519a5e Author: Jean-François Dagenais Date: Thu May 26 16:26:02 2011 -0700 w1: add 1-wire (w1) DS2408 8-Channel Addressable Switch support This DS2408 w1 slave driver is not complete for all the features of the chip, but its sufficient if you use it as a simple IO expander. [randy.dunlap@oracle.com: fix w1_ds2408.c printk formats] Signed-off-by: Jean-François Dagenais Cc: Evgeniy Polyakov Cc: Szabolcs Gyurko Cc: Matt Reimer Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 67dfd54c2d83a76a5756760f7fee0c8cfac52b1c Author: Jean-François Dagenais Date: Thu May 26 16:26:01 2011 -0700 w1: add 1-wire (w1) reset and resume command API support The first patch adds generic functionnality to w1_io for Resume Command [A5h] lots of slaves support. I found it useful for multi-commands/reset workflows with the same slave on a multi-slave bus. This DS2408 w1 slave driver is not complete for all the features of the chip, but its sufficient if you use it as a simple IO expander. Enjoy! The ds1wm had Kconfig dependencies towards ARM && HAVE_CLK. I took them out since I was using the ds1wm on an x86_64 platform (ds1wm in a FPGA through pcie) and found them irrelevant. The clock freq/divisors at the top of ds1wm.c did not have the MSB set to 1. This bit is CLK_EN which turns the whole prescaler and dividers on. The driver never mentionned this bit either, so I just included this bit right in the table entries. I also took the liberty to add a couple of entries to the table. The spec doesn't explicitely mentions these possibilities but the description and examination of the core shows the prescalers & dividers can be used for more than the table explicitely shows. The table I enlarged still doesn't cover all possibilities, but it's a good start. I also made a few tweaks to a couple of the read and write algorithms which made sense while I had my head very deep in the ds1wm documentation. We stressed it a lot with 10+ slaves on the bus, many ds2408, ds2431 and ds2433 at the same time doing extensive interaction. It proved quite stable in our production environment. This patch: Add generic functionnality to w1_io for Resume Command [A5h] lots of slaves support. Signed-off-by: Jean-François Dagenais Cc: Evgeniy Polyakov Cc: Szabolcs Gyurko Cc: Matt Reimer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6f7bd76f05eb2bfbb48d58c0408a50a7e16b2423 Author: Rakib Mullick Date: Thu May 26 16:26:00 2011 -0700 kernel/profile.c: remove some duplicate code from profile_hits() profile_hits() has a common check for prof_on and prof_buffer regardless of SMP or !SMP. So, remove some duplicate code by splitting profile_hits into two. [akpm@linux-foundation.org: make do_profile_hits static] Signed-off-by: Rakib Mullick Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d98808a253f209465ed9f415c565f4c294a213b8 Author: Julia Lawall Date: Thu May 26 16:25:59 2011 -0700 drivers/char/ppdev.c: put gotten port value parport_find_number() calls parport_get_port() on its result, so there should be a corresponding call to parport_put_port() before dropping the reference. Similar code is found in the function register_device() in the same file. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @exists@ local idexpression struct parport * x; expression ra,rr; statement S1,S2; @@ x = parport_find_number(...) ... when != x = rr when any when != parport_put_port(x,...) when != if (...) { ... parport_put_port(x,...) ...} ( if(<+...x...+>) S1 else S2 | if(...) { ... when != x = ra when forall when != parport_put_port(x,...) *return...; } ) // Signed-off-by: Julia Lawall Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e2e77098764636456ba7092a8b3b3b34b2a8e8d8 Author: Lai Jiangshan Date: Thu May 26 16:25:58 2011 -0700 edac,rcu: use synchronize_rcu() instead of call_rcu()+rcu_barrier() synchronize_rcu() does the stuff as needed. Signed-off-by: Lai Jiangshan Cc: Doug Thompson Cc: "Paul E. McKenney" Cc: Mauro Carvalho Chehab Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 26498e89e83c62cffcb8836a2ac2c5b795d84258 Author: Sisir Koppaka Date: Thu May 26 16:25:57 2011 -0700 pid: fix typo in function description finds is misspelt as finr. No functional change. Signed-off-by: Sisir Koppaka Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3eb8e74ec72736b9b9d728bad30484ec89c91dde Author: Timo Warns Date: Thu May 26 16:25:57 2011 -0700 fs/partitions/efi.c: corrupted GUID partition tables can cause kernel oops The kernel automatically evaluates partition tables of storage devices. The code for evaluating GUID partitions (in fs/partitions/efi.c) contains a bug that causes a kernel oops on certain corrupted GUID partition tables. This bug has security impacts, because it allows, for example, to prepare a storage device that crashes a kernel subsystem upon connecting the device (e.g., a "USB Stick of (Partial) Death"). crc = efi_crc32((const unsigned char *) (*gpt), le32_to_cpu((*gpt)->header_size)); computes a CRC32 checksum over gpt covering (*gpt)->header_size bytes. There is no validation of (*gpt)->header_size before the efi_crc32 call. A corrupted partition table may have large values for (*gpt)->header_size. In this case, the CRC32 computation access memory beyond the memory allocated for gpt, which may cause a kernel heap overflow. Validate value of GUID partition table header size. [akpm@linux-foundation.org: fix layout and indenting] Signed-off-by: Timo Warns Cc: Matt Domsch Cc: Eugene Teo Cc: Dave Jones Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 658c74cf3c98b1c9bc21e26731052db66251dfd8 Author: Rakib Mullick Date: Thu May 26 16:25:56 2011 -0700 drivers/char/mspec.c: use {k,v}zalloc to allocate memory Let memory allocator initialize the allocated memory as null, thus remove the use of memset. Signed-off-by: Rakib Mullick Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 074127367a503de0168e2ca5d0b36a6f761f026a Author: Alexey Dobriyan Date: Thu May 26 16:25:55 2011 -0700 ipmi: convert to seq_file interface The ->read_proc interface is going away, convert to seq_file. Signed-off-by: Alexey Dobriyan Cc:Corey Minyard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 997c136f518c5debd63847e78e2a8694f56dcf90 Author: Olaf Hering Date: Thu May 26 16:25:54 2011 -0700 fs/proc/vmcore.c: add hook to read_from_oldmem() to check for non-ram pages The balloon driver in a Xen guest frees guest pages and marks them as mmio. When the kernel crashes and the crash kernel attempts to read the oldmem via /proc/vmcore a read from ballooned pages will generate 100% load in dom0 because Xen asks qemu-dm for the page content. Since the reads come in as 8byte requests each ballooned page is tried 512 times. With this change a hook can be registered which checks wether the given pfn is really ram. The hook has to return a value > 0 for ram pages, a value < 0 on error (because the hypercall is not known) and 0 for non-ram pages. This will reduce the time to read /proc/vmcore. Without this change a 512M guest with 128M crashkernel region needs 200 seconds to read it, with this change it takes just 2 seconds. Signed-off-by: Olaf Hering Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 98bc93e505c03403479c6669c4ff97301cee6199 Author: KOSAKI Motohiro Date: Thu May 26 16:25:53 2011 -0700 proc: fix pagemap_read() error case Currently, pagemap_read() has three error and/or corner case handling mistake. (1) If ppos parameter is wrong, mm refcount will be leak. (2) If count parameter is 0, mm refcount will be leak too. (3) If the current task is sleeping in kmalloc() and the system is out of memory and oom-killer kill the proc associated task, mm_refcount prevent the task free its memory. then system may hang up. check_mem_permission gets a reference to the mm. If we __get_free_page after check_mem_permission, imagine what happens if the system is out of memory, and the mm we're looking at is selected for killing by the OOM killer: while we wait in __get_free_page for more memory, no memory is freed from the selected mm because it cannot reach exit_mmap while we hold that reference. This patch fixes the above three. Signed-off-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: Jovi Zhang Acked-by: Hugh Dickins Cc: Stephen Wilson Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 30cd8903913dac7b0918807cac46be3ecde5a5a7 Author: KOSAKI Motohiro Date: Thu May 26 16:25:52 2011 -0700 proc: put check_mem_permission after __get_free_page in mem_write It whould be better if put check_mem_permission after __get_free_page in mem_write, to be same as function mem_read. Hugh Dickins explained the reason. check_mem_permission gets a reference to the mm. If we __get_free_page after check_mem_permission, imagine what happens if the system is out of memory, and the mm we're looking at is selected for killing by the OOM killer: while we wait in __get_free_page for more memory, no memory is freed from the selected mm because it cannot reach exit_mmap while we hold that reference. Reported-by: Jovi Zhang Signed-off-by: KOSAKI Motohiro Acked-by: Hugh Dickins Reviewed-by: Stephen Wilson Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a4dbf0ec2aa3e8aca6e63f598095750c232d50f1 Author: Yuanhan Liu Date: Thu May 26 16:25:51 2011 -0700 proc/stat: use defined macro KMALLOC_MAX_SIZE There is a macro for the max size kmalloc can allocate, so use it instead of a hardcoded number. Signed-off-by: Yuanhan Liu Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e130aa70f438855b4a0e13a5249951da001798d4 Author: Mike Frysinger Date: Thu May 26 16:25:51 2011 -0700 proc: constify status array No need for this local array to be writable, so mark it const. Signed-off-by: Mike Frysinger Cc: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0a8cb8e34149251ad1f280fe099a4f971554639a Author: Alexey Dobriyan Date: Thu May 26 16:25:50 2011 -0700 fs/proc: convert to kstrtoX() Convert fs/proc/ from strict_strto*() to kstrto*() functions. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 57cc083ad9e1bfeeb4a0ee831e7bb008c8865bf0 Author: Jiri Slaby Date: Thu May 26 16:25:46 2011 -0700 coredump: add support for exe_file in core name Now, exe_file is not proc FS dependent, so we can use it to name core file. So we add %E pattern for core file name cration which extract path from mm_struct->exe_file. Then it converts slashes to exclamation marks and pastes the result to the core file name itself. This is useful for environments where binary names are longer than 16 character (the current->comm limitation). Also where there are binaries with same name but in a different path. Further in case the binery itself changes its current->comm after exec. So by doing (s/$/#/ -- # is treated as git comment): $ sysctl kernel.core_pattern='core.%p.%e.%E' $ ln /bin/cat cat45678901234567890 $ ./cat45678901234567890 ^Z $ rm cat45678901234567890 $ fg ^\Quit (core dumped) $ ls core* we now get: core.2434.cat456789012345.!root!cat45678901234567890 (deleted) Signed-off-by: Jiri Slaby Cc: Al Viro Cc: Alan Cox Reviewed-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3864601387cf4196371e3c1897fdffa5228296f9 Author: Jiri Slaby Date: Thu May 26 16:25:46 2011 -0700 mm: extract exe_file handling from procfs Setup and cleanup of mm_struct->exe_file is currently done in fs/proc/. This was because exe_file was needed only for /proc//exe. Since we will need the exe_file functionality also for core dumps (so core name can contain full binary path), built this functionality always into the kernel. To achieve that move that out of proc FS to the kernel/ where in fact it should belong. By doing that we can make dup_mm_exe_file static. Also we can drop linux/proc_fs.h inclusion in fs/exec.c and kernel/fork.c. Signed-off-by: Jiri Slaby Cc: Alexander Viro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 63ab25ebbc50f74550bd8d164a34724b498f6fb9 Author: Mike Frysinger Date: Thu May 26 16:25:45 2011 -0700 kgdbts: unify/generalize gdb breakpoint adjustment The Blackfin arch, like the x86 arch, needs to adjust the PC manually after a breakpoint is hit as normally this is handled by the remote gdb. However, rather than starting another arch ifdef mess, create a common GDB_ADJUSTS_BREAK_OFFSET define for any arch to opt-in via their kgdb.h. Signed-off-by: Mike Frysinger Cc: Oleg Nesterov Cc: Jason Wessel Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Acked-by: Paul Mundt Acked-by: Dongdong Deng Cc: Sergei Shtylyov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3cea45c6ef459b776123a4855eba6dafd506f3ce Author: Mike Frysinger Date: Thu May 26 16:25:44 2011 -0700 sh: convert to asm-generic ptrace.h Signed-off-by: Mike Frysinger Cc: Oleg Nesterov Cc: Jason Wessel Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Paul Mundt Cc: Sergei Shtylyov Cc: Dongdong Deng Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c46dd6b48db02c1fa2f0644809605344660d3956 Author: Mike Frysinger Date: Thu May 26 16:25:43 2011 -0700 x86: convert to asm-generic ptrace.h Signed-off-by: Mike Frysinger Cc: Oleg Nesterov Cc: Jason Wessel Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Paul Mundt Cc: Sergei Shtylyov Cc: Dongdong Deng Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 82258c661a9175ec10018cf34090f88cf4da4982 Author: Mike Frysinger Date: Thu May 26 16:25:42 2011 -0700 Blackfin: convert to asm-generic ptrace.h Signed-off-by: Mike Frysinger Cc: Oleg Nesterov Cc: Jason Wessel Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Paul Mundt Cc: Sergei Shtylyov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit edeafa74e69f275649624484cdd8b551c8839163 Author: Mike Frysinger Date: Thu May 26 16:25:39 2011 -0700 asm-generic/ptrace.h: start a common low level ptrace helper This is a series of low level ptrace unification steps to make it easier for common code (like KGDB) to poke at register state. This also avoids having to duplicate higher level operations for most ports which don't have special needs for accessing things. This patch: This implements a bunch of helper funcs for poking the registers of a ptrace structure. Now common code should be able to portably update specific registers (like kgdb updating the PC). Signed-off-by: Mike Frysinger Cc: Oleg Nesterov Cc: Jason Wessel Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Paul Mundt Cc: Sergei Shtylyov Cc: Dongdong Deng Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 456f998ec817ebfa254464be4f089542fa390645 Author: Ying Han Date: Thu May 26 16:25:38 2011 -0700 memcg: add the pagefault count into memcg stats Two new stats in per-memcg memory.stat which tracks the number of page faults and number of major page faults. "pgfault" "pgmajfault" They are different from "pgpgin"/"pgpgout" stat which count number of pages charged/discharged to the cgroup and have no meaning of reading/ writing page to disk. It is valuable to track the two stats for both measuring application's performance as well as the efficiency of the kernel page reclaim path. Counting pagefaults per process is useful, but we also need the aggregated value since processes are monitored and controlled in cgroup basis in memcg. Functional test: check the total number of pgfault/pgmajfault of all memcgs and compare with global vmstat value: $ cat /proc/vmstat | grep fault pgfault 1070751 pgmajfault 553 $ cat /dev/cgroup/memory.stat | grep fault pgfault 1071138 pgmajfault 553 total_pgfault 1071142 total_pgmajfault 553 $ cat /dev/cgroup/A/memory.stat | grep fault pgfault 199 pgmajfault 0 total_pgfault 199 total_pgmajfault 0 Performance test: run page fault test(pft) wit 16 thread on faulting in 15G anon pages in 16G container. There is no regression noticed on the "flt/cpu/s" Sample output from pft: TAG pft:anon-sys-default: Gb Thr CLine User System Wall flt/cpu/s fault/wsec 15 16 1 0.67s 233.41s 14.76s 16798.546 266356.260 +-------------------------------------------------------------------------+ N Min Max Median Avg Stddev x 10 16682.962 17344.027 16913.524 16928.812 166.5362 + 10 16695.568 16923.896 16820.604 16824.652 84.816568 No difference proven at 95.0% confidence [akpm@linux-foundation.org: fix build] [hughd@google.com: shmem fix] Signed-off-by: Ying Han Acked-by: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: Daisuke Nishimura Acked-by: Balbir Singh Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 406eb0c9ba765eb066406fd5ce9d5e2b169a4d5a Author: Ying Han Date: Thu May 26 16:25:37 2011 -0700 memcg: add memory.numastat api for numa statistics The new API exports numa_maps per-memcg basis. This is a piece of useful information where it exports per-memcg page distribution across real numa nodes. One of the usecases is evaluating application performance by combining this information w/ the cpu allocation to the application. The output of the memory.numastat tries to follow w/ simiar format of numa_maps like: total= N0= N1= ... file= N0= N1= ... anon= N0= N1= ... unevictable= N0= N1= ... And we have per-node: total = file + anon + unevictable $ cat /dev/cgroup/memory/memory.numa_stat total=250020 N0=87620 N1=52367 N2=45298 N3=64735 file=225232 N0=83402 N1=46160 N2=40522 N3=55148 anon=21053 N0=3424 N1=6207 N2=4776 N3=6646 unevictable=3735 N0=794 N1=0 N2=0 N3=2941 Signed-off-by: Ying Han Cc: Balbir Singh Cc: Daisuke Nishimura Acked-by: KAMEZAWA Hiroyuki Acked-by: Daisuke Nishimura Cc: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1bac180bd29e03989f50054af97b53b8d37a364a Author: Ying Han Date: Thu May 26 16:25:36 2011 -0700 memcg: rename mem_cgroup_zone_nr_pages() to mem_cgroup_zone_nr_lru_pages() The caller of the function has been renamed to zone_nr_lru_pages(), and this is just fixing up in the memcg code. The current name is easily to be mis-read as zone's total number of pages. Signed-off-by: Ying Han Acked-by: Johannes Weiner Acked-by: KAMEZAWA Hiroyuki Reviewed-by: Minchan Kim Cc: Balbir Singh Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4fd14ebf6e3b66423dfac2bc9defda7b83ee07b3 Author: Johannes Weiner Date: Thu May 26 16:25:35 2011 -0700 memcg: remove unused retry signal from reclaim If the memcg reclaim code detects the target memcg below its limit it exits and returns a guaranteed non-zero value so that the charge is retried. Nowadays, the charge side checks the memcg limit itself and does not rely on this non-zero return value trick. This patch removes it. The reclaim code will now always return the true number of pages it reclaimed on its own. Signed-off-by: Johannes Weiner Acked-by: Rik van Riel Acked-by: Ying Han Acked-by: KAMEZAWA Hiroyuki Reviewed-by: Michal Hocko Cc: Balbir Singh Cc: KOSAKI Motohiro Cc: Mel Gorman Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 246e87a9393448c20873bc5dee64be68ed559e24 Author: KAMEZAWA Hiroyuki Date: Thu May 26 16:25:34 2011 -0700 memcg: fix get_scan_count() for small targets During memory reclaim we determine the number of pages to be scanned per zone as (anon + file) >> priority. Assume scan = (anon + file) >> priority. If scan < SWAP_CLUSTER_MAX, the scan will be skipped for this time and priority gets higher. This has some problems. 1. This increases priority as 1 without any scan. To do scan in this priority, amount of pages should be larger than 512M. If pages>>priority < SWAP_CLUSTER_MAX, it's recorded and scan will be batched, later. (But we lose 1 priority.) If memory size is below 16M, pages >> priority is 0 and no scan in DEF_PRIORITY forever. 2. If zone->all_unreclaimabe==true, it's scanned only when priority==0. So, x86's ZONE_DMA will never be recoverred until the user of pages frees memory by itself. 3. With memcg, the limit of memory can be small. When using small memcg, it gets priority < DEF_PRIORITY-2 very easily and need to call wait_iff_congested(). For doing scan before priorty=9, 64MB of memory should be used. Then, this patch tries to scan SWAP_CLUSTER_MAX of pages in force...when 1. the target is enough small. 2. it's kswapd or memcg reclaim. Then we can avoid rapid priority drop and may be able to recover all_unreclaimable in a small zones. And this patch removes nr_saved_scan. This will allow scanning in this priority even when pages >> priority is very small. Signed-off-by: KAMEZAWA Hiroyuki Acked-by: Ying Han Cc: Balbir Singh Cc: KOSAKI Motohiro Cc: Daisuke Nishimura Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 889976dbcb1218119fdd950fb7819084e37d7d37 Author: Ying Han Date: Thu May 26 16:25:33 2011 -0700 memcg: reclaim memory from nodes in round-robin order Presently, memory cgroup's direct reclaim frees memory from the current node. But this has some troubles. Usually when a set of threads works in a cooperative way, they tend to operate on the same node. So if they hit limits under memcg they will reclaim memory from themselves, damaging the active working set. For example, assume 2 node system which has Node 0 and Node 1 and a memcg which has 1G limit. After some work, file cache remains and the usages are Node 0: 1M Node 1: 998M. and run an application on Node 0, it will eat its foot before freeing unnecessary file caches. This patch adds round-robin for NUMA and adds equal pressure to each node. When using cpuset's spread memory feature, this will work very well. But yes, a better algorithm is needed. [akpm@linux-foundation.org: comment editing] [kamezawa.hiroyu@jp.fujitsu.com: fix time comparisons] Signed-off-by: Ying Han Signed-off-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Cc: KOSAKI Motohiro Cc: Daisuke Nishimura Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4e4c941c108eff10844d2b441d96dab44f32f424 Author: Namhyung Kim Date: Thu May 26 16:25:32 2011 -0700 MAINTAINERS: add mm/page_cgroup.c into memcg subsystem AFAICS mm/page_cgroup.c is for memcg subsystem, but it was directed only to generic cgroup maintainers. Fix it. Signed-off-by: Namhyung Kim Cc: Balbir Singh Cc: Daisuke Nishimura Cc: KAMEZAWA Hiroyuki Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6a5b18d2bd79795407bf65451a2013bf4dfb588b Author: Namhyung Kim Date: Thu May 26 16:25:31 2011 -0700 memcg: move page-freeing code out of lock Move page-freeing code out of swap_cgroup_mutex in the hope that it could reduce few of theoretical contentions between swapons and/or swapoffs. This is just a cleanup, no functional changes. Signed-off-by: Namhyung Kim Acked-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Cc: Daisuke Nishimura Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 33278f7f0a9e5a9b29f59e07b7e3182d27769ac2 Author: Namhyung Kim Date: Thu May 26 16:25:30 2011 -0700 memcg: fix off-by-one when calculating swap cgroup map length It allocated one more page than necessary if @max_pages was a multiple of SC_PER_PAGE. Signed-off-by: Namhyung Kim Acked-by: KAMEZAWA Hiroyuki Acked-by: Balbir Singh Cc: Daisuke Nishimura Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 268433b8e54486b12478e94ba18587bcc7de4d57 Author: Namhyung Kim Date: Thu May 26 16:25:29 2011 -0700 memcg: mark init_section_page_cgroup() properly Commit ca371c0d7e23 ("memcg: fix page_cgroup fatal error in FLATMEM") removes call to alloc_bootmem() in the function so that it can be marked as __meminit to reduce memory usage when MEMORY_HOTPLUG=n. Also as the new helper function alloc_page_cgroup() is called only in the function, it should be marked too. Signed-off-by: Namhyung Kim Acked-by: KAMEZAWA Hiroyuki Acked-by: Balbir Singh Cc: Michal Hocko Cc: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 39cc98f1f8aa949afeea89f424c7494b0785d7da Author: Michal Hocko Date: Thu May 26 16:25:28 2011 -0700 memcg: remove pointless next_mz nullification in mem_cgroup_soft_limit_reclaim() next_mz is assigned to NULL if __mem_cgroup_largest_soft_limit_node selects the same mz. This doesn't make much sense as we assign to the variable right in the next loop. Compiler will probably optimize this out but it is little bit confusing for the code reading. Signed-off-by: Michal Hocko Acked-by: Daisuke Nishimura Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d149e3b25d7c5f33de9aa866303926fa53535aa7 Author: Ying Han Date: Thu May 26 16:25:27 2011 -0700 memcg: add the soft_limit reclaim in global direct reclaim. We recently added the change in global background reclaim which counts the return value of soft_limit reclaim. Now this patch adds the similar logic on global direct reclaim. We should skip scanning global LRU on shrink_zone if soft_limit reclaim does enough work. This is the first step where we start with counting the nr_scanned and nr_reclaimed from soft_limit reclaim into global scan_control. Signed-off-by: Ying Han Cc: KOSAKI Motohiro Cc: Minchan Kim Cc: Daisuke Nishimura Cc: Balbir Singh Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: Johannes Weiner Cc: Rik van Riel Cc: Hugh Dickins Cc: Michal Hocko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ae5e89c60c9eb87da36a2614836bc434b0ec2ad Author: Ying Han Date: Thu May 26 16:25:25 2011 -0700 memcg: count the soft_limit reclaim in global background reclaim The global kswapd scans per-zone LRU and reclaims pages regardless of the cgroup. It breaks memory isolation since one cgroup can end up reclaiming pages from another cgroup. Instead we should rely on memcg-aware target reclaim including per-memcg kswapd and soft_limit hierarchical reclaim under memory pressure. In the global background reclaim, we do soft reclaim before scanning the per-zone LRU. However, the return value is ignored. This patch is the first step to skip shrink_zone() if soft_limit reclaim does enough work. This is part of the effort which tries to reduce reclaiming pages in global LRU in memcg. The per-memcg background reclaim patchset further enhances the per-cgroup targetting reclaim, which I should have V4 posted shortly. Try running multiple memory intensive workloads within seperate memcgs. Watch the counters of soft_steal in memory.stat. $ cat /dev/cgroup/A/memory.stat | grep 'soft' soft_steal 240000 soft_scan 240000 total_soft_steal 240000 total_soft_scan 240000 This patch: In the global background reclaim, we do soft reclaim before scanning the per-zone LRU. However, the return value is ignored. We would like to skip shrink_zone() if soft_limit reclaim does enough work. Also, we need to make the memory pressure balanced across per-memcg zones, like the logic vm-core. This patch is the first step where we start with counting the nr_scanned and nr_reclaimed from soft_limit reclaim into the global scan_control. Signed-off-by: Ying Han Cc: KOSAKI Motohiro Cc: Minchan Kim Cc: Rik van Riel Cc: Mel Gorman Cc: KAMEZAWA Hiroyuki Cc: Balbir Singh Acked-by: Daisuke Nishimura Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f042e707ee671e4beb5389abeb9a1819a2cf5532 Author: Andrew Morton Date: Thu May 26 16:25:24 2011 -0700 mm: move enum vm_event_item into a standalone header file enums are problematic because they cannot be forward-declared: akpm2:/home/akpm> cat t.c enum foo; static inline void bar(enum foo f) { } akpm2:/home/akpm> gcc -c t.c t.c:4: error: parameter 1 ('f') has incomplete type So move the enum's definition into a standalone header file which can be used wherever its definition is needed. Cc: Ying Han Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Minchan Kim Cc: Daisuke Nishimura Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a77aea92010acf54ad785047234418d5d68772e2 Author: Daniel Lezcano Date: Thu May 26 16:25:23 2011 -0700 cgroup: remove the ns_cgroup The ns_cgroup is an annoying cgroup at the namespace / cgroup frontier and leads to some problems: * cgroup creation is out-of-control * cgroup name can conflict when pids are looping * it is not possible to have a single process handling a lot of namespaces without falling in a exponential creation time * we may want to create a namespace without creating a cgroup The ns_cgroup was replaced by a compatibility flag 'clone_children', where a newly created cgroup will copy the parent cgroup values. The userspace has to manually create a cgroup and add a task to the 'tasks' file. This patch removes the ns_cgroup as suggested in the following thread: https://lists.linux-foundation.org/pipermail/containers/2009-June/018616.html The 'cgroup_clone' function is removed because it is no longer used. This is a userspace-visible change. Commit 45531757b45c ("cgroup: notify ns_cgroup deprecated") (merged into 2.6.27) caused the kernel to emit a printk warning users that the feature is planned for removal. Since that time we have heard from XXX users who were affected by this. Signed-off-by: Daniel Lezcano Signed-off-by: Serge E. Hallyn Cc: Eric W. Biederman Cc: Jamal Hadi Salim Reviewed-by: Li Zefan Acked-by: Paul Menage Acked-by: Matt Helsley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d846687d7f84e45f23ecf3846dbb43312a1206dd Author: Ben Blum Date: Thu May 26 16:25:21 2011 -0700 cgroups: use flex_array in attach_proc Convert cgroup_attach_proc to use flex_array. The cgroup_attach_proc implementation requires a pre-allocated array to store task pointers to atomically move a thread-group, but asking for a monolithic array with kmalloc() may be unreliable for very large groups. Using flex_array provides the same functionality with less risk of failure. This is a post-patch for cgroup-procs-write.patch. Signed-off-by: Ben Blum Cc: "Eric W. Biederman" Cc: Li Zefan Cc: Matt Helsley Reviewed-by: Paul Menage Cc: Oleg Nesterov Cc: David Rientjes Cc: Miao Xie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74a1166dfe1135dcc168d35fa5261aa7e087011b Author: Ben Blum Date: Thu May 26 16:25:20 2011 -0700 cgroups: make procs file writable Make procs file writable to move all threads by tgid at once. Add functionality that enables users to move all threads in a threadgroup at once to a cgroup by writing the tgid to the 'cgroup.procs' file. This current implementation makes use of a per-threadgroup rwsem that's taken for reading in the fork() path to prevent newly forking threads within the threadgroup from "escaping" while the move is in progress. Signed-off-by: Ben Blum Cc: "Eric W. Biederman" Cc: Li Zefan Cc: Matt Helsley Reviewed-by: Paul Menage Cc: Oleg Nesterov Cc: David Rientjes Cc: Miao Xie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f780bdb7c1c73009cb57adcf99ef50027d80bf3c Author: Ben Blum Date: Thu May 26 16:25:19 2011 -0700 cgroups: add per-thread subsystem callbacks Add cgroup subsystem callbacks for per-thread attachment in atomic contexts Add can_attach_task(), pre_attach(), and attach_task() as new callbacks for cgroups's subsystem interface. Unlike can_attach and attach, these are for per-thread operations, to be called potentially many times when attaching an entire threadgroup. Also, the old "bool threadgroup" interface is removed, as replaced by this. All subsystems are modified for the new interface - of note is cpuset, which requires from/to nodemasks for attach to be globally scoped (though per-cpuset would work too) to persist from its pre_attach to attach_task and attach. This is a pre-patch for cgroup-procs-writable.patch. Signed-off-by: Ben Blum Cc: "Eric W. Biederman" Cc: Li Zefan Cc: Matt Helsley Reviewed-by: Paul Menage Cc: Oleg Nesterov Cc: David Rientjes Cc: Miao Xie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4714d1d32d97239fb5ae3e10521d3f133a899b66 Author: Ben Blum Date: Thu May 26 16:25:18 2011 -0700 cgroups: read-write lock CLONE_THREAD forking per threadgroup Adds functionality to read/write lock CLONE_THREAD fork()ing per-threadgroup Add an rwsem that lives in a threadgroup's signal_struct that's taken for reading in the fork path, under CONFIG_CGROUPS. If another part of the kernel later wants to use such a locking mechanism, the CONFIG_CGROUPS ifdefs should be changed to a higher-up flag that CGROUPS and the other system would both depend on. This is a pre-patch for cgroup-procs-write.patch. Signed-off-by: Ben Blum Cc: "Eric W. Biederman" Cc: Li Zefan Cc: Matt Helsley Reviewed-by: Paul Menage Cc: Oleg Nesterov Cc: David Rientjes Cc: Miao Xie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dcb3a08e69629ea65a3e9647da730bfaf670497d Author: Jiri Slaby Date: Thu May 26 16:25:17 2011 -0700 Documentation: configfs examples crash fix When configfs_register_subsystem() fails, we unregister too many subsystems in configfs_example_init. Decrement i by one to not unregister non-registered subsystem. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Jiri Slaby Cc: Joel Becker Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 02d54f092697b6046e466e447cc694b0e6ed45d0 Author: Wu Fengguang Date: Thu May 26 16:25:16 2011 -0700 getdelays: show average CPU/IO/SWAP/RECLAIM delays I find it very handy to show the average delays in milliseconds. Example output (on 100 concurrent dd reading sparse files): CPU count real total virtual total delay total delay average 986 3223509952 3207643301 38863410579 39.415ms IO count delay total delay average 0 0 0ms SWAP count delay total delay average 0 0 0ms RECLAIM count delay total delay average 1059 5131834899 4ms dd: read=0, write=0, cancelled_write=0 Signed-off-by: Wu Fengguang Cc: Mel Gorman Cc: Balbir Singh Reviewed-by: Satoru Moriya Reviewed-by: KOSAKI Motohiro Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ed960b14d3b5fd14f1d9eb02f6d7e398317627a Author: Andrew Morton Date: Thu May 26 16:25:15 2011 -0700 Documentation/accounting/getdelays.c: handle sendto() failures Fixes Documentation/accounting/getdelays.c: In function `get_family_id': Documentation/accounting/getdelays.c:172:14: warning: variable `rc' set but not used [-Wunused-but-set-variable] Reported-by: "Justin P. Mattock" Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fbdd91a6293f5e7fb1914966f5d244f72619641e Author: Justin P. Mattock Date: Thu May 26 16:25:14 2011 -0700 Documentation/accounting/getdelays.c: fix unused var warning Fixes Documentation/accounting/getdelays.c: In function `main': Documentation/accounting/getdelays.c:436:7: warning: variable `i' set but not used [-Wunused-but-set-variable] Signed-off-by: Justin P. Mattock Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72eef0f3af410de2c85f236140ddea61b71cfc3e Author: Nikanth Karthikesan Date: Thu May 26 16:25:13 2011 -0700 Documentation/atomic_ops.txt: avoid volatile in sample code As declaring counter as volatile is discouraged, it is best not to use it in sample code as well. Signed-off-by: Nikanth Karthikesan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1d5827235de48e829d5d4a03c3688ef6f2b15562 Author: Dan Carpenter Date: Thu May 26 16:25:12 2011 -0700 ufs: fix truncated values handling 64 bit metadata Originally i_lastfrag was 32 bits but then we added support for handling 64 bit metadata and it became a 64 bit variable. That was during 2007, in 54fb996ac15c "[PATCH] ufs2 write: block allocation update". Unfortunately these casts got left behind so the value got truncated to 32 bit again. [akpm@linux-foundation.org: remove now-unneeded min_t/max_t casting] Signed-off-by: Dan Carpenter Cc: Evgeniy Dushistov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9796cc964daf7f18b4cd84c86975b3bc3804ca5a Author: Wolfram Sang Date: Thu May 26 16:25:12 2011 -0700 drivers/rtc/rtc-mxc.c: remove defines already included in rtc.h [akpm@linux-foundation.org: retain the code comments] Signed-off-by: Wolfram Sang Cc: Vladimir Zapolskiy Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d62b8f59bb8bd08d8e3df3ab3174aab2971d6e6 Author: Lars-Peter Clausen Date: Thu May 26 16:25:10 2011 -0700 drivers/rtc/rtc-pcf50633.c: don't request update IRQ Commit 51ba60c5 ("RTC: Cleanup rtc_class_ops->update_irq_enable()") removed the only user of the update IRQ, so there is no need to manage it any more. Signed-off-by: Lars-Peter Clausen Cc: Thomas Gleixner Cc: Alessandro Zummo Cc: Marcelo Roberto Jimenez Cc: John Stultz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0942a71e435f5198921e8f072540f208f0176542 Author: Rajeev Kumar Date: Thu May 26 16:25:09 2011 -0700 rtc: add support for spear rtc Signed-off-by: Rajeev Kumar Signed-off-by: Viresh Kumar Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c258f9a0aab09366070f3c9283070edead23d4cf Author: Julia Lawall Date: Thu May 26 16:25:08 2011 -0700 drivers/rtc/rtc-mrst.c: use release_mem_region after request_mem_region The memory allocated using request_mem_region should be released using release_mem_region, not release_region. The semantic patch that fixes part of this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E1,E2,E3; @@ request_mem_region(E1,E2,E3) ... ?- release_region(E1,E2) + release_mem_region(E1,E2) // [akpm@linux-foundation.org: use resource_size()] Signed-off-by: Julia Lawall Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 74d34d4be60928c3504fdad9d67707a6e3244a80 Author: Voss, Nikolaus Date: Thu May 26 16:25:07 2011 -0700 rtc: add basic support for ST M41T93 SPI RTC Add basic support for ST m41t93 SPI RTCs. Tested with factory-new and with "run-in" species with and without backup batteries. Signed-off-by: Nikolaus Voss Cc: Alessandro Zummo Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 52365230eed7e291bbb2a015465cac48bcb3928f Author: Heiko Schocher Date: Thu May 26 16:25:05 2011 -0700 rtc: add rv3029c2 RTC support Add support for the Micro Crystal RV3029-C2 RTC chips. Signed-off-by: Heiko Schocher Signed-off-by: Gregory Hermant Cc: Wan ZongShun Cc: Alessandro Zummo Acked-by: Wolfram Sang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ae3551f9cae5727819d02398b588ac14ef0a9cce Author: Mike Rapoport Date: Thu May 26 16:25:04 2011 -0700 rtc: add EM3027 rtc driver Add support for EM Microelectronic EM3027 RTC chip. Signed-off-by: Mike Rapoport Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f77fbdf952d81ae20911edccea16693f9fb7c5a0 Author: Alexey Charkov Date: Thu May 26 16:25:03 2011 -0700 rtc: add support for the RTC in VIA VT8500 and compatibles This adds a driver for the RTC devices in VIA and WonderMedia Systems-on-Chip. Alarm, 1Hz interrupts, reading and setting time are supported. Signed-off-by: Alexey Charkov Cc: Lars-Peter Clausen Cc: Alexey Charkov Cc: Alessandro Zummo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 704f15ddb5fc2a7f25a12eb0913302d8ad9ffab3 Author: Jesse Gross Date: Thu May 26 16:25:02 2011 -0700 flex_array: avoid divisions when accessing elements On most architectures division is an expensive operation and accessing an element currently requires four of them. This performance penalty effectively precludes flex arrays from being used on any kind of fast path. However, two of these divisions can be handled at creation time and the others can be replaced by a reciprocal divide, completely avoiding real divisions on access. [eparis@redhat.com: rebase on top of changes to support 0 len elements] [eparis@redhat.com: initialize part_nr when array fits entirely in base] Signed-off-by: Jesse Gross Signed-off-by: Eric Paris Cc: Dave Hansen Cc: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5bf54a9758c230d9e957e7b4f3a41c226660dd49 Author: KOSAKI Motohiro Date: Thu May 26 16:25:01 2011 -0700 m32r: remove redundant declaration They have no meaning. Signed-off-by: KOSAKI Motohiro Cc: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e806c50f4f36bb3aa9f6e43d9e4beb08a2d39d8 Author: KOSAKI Motohiro Date: Thu May 26 16:25:00 2011 -0700 m32r: fix spin_lock_irqsave() misuse spin_lock_irqsave() requires unsigned long. Signed-off-by: KOSAKI Motohiro Cc: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 937e26c0d1843c92750dac9bca1c972d33e73306 Author: KOSAKI Motohiro Date: Thu May 26 16:24:59 2011 -0700 m32r: convert cpumask api We plan to remove cpus_xx() old cpumask APIs later. Also, we plan to change mm_cpu_mask() implementation, allocate only nr_cpu_ids, thus *mm_cpu_mask() is dangerous operation. Then, this patch convert them. Signed-off-by: KOSAKI Motohiro Cc: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba7328b2d83090c2440b8d0baa6ccfc2ddf1bda6 Author: Andrew Morton Date: Thu May 26 16:24:57 2011 -0700 drivers/bcma/host_pci.c needs slab.h alpha allmodconfig: drivers/bcma/host_pci.c: In function 'bcma_host_pci_probe': drivers/bcma/host_pci.c:102: error: implicit declaration of function 'kzalloc' drivers/bcma/host_pci.c:102: warning: assignment makes pointer from integer without a cast Cc: Cc: John W. Linville Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15f82d1b0b25185311f3b876e372d0d8e52a3c92 Author: Andrew Morton Date: Thu May 26 16:24:55 2011 -0700 drivers/video/mb862xx/mb862xxfbdrv.c needs uaccess.h alpha allmodconfig: drivers/video/mb862xx/mb862xxfbdrv.c: In function 'mb862xxfb_ioctl': drivers/video/mb862xx/mb862xxfbdrv.c:323: error: implicit declaration of function 'copy_to_user' drivers/video/mb862xx/mb862xxfbdrv.c:327: error: implicit declaration of function 'copy_from_user' Cc: Paul Mundt Cc: Anatolij Gustschin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 19d78a61be6dd707dcec298c486303d4ba2c840a Author: Dimitri Sivanich Date: Fri May 6 10:33:44 2011 -0500 x86: poll waiting for I/OAT DMA channel status For certain system configurations a 5 usec udelay before checking I/OAT DMA channel status is sometimes not sufficient, resulting in a false failure status and unnecessary freeing of channel resources. Conversely, for many configurations 5 usec is longer than necessary. Loop for up to 20 usec waiting for successful status before failing. Signed-off-by: Dimitri Sivanich Signed-off-by: Dan Williams commit 5dbd05d46fb7d849570c8fa09d48591aa7ce1766 Author: Vinod Koul Date: Wed May 25 23:36:30 2011 +0530 maintainers: add dma engine tree details Signed-off-by: Vinod Koul Signed-off-by: Dan Williams commit 9693ebd4815eefa2b7c8fcc699061a0c8da0c1e7 Merge: 3fb7933 6ff3145 Author: Benjamin Herrenschmidt Date: Fri May 27 09:58:22 2011 +1000 Merge remote branch 'kumar/merge' into merge commit 82ab0f75ee2f5defe300eadc91635aa455e01afd Author: Kyungmin Park Date: Mon May 23 17:27:58 2011 +0900 gpio: Move the s5pc100 GPIO to drivers/gpio Move the Samsung s5pc100 SoC GPIO driver to drivers/gpio Signed-off-by: Kyungmin Park Signed-off-by: Grant Likely commit 347ec4e47dd249c0620f429d8458fc42eed63e0e Author: Kyungmin Park Date: Mon May 23 17:27:51 2011 +0900 gpio: Move the s5pv210 GPIO to drivers/gpio Move the Samsung s5pv210 SoC GPIO driver to drivers/gpio Signed-off-by: Kyungmin Park Signed-off-by: Grant Likely commit ab48f16137eb5a6fabcff4cc817319394fc0de7e Author: Kyungmin Park Date: Mon May 23 17:27:45 2011 +0900 gpio: Move the exynos4 GPIO to drivers/gpio Move the Samsung Exynos4 series SoCs GPIO driver to drivers/gpio Signed-off-by: Kyungmin Park Signed-off-by: Grant Likely commit fed6a0224714bd414bff91833e0bd5775a3e9c66 Author: Kyungmin Park Date: Mon May 23 17:27:38 2011 +0900 gpio: Move to Samsung common GPIO library to drivers/gpio It's common gpiolib for recent Samsung SoCs. Move to drivers/gpio Signed-off-by: Kyungmin Park Signed-off-by: Grant Likely commit bc6f5cf6484a509cfe0533b8ddf8b8ca60f35557 Author: Rickard Andersson Date: Tue May 24 23:07:17 2011 +0200 gpio/nomadik: add function to read GPIO pull down status Signed-off-by: Rickard Andersson Reviewed-by: Martin Persson [Split off from larger patch] Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 8ea72a30a31c30ec7fa0c30c743b2cec0712d143 Author: Rabin Vincent Date: Tue May 24 23:07:09 2011 +0200 gpio/nomadik: show all pins in debug Useful to check the status of the runtime pin muxing. Signed-off-by: Rabin Vincent Reviewed-by: Srinidhi Kasagar [Squashed, modified to use chip-internal IRQ trigger state] Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 37d72457644a1ded37d57dd9ae664e4e228a034d Author: Grant Likely Date: Thu May 26 17:30:03 2011 -0600 gpio: move Nomadik GPIO driver to drivers/gpio This moves the Nomadik GPIO driver out of arch/arm/plat-nomadik and into the desired location indicated by the subsystem maintainer. Signed-off-by: Linus Walleij [grant.likely: squashed with kconfig fixup] Signed-off-by: Grant Likely commit 06caa7ad8341db2f03165fa763559475cc404584 Author: Linus Walleij Date: Tue May 24 23:06:52 2011 +0200 gpio: move U300 GPIO driver to drivers/gpio This moves the U300 GPIO driver out of arch/arm/mach-u300 and into the desired location indicated by the subsystem maintainer. Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 7fe4fc881d1340f17396f52c836e597dadadea42 Author: Sarah Sharp Date: Wed May 25 10:33:17 2011 -0700 Intel xhci: Add PCI id for Panther Point xHCI host. This adds the PCI ID for the xHCI (USB 3.0) host controller in the Intel Panther Point chipset. It will be used by both the EHCI and xHCI driver in the following patches. Signed-off-by: Sarah Sharp commit 0775a60aca2375ea5598741b30d13fe6d3f15617 Author: Rafael J. Wysocki Date: Fri May 27 00:05:23 2011 +0200 PM: Fix PM QOS's user mode interface to work with ASCII input Make pm_qos_power_write() accept values passed to it in the ASCII hex format either with or without an ending newline. Signed-off-by: Rafael J. Wysocki Acked-by: Mark Gross commit a47d6b70e280401d553e7cac6f5750870de1ad21 Author: Li Zefan Date: Thu May 26 06:38:30 2011 +0000 Btrfs: setup free ino caching in a more asynchronous way For a filesystem that has lots of files in it, the first time we mount it with free ino caching support, it can take quite a long time to setup the caching before we can create new files. Here we fill the cache with [highest_ino, BTRFS_LAST_FREE_OBJECTID] before we start the caching thread to search through the extent tree. Signed-off-by: Li Zefan Signed-off-by: Chris Mason commit 00d01bc17cc2807292303961519d9c005794eb1d Author: Arne Jansen Date: Wed May 25 12:22:50 2011 +0000 btrfs scrub: don't coalesce pages that are logically discontiguous scrub_page collects several pages into one bio as long as they are physically contiguous. As we only save one logical address for the whole bio, don't collect pages that are physically contiguous but logically discontiguous. Signed-off-by: Arne Jansen Signed-off-by: Chris Mason commit c309df07868baa8b05d2a70637096465746fdbb5 Author: Chris Mason Date: Thu May 26 17:43:59 2011 -0400 Btrfs: return -ENOMEM in clear_extent_bit The btrfs releasepage function depends on ENOMEM coming back when it is called atomic. Signed-off-by: Chris Mason commit 4cb5300bc839b8a943eb19c9f27f25470e22d0ca Author: Chris Mason Date: Tue May 24 15:35:30 2011 -0400 Btrfs: add mount -o auto_defrag This will detect small random writes into files and queue the up for an auto defrag process. It isn't well suited to database workloads yet, but works for smaller files such as rpm, sqlite or bdb databases. Signed-off-by: Chris Mason commit bc9af76b1e87e4f925f97368dae6c22266922e8b Author: Vinod Koul Date: Wed May 25 16:56:34 2011 +0530 dmaengine: add TODO items for future work on dma drivers Signed-off-by: Vinod Koul Signed-off-by: Dan Williams commit 0f7e4c33eb2c40b1e9cc24d2eab6de5921bc619c Author: Kohei Kaigai Date: Thu May 26 14:59:25 2011 -0400 selinux: fix case of names with whitespace/multibytes on /selinux/create I submit the patch again, according to patch submission convension. This patch enables to accept percent-encoded object names as forth argument of /selinux/create interface to avoid possible bugs when we give an object name including whitespace or multibutes. E.g) if and when a userspace object manager tries to create a new object named as "resolve.conf but fake", it shall give this name as the forth argument of the /selinux/create. But sscanf() logic in kernel space fetches only the part earlier than the first whitespace. In this case, selinux may unexpectedly answer a default security context configured to "resolve.conf", but it is bug. Although I could not test this patch on named TYPE_TRANSITION rules actually, But debug printk() message seems to me the logic works correctly. I assume the libselinux provides an interface to apply this logic transparently, so nothing shall not be changed from the viewpoint of application. Signed-off-by: KaiGai Kohei Signed-off-by: Eric Paris commit ea77f7a2e8561012cf100c530170f12351c3b53e Merge: 7a627e3 61c4f2c Author: Eric Paris Date: Thu May 26 17:20:14 2011 -0400 Merge commit 'v2.6.39' into 20110526 Conflicts: lib/flex_array.c security/selinux/avc.c security/selinux/hooks.c security/selinux/ss/policydb.c security/smack/smack_lsm.c commit f7285b5d631fd6096b11c6af0058ed3a2b30ef4e Author: Serge E. Hallyn Date: Thu May 26 15:25:05 2011 -0500 Set cred->user_ns in key_replace_session_keyring Since this cred was not created with copy_creds(), it needs to get initialized. Otherwise use of syscall(__NR_keyctl, KEYCTL_SESSION_TO_PARENT); can lead to a NULL deref. Thanks to Robert for finding this. But introduced by commit 47a150edc2a ("Cache user_ns in struct cred"). Signed-off-by: Serge E. Hallyn Reported-by: Robert Święcki Cc: David Howells Cc: stable@kernel.org (2.6.39) Signed-off-by: Linus Torvalds commit 7812803a3119f7cf375bd04bc019ce2395a7c2fc Author: Kristen Carlson Accardi Date: Tue May 10 14:23:45 2011 +0100 langwell_gpio: add runtime pm support While this is essentially a no-op for this driver, it has the side effect of letting the PMU driver snoop D3 requests from the PCI core for this driver. This is only for langwell, not for whitney point. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Alan Cox Signed-off-by: Dirk Brandewie Signed-off-by: Grant Likely commit b7c2f036284452627d793af981877817b37d4351 Merge: 14587a2 8d2c50e Author: Linus Torvalds Date: Thu May 26 13:19:00 2011 -0700 Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: gfs2: Drop __TIME__ usage isdn/diva: Drop __TIME__ usage atm: Drop __TIME__ usage dlm: Drop __TIME__ usage wan/pc300: Drop __TIME__ usage parport: Drop __TIME__ usage hdlcdrv: Drop __TIME__ usage baycom: Drop __TIME__ usage pmcraid: Drop __DATE__ usage edac: Drop __DATE__ usage rio: Drop __DATE__ usage scsi/wd33c93: Drop __TIME__ usage scsi/in2000: Drop __TIME__ usage aacraid: Drop __TIME__ usage media/cx231xx: Drop __TIME__ usage media/radio-maxiradio: Drop __TIME__ usage nozomi: Drop __TIME__ usage cyclades: Drop __TIME__ usage commit c95286d81b976f4224c7b153defc8eec07e837d9 Author: James Bottomley Date: Thu May 26 15:08:56 2011 -0500 [SCSI] MAINTAINERS update for SCSI (new email address) Signed-off-by: James Bottomley commit 33226ffd0726508da1eeb660170a63100f4456ac Author: Haojian Zhuang Date: Mon Apr 18 22:12:46 2011 +0800 gpio/pca953x: Add support for pca9574 and pca9575 devices PCA957x is i2c gpio expander, and similar to PCA953x. Although register configurations are different between PCA957x and PCA953x. They can share a lot of components, such as IRQ handling, GPIO IN/OUT. So updating PCA953x driver to support PCA957x chips. Signed-off-by: Haojian Zhuang Signed-off-by: Grant Likely commit 073cc4e95ad5dd2d86f5328b9ea5c9355907c6a2 Author: Ed Wildgoose Date: Thu Apr 7 15:51:15 2011 -0700 gpio/cs5535: Show explicit dependency between gpio_cs5535 and mfd_cs5535 cs5535-gpio.c has been split into two, with various setup moved into cs5535-mfd.c. Given that cs5535-gpio will not load without the -mfd part, lets make that dependency explicit in Kconfig Signed-off-by: Ed Wildgoose Acked-by: Andres Salomon Signed-off-by: Andrew Morton Signed-off-by: Grant Likely commit 1d38c16ce4156f63b45abbd09dd28ca2ef5172b4 Author: Rajkumar Manoharan Date: Fri May 20 17:52:15 2011 +0530 mac80211: stop queues before rate control updation Stop tx queues before updating rate control to ensure proper rate selection. Otherwise packets can be transmitted in 40 Mhz whereas hw is configured in HT20. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 41e2b05b9598d6bdf91fc20280bfc538d853f769 Author: Rajkumar Manoharan Date: Fri May 20 17:52:14 2011 +0530 ath9k: set 40 Mhz rate only if hw is configured in ht40 Whenever there is a channel width change from 40 Mhz to 20 Mhz, the hardware is reconfigured to ht20. Meantime before doing the rate control updation, the packets are being transmitted are selected rate with IEEE80211_TX_RC_40_MHZ_WIDTH. While transmitting ht40 rate packets in ht20 mode is causing baseband panic with AR9003 based chips. ==== BB update: BB status=0x02001109 ==== ath: ** BB state: wd=1 det=1 rdar=0 rOFDM=1 rCCK=1 tOFDM=0 tCCK=0 agc=2 src=0 ** ath: ** BB WD cntl: cntl1=0xffff0085 cntl2=0x00000004 ** ath: ** BB mode: BB_gen_controls=0x000033c0 ** ath: ** BB busy times: rx_clear=99%, rx_frame=0%, tx_frame=0% ** ath: ==== BB update: done ==== Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 51ac8cbb2176dc159ee910d7074c6796079c3068 Author: Rajkumar Manoharan Date: Fri May 20 17:52:13 2011 +0530 ath9k_hw: disable phy restart on baseband panic caused by RXSM While receiving unsupported rate frame rx state machine gets into a state 0xb and if phy_restart happens in that state, BB would go hang. If RXSM is in 0xb state after first bb panic, ensure to disable the phy_restart. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit a4d86d953b8593791cb29cf2acffd48f9ee6c4f9 Author: Rajkumar Manoharan Date: Fri May 20 17:52:10 2011 +0530 ath9k: Reset chip on baseband hang Resetting hardware helps to recover from baseband hang/panic for AR9003 based chips. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit fb23d86382a088d50020fd05024d40af5b00f885 Author: Rafał Miłecki Date: Fri May 20 01:04:46 2011 +0200 b43: N-PHY: initialize last var in calibration function Reported-by: Larry Finger Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 0019a2c9277bf6d083032a5a9857249e75407a8c Author: Larry Finger Date: Thu May 19 11:48:45 2011 -0500 rtlwifi: Use order 2 RX buffer allocation only if necessary Although a previous fix handles the kernel panics that result from failure to allocate a new RX buffer, memory fragmentation can be reduced if the amsdu_8k capability is disabled as new buffers need only be of O(0), not O(2). Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a9e12869758430424804dd4332e0d2afdfdf00b0 Author: Larry Finger Date: Thu May 19 10:17:04 2011 -0500 rtlwifi: Fix kernel panic resulting from RX buffer allocation failure To handle amsdu_8k capability, the PCI routine of this driver must allocate receive buffers of order 2. Under heavy load, this causes fragmentation of memory. The present code releases the current buffer before checking to see if a new one is availble. Recovery from allocation failures is not possible, which results in kernel panics. The fix is to reorder the code to check that a new buffer can be allocated before the old one is released. If not possible, the received frame is dropped and the old one is reused. Without this change, it is impossible to transfer a 2 GB file without a kernel panic. Signed-off-by: Larry Finger Cc: Stable [2.6.{37,38,39}] Signed-off-by: John W. Linville commit 208c72f4fe44fe09577e7975ba0e7fa0278f3d03 Author: Luciano Coelho Date: Thu May 19 00:43:38 2011 +0300 nl80211: fix check for valid SSID size in scan operations In both trigger_scan and sched_scan operations, we were checking for the SSID length before assigning the value correctly. Since the memory was just kzalloc'ed, the check was always failing and SSID with over 32 characters were allowed to go through. This was causing a buffer overflow when copying the actual SSID to the proper place. This bug has been there since 2.6.29-rc4. Cc: stable@kernel.org Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 21bc7af6e5e684b44725b20f679e701e38ceef15 Author: Yogesh Ashok Powar Date: Wed May 18 12:02:03 2011 -0700 mwifiex: correct event header length While decoding received event packet from firmware, 4 bytes of interface header are already removed unconditionally. So for handling event only 4 more bytes needs to be pulled. This is achieved by changing event header length to 4. Almost all the events, except BA stream related and AMSDU aggregation control events, do not have the payload in their event skb. Such events handling depends only on the event ID. This event ID is the first four bytes of the event skb, which is copied to a separate variable before pulling the skb header. Hence event handling worked only for those events that didn't have payload in event skb. This patch fixes the broken event path of the events with payload in their event skb without harming existing working event path for the events without payload. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Kiran Divekar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 14587a2a25447813996e6fb9e48d48627cb75a5d Merge: fce637e e9d35946 Author: Linus Torvalds Date: Thu May 26 12:19:31 2011 -0700 Merge branch 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: vdso: Remove unused variable x86-64: Optimize vDSO time() x86-64: Add time to vDSO x86-64: Turn off -pg and turn on -foptimize-sibling-calls for vDSO x86-64: Move vread_tsc into a new file with sensible options x86-64: Vclock_gettime(CLOCK_MONOTONIC) can't ever see nsec < 0 x86-64: Don't generate cmov in vread_tsc x86-64: Remove unnecessary barrier in vread_tsc x86-64: Clean up vdso/kernel shared variables commit fce637e392a762e4d4f0fc41ac3d3f557187ac21 Merge: 8b29336 c4dbe54 def945e Author: Linus Torvalds Date: Thu May 26 12:19:11 2011 -0700 Merge branches 'core-fixes-for-linus' and 'irq-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: seqlock: Get rid of SEQLOCK_UNLOCKED * 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: irq: Remove smp_affinity_list when unregister irq proc commit 8b29336fe01dab3541ebb283daddf9d0168c3f05 Merge: 9f1912c 1adb656 Author: Linus Torvalds Date: Thu May 26 12:14:41 2011 -0700 Merge branch 'gpio/next' of git://git.secretlab.ca/git/linux-2.6 * 'gpio/next' of git://git.secretlab.ca/git/linux-2.6: gpio/via: rename VIA local config struct basic_mmio_gpio: split into a gpio library and platform device gpio: remove some legacy comments in build files gpio: add trace events for setting direction and value gpio/pca953x: Use handle_simple_irq instead of handle_edge_irq gpiolib: export gpiochip_find gpio: remove redundant Kconfig depends on GPIOLIB basic_mmio_gpio: convert to non-__raw* accessors basic_mmio_gpio: support direction registers basic_mmio_gpio: support different input/output registers basic_mmio_gpio: detect output method at probe time basic_mmio_gpio: request register regions basic_mmio_gpio: allow overriding number of gpio basic_mmio_gpio: convert to platform_{get,set}_drvdata() basic_mmio_gpio: remove runtime width/endianness evaluation commit 9f1912c48ce829d24789e3e5d499de0d44d3306a Merge: 4c171ac 0996910 Author: Linus Torvalds Date: Thu May 26 12:14:20 2011 -0700 Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (57 commits) regulator: Fix 88pm8607.c printk format warning input: Add support for Qualcomm PMIC8XXX power key input: Add Qualcomm pm8xxx keypad controller driver mfd: Add omap-usbhs runtime PM support mfd: Fix ASIC3 SD Host Controller Configuration size mfd: Fix omap_usbhs_alloc_children error handling mfd: Fix omap usbhs crash when rmmoding ehci or ohci mfd: Add ASIC3 LED support leds: Add ASIC3 LED support mfd: Update twl4030-code maintainer e-mail address mfd: Correct the name and bitmask for ab8500-gpadc BTempPullUp mfd: Add manual ab8500-gpadc batt temp activation for AB8500 3.0 mfd: Provide ab8500-core enumerators for chip cuts mfd: Check twl4030-power remove script error condition after i2cwrite mfd: Fix twl6030 irq definitions mfd: Add phoenix lite (twl6025) support to twl6030 mfd: Avoid to use constraint name in 88pm860x regulator driver mfd: Remove checking on max8925 regulator[0] mfd: Remove unused parameter from 88pm860x API mfd: Avoid to allocate 88pm860x static platform data ... commit 4c171acc20794af16a27da25e11ec4e9cad5d9fa Merge: 20e0ec1 8dc4abd Author: Linus Torvalds Date: Thu May 26 12:13:57 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: RDMA/cma: Save PID of ID's owner RDMA/cma: Add support for netlink statistics export RDMA/cma: Pass QP type into rdma_create_id() RDMA: Update exported headers list RDMA/cma: Export enum cma_state in RDMA/nes: Add a check for strict_strtoul() RDMA/cxgb3: Don't post zero-byte read if endpoint is going away RDMA/cxgb4: Use completion objects for event blocking IB/srp: Fix integer -> pointer cast warnings IB: Add devnode methods to cm_class and umad_class IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required IB/uverbs: Add devnode method to set path/mode RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node RDMA: Add netlink infrastructure RDMA: Add error handling to ib_core_init() commit 20e0ec119b2c6cc412addefbe169f4f5e38701e8 Merge: 829ae27 43c6401 Author: Linus Torvalds Date: Thu May 26 12:13:22 2011 -0700 Merge branch 'spi/next' of git://git.secretlab.ca/git/linux-2.6 * 'spi/next' of git://git.secretlab.ca/git/linux-2.6: spi/amba-pl022: work in polling or interrupt mode if pl022_dma_probe fails spi/spi_s3c24xx: Use spi_bitbang_stop instead of spi_unregister_master in s3c24xx_spi_remove spi/spi_nuc900: Use spi_bitbang_stop instead of spi_unregister_master in nuc900_spi_remove spi/spi_tegra: use spi_unregister_master() instead of spi_master_put() spi/spi_sh: use spi_unregister_master instead of spi_master_put in remove path spi: Use void pointers for data in simple SPI I/O operations spi/pl022: use cpu_relax in the busy loop spi/pl022: mark driver non-experimental spi/pl022: timeout on polled transfer v2 spi/dw_spi: improve the interrupt mode with the batch ops spi/dw_spi: change poll mode transfer from byte ops to batch ops spi/dw_spi: remove the un-necessary flush() spi/dw_spi: unify the low level read/write routines commit 829ae2732998e628d762b97627e4e5cc6c1b5625 Merge: 6ddb451 9b28b11 Author: Linus Torvalds Date: Thu May 26 12:11:54 2011 -0700 Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (33 commits) OMAP3: PM: Boot message is not an error, and not helpful, remove it OMAP3: cpuidle: change the power domains modes determination logic OMAP3: cpuidle: code rework for improved readability OMAP3: cpuidle: re-organize the C-states data OMAP3: clean-up mach specific cpuidle data structures OMAP3 cpuidle: remove useless SDP specific timings usb: otg: OMAP4430: Powerdown the internal PHY when USB is disabled usb: otg: OMAP4430: Fixing the omap4430_phy_init function usb: musb: am35x: fix compile error when building am35x usb: musb: OMAP4430: Power down the PHY during board init omap: drop board-igep0030.c omap: igep0020: add support for IGEP3 omap: igep0020: minor refactoring omap: igep0020: name refactoring for future merge with IGEP3 omap: Remove support for omap2evm arm: omap2plus: GPIO cleanup omap: musb: introduce default board config omap: move detection of NAND CS to common-board-devices omap: use common initialization for PMIC i2c bus omap: consolidate touch screen initialization among different boards ... commit 6ddb4518c7af7b03fa322552d794f759cd5c26fa Merge: be93d8c 3fb7933 Author: Linus Torvalds Date: Thu May 26 12:11:17 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc/4xx: Adding PCIe MSI support powerpc: Fix irq_free_virt by adjusting bounds before loop powerpc/irq: Protect irq_radix_revmap_lookup against irq_free_virt powerpc/irq: Check desc in handle_one_irq and expand generic_handle_irq powerpc/irq: Always free duplicate IRQ_LEGACY hosts powerpc/irq: Remove stale and misleading comment powerpc/cell: Rename ipi functions to match current abstractions powerpc/cell: Use common smp ipi actions Remove unused MSG_ flags in linux/smp.h powerpc/pseries: Update MAX_HCALL_OPCODE to reflect page coalescing powerpc/oprofile: Handle events that raise an exception without overflowing powerpc/ftrace: Implement raw syscall tracepoints on PowerPC commit 700c4f3325495d2e0e619fb48b900ec942f1470b Author: Luca Tettamanti Date: Thu May 26 21:07:26 2011 +0200 block: remove unused variable in bio_attempt_front_merge() sector is never read inside the function. Signed-off-by: Luca Tettamanti Signed-off-by: Jens Axboe commit 75e3f3ee3c64968d42f4843ec49e579f84b5aa0c Author: Tejun Heo Date: Thu May 26 21:06:50 2011 +0200 block: always allocate genhd->ev if check_events is implemented 9fd097b149 (block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers) removed DISK_EVENT_MEDIA_CHANGE from legacy/fringe block drivers which have inadequate ->check_events(). Combined with earlier change 7c88a168da (block: don't propagate unlisted DISK_EVENTs to userland), this enables using ->check_events() for internal processing while avoiding enabling in-kernel block event polling which can lead to infinite event loop. Unfortunately, this made many drivers including floppy without any bit set in disk->events and ->async_events in which case disk_add_events() simply skipped allocation of disk->ev, which disables whole event handling. As ->check_events() is still used during open processing for revalidation, this can lead to open failure. This patch always allocates disk->ev if ->check_events is implemented. In the long term, it would make sense to simply include the event structure inline into genhd as it's now used by virtually all block devices. Signed-off-by: Tejun Heo Reported-by: Ondrej Zary Reported-by: Alex Villacis Lasso Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 8892cbaf686fb18a5f0558b9fd7773b32c0c7852 Author: Namhyung Kim Date: Thu May 26 21:06:50 2011 +0200 brd: export module parameters Export 'rd_nr', 'rd_size' and 'max_part' parameters to sysfs so user can know that how many devices are allowed, how big each device is and how many partitions are supported. If 'max_part' is 0, it means simply the device doesn't support partitioning. Also note that 'max_part' can be adjusted to power of 2 minus 1 form if needed. User should check this value after the module loading if he/she want to use that number correctly (i.e. fdisk, mknod, etc.). Signed-off-by: Namhyung Kim Cc: Laurent Vivier Signed-off-by: Jens Axboe commit 13868b76ab8135389fe1d8cf1c6a4847c9fef0a7 Author: Namhyung Kim Date: Thu May 26 21:06:50 2011 +0200 brd: fix comment on initial device creation If 'rd_nr' param was not specified, 16 (can be adjusted via CONFIG_BLK_DEV_RAM_COUNT) devices would be created by default but comment said 1. Fix it. Signed-off-by: Namhyung Kim Signed-off-by: Jens Axboe commit af46566885a373b0a526932484cd8fef8de7b598 Author: Namhyung Kim Date: Thu May 26 21:06:50 2011 +0200 brd: handle on-demand devices correctly When finding or allocating a ram disk device, brd_probe() did not take partition numbers into account so that it can result to a different device. Consider following example (I set CONFIG_BLK_DEV_RAM_COUNT=4 for simplicity) : $ sudo modprobe brd max_part=15 $ ls -l /dev/ram* brw-rw---- 1 root disk 1, 0 2011-05-25 15:41 /dev/ram0 brw-rw---- 1 root disk 1, 16 2011-05-25 15:41 /dev/ram1 brw-rw---- 1 root disk 1, 32 2011-05-25 15:41 /dev/ram2 brw-rw---- 1 root disk 1, 48 2011-05-25 15:41 /dev/ram3 $ sudo mknod /dev/ram4 b 1 64 $ sudo dd if=/dev/zero of=/dev/ram4 bs=4k count=256 256+0 records in 256+0 records out 1048576 bytes (1.0 MB) copied, 0.00215578 s, 486 MB/s namhyung@leonhard:linux$ ls -l /dev/ram* brw-rw---- 1 root disk 1, 0 2011-05-25 15:41 /dev/ram0 brw-rw---- 1 root disk 1, 16 2011-05-25 15:41 /dev/ram1 brw-rw---- 1 root disk 1, 32 2011-05-25 15:41 /dev/ram2 brw-rw---- 1 root disk 1, 48 2011-05-25 15:41 /dev/ram3 brw-r--r-- 1 root root 1, 64 2011-05-25 15:45 /dev/ram4 brw-rw---- 1 root disk 1, 1024 2011-05-25 15:44 /dev/ram64 After this patch, /dev/ram4 - instead of /dev/ram64 - was accessed correctly. In addition, 'range' passed to blk_register_region() should include all range of dev_t that RAMDISK_MAJOR can address. It does not need to be limited by partition numbers unless 'rd_nr' param was specified. Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 315980c8688c4b06713c1a5fe9d64cdf8ab57a72 Author: Namhyung Kim Date: Thu May 26 21:06:50 2011 +0200 brd: limit 'max_part' module param to DISK_MAX_PARTS The 'max_part' parameter controls the number of maximum partition a brd device can have. However if a user specifies very large value it would exceed the limitation of device minor number and can cause a kernel panic (or, at least, produce invalid device nodes in some cases). On my desktop system, following command kills the kernel. On qemu, it triggers similar oops but the kernel was alive: $ sudo modprobe brd max_part=100000 BUG: unable to handle kernel NULL pointer dereference at 0000000000000058 IP: [] sysfs_create_dir+0x2d/0xae PGD 7af1067 PUD 7b19067 PMD 0 Oops: 0000 [#1] SMP last sysfs file: CPU 0 Modules linked in: brd(+) Pid: 44, comm: insmod Tainted: G W 2.6.39-qemu+ #158 Bochs Bochs RIP: 0010:[] [] sysfs_create_dir+0x2d/0xae RSP: 0018:ffff880007b15d78 EFLAGS: 00000286 RAX: ffff880007b05478 RBX: ffff880007a52760 RCX: ffff880007b15dc8 RDX: ffff880007a4f900 RSI: ffff880007b15e48 RDI: ffff880007a52760 RBP: ffff880007b15da8 R08: 0000000000000002 R09: 0000000000000000 R10: ffff880007b15e48 R11: ffff880007b05478 R12: 0000000000000000 R13: ffff880007b05478 R14: 0000000000400920 R15: 0000000000000063 FS: 0000000002160880(0063) GS:ffff880007c00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000058 CR3: 0000000007b1c000 CR4: 00000000000006b0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 0000000000000000 DR7: 0000000000000000 Process insmod (pid: 44, threadinfo ffff880007b14000, task ffff880007acb980) Stack: ffff880007b15dc8 ffff880007b05478 ffff880007b15da8 00000000fffffffe ffff880007a52760 ffff880007b05478 ffff880007b15de8 ffffffff81143c0a 0000000000400920 ffff880007a52760 ffff880007b05478 0000000000000000 Call Trace: [] kobject_add_internal+0xdf/0x1a0 [] kobject_add_varg+0x41/0x50 [] kobject_add+0x64/0x66 [] blk_register_queue+0x5f/0xb8 [] add_disk+0xdf/0x289 [] brd_init+0xdf/0x1aa [brd] [] ? 0xffffffffa0003fff [] ? 0xffffffffa0003fff [] do_one_initcall+0x7a/0x12e [] sys_init_module+0x9c/0x1dc [] system_call_fastpath+0x16/0x1b Code: 89 e5 41 55 41 54 53 48 89 fb 48 83 ec 18 48 85 ff 75 04 0f 0b eb fe 48 8b 47 18 49 c7 c4 70 1e 4d 81 48 85 c0 74 04 4c 8b 60 30 8b 44 24 58 45 31 ed 0f b6 c4 85 c0 74 0d 48 8b 43 28 48 89 RIP [] sysfs_create_dir+0x2d/0xae RSP CR2: 0000000000000058 ---[ end trace aebb1175ce1f6739 ]--- Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: stable@kernel.org Signed-off-by: Jens Axboe commit a2cba2913c7623789296e39d787b01031f9c7969 Author: Namhyung Kim Date: Thu May 26 21:06:50 2011 +0200 brd: get rid of unused members from struct brd_device brd_refcnt, brd_offset, brd_sizelimit and brd_blocksize in struct brd_device seem to be copied from struct loop_device but they're not used anywhere. Let get rid of them. Signed-off-by: Namhyung Kim Signed-off-by: Jens Axboe commit be93d8cfbae1996052e91b2883d306a5d9d0fe18 Author: Linus Torvalds Date: Thu May 26 12:03:50 2011 -0700 Fix build with !HUGETLBFS I stupidly broke the case of CONFIG_HUGETLBFS=n when doing the conversion to vm_flags_t in commit ca16d140af91 ("mm: don't access vm_flags as 'int'"). And my 'allyesconfig' build didn't find it, for obvious reasons.. Include in . The problem could have been avoided by just turning the hugetlb_file_setup() error wrapper into a macro, but mm_types.h is a reasonable include in this file. Reported-by: Richard -rw- Weinberger Signed-off-by: Linus Torvalds commit f4fa3424c66255ba1e07b26becfc3d6cab0fdf65 Author: Jens Axboe Date: Thu May 26 21:01:38 2011 +0200 block: fix oops on !disk->queue and sysfs discard alignment display Eric Dumazet reports: ---- At boot, I have a crash in part_discard_alignment_show+0x1b/0x50 CR2 : 000006ac fault in : mov 0x2c(%rcx),%edx I suspect commit 23ceb5b7719e9276d4 (block: Remove extra discard_alignment from hd_struct) being in fault ---- Not quite known how ->queue can be NULL while the sysfs entry exists, but lets play it safe and check for a NULL queue. The rest of the sysfs show strategies in check.c do not dereference disk->queue. Reported-by: Eric Dumazet Signed-off-by: Jens Axboe commit 86e4ca66e81bba0f8640f1fa19b8b8f72cbd0561 Author: David S. Miller Date: Thu May 26 15:00:31 2011 -0400 bug.h: Move ratelimit warn interfaces to ratelimit.h As reported by Ingo Molnar, we still have configuration combinations where use of the WARN_RATELIMIT interfaces break the build because dependencies don't get met. Instead of going down the long road of trying to make it so that ratelimit.h can get included by kernel.h or asm-generic/bug.h, just move the interface into ratelimit.h and make users have to include that. Reported-by: Ingo Molnar Signed-off-by: David S. Miller Acked-by: Randy Dunlap commit 90e62474fd08e16ba5309886c801243b0eb782f3 Author: Andy Gospodarek Date: Wed May 25 04:41:59 2011 +0000 bonding: cleanup module option descriptions Weiping Pan noticed that the module option description for xmit_hash_policy was incorrect and was nice enough to post a patch to fix it. The text was correct, but created a line over 80 characters and I would rather not add those. I realized I could take a few minutes and clean up all the descriptions and things would look much better. This is the result. Based on patch from Weiping Pan . Signed-off-by: Andy Gospodarek CC: Weiping Pan Reviewed-by: Weiping Pan Signed-off-by: David S. Miller commit da7c06c4a773b7903d3c09a25edbcb20bdc4af22 Author: Justin Mattock Date: Mon May 23 20:43:48 2011 +0000 net:8021q:vlan.c Fix pr_info to just give the vlan fullname and version. The below patch removes vlan_buggyright and vlan_copyright from vlan_proto_init, so that it prints out just the fullname of vlan and the version number. before: [ 30.438203] 802.1Q VLAN Support v1.8 Ben Greear [ 30.441542] All bugs added by David S. Miller after: [ 31.513910] 802.1Q VLAN Support v1.8 Signed-off-by: Justin P. Mattock CC: Joe Perches CC: David S. Miller CC: Ben Greear Signed-off-by: David S. Miller commit cc780af5aca00d573eae0e926e1d4cf1439b580e Author: Russell King Date: Thu May 26 19:50:30 2011 +0100 ARM: kill pmd_off() pmd_off() has only one user, so lets consolidate this into its only user. Signed-off-by: Russell King commit 6848b7334b24b47aa3d0e70342ff839ffa95d5fa Author: Steve French Date: Thu May 26 18:38:54 2011 +0000 [CIFS] When mandatory encryption on share, fail mount When mandatory encryption is configured in samba server on a share (smb.conf parameter "smb encrypt = mandatory") the server will hang up the tcp session when we try to send the first frame after the tree connect if it is not a QueryFSUnixInfo, this causes cifs mount to hang (it must be killed with ctl-c). Move the QueryFSUnixInfo call earlier in the mount sequence, and check whether the SetFSUnixInfo fails due to mandatory encryption so we can return a sensible error (EACCES) on mount. In a future patch (for 2.6.40) we will support mandatory encryption. CC: Stable Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit 240b26284ac84f06ed0bc89c363f022e21b84b98 Author: Johan Hovold Date: Thu May 26 04:37:32 2011 +0000 net: davinci_emac: fix dev_err use at probe Use platform device rather than net device in dev_err calls before net device has been registered to avoid messages such as (null): DaVinci EMAC: Failed to get EMAC clock Also replace remaining printks in probe with dev_{err,warn}. Signed-off-by: Johan Hovold Signed-off-by: David S. Miller commit 12e6c419b48c4d1803918e5d952ebee07bae7465 Author: Oliver Hartkopp Date: Thu May 26 04:57:53 2011 +0000 can: convert to %pK for kptr_restrict support As these pointers have been printed without using %p they were missed in the big network kptr_restrict conversion patch %p -> %pK from Dan Rosenberg. Signed-off-by: Oliver Hartkopp Signed-off-by: David S. Miller commit fd0daf9d58f6b3342d07c5f6bbfb304dbe5db4ec Author: Michał Mirosław Date: Thu May 26 00:42:57 2011 +0000 net: fix ETHTOOL_SFEATURES compatibility with old ethtool_ops.set_flags Current code squashes flags to bool - this makes set_flags fail whenever some ETH_FLAG_* equivalent features are set. Fix this. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit fa2989f4473413a86890066aa3a5676a53b541e4 Author: Pavel Shilovsky Date: Thu May 26 10:01:59 2011 +0400 CIFS: Use pid saved from cifsFileInfo in writepages and set_file_size We need it to make them work with mandatory locking style because we can fail in a situation like when kernel need to flush dirty pages and there is a lock held by a process who opened file. Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit a74b81b0aff4a01e0816df5915c854fb52c5e87f Merge: f8d613e ece928d Author: Linus Torvalds Date: Thu May 26 10:55:15 2011 -0700 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (28 commits) Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly. ocfs2/dlm: Do not migrate resource to a node that is leaving the domain ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG Ocfs2/move_extents: Set several trivial constraints for threshold. Ocfs2/move_extents: Let defrag handle partial extent moving. Ocfs2/move_extents: move/defrag extents within a certain range. Ocfs2/move_extents: helper to calculate the defraging length in one run. Ocfs2/move_extents: move entire/partial extent. Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode. Ocfs2/move_extents: helper to probe a proper region to move in an alloc group. Ocfs2/move_extents: helper to validate and adjust moving goal. Ocfs2/move_extents: find the victim alloc group, where the given #blk fits. Ocfs2/move_extents: defrag a range of extent. Ocfs2/move_extents: move a range of extent. Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving. Ocfs2/move_extents: Add basic framework and source files for extent moving. Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2. Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl. Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl. ... commit f8d613e2a665bf1be9628a3c3f9bafe7599b32c0 Merge: 8a0599d 5bc20fc Author: Linus Torvalds Date: Thu May 26 10:50:56 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem: xen: cleancache shim to Xen Transcendent Memory ocfs2: add cleancache support ext4: add cleancache support btrfs: add cleancache support ext3: add cleancache support mm/fs: add hooks to support cleancache mm: cleancache core ops functions and config fs: add field to superblock to support cleancache mm/fs: cleancache documentation Fix up trivial conflict in fs/btrfs/extent_io.c due to includes commit 8a0599dd2471f2a2e409498c08a0ab339057ad06 Merge: 35806b4 233eebb Author: Linus Torvalds Date: Thu May 26 10:49:11 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: correctly decrement the extent buffer index in xfs_bmap_del_extent xfs: check for valid indices in xfs_iext_get_ext and xfs_iext_idx_to_irec xfs: fix up asserts in xfs_iflush_fork xfs: do not do pointer arithmetic on extent records xfs: do not use unchecked extent indices in xfs_bunmapi xfs: do not use unchecked extent indices in xfs_bmapi xfs: do not use unchecked extent indices in xfs_bmap_add_extent_* xfs: remove if_lastex xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag xfs: do not discard alloc btree blocks xfs: add online discard support commit 099691081df40d8863cb2fb01ee64039633892dd Author: Randy Dunlap Date: Thu May 26 10:16:15 2011 -0700 regulator: Fix 88pm8607.c printk format warning Fix printk format warning (seen on x86_64) and change to unsigned output format: drivers/regulator/88pm8607.c:417: warning: format '%d' expects type 'int', but argument 3 has type 'resource_size_t' Signed-off-by: Randy Dunlap Acked-by: Mark Brown Signed-off-by: Samuel Ortiz commit 92d57a73e41047bff7d0812e06f893567876d455 Author: Trilok Soni Date: Fri May 13 15:17:51 2011 +0530 input: Add support for Qualcomm PMIC8XXX power key Add support for PMIC8XXX power key driven over dedicated KYPD_PWR_N pin. Acked-by: Dmitry Torokhov Signed-off-by: Trilok Soni Signed-off-by: Anirudh Ghayal Signed-off-by: Samuel Ortiz commit 39325b59d88b42ba2ccf2e62c234059e9941a47c Author: Trilok Soni Date: Thu May 19 10:54:04 2011 +0530 input: Add Qualcomm pm8xxx keypad controller driver Add Qualcomm PMIC8XXX based keypad controller driver supporting upto 18x8 matrix configuration. Acked-by: Dmitry Torokhov Signed-off-by: Trilok Soni Signed-off-by: Anirudh Ghayal Signed-off-by: Samuel Ortiz commit 7e6502d577106fb5b202bbaac64c5f1b065e6daa Author: Keshava Munegowda Date: Sun May 22 22:51:26 2011 +0200 mfd: Add omap-usbhs runtime PM support The usbhs core driver does not enable/disable the interface and functional clocks; These clocks are handled by hwmod and runtime pm, hence insted of the clock enable/disable, the runtime pm APIS are used. however,the port clocks and tll clocks are handled by the usbhs core. Signed-off-by: Keshava Munegowda Signed-off-by: Samuel Ortiz commit 74e32d1b68f177f9c998041d789253df9c7f3575 Author: Paul Parsons Date: Sun May 15 14:13:11 2011 +0000 mfd: Fix ASIC3 SD Host Controller Configuration size The size of the TC6380AF SD Host Controller Configuration area is 0x200 bytes (assuming registers are aligned on 32-bit boundaries), not 0x400 bytes. Source: Toshiba TC6380AF Specification sections 4.2 and 4.3.1 Signed-off-by: Paul Parsons Signed-off-by: Samuel Ortiz commit d910774f13678caf68fc9cbbef325f08f7f951a3 Author: Axel Lin Date: Sat May 14 14:15:36 2011 +0800 mfd: Fix omap_usbhs_alloc_children error handling 1. Return proper error if omap_usbhs_alloc_child fails 2. In the case of goto err_ehci, we should call platform_device_unregister(ehci) instead of platform_device_put(ehci) because we have already added the platform device to device hierarchy. Signed-off-by: Axel Lin Signed-off-by: Axel Lin Tested-by: Keshava Munegowda Acked-by: Felipe Balbi Signed-off-by: Samuel Ortiz commit 6eb6fbbf3eca6dfba73e72de5ab2eeb52ae41f7a Author: Keshava Munegowda Date: Mon May 16 14:24:58 2011 +0530 mfd: Fix omap usbhs crash when rmmoding ehci or ohci The disabling of clocks and freeing GPIO are changed to fix the occurrence of the crash of rmmod of ehci and ohci drivers. The GPIOs should be freed after the spin locks are unlocked. Signed-off-by: Keshava Munegowda Acked-by: Felipe Balbi Cc: stable@kernel.org Signed-off-by: Samuel Ortiz commit 13ca4f66108188231f9ef0358449f4543a0b84a1 Author: Paul Parsons Date: Fri May 13 18:53:03 2011 +0000 mfd: Add ASIC3 LED support Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform. Signed-off-by: Paul Parsons Signed-off-by: Samuel Ortiz commit 7d9e7e9fbd3041a0596394579d800788bbf94939 Author: Paul Parsons Date: Fri May 13 18:52:56 2011 +0000 leds: Add ASIC3 LED support Add LED support for the HTC ASIC3. Underlying support is provided by the mfd/asic3 and leds/leds-asic3 drivers. An example configuration is provided by the pxa/hx4700 platform. Signed-off-by: Paul Parsons Signed-off-by: Samuel Ortiz commit 4a7c00cd94d4ca7061c481fe823a256e37436044 Author: Peter Ujfalusi Date: Tue May 10 08:59:23 2011 +0300 mfd: Update twl4030-code maintainer e-mail address Signed-off-by: Peter Ujfalusi Signed-off-by: Samuel Ortiz commit ed13941643a437cf48f24ed53bdae79457628105 Author: Johan Palsson Date: Sun May 8 00:55:43 2011 +0200 mfd: Correct the name and bitmask for ab8500-gpadc BTempPullUp The bitmask for enabling the BatTemp pull-up was wrong and is corrected. The name is also changed to be inline with the AB8500 register description Signed-off-by: Johan Palsson Reviewed-by: Mattias Wallin Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit c9c9513fd08d1e0548003e86d70a211c2e456d49 Author: Karl Komierowski Date: Sun May 8 00:55:31 2011 +0200 mfd: Add manual ab8500-gpadc batt temp activation for AB8500 3.0 In AB8500 3.0 the pull-up supplying the NTC must be manually activated. Add enumerators to chip version detection logic. Signed-off-by: Kalle Komierowski Reviewed-by: Johan Palsson Reviewed-by: Daniel Willerud Reviewed-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 863dde5bfa3c48f459c6302daf64f94a11c7c1e5 Author: Linus Walleij Date: Sun May 8 00:54:45 2011 +0200 mfd: Provide ab8500-core enumerators for chip cuts Since functionality in MFD cells may need to be adjusted according to chip revision, let's enumerate them and keep track of them. Signed-off-by: Linus Walleij Signed-off-by: Samuel Ortiz commit eac78a21017f5beefa75f88b966950cd89caac37 Author: Lesly A M Date: Wed May 4 17:38:53 2011 +0530 mfd: Check twl4030-power remove script error condition after i2cwrite Fixing the error condition check in twl4030 remove script function. Due to some typo in commit ID: 11a441ce82d6ffecfd39b324024de0cd630b36c1 Signed-off-by: Lesly A M Signed-off-by: Samuel Ortiz commit 6523b148b44be38d89c2ee9865d34da30d9f5f1c Author: Graeme Gregory Date: Thu May 12 14:27:56 2011 +0100 mfd: Fix twl6030 irq definitions The charger fault IRQs from the twl will in future patches be handled by a seperate IRQ handler in the charger driver than the general charger IRQ. Give them different IRQ numbers now to allow the charger driver to be merged in the future. Signed-off-by: Graeme Gregory Signed-off-by: Samuel Ortiz commit 521d8ec3f0d8069bea3b3afa70f487cdb5118018 Author: Graeme Gregory Date: Thu May 12 14:27:55 2011 +0100 mfd: Add phoenix lite (twl6025) support to twl6030 Phoenix Lite is based on the twl6030 family of PMICs. It has mostly the same feature set of twl6030 but with small changes. The codec block has also been removed. It also has a new charger block and new features in its ADC block. VUSB handling also differs. Signed-off-by: Graeme Gregory Reviewed-by: Mark Brown Signed-off-by: Samuel Ortiz commit 586e1a1763d34bd256f3f1e77293d8386e4871d2 Author: Haojian Zhuang Date: Fri May 6 17:21:23 2011 +0800 mfd: Avoid to use constraint name in 88pm860x regulator driver Avoid to use constraint name in regulator driver. So use regulator id is used instead in platform driver. Signed-off-by: Haojian Zhuang Cc: Liam Girdwood Acked-by: Mark Brown Signed-off-by: Samuel Ortiz commit ebf9988ecad6727e5ae950fc2c72b963a1bfc0fe Author: Haojian Zhuang Date: Fri May 6 17:21:25 2011 +0800 mfd: Remove checking on max8925 regulator[0] Since regulator[0] is always checking in mfd driver, it results in registration failure without regulator[0]. Signed-off-by: Haojian Zhuang Reviewed-by: Mark Brown Signed-off-by: Samuel Ortiz commit cea438dda618797922d0bfc4814e832bab19ac19 Author: Haojian Zhuang Date: Fri May 6 17:21:24 2011 +0800 mfd: Remove unused parameter from 88pm860x API i2c_client parameter isn't used in some functions. Just remove it. Signed-off-by: Haojian Zhuang Signed-off-by: Samuel Ortiz commit f5fb758de6d2ddae572ee39de54d60bf5593652a Author: Haojian Zhuang Date: Fri May 6 17:21:21 2011 +0800 mfd: Avoid to allocate 88pm860x static platform data Maybe multiple PMIC devices are installed into one board. Static variable can only make driver logic mess. So remove these variable, and use platform data from platform driver instead. Signed-off-by: Haojian Zhuang Signed-off-by: Samuel Ortiz commit 008b30408c40ede5985397e7daac45d30b375a01 Author: Haojian Zhuang Date: Fri May 6 17:21:20 2011 +0800 mfd: Add rtc support to 88pm860x Enable rtc function in 88pm860x PMIC. Signed-off-by: Haojian Zhuang Cc: Alessandro Zummo Signed-off-by: Samuel Ortiz commit db13c04002e0d896f89657f9b2837a8ecfbb19b6 Author: Haojian Zhuang Date: Mon Apr 18 22:04:09 2011 +0800 regulator: Enable max8925 i2c sequence for control Force to enable i2c as power up/down sequence. Otherwise, SD/LDO can't be enabled or disabled via accessing i2c bus. Signed-off-by: Haojian Zhuang Cc: Liam Girdwood Acked-by: Mark Brown Signed-off-by: Samuel Ortiz commit 2402ca5e300db0d88fce9e0b3a5218863c71b694 Author: Haojian Zhuang Date: Mon Apr 18 22:04:08 2011 +0800 power_supply: Use max8925 platform_data from cell Avoid to get platform_data from parent device. Get it from mfd cell device instead. Signed-off-by: Haojian Zhuang Acked-by: Anton Vorontsov Cc: David Woodhouse Signed-off-by: Samuel Ortiz commit e6f1945b9e71cbc8498e5fbf8d5352331ac5da14 Author: Vincent Palatin Date: Tue Apr 12 10:55:58 2011 -0400 mfd: Fix tps6586x GPIO value setting In the current code, every time we set a TPS6586x GPIO pin, the tps6586x_gpio_set function is resetting all other GPIO pins. We need to update the right GPIOxOUT bit of the GPIOSET2 register instead of overriding the full value. Tested by setting sequentially GPIO2 and GPIO3 and verifying the pins voltage. Change-Id: I560edde146c5425cce37432c4ee91569eea5adcf Signed-off-by: Vincent Palatin Signed-off-by: Samuel Ortiz commit ea91db527cd73a4401d10a1fd730f06ce9a363c7 Author: Abhijeet Dharmapurikar Date: Tue Apr 5 14:40:56 2011 -0700 MAINTAINERS: Add patterns for pmic 8921 files to MSM subsystem Signed-off-by: Abhijeet Dharmapurikar Acked-by: David Brown Signed-off-by: Samuel Ortiz commit c013f0a56c56b88ac63c4037f2dfaaf2422fa863 Author: Abhijeet Dharmapurikar Date: Tue Apr 5 14:40:53 2011 -0700 mfd: Add pm8xxx irq support Add support for the irq controller in Qualcomm 8xxx pmic. The 8xxx interrupt controller provides control for gpio and mpp configured as interrupts in addition to other subdevice interrupts. The interrupt controller also provides a way to read the real time status of an interrupt. This real time status is the only way one can get the input values of gpio and mpp lines. Signed-off-by: Abhijeet Dharmapurikar Signed-off-by: Samuel Ortiz commit cbdb53e1f33baf60ded045dc79cd0dd4e9705fa5 Author: Abhijeet Dharmapurikar Date: Tue Apr 5 14:40:52 2011 -0700 mfd: Add Qualcomm PMIC 8921 core driver Add support for the Qualcomm PM8921 PMIC chip. The core driver will communicate with the PMIC chip via the MSM SSBI bus. Signed-off-by: Abhijeet Dharmapurikar Signed-off-by: Samuel Ortiz commit 1305134e8246fb4e86b93d5b6a21caa0e07a8ecf Author: Axel Lin Date: Fri Apr 15 20:06:37 2011 +0800 mfd: Group NXP PCF50633* drivers together PCF50633_ADC and PCF50633_GPIO depends on MFD_PCF50633. Thus group NXP PCF50633* drivers together. Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit 37df003c85efd40b20c6d54695d4f03e6e75ebe6 Author: Axel Lin Date: Fri Apr 15 20:04:45 2011 +0800 mfd: Group TPSxxxxx power management chips together Group TPSxxxxx power management chips together and sort in alphabetical order. This change makes it easier for users to find config options. Signed-off-by: Axel Lin Signed-off-by: Samuel Ortiz commit ca972d13382436530896e90591e2793e7a9e7eba Author: Lesly A M Date: Thu Apr 14 17:57:53 2011 +0530 mfd: TWL5030 version checking in twl-core Added API to get the TWL5030 Si version from the IDCODE register. It is used for enabling the workaround for TWL erratum 27. Signed-off-by: Lesly A M Cc: Nishanth Menon Cc: David Derrick Signed-off-by: Samuel Ortiz commit d7ac829fa30d44d6553a0ead41f47bb92ee4d73e Author: Lesly A M Date: Thu Apr 14 17:57:51 2011 +0530 mfd: Modifying the twl4030-power macro name Main_Ref to all caps Modifying the macro name Main_Ref to all caps(MAIN_REF). Suggested by Nishanth Menon Signed-off-by: Lesly A M Cc: Nishanth Menon Cc: David Derrick Signed-off-by: Samuel Ortiz commit 1f968ff61f2987f500832e93b9b704f26adadea6 Author: Lesly A M Date: Thu Apr 14 17:57:50 2011 +0530 mfd: Correct the twl4030-power warning print during script loading Correcting the if condition check for printing the warning, if wakeup script is not updated before updating the sleep script. Since the flag 'order' is set to '1' while updating the wakeup script for P1P2, the condition checking for printing the warning should be if(!order) (ie: print the warning if wakeup script is not updated before updating the sleep script) Signed-off-by: Lesly A M Cc: Nishanth Menon Cc: David Derrick Signed-off-by: Samuel Ortiz commit a5156f1adeeb0be7f8370c1d2e111bd1b082b578 Author: Haojian Zhuang Date: Tue Apr 26 11:06:22 2011 +0200 mfd: Fix build warning on 88pm860x WARNING: vmlinux.o(.devinit.text+0x6c4): Section mismatch in reference from the function device_onkey_init() to the (unknown reference) .init.data:(unknown) The function __devinit device_onkey_init() references a (unknown reference) __initdata (unknown). If (unknown) is only used by device_onkey_init then annotate (unknown) with a matching annotation. It's caused by using __initdata on mfd cell resources. Replace __initdata with __devinitdata. Signed-off-by: Haojian Zhuang Signed-off-by: Samuel Ortiz commit 5d76ca3baaf5504779a59b2ad73b609b92e7e8dc Author: Wanlong Gao Date: Sun Apr 10 22:10:26 2011 +0800 mfd: Fix wl1273 warning Remove the unused variable "u16 val" of wl1273-core.c. Signed-off-by: Wanlong Gao Signed-off-by: Samuel Ortiz commit bc86fcee373f27bffc9ed0c0a734e40ec084aef5 Author: Mark Brown Date: Mon Apr 4 11:59:57 2011 +0900 mfd: Continue with IRQ setup even if we don't have PMIC main IRQ The fact that we can't actually raise any interrupts doesn't stop us setting up the IRQs we're exporting. While this isn't actually going to do anything it allows us to proceed further through device setup during board bringup and avoids issues with the MFD core not letting us suppress the configuration of IRQ resources. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 0b14c22ea1e0226d894df76176971d06e8886aa7 Author: Mark Brown Date: Mon Apr 4 11:04:42 2011 +0900 mfd: Provide platform data for WM831x GPIO configuration Allow the GPIO mode of WM831x devices to be configured using platform data. Users may provide a table of GPIO register values in gpio_defaults[]. In order to allow 0 to be set explicitly out of range values are accepted and masked off, with a WM831X_GPIO_CONFIGURE define provided to set an out of range value. This can be used to configure higher numbered GPIOs or override values set in OTP for GPIOs configured using OTP. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit 8997619a045bef5d138f0f45141a398557f809e6 Author: Mark Brown Date: Mon Apr 4 11:04:12 2011 +0900 mfd: Remove compatibility interface for WM831x specific IRQ API The last user was removed in the merge window. Signed-off-by: Mark Brown Signed-off-by: Samuel Ortiz commit ba279f58c6148c1dc76265da98eb292e76c15a32 Author: Samuel Ortiz Date: Fri Apr 8 02:04:50 2011 +0200 mfd: Remove mfd_data Cell pointers are passed through device->mfd_cell and platform data is passed through the MFD cell platform_data pointer. Signed-off-by: Samuel Ortiz commit 17cf8b429341869c154268f9d92d32a74295a29a Author: Samuel Ortiz Date: Thu May 26 10:06:31 2011 +0200 regulator: Use device platform_data to retrieve db8500 platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Acked-by: Linus Walleij Acked-by: Liam Girdwood Signed-off-by: Samuel Ortiz commit e45be4b5fcccb241101ad1aa1e15581ad2071393 Author: Samuel Ortiz Date: Wed May 11 10:44:36 2011 +0200 mfd: Use mfd cell platform_data for wm8400 cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Reviewed-by: Mark Brown Signed-off-by: Samuel Ortiz commit cb5811cf325f44eb0630b55a6416311e4ba661ee Author: Samuel Ortiz Date: Wed Apr 6 16:39:45 2011 +0200 mfd: Use mfd cell platform_data for davinci cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Miguel Aguilar Cc: Mark Brown Cc: Liam Girdwood Signed-off-by: Samuel Ortiz commit 07259a7092e47b9fbb5c8bfdad45fa4c7dbbc051 Author: Samuel Ortiz Date: Wed Apr 6 16:26:56 2011 +0200 mfd: Use mfd cell platform_data for 88pm860x cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Mark Brown Cc: Liam Girdwood Cc: Richard Purdie Acked-by: Haojian Zhuang Signed-off-by: Samuel Ortiz commit a7c98ce25cfa600bd614134a82d22bcb7bcb9d65 Author: Samuel Ortiz Date: Wed May 11 10:33:25 2011 +0200 mfd: Use mfd cell platform_data for tps6105x cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Mark Brown Cc: Liam Girdwood Cc: Linus Walleij Signed-off-by: Samuel Ortiz commit a4579ad2bb6557834ebfafc8d2942891516fb4ad Author: Samuel Ortiz Date: Wed Apr 6 15:57:17 2011 +0200 mfd: Use mfd cell platform_data for twl4030 codec cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Peter Ujfalusi Cc: Mark Brown Cc: Liam Girdwood Cc: Dmitry Torokhov Signed-off-by: Samuel Ortiz commit 3d2bdf759f48f9b0a0ffcd798f3e9a3228d6455d Author: Samuel Ortiz Date: Wed Apr 6 16:02:25 2011 +0200 mfd: Use mfd cell platform_data for janz cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Ira W. Snyder Cc: Wolfgang Grandegger Cc: Grant Likely Signed-off-by: Samuel Ortiz commit c8a03c96b61bd03a3603bfe5381848c0b40e99be Author: Samuel Ortiz Date: Fri Apr 8 01:55:01 2011 +0200 mfd: Use mfd cell platform_data for mc13xxx cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Mark Brown Cc: Liam Girdwood Acked-by: Uwe Kleine-König Signed-off-by: Samuel Ortiz commit 9abd768a8d470d58071e30c57d1fa4a7090518bc Author: Samuel Ortiz Date: Wed Apr 6 13:21:01 2011 +0200 mfd: Use mfd cell platform_data for rdc321x cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Grant Likely Cc: Wim Van Sebroeck Cc: Florian Fainelli Signed-off-by: Samuel Ortiz commit 3271d382c3ffe61ef3d059ef47e635dbe031030e Author: Samuel Ortiz Date: Fri Apr 8 01:23:57 2011 +0200 mfd: Use mfd cell platform_data for timberdale cells platform bits With the addition of a device platform mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Acked-by: Richard Röjfors Signed-off-by: Samuel Ortiz commit 7dc00a0d14992d0083fefccad7839ac837ea55bc Author: Samuel Ortiz Date: Wed Apr 6 12:20:49 2011 +0200 mtd: Use platform_data to retrieve tmio_nand platform bits With the addition of the platform device mfd_cell pointer, we can now cleanly pass the sub device drivers platform data pointers through the regular device platform_data one, and get rid of mfd_get_data(). Cc: Ian Molton Cc: Artem Bityutskiy Acked-by: Dmitry Eremin-Solenikov Signed-off-by: Samuel Ortiz commit 1f8c666caddb4cd0c547bbedbc9f98c7bf51e176 Author: Samuel Ortiz Date: Wed Apr 6 12:13:25 2011 +0200 fb: Use platform_data to retrieve tmiofb platform bits With the addition of the platform device mfd_cell pointer, we can now cleanly pass the sub device drivers platform data pointers through the regular device platform_data one, and get rid of mfd_get_data(). Cc: Ian Molton Cc: Paul Mundt Acked-by: Dmitry Eremin-Solenikov Signed-off-by: Samuel Ortiz commit 9e554696c03e04c51d095c1c451e26a8cb6a84fa Author: Samuel Ortiz Date: Wed Apr 6 11:56:04 2011 +0200 mfd: Use mfd cell platform_data for wl1273 cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Cc: Matti Aaltonen Signed-off-by: Samuel Ortiz commit 8ac93beaab97d56b6e702cc625438f533e361ea5 Author: Samuel Ortiz Date: Wed Apr 6 11:48:53 2011 +0200 mfd: Pass htc-pasic3 led platform data through the cell platform_data Cc: Philipp Zabel Signed-off-by: Samuel Ortiz commit 121ea573aeb7e9b1d79effa8ef7970031aebda12 Author: Samuel Ortiz Date: Wed Apr 6 11:41:03 2011 +0200 w1: Use device platform_data to retrieve ds1wm platform bits With the addition of the platform device mfd_cell pointer, we can now cleanly pass the sub device drivers platform data pointers through the regular device platform_data one, and get rid of mfd_get_data(). Cc: Matt Reimer Cc: Philipp Zabel Signed-off-by: Samuel Ortiz commit ec71974f2a3ae052cdbb57a92ce3c3b34ebd7b5d Author: Samuel Ortiz Date: Wed Apr 6 11:38:14 2011 +0200 mmc: Use device platform_data to retrieve tmio_mmc platform bits With the addition of the platform device mfd_cell pointer, we can now cleanly pass the sub device drivers platform data pointers through the regular device platform_data one, and get rid of mfd_get_data() Cc: Ian Molton Cc: Guennadi Liakhovetski Cc: Philipp Zabel Acked-by: Dmitry Eremin-Solenikov Signed-off-by: Samuel Ortiz commit a771e36e16e9fdacb2bb8d3b9be50be68f211b82 Author: Samuel Ortiz Date: Wed Apr 6 00:41:43 2011 +0200 mfd: Use mfd cell platform_data for ab3100 cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Acked-by: Linus Walleij Signed-off-by: Samuel Ortiz commit 1f235a3785dbcfb324ff228048b859a3bd1e1a59 Author: Samuel Ortiz Date: Wed Apr 6 00:20:24 2011 +0200 mfd: Use mfd cell platform_data for ab3550 cells platform bits With the addition of a platform device mfd_cell pointer, MFD drivers can go back to passing platform data back to their sub drivers. This allows for an mfd_cell->mfd_data removal and thus keep the sub drivers MFD agnostic. This is mostly needed for non MFD aware sub drivers. Acked-by: Linus Walleij Signed-off-by: Samuel Ortiz commit eb8956074e7652e802be5f078080c704c2c87104 Author: Samuel Ortiz Date: Wed Apr 6 16:52:52 2011 +0200 mfd: Add platform data pointer back Now that we have a way to pass MFD cells down to the sub drivers, we can gradually get rid of mfd_data by putting the platform pointer back in place. Signed-off-by: Samuel Ortiz commit e9cdd343a5e42c43bcda01e609fa23089e026470 Author: Boris Ostrovsky Date: Thu May 26 11:19:52 2011 -0400 x86, amd: Do not enable ARAT feature on AMD processors below family 0x12 Commit b87cf80af3ba4b4c008b4face3c68d604e1715c6 added support for ARAT (Always Running APIC timer) on AMD processors that are not affected by erratum 400. This erratum is present on certain processor families and prevents APIC timer from waking up the CPU when it is in a deep C state, including C1E state. Determining whether a processor is affected by this erratum may have some corner cases and handling these cases is somewhat complicated. In the interest of simplicity we won't claim ARAT support on processor families below 0x12 and will go back to broadcasting timer when going idle. Signed-off-by: Boris Ostrovsky Link: http://lkml.kernel.org/r/1306423192-19774-1-git-send-email-ostr@amd64.org Tested-by: Boris Petkov Cc: Hans Rosenfeld Cc: Andreas Herrmann Cc: Chuck Ebbert Cc: stable@kernel.org # 32.x, 38.x, 39.x Signed-off-by: H. Peter Anvin commit 97242c85a2c8160eac5a6e945209b5b6ae8ab5a3 Author: David Miller Date: Thu May 19 18:14:39 2011 -0400 netfilter: Fix several warnings in compat_mtw_from_user(). Kill set but not used 'entry_offset'. Add a default case to the switch statement so the compiler can see that we always initialize off and size_kern before using them. Signed-off-by: David S. Miller Signed-off-by: Pablo Neira Ayuso commit 9184a9cba622d9e38462ce11dff7da094b4fea84 Author: Jozsef Kadlecsik Date: Tue May 24 10:20:19 2011 +0200 netfilter: ipset: fix ip_set_flush return code ip_set_flush returned -EPROTO instead of -IPSET_ERR_PROTOCOL, fixed Signed-off-by: Jozsef Kadlecsik Signed-off-by: Pablo Neira Ayuso commit b141c242ff978b63cdf0f3d1a767a5152750166b Author: Jozsef Kadlecsik Date: Tue May 24 10:20:18 2011 +0200 netfilter: ipset: remove unused variable from type_pf_tdel() Variable 'ret' is set in type_pf_tdel() but not used, remove. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Pablo Neira Ayuso commit 249ddc79a38a8918ad53ac22606ca8af694344a5 Author: Jozsef Kadlecsik Date: Tue May 24 10:20:17 2011 +0200 netfilter: ipset: Use proper timeout value to jiffies conversion Signed-off-by: Jozsef Kadlecsik Signed-off-by: Pablo Neira Ayuso commit 35806b4f7c5620b547f183e9d53f7cfaeabb582b Merge: 32e51f1 d183e11 Author: Linus Torvalds Date: Thu May 26 09:53:20 2011 -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: (61 commits) jbd2: Add MAINTAINERS entry jbd2: fix a potential leak of a journal_head on an error path ext4: teach ext4_ext_split to calculate extents efficiently ext4: Convert ext4 to new truncate calling convention ext4: do not normalize block requests from fallocate() ext4: enable "punch hole" functionality ext4: add "punch hole" flag to ext4_map_blocks() ext4: punch out extents ext4: add new function ext4_block_zero_page_range() ext4: add flag to ext4_has_free_blocks ext4: reserve inodes and feature code for 'quota' feature ext4: add support for multiple mount protection ext4: ensure f_bfree returned by ext4_statfs() is non-negative ext4: protect bb_first_free in ext4_trim_all_free() with group lock ext4: only load buddy bitmap in ext4_trim_fs() when it is needed jbd2: Fix comment to match the code in jbd2__journal_start() ext4: fix waiting and sending of a barrier in ext4_sync_file() jbd2: Add function jbd2_trans_will_send_data_barrier() jbd2: fix sending of data flush on journal commit ext4: fix ext4_ext_fiemap_cb() to handle blocks before request range correctly ... commit 32e51f141fd8d880f57b6a2eb53ce72856254d4a Merge: ca16d14 b6ff24a Author: Linus Torvalds Date: Thu May 26 09:52:14 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (25 commits) cifs: remove unnecessary dentry_unhash on rmdir/rename_dir ocfs2: remove unnecessary dentry_unhash on rmdir/rename_dir exofs: remove unnecessary dentry_unhash on rmdir/rename_dir nfs: remove unnecessary dentry_unhash on rmdir/rename_dir ext2: remove unnecessary dentry_unhash on rmdir/rename_dir ext3: remove unnecessary dentry_unhash on rmdir/rename_dir ext4: remove unnecessary dentry_unhash on rmdir/rename_dir btrfs: remove unnecessary dentry_unhash in rmdir/rename_dir ceph: remove unnecessary dentry_unhash calls vfs: clean up vfs_rename_other vfs: clean up vfs_rename_dir vfs: clean up vfs_rmdir vfs: fix vfs_rename_dir for FS_RENAME_DOES_D_MOVE filesystems libfs: drop unneeded dentry_unhash vfs: update dentry_unhash() comment vfs: push dentry_unhash on rename_dir into file systems vfs: push dentry_unhash on rmdir into file systems vfs: remove dget() from dentry_unhash() vfs: dentry_unhash immediately prior to rmdir vfs: Block mmapped writes while the fs is frozen ... commit 23b5c8fa01b723c70a20d6e4ef4ff54c7656d6e1 Author: Paul E. McKenney Date: Tue Sep 7 10:38:22 2010 -0700 rcu: Decrease memory-barrier usage based on semi-formal proof (Note: this was reverted, and is now being re-applied in pieces, with this being the fifth and final piece. See below for the reason that it is now felt to be safe to re-apply this.) Commit d09b62d fixed grace-period synchronization, but left some smp_mb() invocations in rcu_process_callbacks() that are no longer needed, but sheer paranoia prevented them from being removed. This commit removes them and provides a proof of correctness in their absence. It also adds a memory barrier to rcu_report_qs_rsp() immediately before the update to rsp->completed in order to handle the theoretical possibility that the compiler or CPU might move massive quantities of code into a lock-based critical section. This also proves that the sheer paranoia was not entirely unjustified, at least from a theoretical point of view. In addition, the old dyntick-idle synchronization depended on the fact that grace periods were many milliseconds in duration, so that it could be assumed that no dyntick-idle CPU could reorder a memory reference across an entire grace period. Unfortunately for this design, the addition of expedited grace periods breaks this assumption, which has the unfortunate side-effect of requiring atomic operations in the functions that track dyntick-idle state for RCU. (There is some hope that the algorithms used in user-level RCU might be applied here, but some work is required to handle the NMIs that user-space applications can happily ignore. For the short term, better safe than sorry.) This proof assumes that neither compiler nor CPU will allow a lock acquisition and release to be reordered, as doing so can result in deadlock. The proof is as follows: 1. A given CPU declares a quiescent state under the protection of its leaf rcu_node's lock. 2. If there is more than one level of rcu_node hierarchy, the last CPU to declare a quiescent state will also acquire the ->lock of the next rcu_node up in the hierarchy, but only after releasing the lower level's lock. The acquisition of this lock clearly cannot occur prior to the acquisition of the leaf node's lock. 3. Step 2 repeats until we reach the root rcu_node structure. Please note again that only one lock is held at a time through this process. The acquisition of the root rcu_node's ->lock must occur after the release of that of the leaf rcu_node. 4. At this point, we set the ->completed field in the rcu_state structure in rcu_report_qs_rsp(). However, if the rcu_node hierarchy contains only one rcu_node, then in theory the code preceding the quiescent state could leak into the critical section. We therefore precede the update of ->completed with a memory barrier. All CPUs will therefore agree that any updates preceding any report of a quiescent state will have happened before the update of ->completed. 5. Regardless of whether a new grace period is needed, rcu_start_gp() will propagate the new value of ->completed to all of the leaf rcu_node structures, under the protection of each rcu_node's ->lock. If a new grace period is needed immediately, this propagation will occur in the same critical section that ->completed was set in, but courtesy of the memory barrier in #4 above, is still seen to follow any pre-quiescent-state activity. 6. When a given CPU invokes __rcu_process_gp_end(), it becomes aware of the end of the old grace period and therefore makes any RCU callbacks that were waiting on that grace period eligible for invocation. If this CPU is the same one that detected the end of the grace period, and if there is but a single rcu_node in the hierarchy, we will still be in the single critical section. In this case, the memory barrier in step #4 guarantees that all callbacks will be seen to execute after each CPU's quiescent state. On the other hand, if this is a different CPU, it will acquire the leaf rcu_node's ->lock, and will again be serialized after each CPU's quiescent state for the old grace period. On the strength of this proof, this commit therefore removes the memory barriers from rcu_process_callbacks() and adds one to rcu_report_qs_rsp(). The effect is to reduce the number of memory barriers by one and to reduce the frequency of execution from about once per scheduling tick per CPU to once per grace period. This was reverted do to hangs found during testing by Yinghai Lu and Ingo Molnar. Frederic Weisbecker supplied Yinghai with tracing that located the underlying problem, and Frederic also provided the fix. The underlying problem was that the HARDIRQ_ENTER() macro from lib/locking-selftest.c invoked irq_enter(), which in turn invokes rcu_irq_enter(), but HARDIRQ_EXIT() invoked __irq_exit(), which does not invoke rcu_irq_exit(). This situation resulted in calls to rcu_irq_enter() that were not balanced by the required calls to rcu_irq_exit(). Therefore, after these locking selftests completed, RCU's dyntick-idle nesting count was a large number (for example, 72), which caused RCU to to conclude that the affected CPU was not in dyntick-idle mode when in fact it was. RCU would therefore incorrectly wait for this dyntick-idle CPU, resulting in hangs. In contrast, with Frederic's patch, which replaces the irq_enter() in HARDIRQ_ENTER() with an __irq_enter(), these tests don't ever call either rcu_irq_enter() or rcu_irq_exit(), which works because the CPU running the test is already marked as not being in dyntick-idle mode. This means that the rcu_irq_enter() and rcu_irq_exit() calls and RCU then has no problem working out which CPUs are in dyntick-idle mode and which are not. The reason that the imbalance was not noticed before the barrier patch was applied is that the old implementation of rcu_enter_nohz() ignored the nesting depth. This could still result in delays, but much shorter ones. Whenever there was a delay, RCU would IPI the CPU with the unbalanced nesting level, which would eventually result in rcu_enter_nohz() being called, which in turn would force RCU to see that the CPU was in dyntick-idle mode. The reason that very few people noticed the problem is that the mismatched irq_enter() vs. __irq_exit() occured only when the kernel was built with CONFIG_DEBUG_LOCKING_API_SELFTESTS. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 4305ce7894dd38b0633bfc8978437320119223bd Author: Paul E. McKenney Date: Mon May 16 14:27:31 2011 -0700 rcu: Make rcu_enter_nohz() pay attention to nesting The old version of rcu_enter_nohz() forced RCU into nohz mode even if the nesting count was non-zero. This change causes rcu_enter_nohz() to hold off for non-zero nesting counts. Signed-off-by: Paul E. McKenney commit b5904090c754327ed6c2ecaefed4f7d473df393f Author: Paul E. McKenney Date: Mon May 16 02:52:04 2011 -0700 rcu: Don't do reschedule unless in irq Condition the set_need_resched() in rcu_irq_exit() on in_irq(). This should be a no-op, because rcu_irq_exit() should only be called from irq. Signed-off-by: Paul E. McKenney commit 1135633bddcf7a819a1490c18d04965c490bcc1e Author: Paul E. McKenney Date: Mon May 16 02:44:06 2011 -0700 rcu: Remove old memory barriers from rcu_process_callbacks() Second step of partitioning of commit e59fb3120b. Signed-off-by: Paul E. McKenney commit 0bbcc529fcea9c7de5e2e7243f9913b8f7302a8c Author: Paul E. McKenney Date: Mon May 16 02:24:04 2011 -0700 rcu: Add memory barriers Add the memory barriers added by e59fb3120b. Signed-off-by: Paul E. McKenney commit ba9f207c9f82115aba4ce04b22e0081af0ae300f Author: Frederic Weisbecker Date: Fri May 20 02:09:54 2011 +0200 rcu: Fix unpaired rcu_irq_enter() from locking selftests HARDIRQ_ENTER() maps to irq_enter() which calls rcu_irq_enter(). But HARDIRQ_EXIT() maps to __irq_exit() which doesn't call rcu_irq_exit(). So for every locking selftest that simulates hardirq disabled, we create an imbalance in the rcu extended quiescent state internal state. As a result, after the first missing rcu_irq_exit(), subsequent irqs won't exit dyntick-idle mode after leaving the interrupt handler. This means that RCU won't see the affected CPU as being in an extended quiescent state, resulting in long grace-period delays (as in grace periods extending for hours). To fix this, just use __irq_enter() to simulate the hardirq context. This is sufficient for the locking selftests as we don't need to exit any extended quiescent state or perform any check that irqs normally do when they wake up from idle. As a side effect, this patch makes it possible to restore "rcu: Decrease memory-barrier usage based on semi-formal proof", which eventually helped finding this bug. Reported-and-tested-by: Yinghai Lu Signed-off-by: Frederic Weisbecker Cc: Paul E. McKenney Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Stable Signed-off-by: Paul E. McKenney commit ca16d140af91febe25daeb9e032bf8bd46b8c31f Author: KOSAKI Motohiro Date: Thu May 26 19:16:19 2011 +0900 mm: don't access vm_flags as 'int' The type of vma->vm_flags is 'unsigned long'. Neither 'int' nor 'unsigned int'. This patch fixes such misuse. Signed-off-by: KOSAKI Motohiro [ Changed to use a typedef - we'll extend it to cover more cases later, since there has been discussion about making it a 64-bit type.. - Linus ] Signed-off-by: Linus Torvalds commit 5bc20fc59706214d9591c11e1938a629d3538c12 Author: Dan Magenheimer Date: Thu May 26 10:02:21 2011 -0600 xen: cleancache shim to Xen Transcendent Memory This patch provides a shim between the kernel-internal cleancache API (see Documentation/mm/cleancache.txt) and the Xen Transcendent Memory ABI (see http://oss.oracle.com/projects/tmem). Xen tmem provides "hypervisor RAM" as an ephemeral page-oriented pseudo-RAM store for cleancache pages, shared cleancache pages, and frontswap pages. Tmem provides enterprise-quality concurrency, full save/restore and live migration support, compression and deduplication. A presentation showing up to 8% faster performance and up to 52% reduction in sectors read on a kernel compile workload, despite aggressive in-kernel page reclamation ("self-ballooning") can be found at: http://oss.oracle.com/projects/tmem/dist/documentation/presentations/TranscendentMemoryXenSummit2010.pdf Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Cc: Konrad Rzeszutek Wilk Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Andreas Dilger Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit 1cfd8bd0f97ae3ad314151cd0fd70454d7b39699 Author: Dan Magenheimer Date: Thu May 26 10:02:08 2011 -0600 ocfs2: add cleancache support This eighth patch of eight in this cleancache series "opts-in" cleancache for ocfs2. Clustered filesystems must explicitly enable cleancache by calling cleancache_init_shared_fs anytime an instance of the filesystem is mounted. Ocfs2 is currently the only user of the clustered filesystem interface but nevertheless, the cleancache hooks in the VFS layer are sufficient for ocfs2 including the matching cleancache_flush_fs hook which must be called on unmount. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v8: trivial merge conflict update] [v5: jeremy@goop.org: simplify init hook and any future fs init changes] Signed-off-by: Dan Magenheimer Signed-off-by: Joel Becker Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Cc: Mark Fasheh Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Andreas Dilger Cc: Ted Tso Cc: Nitin Gupta commit 7abc52c2ed169c65044d3a199879c8438ad82322 Author: Dan Magenheimer Date: Thu May 26 10:02:03 2011 -0600 ext4: add cleancache support This seventh patch of eight in this cleancache series "opts-in" cleancache for ext4. Filesystems must explicitly enable cleancache by calling cleancache_init_fs anytime an instance of the filesystem is mounted. For ext4, all other cleancache hooks are in the VFS layer including the matching cleancache_flush_fs hook which must be called on unmount. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v6-v8: no changes] [v5: jeremy@goop.org: simplify init hook and any future fs init changes] Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Acked-by: Andreas Dilger Cc: Ted Ts'o Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit 90a887c9a2e25bcb1fc658fad59dfbc6fb792734 Author: Dan Magenheimer Date: Thu May 26 10:01:56 2011 -0600 btrfs: add cleancache support This sixth patch of eight in this cleancache series "opts-in" cleancache for btrfs. Filesystems must explicitly enable cleancache by calling cleancache_init_fs anytime an instance of the filesystem is mounted. Btrfs uses its own readpage which must be hooked, but all other cleancache hooks are in the VFS layer including the matching cleancache_flush_fs hook which must be called on unmount. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v6-v8: no changes] [v5: jeremy@goop.org: simplify init hook and any future fs init changes] Signed-off-by: Dan Magenheimer Signed-off-by: Chris Mason Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Andreas Dilger Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit d71bc6db5e48066bde78a480bb9e3057b3db1a3c Author: Dan Magenheimer Date: Thu May 26 10:01:49 2011 -0600 ext3: add cleancache support This fifth patch of eight in this cleancache series "opts-in" cleancache for ext3. Filesystems must explicitly enable cleancache by calling cleancache_init_fs anytime an instance of the filesystem is mounted. For ext3, all other cleancache hooks are in the VFS layer including the matching cleancache_flush_fs hook which must be called on unmount. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v6-v8: no changes] [v5: jeremy@goop.org: simplify init hook and any future fs init changes] Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Acked-by: Andreas Dilger Cc: Ted Ts'o Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit c515e1fd361c2a08a9c2eb139396ec30a4f477dc Author: Dan Magenheimer Date: Thu May 26 10:01:43 2011 -0600 mm/fs: add hooks to support cleancache This fourth patch of eight in this cleancache series provides the core hooks in VFS for: initializing cleancache per filesystem; capturing clean pages reclaimed by page cache; attempting to get pages from cleancache before filesystem read; and ensuring coherency between pagecache, disk, and cleancache. Note that the placement of these hooks was stable from 2.6.18 to 2.6.38; a minor semantic change was required due to a patchset in 2.6.39. All hooks become no-ops if CONFIG_CLEANCACHE is unset, or become a check of a boolean global if CONFIG_CLEANCACHE is set but no cleancache "backend" has claimed cleancache_ops. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v8: minchan.kim@gmail.com: adapt to new remove_from_page_cache function] Signed-off-by: Chris Mason Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Andreas Dilger Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit 077b1f83a69d94f2918630a882d74939baca0bce Author: Dan Magenheimer Date: Thu May 26 10:01:36 2011 -0600 mm: cleancache core ops functions and config This third patch of eight in this cleancache series provides the core code for cleancache that interfaces between the hooks in VFS and individual filesystems and a cleancache backend. It also includes build and config patches. Two new files are added: mm/cleancache.c and include/linux/cleancache.h. Note that CONFIG_CLEANCACHE can default to on; in systems that do not provide a cleancache backend, all hooks devolve to a simple check of a global enable flag, so performance impact should be negligible but can be reduced to zero impact if config'ed off. However for this first commit, it defaults to off. Details and a FAQ can be found in Documentation/vm/cleancache.txt Credits: Cleancache_ops design derived from Jeremy Fitzhardinge design for tmem [v8: dan.magenheimer@oracle.com: fix exportfs call affecting btrfs] [v8: akpm@linux-foundation.org: use static inline function, not macro] [v7: dan.magenheimer@oracle.com: cleanup sysfs and remove cleancache prefix] [v6: JBeulich@novell.com: robustly handle buggy fs encode_fh actor definition] [v5: jeremy@goop.org: clean up global usage and static var names] [v5: jeremy@goop.org: simplify init hook and any future fs init changes] [v5: hch@infradead.org: cleaner non-global interface for ops registration] [v4: adilger@sun.com: interface must support exportfs FS's] [v4: hch@infradead.org: interface must support 64-bit FS on 32-bit kernel] [v3: akpm@linux-foundation.org: use one ops struct to avoid pointer hops] [v3: akpm@linux-foundation.org: document and ensure PageLocked reqts are met] [v3: ngupta@vflare.org: fix success/fail codes, change funcs to void] [v2: viro@ZenIV.linux.org.uk: use sane types] Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Acked-by: Al Viro Acked-by: Andrew Morton Acked-by: Nitin Gupta Acked-by: Minchan Kim Acked-by: Andreas Dilger Acked-by: Jan Beulich Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Chris Mason Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker commit 9fdfdcf17151e8326c4d18cc133abc6e58f47568 Author: Dan Magenheimer Date: Thu May 26 10:01:19 2011 -0600 fs: add field to superblock to support cleancache This second patch of eight in this cleancache series adds a field to the generic superblock to squirrel away a pool identifier that is dynamically provided by cleancache-enabled filesystems at mount time to uniquely identify files and pages belonging to this mounted filesystem. Details and a FAQ can be found in Documentation/vm/cleancache.txt [v8: trivial merge conflict update] Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Cc: Andrew Morton Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Andreas Dilger Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit 4fe4746ab694690af9f2ccb80184f5c575917c7f Author: Dan Magenheimer Date: Thu May 26 10:00:56 2011 -0600 mm/fs: cleancache documentation This patchset introduces cleancache, an optional new feature exposed by the VFS layer that potentially dramatically increases page cache effectiveness for many workloads in many environments at a negligible cost. It does this by providing an interface to transcendent memory, which is memory/storage that is not otherwise visible to and/or directly addressable by the kernel. Instead of being discarded, hooks in the reclaim code "put" clean pages to cleancache. Filesystems that "opt-in" may "get" pages from cleancache that were previously put, but pages in cleancache are "ephemeral", meaning they may disappear at any time. And the size of cleancache is entirely dynamic and unknowable to the kernel. Filesystems currently supported by this patchset include ext3, ext4, btrfs, and ocfs2. Other filesystems (especially those built entirely on VFS) should be easy to add, but should first be thoroughly tested to ensure coherency. Details and a FAQ are provided in Documentation/vm/cleancache.txt This first patch of eight in this cleancache series only adds two new documentation files. [v8: minor documentation changes by author] [v3: akpm@linux-foundation.org: document sysfs API] [v3: hch@infradead.org: move detailed description to Documentation/vm] Signed-off-by: Dan Magenheimer Reviewed-by: Jeremy Fitzhardinge Reviewed-by: Konrad Rzeszutek Wilk Acked-by: Andrew Morton Acked-by: Randy Dunlap Cc: Al Viro Cc: Matthew Wilcox Cc: Nick Piggin Cc: Mel Gorman Cc: Rik Van Riel Cc: Jan Beulich Cc: Chris Mason Cc: Andreas Dilger Cc: Ted Ts'o Cc: Mark Fasheh Cc: Joel Becker Cc: Nitin Gupta commit 7a0287df3e83a0012dfc496d4a8af9c1c5b126ef Merge: 6738d32 61c4f2c Author: Chris Metcalf Date: Thu May 26 11:52:04 2011 -0400 Merge tag 'v2.6.39' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into for-linus commit ea77b94774b3cc67162d74894b49af7eb17071f0 Author: Jarkko Nikula Date: Thu May 26 16:32:18 2011 +0300 ASoC: Fix power down for widgetless per-card DAPM context case Commit 52ba67b ("ASoC: Force all DAPM contexts into the same bias state") powers up all the DAPM contexts in a card if any DAPM context becomes active. Unfortunately power down newer happens if per-card DAPM context doesn't have any widgets. Reason for this is that power state of per-card DAPM context without widgets is never cleared and thus all the DAPM contexts remain permanently active. Test for widgetless calling DAPM context in dapm_power_widgets() doesn't work for per-card DAPM context since power change is never originating from widgetless per-card DAPM context. Fix this by pre-clearing power state flag of non-codec DAPM context at the beginning of power sequence. Signed-off-by: Jarkko Nikula Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 75911c9bd1134f8c0b682aa1e8a8dbefec3ca07a Author: Arnaldo Carvalho de Melo Date: Thu May 26 10:13:38 2011 -0300 perf tools: Fix build on older systems Where /usr/include/linux/const.h is not present, e.g. RHEL5. Reported-by: Srikar Dronamraju Cc: Srikar Dronamraju Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-ypcw2mu0w7dl1rrc6ncz3pee@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit ec80fde746e3ccf93895d25ae1a7071c9af52585 Author: Arnaldo Carvalho de Melo Date: Thu May 26 09:53:51 2011 -0300 perf symbols: Handle /proc/sys/kernel/kptr_restrict Perf uses /proc/modules to figure out where kernel modules are loaded. With the advent of kptr_restrict, non root users get zeroes for all module start addresses. So check if kptr_restrict is non zero and don't generate the syntethic PERF_RECORD_MMAP events for them. Warn the user about it in perf record and in perf report. In perf report the reference relocation symbol being zero means that kptr_restrict was set, thus /proc/kallsyms has only zeroed addresses, so don't use it to fixup symbol addresses when using a valid kallsyms (in the buildid cache) or vmlinux (in the vmlinux path) build-id located automatically or specified by the user. Provide an explanation about it in 'perf report' if kernel samples were taken, checking if a suitable vmlinux or kallsyms was found/specified. Restricted /proc/kallsyms don't go to the buildid cache anymore. Example: [acme@emilia ~]$ perf record -F 100000 sleep 1 WARNING: Kernel address maps (/proc/{kallsyms,modules}) are restricted, check /proc/sys/kernel/kptr_restrict. Samples in kernel functions may not be resolved if a suitable vmlinux file is not found in the buildid cache or in the vmlinux path. Samples in kernel modules won't be resolved at all. If some relocation was applied (e.g. kexec) symbols may be misresolved even with a suitable vmlinux or kallsyms file. [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.005 MB perf.data (~231 samples) ] [acme@emilia ~]$ [acme@emilia ~]$ perf report --stdio Kernel address maps (/proc/{kallsyms,modules}) were restricted, check /proc/sys/kernel/kptr_restrict before running 'perf record'. If some relocation was applied (e.g. kexec) symbols may be misresolved. Samples in kernel modules can't be resolved as well. # Events: 13 cycles # # Overhead Command Shared Object Symbol # ........ ....... ................. ..................... # 20.24% sleep [kernel.kallsyms] [k] page_fault 20.04% sleep [kernel.kallsyms] [k] filemap_fault 19.78% sleep [kernel.kallsyms] [k] __lru_cache_add 19.69% sleep ld-2.12.so [.] memcpy 14.71% sleep [kernel.kallsyms] [k] dput 4.70% sleep [kernel.kallsyms] [k] flush_signal_handlers 0.73% sleep [kernel.kallsyms] [k] perf_event_comm 0.11% sleep [kernel.kallsyms] [k] native_write_msr_safe # # (For a higher level overview, try: perf report --sort comm,dso) # [acme@emilia ~]$ This is because it found a suitable vmlinux (build-id checked) in /lib/modules/2.6.39-rc7+/build/vmlinux (use -v in perf report to see the long file name). If we remove that file from the vmlinux path: [root@emilia ~]# mv /lib/modules/2.6.39-rc7+/build/vmlinux \ /lib/modules/2.6.39-rc7+/build/vmlinux.OFF [acme@emilia ~]$ perf report --stdio [kernel.kallsyms] with build id 57298cdbe0131f6871667ec0eaab4804dcf6f562 not found, continuing without symbols Kernel address maps (/proc/{kallsyms,modules}) were restricted, check /proc/sys/kernel/kptr_restrict before running 'perf record'. As no suitable kallsyms nor vmlinux was found, kernel samples can't be resolved. Samples in kernel modules can't be resolved as well. # Events: 13 cycles # # Overhead Command Shared Object Symbol # ........ ....... ................. ...... # 80.31% sleep [kernel.kallsyms] [k] 0xffffffff8103425a 19.69% sleep ld-2.12.so [.] memcpy # # (For a higher level overview, try: perf report --sort comm,dso) # [acme@emilia ~]$ Reported-by: Stephane Eranian Suggested-by: David Miller Cc: Dave Jones Cc: David Miller Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Kees Cook Cc: Linus Torvalds Cc: Mike Galbraith Cc: Paul Mackerras Cc: Pekka Enberg Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi Link: http://lkml.kernel.org/n/tip-mt512joaxxbhhp1odop04yit@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 979f486944174760400f797d509c05a018132b98 Author: Axel Lin Date: Thu May 26 10:54:12 2011 +0800 ASoC: wm1250-ev1: Define "WM1250 Output" with SND_SOC_DAPM_OUTPUT Codec output pin should be defined with SND_SOC_DAPM_OUTPUT. Signed-off-by: Axel Lin Signed-off-by: Mark Brown commit 65afc4118d67f4b0934e6dc72d9b27397aea0354 Author: Jesper Juhl Date: Thu May 26 10:32:41 2011 +0200 ASoC: Remove duplicate linux/delay.h inclusion. It's enough to include linux/delay.h just once in sound/soc/codecs/wm8915.c, so remove the duplicate. Signed-off-by: Jesper Juhl Signed-off-by: Mark Brown commit 6bb74a7293d73556321fd37aefe67f6086dc25d1 Author: Nicolas Ferre Date: Tue May 24 11:51:16 2011 +0200 ASoC: sam9g20_wm8731: use the proper SYSCKL value at91sam9g20 is providing master clock to wm8731: not using a crystal but an external MCLK. We can avoid conflict and save power using WM8731_SYSCLK_MCLK as we do not need oscillator to be powered. Signed-off-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 5a195b445020f6042c2096e5eb63ef900e7871ea Author: Nicolas Ferre Date: Tue May 24 11:50:57 2011 +0200 ASoC: wm8731: fix wm8731_check_osc() connected condition The crystal oscillator is only enabled if the WM8731_SYSCLK_XTAL master clock is specified. Fix the connected() struct snd_soc_dapm_route function to take this into account. Oscillator is not enabled on machine that need it otherwise. Machine drivers have to make sure that they use the proper SYSCLK value. Signed-off-by: Nicolas Ferre Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d183e11a4a66d80e10d60b0918a47cf073135379 Author: Theodore Ts'o Date: Thu May 26 09:53:09 2011 -0400 jbd2: Add MAINTAINERS entry Create a separate MAINTAINERS entry for jbd2 Cc: Jan Kara Signed-off-by: "Theodore Ts'o" commit 9477c58e3308f54a108a5d1eb9621830b329b0ca Author: Takashi Iwai Date: Wed May 25 09:11:37 2011 +0200 ALSA: hda - Reorganize controller quriks with bit flags Introduce bit-flags indicating the necessary controller quirks, and set them in pci driver_data field. This simplifies the checks in the driver code and avoids the pci-id lookup in different places. Also, this patch adds the PCI ID entry for AMD Hudson. AMD Hudson requires a similar workaround like ATI SB while other generic ATI and AMD controllers don't need but some ATI-HDMI quirks. So, we need a different entry for Hudson. Signed-off-by: Takashi Iwai commit 0b6267376d1113bf8e09ae655919e6f0bbe90d01 Author: Takashi Iwai Date: Thu May 26 14:10:44 2011 +0200 ALSA: hda - Use snd_printd() in snd_hda_parse_pin_def_config() Fixed the wrong usage of snd_printdd() for debug prints of input entries. It should be snd_printd() like others. Signed-off-by: Takashi Iwai commit 5c699d7d3f94ee1dd934edea889b32f8279a4e65 Author: Dan Carpenter Date: Thu May 26 11:49:16 2011 +0300 HID: hiddev: fix use after free in hiddev_release There are a couple use after free bugs here. Signed-off-by: Dan Carpenter [jkosina@suse.cz: removed already fixed hunk] Signed-off-by: Jiri Kosina commit b80ef10e84d85a06bcd0b3a24a752ec32d0e0e40 Author: KOSAKI Motohiro Date: Thu May 26 17:12:12 2011 +0900 x86: Move do_page_fault()'s error path under unlikely() Ingo suggested SIGKILL check should be moved into slowpath function. This will reduce the page fault fastpath impact of this recent commit: 37b23e0525d3: x86,mm: make pagefault killable Suggested-by: Ingo Molnar Signed-off-by: KOSAKI Motohiro Cc: kamezawa.hiroyu@jp.fujitsu.com Cc: minchan.kim@gmail.com Cc: willy@linux.intel.com Cc: Andrew Morton Cc: Linus Torvalds Link: http://lkml.kernel.org/r/4DDE0B5C.9050907@jp.fujitsu.com Signed-off-by: Ingo Molnar commit de66ee979d0ea45171cc2501750e9f9f22f5a690 Merge: 916f676 4db70f7 Author: Ingo Molnar Date: Thu May 26 13:51:31 2011 +0200 Merge branch 'linus' into x86/urgent Merge reason: we want to queue up a dependent patch. Signed-off-by: Ingo Molnar commit ea7659fb2b876337aee719d9d5ddb05531dfb334 Author: Jesper Juhl Date: Thu May 26 10:21:05 2011 +0200 perf: Remove duplicate headers Signed-off-by: Jesper Juhl Cc: Tom Zanussi Cc: Arnaldo Carvalho de Melo Cc: trivial@kernel.org Cc: Peter Zijlstra Cc: Paul Mackerras Link: http://lkml.kernel.org/r/alpine.LNX.2.00.1105261011290.17400@swampdragon.chaosbits.net Signed-off-by: Ingo Molnar commit 1102c660dd35725a11c7ca9365c237f2f42f6b30 Merge: 6e9101a 4db70f7 Author: Ingo Molnar Date: Thu May 26 13:48:30 2011 +0200 Merge branch 'linus' into perf/urgent Merge reason: Linus applied an overlapping commit: 5f2e8e2b0bf0: kernel/watchdog.c: Use proper ANSI C prototypes So merge it in to make sure we can iterate the file without conflicts. Signed-off-by: Ingo Molnar commit b6ff24a333267a6810e28ee5b9fc539d149c52f0 Author: Sage Weil Date: Tue May 24 13:06:22 2011 -0700 cifs: remove unnecessary dentry_unhash on rmdir/rename_dir Cifs has no problems with lingering references to unlinked directory inodes. CC: Steve French CC: linux-cifs@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 7ca57363880c2b321ff64d34a82ae4af86ee52d5 Author: Sage Weil Date: Tue May 24 13:06:21 2011 -0700 ocfs2: remove unnecessary dentry_unhash on rmdir/rename_dir Ocfs2 has no issues with lingering references to unlinked directory inodes. CC: Mark Fasheh CC: ocfs2-devel@oss.oracle.com Acked-by: Joel Becker Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 8cbfa53b1cd08ae3b315bbb55f7396f5a6a6a4f7 Author: Sage Weil Date: Tue May 24 13:06:20 2011 -0700 exofs: remove unnecessary dentry_unhash on rmdir/rename_dir Exofs has no problems with lingering references to unlinked directory inodes. CC: Benny Halevy CC: osd-dev@open-osd.org Acked-by: Boaz Harrosh Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 052e2a1ba2d07e724ae9cc0608389292276cb77a Author: Sage Weil Date: Tue May 24 13:06:19 2011 -0700 nfs: remove unnecessary dentry_unhash on rmdir/rename_dir NFS has no problems with lingering references to unlinked directory inodes. CC: Trond Myklebust CC: linux-nfs@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 5afcb940fa37f57d124155f30a1a8d7794a476e0 Author: Sage Weil Date: Tue May 24 13:06:18 2011 -0700 ext2: remove unnecessary dentry_unhash on rmdir/rename_dir ext2 has no problems with lingering references to unlinked directory inodes. CC: Jan Kara CC: linux-ext4@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 5a61a245f7489feec865264e2627c5071aef8c66 Author: Sage Weil Date: Tue May 24 13:06:17 2011 -0700 ext3: remove unnecessary dentry_unhash on rmdir/rename_dir ext3 has no problems with lingering references to unlinked directory inodes. CC: Jan Kara CC: Andrew Morton CC: Andreas Dilger CC: linux-ext4@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 40ebc0af58a88652c9a9c1e9126c8fcf9fce1f6e Author: Sage Weil Date: Tue May 24 13:06:16 2011 -0700 ext4: remove unnecessary dentry_unhash on rmdir/rename_dir ext4 has no problems with lingering references to unlinked directory inodes. CC: "Theodore Ts'o" CC: Andreas Dilger CC: linux-ext4@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit f64f58f85403a5a8a21f1fbbc7798e56580785cf Author: Sage Weil Date: Tue May 24 13:06:15 2011 -0700 btrfs: remove unnecessary dentry_unhash in rmdir/rename_dir Btrfs has no problems with lingering references to unlinked directory inodes. CC: Chris Mason CC: linux-btrfs@vger.kernel.org Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 051e8f0ee23c9ca963e2a0208153c6cd475f05fb Author: Sage Weil Date: Tue May 24 13:06:14 2011 -0700 ceph: remove unnecessary dentry_unhash calls Ceph does not need these, and they screw up our use of the dcache as a consistent cache. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 51892bbb57e87854c27c105317797823f8891e68 Author: Sage Weil Date: Tue May 24 13:06:13 2011 -0700 vfs: clean up vfs_rename_other Simplify control flow to match vfs_rename_dir. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 9055cba711891a6313232629cd6bbca7c901e07f Author: Sage Weil Date: Tue May 24 13:06:12 2011 -0700 vfs: clean up vfs_rename_dir Simplify control flow through vfs_rename_dir. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 912dbc15d953791f013b0c64a8093ab0490e5f40 Author: Sage Weil Date: Tue May 24 13:06:11 2011 -0700 vfs: clean up vfs_rmdir Simplify the control flow with an out label. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit b5afd2c406f5c6272d916fd705f44f070fbbc0ba Author: Miklos Szeredi Date: Tue May 24 13:06:10 2011 -0700 vfs: fix vfs_rename_dir for FS_RENAME_DOES_D_MOVE filesystems vfs_rename_dir() doesn't properly account for filesystems with FS_RENAME_DOES_D_MOVE. If new_dentry has a target inode attached, it unhashes the new_dentry prior to the rename() iop and rehashes it after, but doesn't account for the possibility that rename() may have swapped {old,new}_dentry. For FS_RENAME_DOES_D_MOVE filesystems, it rehashes new_dentry (now the old renamed-from name, which d_move() expected to go away), such that a subsequent lookup will find it. Currently all FS_RENAME_DOES_D_MOVE filesystems compensate for this by failing in d_revalidate. The bug was introduced by: commit 349457ccf2592c14bdf13b6706170ae2e94931b1 "[PATCH] Allow file systems to manually d_move() inside of ->rename()" Fix by not rehashing the new dentry. Rehashing used to be needed by d_move() but isn't anymore. Reported-by: Sage Weil Signed-off-by: Miklos Szeredi Signed-off-by: Al Viro commit 5c5d3f3b871a719e2c6413b85009c723adeb27e1 Author: Sage Weil Date: Tue May 24 13:06:09 2011 -0700 libfs: drop unneeded dentry_unhash There are no libfs issues with dangling references to empty directories. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit a71905f0db41d4b2b01044fb40f97656fefc44a7 Author: Sage Weil Date: Tue May 24 13:06:08 2011 -0700 vfs: update dentry_unhash() comment The helper is now only called by file systems, not the VFS. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit e4eaac06bcccb2a70bca6a2de9871882dce2aa14 Author: Sage Weil Date: Tue May 24 13:06:07 2011 -0700 vfs: push dentry_unhash on rename_dir into file systems Only a few file systems need this. Start by pushing it down into each rename method (except gfs2 and xfs) so that it can be dealt with on a per-fs basis. Acked-by: Christoph Hellwig Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 79bf7c732b5ff75b96022ed9d29181afd3d2509c Author: Sage Weil Date: Tue May 24 13:06:06 2011 -0700 vfs: push dentry_unhash on rmdir into file systems Only a few file systems need this. Start by pushing it down into each fs rmdir method (except gfs2 and xfs) so it can be dealt with on a per-fs basis. This does not change behavior for any in-tree file systems. Acked-by: Christoph Hellwig Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 64252c75a2196a0cf1e0d3777143ecfe0e3ae650 Author: Sage Weil Date: Tue May 24 13:06:05 2011 -0700 vfs: remove dget() from dentry_unhash() This serves no useful purpose that I can discern. All callers (rename, rmdir) hold their own reference to the dentry. A quick audit of all file systems showed no relevant checks on the value of d_count in vfs_rmdir/vfs_rename_dir paths. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit 48293699a09324d2e3c66bd53d10eed6d67937a0 Author: Sage Weil Date: Tue May 24 13:06:04 2011 -0700 vfs: dentry_unhash immediately prior to rmdir This presumes that there is no reason to unhash a dentry if we fail because it is a mountpoint or the LSM check fails, and that the LSM checks do not depend on the dentry being unhashed. Signed-off-by: Sage Weil Signed-off-by: Al Viro commit ea13a86463fd0c26c2c209c53dc46b8eff81bad4 Author: Jan Kara Date: Tue May 24 00:23:35 2011 +0200 vfs: Block mmapped writes while the fs is frozen We should not allow file modification via mmap while the filesystem is frozen. So block in block_page_mkwrite() while the filesystem is frozen. We cannot do the blocking wait in __block_page_mkwrite() since e.g. ext4 will want to call that function with transaction started in some cases and that would deadlock. But we can at least do the non-blocking reliable check in __block_page_mkwrite() which is the hardest part anyway. We have to check for frozen filesystem with the page marked dirty and under page lock with which we then return from ->page_mkwrite(). Only that way we cannot race with writeback done by freezing code - either we mark the page dirty after the writeback has started, see freezing in progress and block, or writeback will wait for our page lock which is released only when the fault is done and then writeback will writeout and writeprotect the page again. Reviewed-by: Christoph Hellwig Signed-off-by: Jan Kara Signed-off-by: Al Viro commit 24da4fab5a617ecbf0f0c64e7ba7703383faa411 Author: Jan Kara Date: Tue May 24 00:23:34 2011 +0200 vfs: Create __block_page_mkwrite() helper passing error values back Create __block_page_mkwrite() helper which does all what block_page_mkwrite() does except that it passes back errors from __block_write_begin / block_commit_write calls. Reviewed-by: Christoph Hellwig Signed-off-by: Jan Kara Signed-off-by: Al Viro commit 7c6e984dfca8ff5b04d359a59b24f39a691b87d3 Author: Roman Borisov Date: Wed May 25 16:26:48 2011 -0700 fs/namespace.c: bound mount propagation fix This issue was discovered by users of busybox. And the bug is actual for busybox users, I don't know how it affects others. Apparently, mount is called with and without MS_SILENT, and this affects mount() behaviour. But MS_SILENT is only supposed to affect kernel logging verbosity. The following script was run in an empty test directory: mkdir -p mount.dir mount.shared1 mount.shared2 touch mount.dir/a mount.dir/b mount -vv --bind mount.shared1 mount.shared1 mount -vv --make-rshared mount.shared1 mount -vv --bind mount.shared2 mount.shared2 mount -vv --make-rshared mount.shared2 mount -vv --bind mount.shared2 mount.shared1 mount -vv --bind mount.dir mount.shared2 ls -R mount.dir mount.shared1 mount.shared2 umount mount.dir mount.shared1 mount.shared2 2>/dev/null umount mount.dir mount.shared1 mount.shared2 2>/dev/null umount mount.dir mount.shared1 mount.shared2 2>/dev/null rm -f mount.dir/a mount.dir/b mount.dir/c rmdir mount.dir mount.shared1 mount.shared2 mount -vv was used to show the mount() call arguments and result. Output shows that flag argument has 0x00008000 = MS_SILENT bit: mount: mount('mount.shared1','mount.shared1','(null)',0x00009000,'(null)'):0 mount: mount('','mount.shared1','',0x0010c000,''):0 mount: mount('mount.shared2','mount.shared2','(null)',0x00009000,'(null)'):0 mount: mount('','mount.shared2','',0x0010c000,''):0 mount: mount('mount.shared2','mount.shared1','(null)',0x00009000,'(null)'):0 mount: mount('mount.dir','mount.shared2','(null)',0x00009000,'(null)'):0 mount.dir: a b mount.shared1: mount.shared2: a b After adding --loud option to remove MS_SILENT bit from just one mount cmd: mkdir -p mount.dir mount.shared1 mount.shared2 touch mount.dir/a mount.dir/b mount -vv --bind mount.shared1 mount.shared1 2>&1 mount -vv --make-rshared mount.shared1 2>&1 mount -vv --bind mount.shared2 mount.shared2 2>&1 mount -vv --loud --make-rshared mount.shared2 2>&1 # <-HERE mount -vv --bind mount.shared2 mount.shared1 2>&1 mount -vv --bind mount.dir mount.shared2 2>&1 ls -R mount.dir mount.shared1 mount.shared2 2>&1 umount mount.dir mount.shared1 mount.shared2 2>/dev/null umount mount.dir mount.shared1 mount.shared2 2>/dev/null umount mount.dir mount.shared1 mount.shared2 2>/dev/null rm -f mount.dir/a mount.dir/b mount.dir/c rmdir mount.dir mount.shared1 mount.shared2 The result is different now - look closely at mount.shared1 directory listing. Now it does show files 'a' and 'b': mount: mount('mount.shared1','mount.shared1','(null)',0x00009000,'(null)'):0 mount: mount('','mount.shared1','',0x0010c000,''):0 mount: mount('mount.shared2','mount.shared2','(null)',0x00009000,'(null)'):0 mount: mount('','mount.shared2','',0x00104000,''):0 mount: mount('mount.shared2','mount.shared1','(null)',0x00009000,'(null)'):0 mount: mount('mount.dir','mount.shared2','(null)',0x00009000,'(null)'):0 mount.dir: a b mount.shared1: a b mount.shared2: a b The analysis shows that MS_SILENT flag which is ON by default in any busybox-> mount operations cames to flags_to_propagation_type function and causes the error return while is_power_of_2 checking because the function expects only one bit set. This doesn't allow to do busybox->mount with any --make-[r]shared, --make-[r]private etc options. Moreover, the recently added flags_to_propagation_type() function doesn't allow us to do such operations as --make-[r]private --make-[r]shared etc. when MS_SILENT is on. The idea or clearing the MS_SILENT flag came from to Denys Vlasenko. Signed-off-by: Roman Borisov Reported-by: Denys Vlasenko Cc: Chuck Ebbert Cc: Alexander Shishkin Cc: Al Viro Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Al Viro commit 79fead47c51b874a26cf5865408a5b784b52a929 Author: Jonas Gorski Date: Tue May 24 20:12:08 2011 +0200 exportfs: reallow building as a module Commit 990d6c2d7aee921e3bce22b2d6a750fd552262be ("vfs: Add name to file handle conversion support") changed EXPORTFS to be a bool. This was needed for earlier revisions of the original patch, but the actual commit put the code needing it into its own file that only gets compiled when FHANDLE is selected which in turn selects EXPORTFS. So EXPORTFS can be safely compiled as a module when not selecting FHANDLE. Signed-off-by: Jonas Gorski Acked-by: Aneesh Kumar K.V Signed-off-by: Al Viro commit 9f1fafee9e42b73beb3aa51ab2d6a19bfddeb5fe Author: Al Viro Date: Fri Mar 25 11:00:12 2011 -0400 merge handle_reval_dot and nameidata_drop_rcu_last new helper: complete_walk(). Done on successful completion of walk, drops out of RCU mode, does d_revalidate of final result if that hadn't been done already. handle_reval_dot() and nameidata_drop_rcu_last() subsumed into that one; callers converted to use of complete_walk(). Signed-off-by: Al Viro commit 19660af736ba00e1620970601dd313efedbbcfd2 Author: Al Viro Date: Fri Mar 25 10:32:48 2011 -0400 consolidate nameidata_..._drop_rcu() Merge these into a single function (unlazy_walk(nd, dentry)), kill ..._maybe variants Signed-off-by: Al Viro commit e9d35946c84c44e33e007123d3d595ccbd21d1a4 Author: Thomas Gleixner Date: Thu May 26 13:17:35 2011 +0200 x86: vdso: Remove unused variable Reported-by: Peter Zijlstra Signed-off-by: Thomas Gleixner Cc: Andy Lutomirski commit def945eeb920b94e710574454043f080831aefe5 Author: Yinghai Lu Date: Wed May 25 22:09:40 2011 -0700 irq: Remove smp_affinity_list when unregister irq proc commit 4b06042(bitmap, irq: add smp_affinity_list interface to /proc/irq) causes the following warning: [ 274.239500] WARNING: at fs/proc/generic.c:850 remove_proc_entry+0x24c/0x27a() [ 274.251761] remove_proc_entry: removing non-empty directory 'irq/184', leaking at least 'smp_affinity_list' Remove the new file in the exit path. Signed-off-by: Yinghai Lu Cc: Mike Travis Link: http://lkml.kernel.org/r/4DDDE094.6050505@kernel.org Signed-off-by: Thomas Gleixner commit 45b95235b0ac86cef2ad4480b0618b8778847479 Author: Will Deacon Date: Thu May 26 11:24:25 2011 +0100 ARM: 6944/1: mm: allow ASID 0 to be allocated to tasks Now that ASID 0 is no longer used as a reserved value, allow it to be allocated to tasks. Acked-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Russell King commit 52af9c6cd863fe37d1103035ec7ee22ac1296458 Author: Will Deacon Date: Thu May 26 11:23:43 2011 +0100 ARM: 6943/1: mm: use TTBR1 instead of reserved context ID On ARMv7 CPUs that cache first level page table entries (like the Cortex-A15), using a reserved ASID while changing the TTBR or flushing the TLB is unsafe. This is because the CPU may cache the first level entry as the result of a speculative memory access while the reserved ASID is assigned. After the process owning the page tables dies, the memory will be reallocated and may be written with junk values which can be interpreted as global, valid PTEs by the processor. This will result in the TLB being populated with bogus global entries. This patch avoids the use of a reserved context ID in the v7 switch_mm and ASID rollover code by temporarily using the swapper_pg_dir pointed at by TTBR1, which contains only global entries that are not tagged with ASIDs. Acked-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Russell King commit d427958a46af24f75d0017c45eadd172273bbf33 Author: Catalin Marinas Date: Thu May 26 11:22:44 2011 +0100 ARM: 6942/1: mm: make TTBR1 always point to swapper_pg_dir on ARMv6/7 This patch makes TTBR1 point to swapper_pg_dir so that global, kernel mappings can be used exclusively on v6 and v7 cores where they are needed. Signed-off-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Russell King commit a248b13b21ae00b97638b4f435c8df3075808b5d Author: Will Deacon Date: Thu May 26 11:20:19 2011 +0100 ARM: 6941/1: cache: ensure MVA is cacheline aligned in flush_kern_dcache_area The v6 and v7 implementations of flush_kern_dcache_area do not align the passed MVA to the size of a cacheline in the data cache. If a misaligned address is used, only a subset of the requested area will be flushed. This has been observed to cause failures in SMP boot where the secondary_data initialised by the primary CPU is not cacheline aligned, causing the secondary CPUs to read incorrect values for their pgd and stack pointers. This patch ensures that the base address is cacheline aligned before flushing the d-cache. Cc: Acked-by: Catalin Marinas Signed-off-by: Will Deacon Signed-off-by: Russell King commit a85fab1c795c88675ba3e23e68d821c57e9920fc Author: Russell King Date: Thu May 26 12:12:13 2011 +0100 ARM: add sendmmsg syscall Commit 228e548e (net: Add sendmmsg socket system call) added the new sendmmsg syscall. Add this to the syscall table for ARM. Signed-off-by: Russell King commit d7f2ff6718efa155fd92e481a5960496d084c63f Author: Phillip Lougher Date: Thu May 26 10:39:56 2011 +0100 Squashfs: update email address My existing email address may stop working in a month or two, so update email to one that will continue working. Signed-off-by: Phillip Lougher commit fbb9e0b6e7d534b5d9e3c3eddb68b62d26ddb731 Author: Jeffrey Ohlstein Date: Mon Apr 4 21:08:25 2011 +0100 ARM: 6863/1: allow hotplug on msm Hotplug support was added in 9f1890a (msm: hotplug: support cpu hotplug on msm, 2010-12-02) Signed-off-by: Jeff Ohlstein Signed-off-by: Russell King commit 1784b157c89cd2b5e6a3840abfdab6ed51f31d86 Author: Philippe Langlais Date: Fri Mar 25 08:51:52 2011 +0100 ARM: 6832/1: mmci: support for ST-Ericsson db8500v2 ST-Ericsson modified ARM PrimeCell PL180 block has not got an updated corresponding amba-id, althought the IP block has changed in db8500v2. The change was done to the datactrl register. Using the overrided subversion ID, account for this. Signed-off-by: Philippe Langlais Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 729303191ef4bd5df4c5e9ffca62268758928b2c Author: Linus Walleij Date: Thu Mar 24 16:13:13 2011 +0100 ARM: 6830/1: mach-ux500: force PrimeCell revisions The DB8500v2 and DB5500 has a fifth version of the "PL023" and PL180 blocks. However the ASIC engineers have forgot to bump the revision in the PrimeCell peripheral ID registers. Since the platform is aware of the actual silicon revision we need to hard-code the periphid from the platform, bumping the subrevision field to 1. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 97ceed1fc29b601e64af98fd785e25fec4383b12 Author: Linus Walleij Date: Thu Mar 24 16:12:40 2011 +0100 ARM: 6829/1: amba: make hardcoded periphid override hardware This makes a hardcoded periphid from the platform override any magic number found in the hardware. This shall henceforth be used when the information found in the hardware is either missing, i.e. not encoding the CID with the magic cookie 0xb105f00d, or incorrect such that the revision number should have been bumped in hardware, but the silicon designer has failed to do so. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit e536fbe18f803b6bf9f2ea2d54d918e2b09724d8 Author: Linus Walleij Date: Thu Mar 24 16:12:07 2011 +0100 ARM: 6828/1: mach-ux500: delete SSP PrimeCell ID This is redundant. The correct ID number is right there in the hardware anyway. We will introduce a mechanism later to hard-code this for deviant cells. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 5de5a4dd872b2ca9fe8be380be5c1a78ce83b88c Author: Linus Walleij Date: Thu Mar 24 16:11:35 2011 +0100 ARM: 6827/1: mach-netx: delete hardcoded periphid The periphid of the AMBA CLCD controller is hardcoded to a value that the CLCD driver does not even support. Cc: Sascha Hauer Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 2846d84ffa4408c9810fabad74cb7aec410352fc Author: Dave Martin Date: Tue May 24 12:11:48 2011 +0100 ARM: 6940/1: fiq: Briefly document driver responsibilities for suspend/resume Drivers which make use of the FIQ interrupt may require the state of the FIQ mode registers to be preserved across suspend/resume. Because the FIQ mode registers are not saved and restored automatically by the kernel, driver authors will need to do the appropriate save/restore in their own driver suspend/resume handlers. Implementing global automatic save/restore of the FIQ state does not appear appropriate, since this by itself is not sufficient for FIQ-based drivers to function correctly across suspend/resume in any case. This patch adds a brief explanatory note to fiq.h documenting the requirement placed on driver authors. Signed-off-by: Dave Martin Signed-off-by: Russell King commit dc2eb928a1bcf6a48f40c1f2ff21b66bdbf91a3c Author: Dave Martin Date: Mon May 23 12:22:10 2011 +0100 ARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2 * To remove the risk of inconvenient register allocation decisions by the compiler, these functions are separated out as pure assembler. * The apcs frame manipulation code is not applicable for Thumb-2 (and also not easily compatible). Since it's not essential to have a full frame on these leaf assembler functions, the frame manipulation is removed, in the interests of simplicity. * Split up ldm/stm instructions to be compatible with Thumb-2, as well as avoiding instruction forms deprecated on >= ARMv7. Signed-off-by: Dave Martin Reviewed-by: Nicolas Pitre Signed-off-by: Russell King commit 40f7bfe4f1c2761abeceb3b2b9dc1feec3c47ed9 Author: Will Deacon Date: Thu May 19 13:22:48 2011 +0100 ARM: 6914/1: sparsemem: fix highmem detection when using SPARSEMEM sanity_check_meminfo walks over the registered memory banks and attempts to split banks across lowmem and highmem when they would otherwise overlap with the vmalloc space. When SPARSEMEM is used, there are two potential problems that occur when the virtual address of the start of a bank is equal to vmalloc_min. 1.) The end of lowmem is calculated as __pa(vmalloc_min - 1) + 1. In the above scenario, this will give the end address of the previous bank, rather than the actual bank we are interested in. This value is later used as the memblock limit and artificially restricts the total amount of available memory. 2.) The checks to determine whether or not a bank belongs to highmem or not only check if __va(bank->start) is greater or less than vmalloc_min. In the case that it is equal, the bank is incorrectly treated as lowmem, which hoses the vmalloc area. This patch fixes these two problems by checking whether the virtual start address of a bank is >= vmalloc_min and then calculating lowmem_end by finding the virtual end address of the highest lowmem bank. Acked-by: Catalin Marinas Reviewed-by: Nicolas Pitre Signed-off-by: Will Deacon Signed-off-by: Russell King commit 7b7bf499f79de3f6c85a340c8453a78789523f85 Author: Will Deacon Date: Thu May 19 13:21:14 2011 +0100 ARM: 6913/1: sparsemem: allow pfn_valid to be overridden when using SPARSEMEM In commit eb33575c ("[ARM] Double check memmap is actually valid with a memmap has unexpected holes V2"), a new function, memmap_valid_within, was introduced to mmzone.h so that holes in the memmap which pass pfn_valid in SPARSEMEM configurations can be detected and avoided. The fix to this problem checks that the pfn <-> page linkages are correct by calculating the page for the pfn and then checking that page_to_pfn on that page returns the original pfn. Unfortunately, in SPARSEMEM configurations, this results in reading from the page flags to determine the correct section. Since the memmap here has been freed, junk is read from memory and the check is no longer robust. In the best case, reading from /proc/pagetypeinfo will give you the wrong answer. In the worst case, you get SEGVs, Kernel OOPses and hung CPUs. Furthermore, ioremap implementations that use pfn_valid to disallow the remapping of normal memory will break. This patch allows architectures to provide their own pfn_valid function instead of using the default implementation used by sparsemem. The architecture-specific version is aware of the memmap state and will return false when passed a pfn for a freed page within a valid section. Acked-by: Mel Gorman Acked-by: Catalin Marinas Tested-by: H Hartley Sweeten Signed-off-by: Will Deacon Signed-off-by: Russell King commit 8d2c50e3b65c8d48d51088f541c13fde46cc8133 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 gfs2: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Steven Whitehouse Cc: cluster-devel@redhat.com Signed-off-by: Michal Marek commit 3df3f2bf6104dca5cf225063436b7d6fff6793b1 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 isdn/diva: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Armin Schindler Cc: netdev@vger.kernel.org Signed-off-by: Michal Marek commit 69dbb2f79a5626741a24770719406a4edb2cb84f Author: Heiko Carstens Date: Thu May 26 09:48:31 2011 +0200 [S390] mm: add ZONE_DMA to 31-bit config again Add ZONE_DMA to 31-bit config again. The performance gain is minimal and hardly anybody cares anymore about a 31-bit kernel. So add ZONE_DMA again to help with SLAB_CACHE_DMA removal for !CONFIG_ZONE_DMA configurations. Acked-by: David Rientjes Signed-off-by: Heiko Carstens commit 33ce614029576b8585e271fd7d90746a37114a15 Author: Heiko Carstens Date: Thu May 26 09:48:30 2011 +0200 [S390] mm: add page fault retry handling s390 arch backend for d065bd81 "mm: retry page fault when blocking on disk transfer". Signed-off-by: Heiko Carstens commit 99583181cbf2252dd0554eef6f419a6b22cd33ea Author: Heiko Carstens Date: Thu May 26 09:48:29 2011 +0200 [S390] mm: handle kernel caused page fault oom situations If e.g. copy_from_user() generates a page fault and the kernel runs into an OOM situation the system might lock up. If the OOM killer sends a SIG_KILL to the current process it can't handle it since it is stuck in a copy_from_user() - page fault loop. Fix this by adding the same fix as other architectures have. E.g. the x86 variant f86268 "x86/mm: Handle mm_fault_error() in kernel space" Signed-off-by: Heiko Carstens commit b396637841fff79e9520514e8dcbe769c20a2ea0 Author: Heiko Carstens Date: Thu May 26 09:48:28 2011 +0200 [S390] delay: implement ndelay Implement ndelay() on s390 as well. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit ac5fa22fd4f27376e4ec41b44279c9992322d7ce Author: Heiko Carstens Date: Thu May 26 09:48:27 2011 +0200 [S390] topology,sched: fix cpu_coregroup_mask/cpu_book_mask definitions Both functions take an int instead of an unsigned int. Fixes these compile warnings: kernel/sched.c:7167:2: warning: initialization from incompatible pointer type kernel/sched.c:7170:2: warning: initialization from incompatible pointer type Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit b07c9015efcde71ed929ce5ded0268630bb1c95e Author: Martin Schwidefsky Date: Thu May 26 09:48:26 2011 +0200 [S390] hwsampler: allow cpu hotplug The hardware sample cpu hotplug notifier always returns NOTIFY_BAD. That will prevent cpu hotplug if the machine is enabled for hardware sampling even if it is not used. Fix the cpu hotplug notifier and allow cpu hotplug if hardware sampling is unused. Signed-off-by: Martin Schwidefsky Signed-off-by: Heiko Carstens commit 7683f7444875c822f48f03a9f9c8b1b1e98b2ef0 Author: Heiko Carstens Date: Thu May 26 09:48:25 2011 +0200 [S390] uaccess: turn __access_ok() into a define Turn __access_ok() into a define and add a __chk_user_ptr() call instead. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit d7b250e2a2d7f3cd23cf8d8d6689285e6f51a98d Author: Heiko Carstens Date: Thu May 26 09:48:24 2011 +0200 [S390] irq: merge irq.c and s390_ext.c Merge irq.c and s390_ext.c into irq.c. That way all external interrupt related functions are together. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit df7997ab1ca82ae3c37a2f5eb98613fc24527f95 Author: Heiko Carstens Date: Thu May 26 09:48:23 2011 +0200 [S390] irq: fix service signal external interrupt handling Interrupt sources like pfault, sclp, dasd_diag and virtio all use the service signal external interrupt subclass mask in control register 0 to enable and disable the corresponding interrupt. Because no reference counting is implemented each subsystem thinks it is the only user of subclass and sets and clears the bit like it wants. This leads to case that unloading the dasd diag module under z/VM causes both sclp and pfault interrupts to be masked. The result will be locked up system sooner or later. Fix this by introducing a new way to set (register) and clear (unregister) the service signal subclass mask bit in cr0. Also convert all drivers. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 902050bcdece6191565c055539e82c5cc534feed Author: Heiko Carstens Date: Thu May 26 09:48:22 2011 +0200 [S390] pfault: always enable service signal interrupt Always enable the service signal subclass mask bit in cr0, if pfault is available. That way we use the normal cpu hotplug way to propagate the subclass mask bit in cr0 instead of open coding it. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 36a9f77e50032e367b43d72866c18f4a61cf89da Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 atm: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Michal Marek commit 75ce481e15911b4557da1250556eab5ffbd14d0d Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 dlm: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Christine Caulfield Cc: David Teigland Cc: cluster-devel@redhat.com Signed-off-by: Michal Marek commit 772e289862e111ce6b4d387e65cd5b7a8b618705 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 wan/pc300: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: David S. Miller Cc: netdev@vger.kernel.org Signed-off-by: Michal Marek commit 9e3bb6b6f6a0c535eb053fbf0005a8e79e053374 Author: Heiko Carstens Date: Tue May 24 07:51:27 2011 +0200 KVM: add missing void __user * cast to access_ok() call fa3d315a "KVM: Validate userspace_addr of memslot when registered" introduced this new warning onn s390: kvm_main.c: In function '__kvm_set_memory_region': kvm_main.c:654:7: warning: passing argument 1 of '__access_ok' makes pointer from integer without a cast arch/s390/include/asm/uaccess.h:53:19: note: expected 'const void *' but argument is of type '__u64' Add the missing cast to get rid of it again... Cc: Takuya Yoshikawa Signed-off-by: Heiko Carstens Signed-off-by: Avi Kivity commit 78fa2c4d2465d014e67d3e12d948425856587251 Author: Luca Tettamanti Date: Wed May 25 22:43:27 2011 +0200 ALSA: core: remove unused variables. Drop a few variables that are never read. Signed-off-by: Luca Tettamanti Signed-off-by: Takashi Iwai commit 739266566ae9ba6b01ed3a01165171705fa2974e Author: Stephen Warren Date: Wed May 25 12:42:13 2011 -0600 ALSA: HDA: Increase MAX_HDMI_PINS The recently introduced NVIDIA GeForce GT 520 has 4 pins within a single codec. Bump MAX_HDMI_PINS to accomodate this. Also bump MAX_HDMI_CVTS to match it; this might be needed later too. Signed-off-by: Stephen Warren Signed-off-by: Takashi Iwai commit f2b3614cefb61ee6046a0aaee503ee37f227d310 Author: Takashi Iwai Date: Thu May 26 08:09:38 2011 +0200 ALSA: PCM - Don't check DMA time-out too shortly When the PCM period size is set larger than 10 seconds, currently the PCM core may abort the operation with DMA-error due to the fixed timeout for 10 seconds. A similar problem is seen in the drain operation that has a fixed timeout of 10 seconds, too. This patch fixes the timeout length depending on the period size and rate, also including the consideration of no_period_wakeup flag. Reported-by: Raymond Yau Signed-off-by: Takashi Iwai commit 4bff4a7ee4b9e487a1bc1d31082e77b6a381418a Author: Guennadi Liakhovetski Date: Wed May 11 16:51:20 2011 +0000 ARM: arch-shmobile: support SDHI card detection on mackerel, using a GPIO On sh7372 the card-detection pin of SDHI0 can also produce interrupts, when configured as GPIO. Use this feature to power down SDHI0, when no card is plugged in. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit dce65a6a92f34fbc425ffb4302f8e747d89c9792 Merge: 4db70f7 1c7fcbe Author: Paul Mundt Date: Thu May 26 15:05:21 2011 +0900 Merge branch 'rmobile/fbdev' into rmobile-latest commit 3fb7933850faf1017c59a675e895ed8f27fef4be Author: Rupjyoti Sarmah Date: Tue Mar 29 23:10:24 2011 +0000 powerpc/4xx: Adding PCIe MSI support This patch adds MSI support for 440SPe, 460Ex, 460Sx and 405Ex. Signed-off-by: Rupjyoti Sarmah Signed-off-by: Tirumala R Marri Acked-by: Josh Boyer Signed-off-by: Benjamin Herrenschmidt commit ece928df16494becd43f999aff9bd530182e7e81 Merge: 3d1c182 dda54e7 Author: Joel Becker Date: Wed May 25 21:51:55 2011 -0700 Merge branch 'move_extents' of git://oss.oracle.com/git/tye/linux-2.6 into ocfs2-merge-window Conflicts: fs/ocfs2/ioctl.c commit 3d1c1829ebe7e8bb48a997b39b4865abc9197e5e Author: Tristan Ye Date: Mon May 23 15:57:26 2011 +0800 Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly. Oops, local-mounted of 'ocfs2_fops_no_plocks' is just missing the support of unwritten_extents/punching-hole due to no func pointer was given correctly to '.follocate' field. Signed-off-by: Tristan Ye commit 66effd3c681256874a81436493a933edb1701798 Author: Sunil Mushran Date: Thu May 19 14:34:12 2011 -0700 ocfs2/dlm: Do not migrate resource to a node that is leaving the domain During dlm domain shutdown, o2dlm has to free all the lock resources. Ones that have no locks and references are freed. Ones that have locks and/or references are migrated to another node. The first task in migration is finding a target. Currently we scan the lock resource and find one node that either has a lock or a reference. This is not very efficient in a parallel umount case as we might end up migrating the lock resource to a node which itself may have to migrate it to a third node. The patch scans the dlm->exit_domain_map to ensure the target node is not leaving the domain. If no valid target node is found, o2dlm does not migrate the resource but instead waits for the unlock and deref messages that will allow it to free the resource. Signed-off-by: Sunil Mushran Signed-off-by: Joel Becker commit bddefdeec5bc56ba5aa2c2ca8c904cdff58e7e5b Author: Sunil Mushran Date: Thu May 19 14:34:11 2011 -0700 ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG This patch adds a new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG and ups the dlm protocol to 1.2. o2dlm sends this new message in dlm_unregister_domain() to mark the beginning of the exit domain. This message is sent to all nodes in the domain. Currently o2dlm has no way of informing other nodes of its impending exit. This information is useful as the other nodes could disregard the exiting node in certain operations. For example, in resource migration. If two or more nodes were umounting in parallel, it would be more efficient if o2dlm were to choose a non-exiting node to be the new master node rather than an exiting one. Signed-off-by: Sunil Mushran Reviewed-by: Mark Fasheh Signed-off-by: Joel Becker commit 4dd602900196bcc00505485e2a363caec4f3fd93 Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc: Fix irq_free_virt by adjusting bounds before loop Instead of looping over each irq and checking against the irq array bounds, adjust the bounds before looping. The old code will not free any irq if the irq + count is above irq_virq_count because the test in the loop is testing irq + count instead of irq + i. This code checks the limits to avoid unsigned integer overflows. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 9b7882515864117d0015a3484c0ba0eee6713de9 Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc/irq: Protect irq_radix_revmap_lookup against irq_free_virt The radix-tree code uses call_rcu when freeing internal elements. We must protect against the elements being freed while we traverse the tree, even if the returned pointer will still be valid. While preparing a patch to expand the context in which irq_radix_revmap_lookup will be called, I realized that the radix tree was not locked. When asked For a normal call_rcu usage, is it allowed to read the structure in irq_enter / irq_exit, without additional rcu_read_lock? Could an element freed with call_rcu advance with the cpu still between irq_enter/irq_exit (and irq_disabled())? Paul McKenney replied: Absolutely illegal to do so. OK for call_rcu_sched(), but a flaming bug for call_rcu(). And thank you very much for finding this!!! Further analysis: In the current CONFIG_TREE_RCU implementation. CONFIG_TREE_PREEMPT_RCU (and CONFIG_TINY_PREEMPT_RCU) uses explicit counters. These counters are reflected from per-CPU to global in the scheduling-clock-interrupt handler, so disabling irq does prevent the grace period from completing. But there are real-time implementations (such as the one use by the Concurrent guys) where disabling irq does -not- prevent the grace period from completing. While an alternative fix would be to switch radix-tree to rcu_sched, I don't want to audit the other users of radix trees (nor put alternative freeing in the library). The normal overhead for rcu_read_lock and unlock are a local counter increment and decrement. This does not show up in the rcu lockdep because in 2.6.34 commit 2676a58c98 (radix-tree: Disable RCU lockdep checking in radix tree) deemed it too hard to pass the condition of the protecting lock to the library. Signed-off-by: Milton Miller Reviewed-by: Paul E. McKenney Signed-off-by: Benjamin Herrenschmidt commit 2e455257d143f54b44701e947a092d513889d01c Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc/irq: Check desc in handle_one_irq and expand generic_handle_irq Look up the descriptor and check that it is found in handle_one_irq before checking if we are on the irq stack, and call the handler directly using the descriptor if we are on the stack. We need check irq_to_desc finds the descriptor to avoid a NULL pointer dereference. It could have failed because the number from ppc_md.get_irq was above NR_IRQS, or various exceptional conditions with sparse irqs (eg race conditions while freeing an irq if its was not shutdown in the controller). fe12bc2c99 (genirq: Uninline and sanity check generic_handle_irq()) moved generic_handle_irq out of line to allow its use by interrupt controllers in modules. However, handle_one_irq is core arch code. It already knows the details of struct irq_desc and handling irqs in the nested irq case. This will avoid the extra stack frame to return the value we don't check. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 3d1b5e206a4f0ce46f2aa138590738c5d8e118ac Author: Milton Miller Date: Tue May 24 20:34:17 2011 +0000 powerpc/irq: Always free duplicate IRQ_LEGACY hosts Since kmem caches are allocated before init_IRQ as noted in 3af259d155 (powerpc: Radix trees are available before init_IRQ), we now call kmalloc in all cases and can can always call kfree if we are asked to allocate a duplicate or conflicting IRQ_HOST_MAP_LEGACY host. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 8142f032a90680ed2fb080ca694ffe9509276361 Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc/irq: Remove stale and misleading comment The comment claims we will call host->ops->map() to update the flags if we find a previously established mapping, but we never did. We used to call remap, but that call was removed in da05198002 (powerpc: Remove irq_host_ops->remap hook). Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit d5a1c1937090d72c08c72e8abaa906b26459608e Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc/cell: Rename ipi functions to match current abstractions Rename functions and arguments to reflect current usage. iic_cause_ipi becomes iic_message_pass and iic_ipi_to_irq becomes iic_msg_to_irq, and iic_request_ipi now takes a message (msg) instead of an ipi number. Also mesg is renamed to msg. Commit f1072939b6 (powerpc: Remove checks for MSG_ALL and MSG_ALL_BUT_SELF) connected the smp_message_pass hook for cell to the underlying iic_cause_IPI, a platform unique name. Later 23d72bfd8f (powerpc: Consolidate ipi message mux and demux) added a cause_ipi hook to the smp_ops, also used in message passing, but for controllers that can not send 4 unique messages and require multiplexing. It is even more confusing that the both take two arguments, but one is the small message ordinal and the other is an opaque long data associated with the cpu. Since cell iic maps messages one to one to ipi irqs, rename the function and argument to translate from ipi to message. Also make it clear that iic_request_ipi takes a message number as the argument for which ipi to create and request. No functionional change, just renames to avoid future confusion. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 7ef71d753ea0286bfeb4251b9ba592716ebdd9e8 Author: Milton Miller Date: Tue May 24 20:34:18 2011 +0000 powerpc/cell: Use common smp ipi actions The cell iic interrupt controller has enough software caused interrupts to use a unique interrupt for each of the 4 messages powerpc uses. This means each interrupt gets its own irq action/data combination. Use the seperate, optimized, arch common ipi action functions registered via the helper smp_request_message_ipi instead passing the message as action data to a single action that then demultipexes to the required acton via a switch statement. smp_request_message_ipi will register the action as IRQF_PER_CPU and IRQF_DISABLED, and WARN if the allocation fails for some reason, so no need to print on that failure. It will return positive if the message will not be used by the kernel, in which case we can free the virq. In addition to elimiating inefficient code, this also corrects the error that a kernel built with kexec but without a debugger would not register the ipi for kdump to notify the other cpus of a crash. This also restores the debugger action to be static to kernel/smp.c. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit ce2a40458ebf9c2e47fa0806fec31f845bfcb9d5 Author: Milton Miller Date: Tue May 10 19:29:13 2011 +0000 Remove unused MSG_ flags in linux/smp.h Now that powerpc has removed its use of MSG_ALL_BUT_SELF and MSG_ALL all these MSG_ flags are unused. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit ca1931507f6e0e150eb654d621e4a33b6c637773 Author: Brian King Date: Tue May 24 03:40:54 2011 +0000 powerpc/pseries: Update MAX_HCALL_OPCODE to reflect page coalescing When page coalescing support was added recently, the MAX_HCALL_OPCODE define was not updated for the newly added H_GET_MPP_X hcall. Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit ad5d5292f16c6c1d7d3e257c4c7407594286b97e Author: Eric B Munson Date: Mon May 23 04:22:40 2011 +0000 powerpc/oprofile: Handle events that raise an exception without overflowing Commit 0837e3242c73566fc1c0196b4ec61779c25ffc93 fixes a situation on POWER7 where events can roll back if a specualtive event doesn't actually complete. This can raise a performance monitor exception. We need to catch this to ensure that we reset the PMC. In all cases the PMC will be less than 256 cycles from overflow. This patch lifts Anton's fix for the problem in perf and applies it to oprofile as well. Signed-off-by: Eric B Munson Cc: # as far back as it applies cleanly Signed-off-by: Benjamin Herrenschmidt commit 02424d8966d803e33cbe51469be56b5d177b4a37 Author: Ian Munsie Date: Wed Feb 2 17:27:24 2011 +0000 powerpc/ftrace: Implement raw syscall tracepoints on PowerPC This patch implements the raw syscall tracepoints on PowerPC and exports them for ftrace syscalls to use. To minimise reworking existing code, I slightly re-ordered the thread info flags such that the new TIF_SYSCALL_TRACEPOINT bit would still fit within the 16 bits of the andi. instruction's UI field. The instructions in question are in /arch/powerpc/kernel/entry_{32,64}.S to and the _TIF_SYSCALL_T_OR_A with the thread flags to see if system call tracing is enabled. In the case of 64bit PowerPC, arch_syscall_addr and arch_syscall_match_sym_name are overridden to allow ftrace syscalls to work given the unusual system call table structure and symbol names that start with a period. Signed-off-by: Ian Munsie Signed-off-by: Benjamin Herrenschmidt commit 4db70f73e56961b9bcdfd0c36c62847a18b7dbb5 Author: Eric Paris Date: Wed May 25 19:49:18 2011 -0700 tmpfs: fix XATTR N overriding POSIX_ACL Y Choosing TMPFS_XATTR default N was switching off TMPFS_POSIX_ACL, even if it had been Y in oldconfig; and Linus reports that PulseAudio goes subtly wrong unless it can use ACLs on /dev/shm. Make TMPFS_POSIX_ACL select TMPFS_XATTR (and depend upon TMPFS), and move the TMPFS_POSIX_ACL entry before the TMPFS_XATTR entry, to avoid asking unnecessary questions then ignoring their answers. Signed-off-by: Hugh Dickins Signed-off-by: Linus Torvalds commit b1cff0ad1062621ae63cb6c5dc4165191fe2e9f1 Author: Steven Rostedt Date: Wed May 25 14:27:43 2011 -0400 ftrace: Add internal recursive checks Witold reported a reboot caused by the selftests of the dynamic function tracer. He sent me a config and I used ktest to do a config_bisect on it (as my config did not cause the crash). It pointed out that the problem config was CONFIG_PROVE_RCU. What happened was that if multiple callbacks are attached to the function tracer, we iterate a list of callbacks. Because the list is managed by synchronize_sched() and preempt_disable, the access to the pointers uses rcu_dereference_raw(). When PROVE_RCU is enabled, the rcu_dereference_raw() calls some debugging functions, which happen to be traced. The tracing of the debug function would then call rcu_dereference_raw() which would then call the debug function and then... well you get the idea. I first wrote two different patches to solve this bug. 1) add a __rcu_dereference_raw() that would not do any checks. 2) add notrace to the offending debug functions. Both of these patches worked. Talking with Paul McKenney on IRC, he suggested to add recursion detection instead. This seemed to be a better solution, so I decided to implement it. As the task_struct already has a trace_recursion to detect recursion in the ring buffer, and that has a very small number it allows, I decided to use that same variable to add flags that can detect the recursion inside the infrastructure of the function tracer. I plan to change it so that the task struct bit can be checked in mcount, but as that requires changes to all archs, I will hold that off to the next merge window. Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: Frederic Weisbecker Cc: Paul E. McKenney Link: http://lkml.kernel.org/r/1306348063.1465.116.camel@gandalf.stny.rr.com Reported-by: Witold Baryluk Signed-off-by: Steven Rostedt commit 7f34b746f79c1e1f8fd6d09799d133263ae7a504 Author: liubo Date: Tue Apr 19 09:35:31 2011 +0800 tracing: Update btrfs's tracepoints to use u64 interface To avoid 64->32 truncating WARNING, update btrfs's tracepoints. Signed-off-by: Liu Bo Link: http://lkml.kernel.org/r/4DACE6E3.8080200@cn.fujitsu.com Signed-off-by: Steven Rostedt commit 2fc1b6f0d0a719e1e2a30bf076a3a799feaf6af2 Author: liubo Date: Tue Apr 19 09:35:28 2011 +0800 tracing: Add __print_symbolic_u64 to avoid warnings on 32bit machine Filesystem, like Btrfs, has some "ULL" macros, and when these macros are passed to tracepoints'__print_symbolic(), there will be 64->32 truncate WARNINGS during compiling on 32bit box. Signed-off-by: Liu Bo Link: http://lkml.kernel.org/r/4DACE6E0.7000507@cn.fujitsu.com Signed-off-by: Steven Rostedt commit 3b6cfdb1714a33ae4d2ca9fbc818a42cf7adee69 Author: Steven Rostedt Date: Mon May 23 15:33:49 2011 -0400 ftrace: Set ops->flag to enabled even on static function tracing When dynamic ftrace is not configured, the ops->flags still needs to have its FTRACE_OPS_FL_ENABLED bit set in ftrace_startup(). Signed-off-by: Steven Rostedt commit 17bb615ad4f8d2d2c0f02794d27d7f83e0009ef4 Author: Steven Rostedt Date: Mon May 23 15:27:46 2011 -0400 tracing: Have event with function tracer check error return The self tests for event tracer does not check if the function tracing was successfully activated. It needs to before it continues the tests, otherwise the wrong errors may be reported. Signed-off-by: Steven Rostedt commit a1cd6173596c6f7d1f0b41ac7d33ecf03c581edc Author: Steven Rostedt Date: Mon May 23 15:24:25 2011 -0400 ftrace: Have ftrace_startup() return failure code The register_ftrace_function() returns an error code on failure except if the call to ftrace_startup() fails. Add a error return to ftrace_startup() if it fails to start, allowing register_ftrace_funtion() to return a proper error value. Signed-off-by: Steven Rostedt commit 520fd8457ea8a1bcd6fe3e133b3e0eb6e6fe22ce Author: Stephen Rothwell Date: Thu May 26 11:09:10 2011 +1000 video: mb862xx: udelay need linux/delay.h Fix this: drivers/video/mb862xx/mb862xx-i2c.c: In function 'mb862xx_i2c_wait_event': drivers/video/mb862xx/mb862xx-i2c.c:25: error: implicit declaration of function 'udelay' caused by commit f8a6b1f44833 ("video: mb862xx: add support for controller's I2C bus adapter"). Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 14d74e0cab7a7779a7ff0c3863c04c8a8e507106 Merge: 49a78d0 956c920 Author: Linus Torvalds Date: Wed May 25 18:10:16 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-nsfd * git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-nsfd: net: fix get_net_ns_by_fd for !CONFIG_NET_NS ns proc: Return -ENOENT for a nonexistent /proc/self/ns/ entry. ns: Declare sys_setns in syscalls.h net: Allow setting the network namespace by fd ns proc: Add support for the ipc namespace ns proc: Add support for the uts namespace ns proc: Add support for the network namespace. ns: Introduce the setns syscall ns: proc files for namespace naming policy. commit 49a78d085fa6b44d6ed791923c7172a6433589c2 Author: Linus Torvalds Date: Wed May 25 18:06:54 2011 -0700 slub: remove no-longer used 'unlock_out' label Commit a71ae47a2cbf ("slub: Fix double bit unlock in debug mode") removed the only goto to this label, resulting in mm/slub.c: In function '__slab_alloc': mm/slub.c:1834: warning: label 'unlock_out' defined but not used fixed trivially by the removal of the label itself too. Reported-by: Stephen Rothwell Cc: Christoph Lameter Signed-off-by: Linus Torvalds commit 616a4b83bd1b4ec2260a91480e211290c35348bb Author: Malcolm Priestley Date: Wed May 25 18:28:29 2011 -0300 [media] v1.88 DM04/QQBOX Move remote to use rc_core dvb-usb-remote driver to use dvb-usb-remote. The remote(s) generates 24 bit NEC codes, lme2510 keymaps redefined. Other minor fixes fix le warning. make sure frontend is detached on firmware change. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 5d8f290c051b55dfff6bd7e688a05945246a0861 Author: Hans Petter Selasky Date: Mon May 23 12:10:40 2011 -0300 [media] Add missing include guard to header file Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 96c68795dc28aa3b1ade2194779c7d45320699cf Author: Hans Petter Selasky Date: Mon May 23 11:06:22 2011 -0300 [media] Inlined functions should be static Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 2edcdfae98f2234336d5646befa6247ae03d12e8 Author: Hans Petter Selasky Date: Mon May 23 08:28:50 2011 -0300 [media] Remove invalid parameter description Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit ed82b9c26e26e1212b13930ab72efcbea7ee784c Author: Hans Petter Selasky Date: Mon May 23 07:59:37 2011 -0300 [media] cpia2: fix warning about invalid trigraph sequence Signed-off-by: Hans Petter Selasky Signed-off-by: Mauro Carvalho Chehab commit 916f676f8dc016103f983c7ec54c18ecdbb6e349 Author: Matthew Garrett Date: Wed May 25 09:53:13 2011 -0400 x86, efi: Retain boot service code until after switching to virtual mode UEFI stands for "Unified Extensible Firmware Interface", where "Firmware" is an ancient African word meaning "Why do something right when you can do it so wrong that children will weep and brave adults will cower before you", and "UEI" is Celtic for "We missed DOS so we burned it into your ROMs". The UEFI specification provides for runtime services (ie, another way for the operating system to be forced to depend on the firmware) and we rely on these for certain trivial tasks such as setting up the bootloader. But some hardware fails to work if we attempt to use these runtime services from physical mode, and so we have to switch into virtual mode. So far so dreadful. The specification makes it clear that the operating system is free to do whatever it wants with boot services code after ExitBootServices() has been called. SetVirtualAddressMap() can't be called until ExitBootServices() has been. So, obviously, a whole bunch of EFI implementations call into boot services code when we do that. Since we've been charmingly naive and trusted that the specification may be somehow relevant to the real world, we've already stuffed a picture of a penguin or something in that address space. And just to make things more entertaining, we've also marked it non-executable. This patch allocates the boot services regions during EFI init and makes sure that they're executable. Then, after SetVirtualAddressMap(), it discards them and everyone lives happily ever after. Except for the ones who have to work on EFI, who live sad lives haunted by the knowledge that someone's eventually going to write yet another firmware specification. [ hpa: adding this to urgent with a stable tag since it fixes currently-broken hardware. However, I do not know what the dependencies are and so I do not know which -stable versions this may be a candidate for. ] Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1306331593-28715-1-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin Cc: Tony Luck Cc: commit 3f5785ec31adcb7cafa9135087297a38d9698cf8 Merge: 8c1c77f 94265cf Author: Linus Torvalds Date: Wed May 25 17:00:17 2011 -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: (89 commits) bonding: documentation and code cleanup for resend_igmp bonding: prevent deadlock on slave store with alb mode (v3) net: hold rtnl again in dump callbacks Add Fujitsu 1000base-SX PCI ID to tg3 bnx2x: protect sequence increment with mutex sch_sfq: fix peek() implementation isdn: netjet - blacklist Digium TDM400P via-velocity: don't annotate MAC registers as packed xen: netfront: hold RTNL when updating features. sctp: fix memory leak of the ASCONF queue when free asoc net: make dev_disable_lro use physical device if passed a vlan dev (v2) net: move is_vlan_dev into public header file (v2) bug.h: Fix build with CONFIG_PRINTK disabled. wireless: fix fatal kernel-doc error + warning in mac80211.h wireless: fix cfg80211.h new kernel-doc warnings iwlagn: dbg_fixed_rate only used when CONFIG_MAC80211_DEBUGFS enabled dst: catch uninitialized metrics be2net: hash key for rss-config cmd not set bridge: initialize fake_rtable metrics net: fix __dst_destroy_metrics_generic() ... Fix up trivial conflicts in drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c commit 7cbc5b8d4a775a43875a09e29c49a2a8195b5b2d Author: Jiri Olsa Date: Tue May 10 12:43:46 2011 +0200 jump_label: Check entries limit in __jump_label_update When iterating the jump_label entries array (core or modules), the __jump_label_update function peeks over the last entry. The reason is that the end of the for loop depends on the key value of the processed entry. Thus when going through the last array entry, we will touch the memory behind the array limit. This bug probably will never be triggered, since most likely the memory behind the jump_label entries will be accesable and the entry->key will be different than the expected value. Signed-off-by: Jiri Olsa Acked-by: Jason Baron Link: http://lkml.kernel.org/r/20110510104346.GC1899@jolsa.brq.redhat.com Signed-off-by: Steven Rostedt commit 9905ce8ad7b79dddd23c7b4753d0b2cdb65bde3c Author: Rabin Vincent Date: Wed May 11 22:53:51 2011 +0530 ftrace/recordmcount: Avoid STT_FUNC symbols as base on ARM While find_secsym_ndx often finds the unamed local STT_SECTION, if a section has only one function in it, the ARM toolchain generates the STT_FUNC symbol before the STT_SECTION, and recordmcount finds this instead. This is problematic on ARM because in ARM ELFs, "if a [STT_FUNC] symbol addresses a Thumb instruction, its value is the address of the instruction with bit zero set (in a relocatable object, the section offset with bit zero set)". This leads to incorrect mcount addresses being recorded. Fix this by not using STT_FUNC symbols as the base on ARM. Signed-off-by: Rabin Vincent Link: http://lkml.kernel.org/r/1305134631-31617-1-git-send-email-rabin@rab.in Signed-off-by: Steven Rostedt commit 4d7a2fa876d1a615649761dc465708d0a062249a Author: Steven Rostedt Date: Thu May 19 14:43:57 2011 -0400 scripts/tags.sh: Add magic for trace-events for etags too Seems that Peter Zijlstra treats us emacs users as second class citizens and the commit: commit 15664125f7cadcb6d725cb2d9b90f9715397848d Author: Peter Zijlstra scripts/tags.sh: Add magic for trace-events only updated ctags (for vim) and did not do the work to let us lowly emacs users benefit from such a change. Cc: Peter Zijlstra Signed-off-by: Steven Rostedt commit 50d6828e898590fc5d038810334695380baa1c78 Author: Steven Rostedt Date: Thu May 19 14:41:17 2011 -0400 scripts/tags.sh: Fix ctags for DEFINE_EVENT() The regex to handle DEFINE_EVENT() should not be the same as the TRACE_EVENT() as the first parameter in DEFINE_EVENT is the template name, not the event name. We need the second parameter as that is what the trace_... will use. Tested-by: Peter Zijlstra Signed-off-by: Steven Rostedt commit 0d098a7d1e39553e8a3f638b923551edec4868a7 Author: Rakib Mullick Date: Thu May 12 23:33:40 2011 +0600 x86/ftrace: Fix compiler warning in ftrace.c Due to commit dc326fca2b64 (x86, cpu: Clean up and unify the NOP selection infrastructure), we get the following warning: arch/x86/kernel/ftrace.c: In function ‘ftrace_make_nop’: arch/x86/kernel/ftrace.c:308:6: warning: assignment discards qualifiers from pointer target type arch/x86/kernel/ftrace.c: In function ‘ftrace_make_call’: arch/x86/kernel/ftrace.c:318:6: warning: assignment discards qualifiers from pointer target type ftrace_nop_replace() now returns const unsigned char *, so change its associated function/variable to its compatible type to keep compiler clam. Signed-off-by: Rakib Mullick Link: http://lkml.kernel.org/r/1305221620.7986.4.camel@localhost.localdomain [ updated for change of const void *src in probe_kernel_write() ] Signed-off-by: Steven Rostedt commit f29c50419c8d1998edd759f1990c4243a248f469 Author: Steven Rostedt Date: Thu May 19 14:35:33 2011 -0400 maccess,probe_kernel: Make write/read src const void * The functions probe_kernel_write() and probe_kernel_read() do not modify the src pointer. Allow const pointers to be passed in without the need of a typecast. Acked-by: Mike Frysinger Acked-by: Heiko Carstens Acked-by: Martin Schwidefsky Signed-off-by: Steven Rostedt Link: http://lkml.kernel.org/r/1305824936.1465.4.camel@gandalf.stny.rr.com commit 8c1c77ff9be27137fa7cbbf51efedef1a2ae915b Merge: f3ae1c7 08ee80c Author: Linus Torvalds Date: Wed May 25 16:55:55 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (75 commits) mmc: core: eMMC bus width may not work on all platforms mmc: sdhci: Auto-CMD23 fixes. mmc: sdhci: Auto-CMD23 support. mmc: core: Block CMD23 support for UHS104/SDXC cards. mmc: sdhci: Implement MMC_CAP_CMD23 for SDHCI. mmc: core: Use CMD23 for multiblock transfers when we can. mmc: quirks: Add/remove quirks conditional support. mmc: Add new VUB300 USB-to-SD/SDIO/MMC driver mmc: sdhci-pxa: Add quirks for DMA/ADMA to match h/w mmc: core: duplicated trial with same freq in mmc_rescan_try_freq() mmc: core: add support for eMMC Dual Data Rate mmc: core: eMMC signal voltage does not use CMD11 mmc: sdhci-pxa: add platform code for UHS signaling mmc: sdhci: add hooks for setting UHS in platform specific code mmc: core: clear MMC_PM_KEEP_POWER flag on resume mmc: dw_mmc: fixed wrong regulator_enable in suspend/resume mmc: sdhi: allow powering down controller with no card inserted mmc: tmio: runtime suspend the controller, where possible mmc: sdhi: support up to 3 interrupt sources mmc: sdhi: print physical base address and clock rate ... commit f3ae1c75203535f65448517e46c8dd70a56b6c71 Merge: 9720d75 d49e468 Author: Linus Torvalds Date: Wed May 25 16:54:01 2011 -0700 Merge branch 'kconfig-for-40' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'kconfig-for-40' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: xconfig: merge code path to conf_write() kconfig: do not record timestamp in .config gconfig: Hide unused left treeview when start up the interface gconfig: enable rules hint for main treeviews MAINTAINERS: Update KCONFIG entry kconfig-language: add to hints kconfig: Document the new "visible if" syntax kconfig: quiet commands when V=0 kconfig: change update-po-config to reflect new layout of arch/um kconfig: make update-po-config work in KBUILD_OUTPUT kconfig: rearrange clean-files kconfig: change gconf to modify hostprogs-y like nconf and mconf kconfig: change qconf to modify hostprogs-y like nconf and mconf kconfig: only build kxgettext when needed nconfig: Silence unused return values from wattrset kconfig: Do not record timestamp in auto.conf and autoconf.h kconfig: get rid of unused flags kconfig: allow multiple inclusion of the same file kconfig: Avoid buffer underrun in choice input commit 9720d75399fd2655a6b6fb06abcf548150f22362 Merge: 0c63e38 d92fcf0 Author: Linus Torvalds Date: Wed May 25 16:53:14 2011 -0700 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc * 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: signal: sys_pause() should check signal_pending() ptrace: ptrace_resume() shouldn't wake up !TASK_TRACED thread commit 0c63e38a129e7b1f625c6112439a4efc87b1635c Merge: 0798b1d b0b349a Author: Linus Torvalds Date: Wed May 25 16:52:50 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: hwmon: New driver for the SMSC EMC6W201 hwmon: (abituguru) Depend on DMI hwmon: (it87) Use request_muxed_region hwmon: (sch5627) Trigger Vbat measurements hwmon: (sch5627) Add sch5627_send_cmd function i8k: Integrate with the hwmon subsystem hwmon: (max6650) Properly support the MAX6650 hwmon: (max6650) Drop device detection Move ACPI power meter driver to hwmon hwmon: (f71882fg) Add support for F71808A hwmon: (f71882fg) Split has_beep in fan_has_beep and temp_has_beep hwmon: (asc7621) Drop duplicate dependency hwmon: (jc42) Change detection class hwmon: Add driver for AMD family 15h processor power information hwmon: (k10temp) Add support for Fam15h (Bulldozer) hwmon: Use helper functions to set and get driver data i8k: Avoid lahf in 64-bit code commit ae1d3b974e091b5fc9008bd41bcbdaac68110b62 Merge: 586893e 7a2207a Author: Russell King Date: Thu May 26 00:41:21 2011 +0100 Merge branch 'for-rmk' of git://github.com/at91linux/linux-2.6-at91 into devel-stable commit 2f2f96d1ea72e6602ae440ac2867a6004edb37a1 Author: Alex Deucher Date: Wed May 25 12:51:44 2011 -0400 drm/radeon/kms: clean up the radeon kms Kconfig - no longer in staging - all radeons supported Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 67b3f823ec78d08aea8835bce2655674237abc1d Author: Alex Deucher Date: Wed May 25 18:45:37 2011 -0400 drm/radeon/kms: fix thermal sensor reading on juniper Uses a different method than other evergreen asics. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 457558eda1545c22163574f6dbb883394705e9dd Author: Alex Deucher Date: Wed May 25 17:49:54 2011 -0400 drm/radeon/kms: add missing case for cayman thermal sensor The rest of the code is already in place. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit cb92d452ba665205ad6bfb424c0ef009cf26587d Author: Alex Deucher Date: Wed May 25 16:39:00 2011 -0400 drm/radeon/kms: add blit support for cayman (v2) Allows us to use the 3D engine for memory management and allows us to use vram beyond the BAR aperture. v2: fix copy paste typo Reported-by: Nils Wallménius Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 05fb85e1b26962c3003bd5ed005f30333b3d63c0 Author: Sylwester Nawrocki Date: Wed May 25 05:34:43 2011 -0300 [media] s5p-csis: Add missing dependency on PLAT_S5P s5p-csis is to be built only on S5P SoC platforms. Signed-off-by: Sylwester Nawrocki Signed-off-by: Mauro Carvalho Chehab commit ce14dcdba6b80b8184730201decd06d79e0080b5 Author: Jarod Wilson Date: Wed May 25 18:34:32 2011 -0300 [media] gspca/kinect: wrap gspca_debug with GSPCA_DEBUG Fixes media_build, and presumably certain other upstream kernel build option combos. Before: CC [M] /home/jarod/src/media_build/v4l/kinect.o /home/jarod/src/media_build/v4l/kinect.c:38:19: error: 'D_ERR' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:38:27: error: 'D_PROBE' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:38:37: error: 'D_CONF' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:38:46: error: 'D_STREAM' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:38:57: error: 'D_FRAM' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:38:66: error: 'D_PACK' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:39:2: error: 'D_USBI' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:39:11: error: 'D_USBO' undeclared here (not in a function) /home/jarod/src/media_build/v4l/kinect.c:39:20: error: 'D_V4L2' undeclared here (not in a function) make[3]: *** [/home/jarod/src/media_build/v4l/kinect.o] Error 1 After: CC [M] /home/jarod/src/media_build/v4l/kinect.o ... LD [M] /home/jarod/src/media_build/v4l/gspca_kinect.ko ... profit Reported-by: Nicolas Will Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 9bdc79ea07d98386b72e1b6b1613742556fba3af Author: Jarod Wilson Date: Wed May 25 13:35:13 2011 -0300 [media] fintek-cir: new driver for Fintek LPC SuperIO CIR function This is a new driver for the Fintek LPC SuperIO CIR function, in the Fintek F71809 chip. Hardware and datasheets were provided by Fintek, so thanks go to them for supporting this effort. This driver started out as a copy of the nuvoton-cir driver, and was then modified as needed for the Fintek chip. The two share many similaries, though the buffer handling for the Fintek chip is actually nearly identical to the mceusb buffer handling, so the parser routine is almost a drop-in copy of the mceusb buffer parser (a candidate for being abstracted out into shared code at some point). This initial code drop *only* supports receive, but the hardware does support transmit as well. I really haven't even started to look at what's required, but my guess is that its also pretty similar to mceusb. Most people are probably only really interested in RX anyway though, so I think its good to get this out there even with only RX. (Nb: there are also Fintek-made mceusb receivers, which presumably, this chip shares CIR hardware with). This hardware can be found on at least Jetway NC98 boards and derivative systems, and likely others as well. Functionality was tested with an NC98 development board, in-kernel decode of RC6 (mce), RC5 (hauppauge) and NEC-ish (tivo) remotes all successful, as was lirc userspace decode of the RC6 remote. CC: Aaron Huang CC: Tom Tsai Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit f444ff27e9b8c953eef49da65c649fdcd202165a Author: Sarah Sharp Date: Tue Apr 5 15:53:47 2011 -0700 xhci: STFU: Be quieter during URB submission and completion. Unsurprisingly, URBs get submitted and completed a lot in the xHCI driver. If we have to print 10 lines of debug for every URB submitted or completed, then that can cause the whole system to stay in the interrupt handler too long, and can cause Missed Service completion codes for isochronous transfers. Cut down the debugging in the URB submission and completion paths: - Don't squawk about successful transfers, only unsuccessful ones. - Only print the number of bytes transferred if this was a short transfer. - Don't print the endpoint index for successful transfers (will add more debug to failed transfers to show endpoint index there later). - Stop printing MMIO writes. This debugging shows up when the endpoint doorbell is rung a to start a transfer (basically for every URB). - Don't print out the ring enqueue and dequeue pointers - Stop printing when we're pointing to a link TRB. Signed-off-by: Sarah Sharp commit 5153b7b39105d8beb38e1c3f26ab4b877960d8e1 Author: Sarah Sharp Date: Tue Apr 5 13:33:56 2011 -0700 xhci: STFU: Don't print event ring dequeue pointer. Stop printing out the event ring dequeue pointer and status register in the operational register set. The host will report an OK status 99% of the time the interrupt handler is called, and usually when it's really hosed, a host controller won't even call the interrupt handler. So the line is really useless. Signed-off-by: Sarah Sharp commit 8a65a9485832f90e18e2f7069b75a4181e2840c0 Author: Laurent Pinchart Date: Thu Jan 21 08:56:19 2010 -0300 [media] uvcvideo: Connect video devices to media entities The video devices associated to USB streaming terminals must be connected to their associated terminal's media entity instead of being standalone entities. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 4ffc2d89f38a7fbb3b24adb7fb066a159c351c11 Author: Laurent Pinchart Date: Thu Jan 21 05:39:52 2010 -0300 [media] uvcvideo: Register subdevices for each entity Userspace applications can now discover the UVC device topology using the media controller API. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 5a254d751e52e0f817090c29950d16cf18490d5b Author: Laurent Pinchart Date: Thu Jan 21 05:39:47 2010 -0300 [media] uvcvideo: Register a v4l2_device As a first step to the media controller integration register a v4l2_device for each UVC control interface and make the video_device a child of the v4l2_device. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 115d2535f8ced13503b62a1275338e09a51681dc Author: Mauro Carvalho Chehab Date: Wed May 25 11:55:57 2011 -0300 [media] add V4L2-PIX-FMT-SRGGB12 & friends to docbook The xml with those guys are there, but they weren't included on the docbook. Signed-off-by: Mauro Carvalho Chehab commit cca4acc491ade9280e88a756d5d7d9424d160814 Author: Mauro Carvalho Chehab Date: Wed May 25 10:56:58 2011 -0300 [media] Documentation/DocBook: Rename media fops xml files By convention, the name of the XML file should match the references declared at media-entities.tmpl, as, otherwise, some validation scripts break. Signed-off-by: Mauro Carvalho Chehab commit 0798b1dbfbd9ff2a370c5968c5f0621ef0075fe0 Merge: ad363e0 6738d32 Author: Linus Torvalds Date: Wed May 25 15:35:32 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile * git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: (26 commits) arch/tile: prefer "tilepro" as the name of the 32-bit architecture compat: include aio_abi.h for aio_context_t arch/tile: cleanups for tilegx compat mode arch/tile: allocate PCI IRQs later in boot arch/tile: support signal "exception-trace" hook arch/tile: use better definitions of xchg() and cmpxchg() include/linux/compat.h: coding-style fixes tile: add an RTC driver for the Tilera hypervisor arch/tile: finish enabling support for TILE-Gx 64-bit chip compat: fixes to allow working with tile arch arch/tile: update defconfig file to something more useful tile: do_hardwall_trap: do not play with task->sighand tile: replace mm->cpu_vm_mask with mm_cpumask() tile,mn10300: add device parameter to dma_cache_sync() audit: support the "standard" arch/tile: clarify flush_buffer()/finv_buffer() function names arch/tile: kernel-related cleanups from removing static page size arch/tile: various header improvements for building drivers arch/tile: disable GX prefetcher during cache flush arch/tile: tolerate disabling CONFIG_BLK_DEV_INITRD ... commit ad363e0916423b2e6cdfcdc30ae707ec709f0a65 Merge: ed0795a 1032fbf Author: Linus Torvalds Date: Wed May 25 15:35:03 2011 -0700 Merge branch 'for-torvalds' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson * 'for-torvalds' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson: mach-ux500: voltage domain regulators for DB8500 cpufreq: make DB8500 cpufreq driver compile cpufreq: update DB8500 cpufreq driver mach-ux500: move CPUfreq driver to cpufreq subsystem mfd: add DB5500 PRCMU driver mfd: update DB8500 PRCMU driver mach-ux500: move the DB8500 PRCMU driver to MFD mach-ux500: make PRCMU base address dynamic mach-ux500: rename PRCMU driver per SoC mach-ux500: update ASIC version detection mach-ux500: update SoC and board IRQ handling mach-ux500: update the DB5500 register file mach-ux500: update the DB8500 register file commit ed0795aa12129df9f3d2cc81ee579a9e54e12885 Merge: 4e8a780 d6cb2e3 Author: Linus Torvalds Date: Wed May 25 15:34:14 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (37 commits) Blackfin: use new common PERCPU_INPUT define MAINTAINERS: Fix Analog Devices mailinglist address Blackfin: boards: update ASoC resources after machine driver overhaul Blackfin: work around anomaly 05000480 Blackfin: fix addr type with bfin_write_{or,and} helpers Blackfin: convert /proc/sram to seq_file Blackfin: switch /proc/gpio to seq_file Blackfin: fix indentation with bfin_read() helper Blackfin: convert old cpumask API to new one Blackfin: don't touch task->cpus_allowed directly Blackfin: don't touch cpu_possible_map and cpu_present_map directly Blackfin: bf548-ezkit/bf561-ezkit: update nor flash layout Blackfin: initial perf_event support Blackfin: update anomaly lists to latest public info Blackfin: use on-chip reset func with newer parts Blackfin: bf533-stamp/bf537-stamp: drop ad1980 from defconfigs Blackfin: optimize MMR reads during startup a bit Blackfin: bf537: demux port H mask A and emac rx ints Blackfin: bf537: fix excessive gpio int demuxing Blackfin: bf54x: drop unused pm gpio handling ... commit 4e8a780ed6e1fdb8af203f61718212d5739bc4a0 Merge: 90ff1f3 66ee3be Author: Linus Torvalds Date: Wed May 25 15:33:25 2011 -0700 Merge branch 'rmobile-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * 'rmobile-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (34 commits) ARM: mach-shmobile: mackerel: add renesas_usbhs support for USB1 ARM: mach-shmobile: Correct the G4EVM SDHI0 I/O range. ARM: arch-shmobile: sh7372: add renesas_usbhs irq support ARM: mach-shmobile: sh73a0: mark DMA slave ID 0 as invalid ARM: mach-shmobile: mark DMA slave ID 0 as invalid ARM: mach-shmobile: Enable DMAEngine for SDHI on AG5EVM ARM: mach-shmobile: Enable DMAEngine for MMCIF on AG5EVM ARM: mach-shmobile: sh73a0 DMA Engine support for SY-DMAC dmaengine: shdma: Update SH_DMAC_MAX_CHANNELS to 20 dmaengine: shdma: Fix SH_DMAC_MAX_CHANNELS handling dmaengine: shdma: Make second memory window optional ARM: mach-shmobile: Tidy up after SH7372 pm changes. ARM: mach-shmobile: sh7372 Core Standby CPUIdle ARM: mach-shmobile: CPUIdle support ARM: mach-shmobile: sh7372 Core Standby Suspend-to-RAM ARM: mach-shmobile: Suspend-to-RAM support mailmap: Add entry for Damian Hobson-Garcia. ARM: switch mackerel to dynamically manage the platform camera ARM: mach-shmobile: Add SDHI support for AG5EVM and sh73a0 ARM: arch-shmobile: Use multiple irq vectors for SDHI ... commit 90ff1f30c0f401e325d6b2747618b7e3a0addaf8 Author: Thomas Gleixner Date: Wed May 25 23:08:17 2011 +0200 hrtimers: Fix typo causing erratic timers commit 9ec2690758a5 ("timerfd: Manage cancelable timers in timerfd") introduced a CONFIG_HIGHRES_TIMERS (should be CONFIG_HIGH_RES_TIMERS) typo, which caused applications depending on CLOCK_REALTIME timers to become sluggy due to the fact that the time base of the realtime timers was not updated when the wall clock time was set. This causes anything from 100% CPU use for some applications to odd delays and hickups. Reported-bisected-and-tested-by: Anca Emanuel Tested-by: Linus Torvalds Fatfingered-by: Thomas Gleixner Signed-off-by: Thomas Gleixner Signed-off-by: Linus Torvalds commit 380032c3c855ded74c43252a0adb8e8d7afc9f45 Author: Sarah Sharp Date: Tue Apr 5 13:33:56 2011 -0700 xhci: STFU: Remove function tracing. Remove unnecessary debugging from the xHCI driver. We don't need to know what function we're calling or returning from. Now I know how to use markup-oops.pl to de-mystify stack dumps of crashes. Signed-off-by: Sarah Sharp commit fe6c6c13d8dcb32398eef143e2e8efc3fb4019bf Author: Sarah Sharp Date: Mon May 23 16:41:17 2011 -0700 xhci: Don't submit commands when the host is dead. When the xHCI host controller dies, the USB core may attempt to reset the devices to their default configuration before disconnecting them. This causes calls into the xHCI bandwidth allocation functions. Don't allow those functions to submit commands or work on xHCI structures if the host controller is marked as dying. Signed-off-by: Sarah Sharp commit 0714a57c6865f31ed3366e5abdfae7da580d41d2 Author: Sarah Sharp Date: Tue May 24 11:53:29 2011 -0700 xhci: Clear stopped_td when Stop Endpoint command completes. When an URB is cancelled, the xHCI driver issues a Stop Endpoint command so that it can manipulate the ring and remove the transfer. The xHC hardware then places a transfer event with the completion code "Stopped" or "Stopped Invalid" to let the driver know what TD it was in the middle of processing. This TD and TRB is stored in ep->stopped_td and ep->stopped_trb. These pointers are also used in handling stalled endpoints. By design, the Stop Endpoint command can race with URB completion. By the time the Stop Endpoint command is handled, the URBs to be cancelled may have been given back to the driver. Unfortunately, the stopped_td and stopped_trb pointers were not getting cleared in this case. The USB core unconditionally tries to reset the toggle bits on any endpoints when a new alternate interface setting is installed. When the xHCI driver saw that ep->stopped_td was still set from the Stop Endpoint command, xhci_reset_endpoint assumed the endpoint was actually stalled, and attempted to clean up the endpoint rings. This would manifest itself in a failed Reset Endpoint command and failed Set TR dequeue Pointer command after a successful Configure Endpoint command. It may have also been causing driver oops when the stopped_td was accessed. This patch should be backported to stable kernels since 2.6.31. Before 2.6.33, stopped_td was found in the xhci_endpoint_ring, not the xhci_virt_ep. Signed-off-by: Sarah Sharp commit 94265cf5f731c7df29fdfde262ca3e6d51e6828c Author: Flavio Leitner Date: Wed May 25 08:38:58 2011 +0000 bonding: documentation and code cleanup for resend_igmp Improves the documentation about how IGMP resend parameter works, fix two missing checks and coding style issues. Signed-off-by: Flavio Leitner Acked-by: Rick Jones Signed-off-by: David S. Miller commit 9fe0617d9b6d21f700ee9e658e1c9fe3be2fb402 Author: Neil Horman Date: Wed May 25 08:13:01 2011 +0000 bonding: prevent deadlock on slave store with alb mode (v3) This soft lockup was recently reported: [root@dell-per715-01 ~]# echo +bond5 > /sys/class/net/bonding_masters [root@dell-per715-01 ~]# echo +eth1 > /sys/class/net/bond5/bonding/slaves bonding: bond5: doing slave updates when interface is down. bonding bond5: master_dev is not up in bond_enslave [root@dell-per715-01 ~]# echo -eth1 > /sys/class/net/bond5/bonding/slaves bonding: bond5: doing slave updates when interface is down. BUG: soft lockup - CPU#12 stuck for 60s! [bash:6444] CPU 12: Modules linked in: bonding autofs4 hidp rfcomm l2cap bluetooth lockd sunrpc be2d Pid: 6444, comm: bash Not tainted 2.6.18-262.el5 #1 RIP: 0010:[] [] .text.lock.spinlock+0x26/00 RSP: 0018:ffff810113167da8 EFLAGS: 00000286 RAX: ffff810113167fd8 RBX: ffff810123a47800 RCX: 0000000000ff1025 RDX: 0000000000000000 RSI: ffff810123a47800 RDI: ffff81021b57f6f8 RBP: ffff81021b57f500 R08: 0000000000000000 R09: 000000000000000c R10: 00000000ffffffff R11: ffff81011d41c000 R12: ffff81021b57f000 R13: 0000000000000000 R14: 0000000000000282 R15: 0000000000000282 FS: 00002b3b41ef3f50(0000) GS:ffff810123b27940(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00002b3b456dd000 CR3: 000000031fc60000 CR4: 00000000000006e0 Call Trace: [] _spin_lock_bh+0x9/0x14 [] :bonding:tlb_clear_slave+0x22/0xa1 [] :bonding:bond_alb_deinit_slave+0xba/0xf0 [] :bonding:bond_release+0x1b4/0x450 [] __down_write_nested+0x12/0x92 [] :bonding:bonding_store_slaves+0x25c/0x2f7 [] sysfs_write_file+0xb9/0xe8 [] vfs_write+0xce/0x174 [] sys_write+0x45/0x6e [] tracesys+0xd5/0xe0 It occurs because we are able to change the slave configuarion of a bond while the bond interface is down. The bonding driver initializes some data structures only after its ndo_open routine is called. Among them is the initalization of the alb tx and rx hash locks. So if we add or remove a slave without first opening the bond master device, we run the risk of trying to lock/unlock a spinlock that has garbage for data in it, which results in our above softlock. Note that sometimes this works, because in many cases an unlocked spinlock has the raw_lock parameter initialized to zero (meaning that the kzalloc of the net_device private data is equivalent to calling spin_lock_init), but thats not true in all cases, and we aren't guaranteed that condition, so we need to pass the relevant spinlocks through the spin_lock_init function. Fix it by moving the spin_lock_init calls for the tx and rx hashtable locks to the ndo_init path, so they are ready for use by the bond_store_slaves path. Change notes: v2) Based on conversation with Jay and Nicolas it seems that the ability to enslave devices while the bond master is down should be safe to do. As such this is an outlier bug, and so instead we'll just initalize the errant spinlocks in the init path rather than the open path, solving the problem. We'll also remove the warnings about the bond being down during enslave operations, since it should be safe v3) Fix spelling error Signed-off-by: Neil Horman Reported-by: jtluka@redhat.com CC: Jay Vosburgh CC: Andy Gospodarek CC: nicolas.2p.debian@gmail.com CC: "David S. Miller" Signed-off-by: Jay Vosburgh Signed-off-by: David S. Miller commit 2907c35ff64708065e5a7fd54e8ded8263eb3074 Author: Eric Dumazet Date: Wed May 25 07:34:04 2011 +0000 net: hold rtnl again in dump callbacks Commit e67f88dd12f6 (dont hold rtnl mutex during netlink dump callbacks) missed fact that rtnl_fill_ifinfo() must be called with rtnl held. Because of possible deadlocks between two mutexes (cb_mutex and rtnl), its not easy to solve this problem, so revert this part of the patch. It also forgot one rcu_read_unlock() in FIB dump_rules() Add one ASSERT_RTNL() in rtnl_fill_ifinfo() to remind us the rule. Signed-off-by: Eric Dumazet CC: Patrick McHardy CC: Stephen Hemminger Signed-off-by: David S. Miller commit 1dcb14d9e874d12bab9ceeba776b742f1682b0a6 Author: Meelis Roos Date: Wed May 25 05:43:47 2011 +0000 Add Fujitsu 1000base-SX PCI ID to tg3 This patch adds the PCI ID of Fujitsu 1000base-SX NIC to tg3 driver. Tested to detect the card, MAC and serdes, not tested with link at the moment since I have no fiber switch here. I did not add new constants to the pci_ids.h header file since these constants are used only here. Signed-off-by: Meelis Roos Signed-off-by: David S. Miller commit a5971d43ef76f4b73c58e2d893de9db487388c87 Author: Dmitry Kravkov Date: Wed May 25 04:55:51 2011 +0000 bnx2x: protect sequence increment with mutex Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 07bd8df5df4369487812bf85a237322ff3569b77 Author: Eric Dumazet Date: Wed May 25 04:40:11 2011 +0000 sch_sfq: fix peek() implementation Since commit eeaeb068f139 (sch_sfq: allow big packets and be fair), sfq_peek() can return a different skb that would be normally dequeued by sfq_dequeue() [ if current slot->allot is negative ] Use generic qdisc_peek_dequeued() instead of custom implementation, to get consistent result. Signed-off-by: Eric Dumazet CC: Jarek Poplawski CC: Patrick McHardy CC: Jesper Dangaard Brouer Signed-off-by: David S. Miller commit 367bbf2aa1654c12ab5d6dbf4428b043b425be29 Author: Prarit Bhargava Date: Wed May 25 02:12:23 2011 +0000 isdn: netjet - blacklist Digium TDM400P [2nd try ... 1st attempt didn't make it to netdev mailing list] A quick google search reveals that people with this card are blacklisting it in the initramfs and in the module blacklist based on a statement that it is unsupported. Since the older Digium is also unsupported I'm pretty confident that this newer card is also not supported. lspci -xxx -vv shows 04:07.0 Communication controller: Tiger Jet Network Inc. Tiger3XX Modem/ISDN interface Subsystem: Device b100:0003 P. ----8<---- The Asterisk Voice Card, DIGIUM TDM400P is unsupported by the netjet driver. Blacklist it like the Digium X100P/X101P card. Signed-off-by: Prarit Bhargava Signed-off-by: David S. Miller commit d10358de8d70aaeb965a974d56e9b72f6c6dbb3a Author: Ulrich Hecht Date: Wed May 25 01:07:22 2011 +0000 via-velocity: don't annotate MAC registers as packed On ARM, memory accesses through packed pointers behave in unexpected ways in GCC releases 4.3 and higher; see https://lkml.org/lkml/2011/2/2/163 for discussion. In this particular case, 32-bit I/O registers are accessed bytewise, causing incorrect setting of the DMA address registers which in turn leads to an error interrupt storm that brings the system to a halt. Since the mac_regs structure does not need any packing anyway, this patch simply removes the attribute to fix the issue. Signed-off-by: Ulrich Hecht Signed-off-by: David S. Miller commit 1ba37c518f8f83094209396c65a72732b2c1df3b Author: Ian Campbell Date: Tue May 24 21:56:02 2011 +0000 xen: netfront: hold RTNL when updating features. Konrad reports: [ 0.930811] RTNL: assertion failed at /home/konrad/ssd/linux/net/core/dev.c (5258) [ 0.930821] Pid: 22, comm: xenwatch Not tainted 2.6.39-05193-gd762f43 #1 [ 0.930825] Call Trace: [ 0.930834] [] __netdev_update_features+0xae/0xe0 [ 0.930840] [] netdev_update_features+0x11/0x30 [ 0.930847] [] netback_changed+0x4e5/0x800 [xen_netfront] [ 0.930854] [] xenbus_otherend_changed+0xa8/0xb0 [ 0.930860] [] ? _raw_spin_unlock_irqrestore+0x19/0x20 [ 0.930866] [] backend_changed+0xe/0x10 [ 0.930871] [] xenwatch_thread+0xba/0x180 [ 0.930876] [] ? wake_up_bit+0x40/0x40 [ 0.930881] [] ? split+0xf0/0xf0 [ 0.930886] [] kthread+0x96/0xa0 [ 0.930891] [] kernel_thread_helper+0x4/0x10 [ 0.930896] [] ? int_ret_from_sys_call+0x7/0x1b [ 0.930901] [] ? retint_restore_args+0x5/0x6 [ 0.930906] [] ? gs_change+0x13/0x13 This update happens in xenbus watch callback context and hence does not already hold the rtnl. Take the lock as necessary. Signed-off-by: Ian Campbell Tested-by: Konrad Rzeszutek Wilk Signed-off-by: David S. Miller commit 8b4472cc13136d04727e399c6fdadf58d2218b0a Author: Wei Yongjun Date: Tue May 24 21:48:02 2011 +0000 sctp: fix memory leak of the ASCONF queue when free asoc If an ASCONF chunk is outstanding, then the following ASCONF chunk will be queued for later transmission. But when we free the asoc, we forget to free the ASCONF queue at the same time, this will cause memory leak. Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit f11970e383acd6f505f492f1bc07fb1a4d884829 Author: Neil Horman Date: Tue May 24 08:31:09 2011 +0000 net: make dev_disable_lro use physical device if passed a vlan dev (v2) If the device passed into dev_disable_lro is a vlan, then repoint the dev poniter so that we actually modify the underlying physical device. Signed-of-by: Neil Horman CC: davem@davemloft.net CC: bhutchings@solarflare.com Signed-off-by: David S. Miller commit 6dcbbe25dcc9bd2bdeb4f685f8fb874ffc10e6be Author: Neil Horman Date: Tue May 24 08:31:08 2011 +0000 net: move is_vlan_dev into public header file (v2) Migrate is_vlan_dev() to if_vlan.h so that core networkig can use it Signed-off-by: Neil Horman CC: davem@davemloft.net CC: bhutchings@solarflare.com Signed-off-by: David S. Miller commit 46b2903c05b248ed78304113ecfba368b4c55def Author: Vinod Koul Date: Wed May 25 14:49:20 2011 -0700 dmaengine: Add API documentation for slave dma usage Signed-off-by: Vinod Koul Signed-off-by: Dan Williams commit 3991b4008cb12f3abfe8dbb049b03d1cc39a8440 Author: Ding Dinghua Date: Wed May 25 17:43:48 2011 -0400 jbd2: fix a potential leak of a journal_head on an error path drop jh->b_jcount in error path Signed-off-by: Ding Dinghua Signed-off-by: "Theodore Ts'o" commit 1b16da77f90328661fc7e556ad591f9ee6b7ef6a Author: Yongqiang Yang Date: Wed May 25 17:41:48 2011 -0400 ext4: teach ext4_ext_split to calculate extents efficiently Make ext4_ext_split() get extents to be moved by calculating in a statement instead of counting in a loop. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit ae24f28d39610a4810c78185cf599a771cf6ee1f Author: Jan Kara Date: Wed May 25 17:39:48 2011 -0400 ext4: Convert ext4 to new truncate calling convention Trivial conversion. Fixup one error handling case calling vmtruncate() and remove ->truncate callback. We also fix a bug that IS_IMMUTABLE and IS_APPEND files could not be truncated during failed writes. In fact, the test can be completely removed as upper layers do necessary permission checks for truncate in do_sys_[f]truncate() and may_open() anyway. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 8b27f2ff7a24f0735c96055e676872f05398d99b Author: Nikhil P Rao Date: Wed May 25 10:18:41 2011 -0700 x86: Remove unnecessary check in detect_ht() This patch removes a check that causes incorrect scheduler domain setup (SMP instead of SMT) and bootlog warning messages when cpuid extensions for topology enumeration are not supported and the number of processors reported to the OS is smaller than smp_num_siblings. Acked-by: Suresh Siddha Signed-off-by: Nikhil P Rao Link: http://lkml.kernel.org/r/1306343921.19325.1.camel@fedora13 Signed-off-by: Ingo Molnar commit 08ee80cc397ac1a306ca689a22ede954d92d0db1 Author: Philip Rakity Date: Tue May 24 18:14:58 2011 -0700 mmc: core: eMMC bus width may not work on all platforms CMD19 -- The offical way to validate bus widths from the JEDEC spec does not work on all platforms. Some platforms that use PCI/PCIe to connect their SD controllers are known to fail. If the quirk MMC_BUS_WIDTH_TEST is not defined we try to figure out the bus width by reading the ext_csd at different bus widths and compare this against the ext_csd read in 1 bit mode. If no ext_csd is available we default to 1 bit operations. Code has been tested on mmp2 against 8 bit eMMC and Transcend 2GB card that is known to not work in 4 bit mode. The physical pins on the card are not present to support 4 bit operation. Signed-off-by: Philip Rakity Signed-off-by: Chris Ball commit 4f3d3e9b50931a3ec70f324d53fb7437e2a39388 Author: Andrei Warkentin Date: Wed May 25 10:42:50 2011 -0400 mmc: sdhci: Auto-CMD23 fixes. Fixes bugs in Auto-CMD23 feature enable decision. Auto-CMD23 should be enabled if host is >= v3, and SDMA is not in use. USE_ADMA | USE_SDMA | Auto-CMD23 ---------+----------+----------- 0 | 0 | 1 ---------+----------+----------- 0 | 1 | 0 ---------+----------+----------- 1 | 0 | 1 ---------+----------+----------- 1 | 1 | 1 Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 8edf63710bd43e62d59bfe017df542fa0713bbb3 Author: Andrei Warkentin Date: Mon May 23 15:06:39 2011 -0500 mmc: sdhci: Auto-CMD23 support. Enables Auto-CMD23 support where available (SDHCI 3.0 controllers) Signed-off-by: Andrei Warkentin Tested-by: Arindam Nath Signed-off-by: Chris Ball commit f0d89972b01798cf9d245dfa1cacfa0ee78a3593 Author: Andrei Warkentin Date: Mon May 23 15:06:38 2011 -0500 mmc: core: Block CMD23 support for UHS104/SDXC cards. SD cards operating at UHS104 or better support SET_BLOCK_COUNT. Signed-off-by: Andrei Warkentin Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit e89d456fcdde2df008c032bf928e69e628e07a28 Author: Andrei Warkentin Date: Mon May 23 15:06:37 2011 -0500 mmc: sdhci: Implement MMC_CAP_CMD23 for SDHCI. Implements support for multiblock transfers bounded by SET_BLOCK_COUNT (CMD23). Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit d0c97cfb81ebc5b416c0f92fa2fc18d2773e3023 Author: Andrei Warkentin Date: Mon May 23 15:06:36 2011 -0500 mmc: core: Use CMD23 for multiblock transfers when we can. CMD23-prefixed instead of open-ended multiblock transfers have a performance advantage on some MMC cards. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 586893ebc42943008010b4c210cfc9167df615e5 Merge: 014322d bd6356b Author: Russell King Date: Wed May 25 21:47:48 2011 +0100 Merge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into devel-stable Conflicts: arch/arm/Kconfig arch/arm/mach-exynos4/mach-nuri.c commit 8dc4abdf4c82d0e1c47f14b6615406d31975ea66 Merge: 04ea2f8 8078386 c337374 52f81db 83e9502 737b94e 71c29bd Author: Roland Dreier Date: Wed May 25 13:47:20 2011 -0700 Merge branches 'cma', 'cxgb3', 'cxgb4', 'misc', 'nes', 'netlink', 'srp' and 'uverbs' into for-next commit 83e9502d8db142822f3302e6a46a45082d3a27b7 Author: Nir Muchtar Date: Thu Jan 13 13:56:04 2011 +0000 RDMA/cma: Save PID of ID's owner Save the PID associated with an RDMA CM ID for reporting via netlink. Signed-off-by: Nir Muchtar Signed-off-by: Roland Dreier commit 753f618ae03a699cc30044d64eea84165016dc6e Author: Nir Muchtar Date: Mon Jan 3 15:33:53 2011 +0000 RDMA/cma: Add support for netlink statistics export Add callbacks and data types for statistics export of all current devices/ids. The schema for RDMA CM is a series of netlink messages. Each one contains an rdma_cm_stat struct. Additionally, two netlink attributes are created for the addresses for each message (if applicable). Their types used are: RDMA_NL_RDMA_CM_ATTR_SRC_ADDR (The source address for this ID) RDMA_NL_RDMA_CM_ATTR_DST_ADDR (The destination address for this ID) sockaddr_* structs are encapsulated within these attributes. In other words, every transaction contains a series of messages like: -------message 1------- struct rdma_cm_id_stats { __u32 qp_num; __u32 bound_dev_if; __u32 port_space; __s32 pid; __u8 cm_state; __u8 node_type; __u8 port_num; __u8 reserved; } RDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute - contains the source address RDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute - contains the destination address -------end 1------- -------message 2------- struct rdma_cm_id_stats RDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute RDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute -------end 2------- Signed-off-by: Nir Muchtar Signed-off-by: Roland Dreier commit b26f9b9949013fec31b23c426fc463164ae08891 Author: Sean Hefty Date: Thu Apr 1 17:08:41 2010 +0000 RDMA/cma: Pass QP type into rdma_create_id() The RDMA CM currently infers the QP type from the port space selected by the user. In the future (eg with RDMA_PS_IB or XRC), there may not be a 1-1 correspondence between port space and QP type. For netlink export of RDMA CM state, we want to export the QP type to userspace, so it is cleaner to explicitly associate a QP type to an ID. Modify rdma_create_id() to allow the user to specify the QP type, and use it to make our selections of datagram versus connected mode. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 9a7147b506ccae8552b0cf218b3c02982012eb4d Author: Roland Dreier Date: Tue May 10 12:36:01 2011 -0700 RDMA: Update exported headers list Various RDMA headers are intended to be exported to userspace, so add them to the headers-y list. Add a (strictly speaking, superfluous) include of to avoid a headers_check warning. Signed-off-by: Roland Dreier commit 550e5ca77e96989c5e19f60e017205b2bcc615a5 Author: Nir Muchtar Date: Fri May 20 11:46:11 2011 -0700 RDMA/cma: Export enum cma_state in Move cma.c's internal definition of enum cma_state to enum rdma_cm_state in an exported header so that it can be exported via RDMA netlink. Signed-off-by: Nir Muchtar Signed-off-by: Roland Dreier commit f1a7ee977df9f5c0f18449a9280d62ba04daed0c Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 parport: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Arnaud Giersch Signed-off-by: Michal Marek commit c28c89fc43e3f81436efc4748837534d4d46f90c Author: Jeff Layton Date: Thu May 19 16:22:56 2011 -0400 cifs: add cifs_async_writev Add the ability for CIFS to do an asynchronous write. The kernel will set the frame up as it would for a "normal" SMBWrite2 request, and use cifs_call_async to send it. The mid callback will then be configured to handle the result. Reviewed-by: Pavel Shilovsky Signed-off-by: Jeff Layton Signed-off-by: Steve French commit f7910cbd9fa319ee4501074f1f3b5ce23c4b1518 Author: Jeff Layton Date: Thu May 19 16:22:58 2011 -0400 cifs: clean up wsize negotiation and allow for larger wsize Now that we can handle larger wsizes in writepages, fix up the negotiation of the wsize to allow for that. find_get_pages only seems to give out a max of 256 pages at a time, so that gives us a reasonable default of 1M for the wsize. If the server however does not support large writes via POSIX extensions, then we cap the wsize to (128k - PAGE_CACHE_SIZE). That gives us a size that goes up to the max frame size specified in RFC1001. Finally, if CAP_LARGE_WRITE_AND_X isn't set, then further cap it to the largest size allowed by the protocol (USHRT_MAX). Signed-off-by: Jeff Layton Reviewed-and-Tested-by: Pavel Shilovsky Signed-off-by: Steve French commit c3d17b63e5eafcaf2678c11de801c189468631c8 Author: Jeff Layton Date: Thu May 19 16:22:57 2011 -0400 cifs: convert cifs_writepages to use async writes Have cifs_writepages issue asynchronous writes instead of waiting on each write call to complete before issuing another. This also allows us to return more quickly from writepages. It can just send out all of the I/Os and not wait around for the replies. In the WB_SYNC_ALL case, if the write completes with a retryable error, then the completion workqueue job will resend the write. This also changes the page locking semantics a little bit. Instead of holding the page lock until the response is received, release it after doing the send. This will reduce contention for the page lock and should prevent processes that have the file mmap'ed from being blocked unnecessarily. Signed-off-by: Jeff Layton Reviewed-and-Tested-by: Pavel Shilovsky Signed-off-by: Steve French commit b2e5cd33b598fb496b9366c445bd77c801efabb8 Author: Pavel Shilovsky Date: Wed May 25 13:35:34 2011 +0400 CIFS: Fix undefined behavior when mount fails Fix double kfree() calls on the same pointers and cleanup mount code. Reviewed-and-Tested-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 6738d3210aabe3016a1b03cd98a7fc479c229197 Author: Chris Metcalf Date: Wed May 25 15:24:00 2011 -0400 arch/tile: prefer "tilepro" as the name of the 32-bit architecture With this change, you can (and should) build with ARCH=tilepro for the current 32-bit chips. Building with ARCH=tile continues to work, but we've renamed the defconfig file to tilepro_defconfig for consistency. Signed-off-by: Chris Metcalf commit 51b550a41c2ac0373b42f4e211f2df113b735b0a Merge: 62af816 ca995cb Author: Linus Torvalds Date: Wed May 25 12:04:15 2011 -0700 Merge branch 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'misc' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: export_report: use warn() to issue WARNING, so they go to stderr export_report: sort SECTION 2 output export_report: do collectcfiles work in perl itself kbuild: make versioncheck work in KBUILD_OUTDIR kbuild: make includecheck work in KBUILD_OUTDIR kbuild: make headerdep work in KBUILD_OUTDIR kbuild: add targets to PHONY kbuild: don't warn about include/linux/version.h not including itself eradicate bashisms in scripts/patch-kernel commit 62af8163f9caa5b21996338ccd2564dfd727670e Merge: 57bb559 0bd41df Author: Linus Torvalds Date: Wed May 25 12:03:47 2011 -0700 Merge branch 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'packaging' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: Create a kernel-headers RPM rpm-pkg: Fix when current directory is a symlink Replace '-' in kernel version with '_' commit 57bb55957432f20fd6e5bb5ddfbd9987439157ec Merge: 2a651c7 db35405 Author: Linus Torvalds Date: Wed May 25 11:46:31 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: (23 commits) ceph: fix cap flush race reentrancy libceph: subscribe to osdmap when cluster is full libceph: handle new osdmap down/state change encoding rbd: handle online resize of underlying rbd image ceph: avoid inode lookup on nfs fh reconnect ceph: use LOOKUPINO to make unconnected nfs fh more reliable rbd: use snprintf for disk->disk_name rbd: cleanup: make kfree match kmalloc rbd: warn on update_snaps failure on notify ceph: check return value for start_request in writepages ceph: remove useless check libceph: add missing breaks in addr_set_port libceph: fix TAG_WAIT case ceph: fix broken comparison in readdir loop libceph: fix osdmap timestamp assignment ceph: fix rare potential cap leak libceph: use snprintf for unknown addrs libceph: use snprintf for formatting object name ceph: use snprintf for dirstat content libceph: fix uninitialized value when no get_authorizer method is set ... commit b0b349a85d3df00a40a8bd398e4a151fd8e91bbe Author: Jean Delvare Date: Wed May 25 20:43:33 2011 +0200 hwmon: New driver for the SMSC EMC6W201 This is a new driver for the SMSC EMC6W201 hardware monitoring device. The device is functionally close to the EMC6D100 series, but is register-incompatible. Signed-off-by: Jean Delvare Tested-by: Harry G McGavran Jr Tested-by: Jeff Rickman Acked-by: Guenter Roeck commit ec693fe5287e1791f4d206e81ebdfdc7d1f8f6b9 Author: Jean Delvare Date: Wed May 25 20:43:33 2011 +0200 hwmon: (abituguru) Depend on DMI The abituguru drivers are only built on X86, where DMI support is now enabled by default. So let these drivers depend on DMI, for the following gains: * Robustness and safety. Detection of these devices is weak and uses non-standard methods, it should really be limited to Abit boards unless the user explicitly asks otherwise. * Code simplicity. The code is easier to read without ifdefs. * Better build testing coverage. Now there's only one way to build the drivers, so no risk of build failure on exotic systems. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck Acked-by: Alistair John Strachan Acked-by: Hans de Goede commit 5b0380c94a2e888b7858fbec6fc3ac623bc9b05a Author: Nat Gurumoorthy Date: Wed May 25 20:43:33 2011 +0200 hwmon: (it87) Use request_muxed_region Serialize access to the hardware by using "request_muxed_region" macro defined by Alan Cox. Call to this macro will hold off the requestor if the resource is currently busy. "superio_enter" will return an error if call to "request_muxed_region" fails. Rest of the code change is to ripple an error return from superio_enter to the top level. Signed-off-by: Nat Gurumoorthy Acked-by: Guenter Roeck Signed-off-by: Jean Delvare commit 357b9dc6c2dbb01e835415355b70d6b47c43a102 Author: Hans de Goede Date: Wed May 25 20:43:33 2011 +0200 hwmon: (sch5627) Trigger Vbat measurements The sch5627 needs to be explicitly told to start an adc conversion for Vbat, once in a while. Without this Vbat may read 0, and will never get updated. Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit 709046a62293a14fda3986a52818ec01fc11bf75 Author: Hans de Goede Date: Wed May 25 20:43:33 2011 +0200 hwmon: (sch5627) Add sch5627_send_cmd function This patch generalizes sch5627_read_virtual_reg so that it can be used to write virtual regs too. Signed-off-by: Hans de Goede Sigend-off-by: Jean Delvare commit 949a9d70020defd7c241607ab3ed037ea88f551c Author: Jean Delvare Date: Wed May 25 20:43:33 2011 +0200 i8k: Integrate with the hwmon subsystem Let i8k create an hwmon class device so that libsensors will expose the CPU temperature and fan speeds to monitoring applications. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck Cc: Thomas Gleixner Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Massimo Dal Zotto commit 9c084dae5dc7ae0039e330230e70f2a5956e566a Author: Jean Delvare Date: Wed May 25 20:43:32 2011 +0200 hwmon: (max6650) Properly support the MAX6650 The MAX6650 has only one fan input. Signed-off-by: Jean Delvare Acked-by: "Hans J. Koch" Acked-by: Guenter Roeck commit 67b670ff04cdff1c9584ecdb22e297956664c9b5 Author: Jean Delvare Date: Wed May 25 20:43:32 2011 +0200 hwmon: (max6650) Drop device detection MAX6650 device detection is unreliable, we got reports of false positives. We now have many ways to let users instantiate the devices explicitly, so unreliable detection should be dropped. Signed-off-by: Jean Delvare Acked-by: "Hans J. Koch" Acked-by: Guenter Roeck commit 7d0333653840b0c692f55f1aaaa71d626fb00870 Author: Jean Delvare Date: Wed May 25 20:43:32 2011 +0200 Move ACPI power meter driver to hwmon As discussed earlier, the ACPI power meter driver would better live in drivers/hwmon, as its only purpose is to create hwmon-style interfaces for ACPI 4.0 power meter devices. Users are more likely to look for it there, and less likely to accidentally hide it by unselecting its dependencies. Signed-off-by: Jean Delvare Acked-by: "Darrick J. Wong" Acked-by: Guenter Roeck Cc: Len Brown commit 629c58bac082ae091e518187d63249fa7e9f796f Author: Hans de Goede Date: Wed May 25 20:43:32 2011 +0200 hwmon: (f71882fg) Add support for F71808A Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit 4d53811a28090b7583bb68fda294e0f009679770 Author: Hans de Goede Date: Wed May 25 20:43:32 2011 +0200 hwmon: (f71882fg) Split has_beep in fan_has_beep and temp_has_beep Needed for upcoming support of the F71808A. Signed-off-by: Hans de Goede Signed-off-by: Jean Delvare commit 9854f971f2f5ef0c593c8ed7c09f5f999cfeeb5d Author: Jean Delvare Date: Wed May 25 20:43:32 2011 +0200 hwmon: (asc7621) Drop duplicate dependency The config SENSORS_ASC7621 entry is inside an if HWMON / endif block, so it already depends on HWMON. Signed-off-by: Jean Delvare Acked-by: Guenter Roeck commit 774466add7c810fd7e4c8bcf41995b6799608880 Author: Jean Delvare Date: Wed May 25 20:43:32 2011 +0200 hwmon: (jc42) Change detection class While the JC42-compatible chips are temperature sensors, I2C_CLASS_SPD makes more sense because these chips always live on memory modules. Signed-off-by: Jean Delvare Cc: Guenter Roeck commit 512d1027a6c58def3c2a410e8be65b7e730aad3b Author: Andreas Herrmann Date: Wed May 25 20:43:31 2011 +0200 hwmon: Add driver for AMD family 15h processor power information This CPU family provides NB register values to gather following TDP information * ProcessorPwrWatts: Specifies in Watts the maximum amount of power the processor can support. * CurrPwrWatts: Specifies in Watts the current amount of power being consumed by the processor. This driver provides * power1_crit (ProcessorPwrWatts) * power1_input (CurrPwrWatts) Signed-off-by: Andreas Herrmann Signed-off-by: Jean Delvare commit 9e5813111265ad3c37a4370f0ee7e634dc07a7d6 Author: Andre Przywara Date: Wed May 25 20:43:31 2011 +0200 hwmon: (k10temp) Add support for Fam15h (Bulldozer) AMDs upcoming CPUs use the same mechanism for the internal temperature reporting as the Fam10h CPUs, so we just needed to add the appropriate PCI-ID to the list. This allows to use the k10temp driver on those CPUs. While at it change the Kconfig entry to be more generic. Signed-off-by: Andre Przywara Acked-by: Clemens Ladisch Signed-off-by: Jean Delvare commit 95de3b257516d21af6e0313c7bab119e4f80d6f4 Author: Jean Delvare Date: Wed May 25 20:43:31 2011 +0200 hwmon: Use helper functions to set and get driver data Use helper functions to set and get driver data. This is more elegant. Signed-off-by: Jean Delvare Cc: Andreas Herrmann Acked-by: Guenter Roeck commit bc1f419c76a2d6450413ce4349f4e4a07be011d5 Author: Luca Tettamanti Date: Wed May 25 20:43:31 2011 +0200 i8k: Avoid lahf in 64-bit code i8k uses lahf to read the flag register in 64-bit code; early x86-64 CPUs, however, lack this instruction and we get an invalid opcode exception at runtime. Use pushf to load the flag register into the stack instead. Signed-off-by: Luca Tettamanti Reported-by: Jeff Rickman Tested-by: Jeff Rickman Tested-by: Harry G McGavran Jr Cc: stable@kernel.org Cc: Massimo Dal Zotto Signed-off-by: Jean Delvare commit 22e95ac87d62bdc65b8a694a23cd4a364689b013 Merge: 6b36783 31ec97d Author: David S. Miller Date: Wed May 25 13:28:55 2011 -0400 Merge branch 'for-davem' of ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit d92fcf0552a15891b25c343cee340d295e24109c Author: Oleg Nesterov Date: Wed May 25 19:22:27 2011 +0200 signal: sys_pause() should check signal_pending() ERESTART* is always wrong without TIF_SIGPENDING. Teach sys_pause() to handle the spurious wakeup correctly. Signed-off-by: Oleg Nesterov commit 1094a4a6118019255bf0e4adaa96bb17ccec3a82 Author: Phillip Lougher Date: Tue May 24 04:45:33 2011 +0100 Squashfs: add extra sanity checks at mount time Add some extra sanity checks of the inode and directory structures. Signed-off-by: Phillip Lougher commit 1cac63cc9b2ff0d16ab2d16232b1a6ee8676a47b Author: Phillip Lougher Date: Tue May 24 04:33:34 2011 +0100 Squashfs: add sanity checks to fragment reading at mount time Fsfuzzer generates corrupted filesystems which throw a warn_on in kmalloc. One of these is due to a corrupted superblock fragments field. Fix this by checking that the number of bytes to be read (and allocated) does not extend into the next filesystem structure. Also add a couple of other sanity checks of the mount-time fragment table structures. Signed-off-by: Phillip Lougher commit ac51a0a7139aa93bf1176b701c86fa3d2bdf6106 Author: Phillip Lougher Date: Tue May 24 04:15:21 2011 +0100 Squashfs: add sanity checks to lookup table reading at mount time Fsfuzzer generates corrupted filesystems which throw a warn_on in kmalloc. One of these is due to a corrupted superblock inodes field. Fix this by checking that the number of bytes to be read (and allocated) does not extend into the next filesystem structure. Also add a couple of other sanity checks of the mount-time lookup table structures. Signed-off-by: Phillip Lougher commit 37986f63c81bf23c856f65fc5e4830550e7f3d5b Author: Phillip Lougher Date: Tue May 24 04:05:22 2011 +0100 Squashfs: add sanity checks to id reading at mount time Fsfuzzer generates corrupted filesystems which throw a warn_on in kmalloc. One of these is due to a corrupted superblock no_ids field. Fix this by checking that the number of bytes to be read (and allocated) does not extend into the next filesystem structure. Also add a couple of other sanity checks of the mount-time id table structures. Signed-off-by: Phillip Lougher commit 6f04864515365e135adc9f1cee4ac1251bb0ed35 Author: Phillip Lougher Date: Tue May 24 03:20:27 2011 +0100 Squashfs: add sanity checks to xattr reading at mount time These checks add sanity checking of the mount-time xattr structures. Signed-off-by: Phillip Lougher commit 76e002f755b61aa79228f4e751bbca8674aba0f6 Author: Phillip Lougher Date: Tue May 24 02:57:05 2011 +0100 Squashfs: reverse order of filesystem table reading Reverse order of table reading from mostly first to last in placement order, to last to first. This is to enable extra superblock sanity checks to be added in later patches. Signed-off-by: Phillip Lougher commit 82de647e1f81fd89afc48608d889dd3b33cb8983 Author: Phillip Lougher Date: Fri May 20 02:26:43 2011 +0100 Squashfs: move table allocation into squashfs_read_table() This eliminates a lot of duplicate code. Signed-off-by: Phillip Lougher commit 0666fb51b1483f27506e212cc7f7b2645b5c7acc Author: Oleg Nesterov Date: Wed May 25 19:20:21 2011 +0200 ptrace: ptrace_resume() shouldn't wake up !TASK_TRACED thread It is not clear why ptrace_resume() does wake_up_process(). Unless the caller is PTRACE_KILL the tracee should be TASK_TRACED so we can use wake_up_state(__TASK_TRACED). If sys_ptrace() races with SIGKILL we do not need the extra and potentionally spurious wakeup. If the caller is PTRACE_KILL, wake_up_process() is even more wrong. The tracee can sleep in any state in any place, and if we have a buggy code which doesn't handle a spurious wakeup correctly PTRACE_KILL can be used to exploit it. For example: int main(void) { int child, status; child = fork(); if (!child) { int ret; assert(ptrace(PTRACE_TRACEME, 0,0,0) == 0); ret = pause(); printf("pause: %d %m\n", ret); return 0x23; } sleep(1); assert(ptrace(PTRACE_KILL, child, 0,0) == 0); assert(child == wait(&status)); printf("wait: %x\n", status); return 0; } prints "pause: -1 Unknown error 514", -ERESTARTNOHAND leaks to the userland. In this case sys_pause() is buggy as well and should be fixed. I do not know what was the original rationality behind PTRACE_KILL. The man page is simply wrong and afaics it was always wrong. Imho it should be deprecated, or may be it should do send_sig(SIGKILL) as Denys suggests, but in any case I do not think that the current behaviour was intentional. Note: there is another problem, ptrace_resume() changes ->exit_code and this can race with SIGKILL too. Eventually we should change ptrace to not use ->exit_code. Signed-off-by: Oleg Nesterov commit 8c127f0717b438e6abc3d92d4ae248c4224b9dcb Author: Hans Petter Selasky Date: Wed May 25 09:24:32 2011 -0700 Input: properly assign return value of clamp() macro. [dtor@mail.ru: added mousedev changes] Signed-off-by: Hans Petter Selasky Cc: stable@kernel.org Signed-off-by: Dmitry Torokhov commit 2a651c7f8d377cf88271374315cbb5fe82eac784 Merge: c88bc60 ee294be Author: Linus Torvalds Date: Wed May 25 09:21:56 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs: 9p: update Documentation pointers net/9p: enable 9p to work in non-default network namespace net/9p: p9_idpool_get return -1 on error fs/9p: Don't clunk dentry fid when we fail to get a writeback inode 9p: Small cleanup in 9p: remove experimental tag from tested configurations 9p: typo fixes and minor cleanups net/9p: Change linuxdoc names to match functions. commit c88bc60a3bd3c63da3960076f13a4606c76bf013 Merge: 929cfdd 825cdcb Author: Linus Torvalds Date: Wed May 25 09:20:20 2011 -0700 Merge branch 'for-2.6.40/splice' of git://git.kernel.dk/linux-2.6-block * 'for-2.6.40/splice' of git://git.kernel.dk/linux-2.6-block: splice: add wakeup_pipe_readers() commit 929cfdd5d3bdc772aff32e5a3fb4e3894394aa75 Merge: 798ce8f a1c15c5 Author: Linus Torvalds Date: Wed May 25 09:15:35 2011 -0700 Merge branch 'for-2.6.40/drivers' of git://git.kernel.dk/linux-2.6-block * 'for-2.6.40/drivers' of git://git.kernel.dk/linux-2.6-block: (110 commits) loop: handle on-demand devices correctly loop: limit 'max_part' module param to DISK_MAX_PARTS drbd: fix warning drbd: fix warning drbd: Fix spelling drbd: fix schedule in atomic drbd: Take a more conservative approach when deciding max_bio_size drbd: Fixed state transitions after async outdate-peer-handler returned drbd: Disallow the peer_disk_state to be D_OUTDATED while connected drbd: Fix for the connection problems on high latency links drbd: fix potential activity log refcount imbalance in error path drbd: Only downgrade the disk state in case of disk failures drbd: fix disconnect/reconnect loop, if ping-timeout == ping-int drbd: fix potential distributed deadlock lru_cache.h: fix comments referring to ts_ instead of lc_ drbd: Fix for application IO with the on-io-error=pass-on policy xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override functions. xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2P override. xen/blkback: don't fail empty barrier requests xen/blkback: fix xenbus_transaction_start() hang caused by double xenbus_transaction_end() ... commit 798ce8f1cca29dcc3f4b55947f611f4ffb32ac2b Merge: 22e12bb 1547010 Author: Linus Torvalds Date: Wed May 25 09:14:07 2011 -0700 Merge branch 'for-2.6.40/core' of git://git.kernel.dk/linux-2.6-block * 'for-2.6.40/core' of git://git.kernel.dk/linux-2.6-block: (40 commits) cfq-iosched: free cic_index if cfqd allocation fails cfq-iosched: remove unused 'group_changed' in cfq_service_tree_add() cfq-iosched: reduce bit operations in cfq_choose_req() cfq-iosched: algebraic simplification in cfq_prio_to_maxrq() blk-cgroup: Initialize ioc->cgroup_changed at ioc creation time block: move bd_set_size() above rescan_partitions() in __blkdev_get() block: call elv_bio_merged() when merged cfq-iosched: Make IO merge related stats per cpu cfq-iosched: Fix a memory leak of per cpu stats for root group backing-dev: Kill set but not used var in bdi_debug_stats_show() block: get rid of on-stack plugging debug checks blk-throttle: Make no throttling rule group processing lockless blk-cgroup: Make cgroup stat reset path blkg->lock free for dispatch stats blk-cgroup: Make 64bit per cpu stats safe on 32bit arch blk-throttle: Make dispatch stats per cpu blk-throttle: Free up a group only after one rcu grace period blk-throttle: Use helper function to add root throtl group to lists blk-throttle: Introduce a helper function to fill in device details blk-throttle: Dynamically allocate root group blk-cgroup: Allow sleeping while dynamically allocating a group ... commit 22e12bbc9bc38c6d0bd541d061a0f547596fc19d Merge: 19426a8 86ff9baa Author: Linus Torvalds Date: Wed May 25 08:59:42 2011 -0700 Merge branch 'timers-ptp-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-ptp-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: ptp: Fix dp83640 build warning when building statically ptp: Added a clock driver for the National Semiconductor PHYTER. ptp: Added a clock driver for the IXP46x. ptp: Added a clock that uses the eTSEC found on the MPC85xx. ptp: Added a brand new class driver for ptp clocks. commit 19426a8f810752b4218e59b1e2187f33e255f7bc Merge: 0f1493a 8af0887 Author: Linus Torvalds Date: Wed May 25 08:58:50 2011 -0700 Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: posix-timers: RCU conversion commit 233eebb9a96f956c541c0c9094fd321894bd93a7 Author: Christoph Hellwig Date: Wed May 11 15:04:05 2011 +0000 xfs: correctly decrement the extent buffer index in xfs_bmap_del_extent The code in xfs_bmap_del_extent does not correctly decrement the extent buffer index when deleting a whole extent. Most of the time this gets caught by checks in xfs_bmapi that work around it and decrement it manually and thus wasn't noticed so far. Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit 87bef1812d337beadfb1099e7361fd41264eb88e Author: Christoph Hellwig Date: Wed May 11 15:04:11 2011 +0000 xfs: check for valid indices in xfs_iext_get_ext and xfs_iext_idx_to_irec Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit ab1908a5bb21a8eebf16e5d92d087fd9413cf67d Author: Christoph Hellwig Date: Wed May 11 15:04:10 2011 +0000 xfs: fix up asserts in xfs_iflush_fork Remove asserts in xfs_iflush_fork that would call xfs_iext_get_ext with a potentially invalid extent buffer index. Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit f1c63b73cf60dc4800cde5ce7fd9466c419e5e36 Author: Christoph Hellwig Date: Wed May 11 15:04:09 2011 +0000 xfs: do not do pointer arithmetic on extent records We need to call xfs_iext_get_ext for the previous extent to get a valid pointer, and can't just do pointer arithmetics as they might be in different pages. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit 00239acf36d3bba8e7c0609e6c473d6e408a2135 Author: Christoph Hellwig Date: Wed May 11 15:04:08 2011 +0000 xfs: do not use unchecked extent indices in xfs_bunmapi Make sure to only call xfs_iext_get_ext after we've validate the extent index when moving on to the next index in xfs_bunmapi. Also remove the old workaround for too large indices that has been superceeded by the proper fix in xfs_bmap_del_extent. Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit 5690f92199956c0f2a2d9f718b5031e1300a1de1 Author: Christoph Hellwig Date: Wed May 11 15:04:07 2011 +0000 xfs: do not use unchecked extent indices in xfs_bmapi Make sure to only call xfs_iext_get_ext after we've validate the extent index when moving on to the next index in xfs_bmapi. Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit 2f2b3220b0566692da14e06ea5fc0d697a78dc7c Author: Christoph Hellwig Date: Wed May 11 15:04:06 2011 +0000 xfs: do not use unchecked extent indices in xfs_bmap_add_extent_* Make sure to only call xfs_iext_get_ext after we've validate the extent index in the various xfs_bmap_add_extent_* helpers. Based on an earlier patch from Lachlan McIlroy. Signed-off-by: Christoph Hellwig Reviewed-by: Lachlan McIlroy Signed-off-by: Alex Elder commit ec90c5563413ba6d29607397c54958d49c3461a3 Author: Christoph Hellwig Date: Mon May 23 08:52:53 2011 +0000 xfs: remove if_lastex The if_lastex field in struct xfs_ifork is only used as a temporary index during xfs_bmapi and xfs_bunmapi. Instead of using the inode fork to store it keep it local in the callchain. Fortunately this is very easy as we already pass a stack copy of it down the whole chain which can simplify be changed to be passed by reference. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 548932739b16e623601f6d7dfb31a1fe28cda050 Author: Christoph Hellwig Date: Wed May 11 15:04:03 2011 +0000 xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag The XFS_BMAPI_RSVBLOCKS is unused, and as far as I can see has always been. Remove it to simplify the bmapi implementation and conserve stack space. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 0f1493a60167cf6333626456d3fc8aff4e6fa237 Merge: 023bc8e 087faf7 Author: Linus Torvalds Date: Wed May 25 08:42:37 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6: (126 commits) sh_mobile_meram: Safely disable MERAM operation when not initialized video: mb862xxfb: add support for L1 displaying video: mb862xx: add support for controller's I2C bus adapter video: mb862xxfb: relocate register space to get contiguous vram video: mb862xxfb: use pre-initialized configuration for PCI GDCs video: mb862xxfb: correct fix.smem_len field initialization video: s3c-fb: correct transparency checking in 32bpp video: s3c-fb: add gpio setup function to resume function fbdev/amifb: Remove superfluous alignment of frame buffer memory fbdev/amifb: Do not call panic() if there's not enough Chip RAM fbdev/amifb: Correct check for video memory size video: mb862xxfb: Require either FB_MB862XX_PCI_GDC or FB_MB862XX_LIME video: s3c-fb: add window variant information for S5P video: s3c-fb: add additional validate bpps video: s3c-fb: correct window osd size offset values udlfb: include prefetch.h explicitly drivers/video/s3c2410fb.c: Convert release_resource to release_mem_region drivers/video/sm501fb.c: Convert release_resource to release_mem_region drivers/video: Convert release_resource to release_mem_region video, udlfb: Fix two build warnings about 'ignoring return value' ... commit 023bc8e75f8cf9e4da8411154be22a4f809d3314 Author: Andrew Morton Date: Tue May 24 17:13:44 2011 -0700 drivers/tty/serial/pch_uart.c needs slab.h alpha allmodconfig: drivers/tty/serial/pch_uart.c: In function 'dma_handle_tx': drivers/tty/serial/pch_uart.c:873: error: implicit declaration of function 'kzalloc' drivers/tty/serial/pch_uart.c:873: warning: assignment makes pointer from integer without a cast drivers/tty/serial/pch_uart.c: In function 'pch_uart_init_port': drivers/tty/serial/pch_uart.c:1403: warning: assignment makes pointer from integer without a cast Cc: Alan Cox Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 545554e7c5bb93bfbf134f9f12889701c0aadf97 Author: Andrew Morton Date: Tue May 24 17:13:43 2011 -0700 drivers/gpio/ml_ioh_gpio.c needs slab.h alpha allmodconfig: drivers/gpio/ml_ioh_gpio.c: In function 'ioh_gpio_probe': drivers/gpio/ml_ioh_gpio.c:205: error: implicit declaration of function 'kzalloc' drivers/gpio/ml_ioh_gpio.c:205: warning: assignment makes pointer from integer without a cast also fix this: drivers/gpio/ml_ioh_gpio.c:145: warning: 'ioh_gpio_save_reg_conf' defined but not used drivers/gpio/ml_ioh_gpio.c:154: warning: 'ioh_gpio_restore_reg_conf' defined but not used Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c5e7043ef784be323750ea4cfdfe004f71c02566 Author: Andrew Morton Date: Tue May 24 17:13:43 2011 -0700 drivers/gpio/vx855_gpio.c needs slab.h alpha allmodconfig: drivers/gpio/vx855_gpio.c: In function 'vx855gpio_probe': drivers/gpio/vx855_gpio.c:233: error: implicit declaration of function 'kzalloc' drivers/gpio/vx855_gpio.c:233: warning: assignment makes pointer from integer without a cast Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2a5cac17c06f897537f91f0040b3d3c8177f6433 Author: Andrew Morton Date: Tue May 24 17:13:42 2011 -0700 fs/ncpfs/inode.c: suppress used-uninitialised warning We get this spurious warning: fs/ncpfs/inode.c: In function 'ncp_fill_super': fs/ncpfs/inode.c:451: warning: 'data.mounted_vol[1u]' may be used uninitialized in this function fs/ncpfs/inode.c:451: warning: 'data.mounted_vol[2u]' may be used uninitialized in this function fs/ncpfs/inode.c:451: warning: 'data.mounted_vol[3u]' may be used uninitialized in this function ... It's notabug, but we can easily fix it with a memset(). Reported-by: Harry Wei Cc: Petr Vandrovec Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0fccc6221821e07366aa44bca112c4edb6d04dd7 Author: Joe Perches Date: Tue May 24 17:13:41 2011 -0700 checkpatch: fix defect in printk(KERN_ 80 column exceptions Currently, printk lines with a only KERN_PREFIX and a quoted string without a comma or close paren that exceed 80 columns are flagged with a warning. ie: printk(KERN_WARNING "some long string that extends beond 80 cols..." "and is continued on another line\n"); Allow this form instead of emitting a warning. Signed-off-by: Joe Perches Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b05317221b7607ba61ee921c31867ed08912aa46 Author: Joe Perches Date: Tue May 24 17:13:40 2011 -0700 checkpatch: add _ and MODULE_ to 80 column exceptions Many module or file local logging functions use specific prefixes other than pr|dev|netdev. Allow all forms like foo_printk and foo_err to be longer than 80 columns. Also allow MODULE_ declarations to be longer than 80 columns. Signed-off-by: Joe Perches Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 428e2fdc4ecee2312829e97549f99c12312f4faf Author: Joe Perches Date: Tue May 24 17:13:39 2011 -0700 checkpatch: add check for line continuations in quoted strings Add a warning for unterminated quoted strings with line continuations as these frequently add unwanted whitespace. Signed-off-by: Joe Perches Cc: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ca43f6c3b365024d889bc77064bb331f5a72a45 Author: Stephen Boyd Date: Tue May 24 17:13:36 2011 -0700 lib: consolidate DEBUG_STACK_USAGE option Most arches define CONFIG_DEBUG_STACK_USAGE exactly the same way. Move it to lib/Kconfig.debug so each arch doesn't have to define it. This obviously makes the option generic, but that's fine because the config is already used in generic code. It's not obvious to me that sysrq-P actually does anything caution by keeping the most inclusive wording. Signed-off-by: Stephen Boyd Cc: Chris Metcalf Acked-by: David S. Miller Acked-by: Richard Weinberger Acked-by: Mike Frysinger Cc: Russell King Cc: Hirokazu Takata Acked-by: Ralf Baechle Cc: Paul Mackerras Acked-by: Benjamin Herrenschmidt Cc: Chen Liqin Cc: Lennox Wu Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c84598bbfa756b7d042da31aa4e198ae866a6c7d Author: Shaohua Li Date: Tue May 24 17:13:35 2011 -0700 percpu_counter: change return value and add comments The percpu_counter_*_positive() API in UP case doesn't check if return value is positive. Add comments to explain why we don't. Also if count < 0, returns 0 instead of 1 for *read_positive(). [akpm@linux-foundation.org: tweak comment] Signed-off-by: Shaohua Li Acked-by: Eric Dumazet Cc: Tejun Heo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c8f370ded3483b27f1218ff0051fcf0c7a2facd Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 24 17:13:34 2011 -0700 lib/genalloc.c: add support for specifying the physical address So we can specify the virtual address as the base of the pool chunk and then get physical addresses for hardware IP. For example on at91 we will use this on spi, uart or macb Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice VILCHEZ Cc: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6aae6e0304d33e537298867dafb2703ec58c2e4f Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 24 17:13:33 2011 -0700 include/linux/genalloc.h: add multiple-inclusion guards Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice VILCHEZ Cc: Jes Sorensen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 44ec7abe359204cc9186e32d31ef5b34c8d17274 Author: Stephen Boyd Date: Tue May 24 17:13:32 2011 -0700 lib: consolidate DEBUG_PER_CPU_MAPS DEBUG_PER_CPU_MAPS is used in lib/cpumask.c as well as in inlcude/linux/cpumask.h and thus it has outgrown its use within x86 and powerpc alone. Any arch with SMP support may want to get some more debugging, so make this option generic. Signed-off-by: Stephen Boyd Cc: Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Acked-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c196e32a111b0ee356d67acceb938ae0b5e63ef0 Author: Alexey Dobriyan Date: Tue May 24 17:13:31 2011 -0700 lib: add kstrto*_from_user() There is quite a lot of code which does copy_from_user() + strict_strto*() or simple_strto*() combo in slightly different ways. Before doing conversions all over tree, let's get final API correct. Enter kstrtoull_from_user() and friends. Typical code which uses them looks very simple: TYPE val; int rv; rv = kstrtoTYPE_from_user(buf, count, 0, &val); if (rv < 0) return rv; [use val] return count; There is a tiny semantic difference from the plain kstrto*() API -- the latter allows any amount of leading zeroes, while the former copies data into buffer on stack and thus allows leading zeroes as long as it fits into buffer. This shouldn't be a problem for typical usecase "echo 42 > /proc/x". The point is to make reading one integer from userspace _very_ simple and very bug free. Signed-off-by: Alexey Dobriyan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a08aa355af18c53f17f499c1cc6e2af66a77ba9b Author: Ilia Mirkin Date: Tue May 24 17:13:30 2011 -0700 lru_cache: use correct type in sizeof for allocation This has no actual effect, since sizeof(struct hlist_head) == sizeof(struct hlist_head *), but it's still the wrong type to use. The semantic match that finds this problem: // @@ type T; identifier x; @@ T *x; ... * x = kzalloc(... * sizeof(T*) * ..., ...); // [akpm@linux-foundation.org: use kcalloc()] Signed-off-by: Ilia Mirkin Acked-by: Lars Ellenberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4440673a95e63ad888a41db596edaa0c55d3a332 Author: Uwe Kleine-König Date: Tue May 24 17:13:29 2011 -0700 leds: provide helper to register "leds-gpio" devices This function makes a deep copy of the platform data to allow it to live in init memory. For a kernel that supports several machines and so includes the definition for several leds-gpio devices this saves quite some memory because all but one definition can be free'd after boot. As the function is used by arch code it must be builtin and so cannot go into leds-gpio.c. [akpm@linux-foundation.org: s/CONFIG_LED_REGISTER_GPIO/CONFIG_LEDS_REGISTER_GPIO/] Signed-off-by: Uwe Kleine-König Cc: Russell King Acked-by: Richard Purdie Cc: Fabio Estevam Cc: Sascha Hauer Tested-by: H Hartley Sweeten Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9b2da53f7627304cd4030cb4883908bfb1bce998 Author: Shreshtha Kumar Sahu Date: Tue May 24 17:13:28 2011 -0700 drivers/leds/leds-lm3530.c: add regulator Add add regulator support to lm3530 driver. The lm3530 driver needs to get proper regulator during device probe and enable it before accessing the device. Also it disables the regulator in case of brightness == LED_OFF, and puts it back during driver removal. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Shreshtha Kumar Sahu Cc: Lee Jones Cc: Shreshtha Kumar Sahu Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 402f758813f5b3c21de36e9f720aacc8972ca94e Author: Vasily Khoruzhick Date: Tue May 24 17:13:27 2011 -0700 leds: remove the leds-h1940 driver The H1940 machine now uses leds-gpio and leds-h1940 has no users anymore. Signed-off-by: Vasily Khoruzhick Cc: "Arnaud Patard (Rtp)" Cc: Ben Dooks Cc: Richard Purdie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3dbf622c153390dc3b038a23fb2847a4a607a802 Author: Jan Weitzel Date: Tue May 24 17:13:26 2011 -0700 drivers/leds/leds-pca9532.c: add support pca9530, pca9531 and pca9533 The pca953x family are only different in number of leds and register layout Adding chipinfo to use driver with whole pca953x family Rename driver to pca953x, but left files and platformflags named pca9532. Tested with pca9530 and pca9533 Tested-by: Juergen Kilb Signed-off-by: Jan Weitzel Acked-by: Joachim Eastwood Tested-by: Joachim Eastwood Cc: Wolfram Sang Cc: H Hartley Sweeten Cc: Richard Purdie Cc: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3c1ab50d0a31b27bb4e55168f4901dd91e6e5ea4 Author: Joachim Eastwood Date: Tue May 24 17:13:23 2011 -0700 drivers/leds/leds-pca9532.c: add gpio capability Allow unused leds on pca9532 to be used as gpio. The board I am working on now has no less than 6 pca9532 chips. One chips is used for only leds, one has 14 leds and 2 gpio and the rest of the chips are gpio only. There is also one board in mainline which could use this capabilty; arch/arm/mach-iop32x/n2100.c 232 { .type = PCA9532_TYPE_NONE }, /* power OFF gpio */ 233 { .type = PCA9532_TYPE_NONE }, /* reset gpio */ This patch defines a new pin type, PCA9532_TYPE_GPIO, and registers a gpiochip if any pin has this type set. The gpio will registers all chip pins but will filter on gpio_request. [randy.dunlap@oracle.com: fix build when GPIOLIB is not enabled] Signed-off-by: Joachim Eastwood Reviewed-by: Wolfram Sang Reviewed-by: H Hartley Sweeten Cc: Richard Purdie Cc: Grant Likely Signed-off-by: Randy Dunlap Cc: Jan Weitzel Cc: Juergen Kilb Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fff26f8141145e01eae8f4d6e642ac8a0d500158 Author: Esben Haabendal Date: Tue May 24 17:13:22 2011 -0700 leds: support automatic start of blinking with ledtrig-timer By setting initial values blink_delay_on and blink_delay_off in a led_classdev struct, this change starts the blinking when the led is initialized. With this patch, you can initialize blink_delay_on and blink_delay_off in led_classdev with default_trigger set to "timer", and the led will start up blinking. The current ledtrig-timer implementation ignores any initial blink_delay_on/blink_delay_off settings, and requires setting blink_delay_on/blink_delay_off (typically from userspace) before the led blinks. Signed-off-by: Esben Haabendal Cc: Richard Purdie Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5ff77428e55c152ef75a6967f3266db79926fbde Author: Joe Perches Date: Tue May 24 17:13:22 2011 -0700 MAINTAINERS: orphan DMFE, move Tobias Ringstrom to CREDITS Tobias's email bounces and he hasn't submitted or acked a patch in git history. Signed-off-by: Joe Perches Cc: David Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8007798f55523940bee14fb0cb2d798a2531c827 Author: Lucian Adrian Grijincu Date: Tue May 24 17:13:21 2011 -0700 MAINTAINERS: remove stale reference to Chris Wright's LSM tree This tree hasn't been updated since June 2008. Signed-off-by: Lucian Adrian Grijincu Acked-by: Chris Wright Cc: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 162a7e7500f9664636e649ba59defe541b7c2c60 Author: Mike Travis Date: Tue May 24 17:13:20 2011 -0700 printk: allocate kernel log buffer earlier On larger systems, because of the numerous ACPI, Bootmem and EFI messages, the static log buffer overflows before the larger one specified by the log_buf_len param is allocated. Minimize the overflow by allocating the new log buffer as soon as possible. On kernels without memblock, a later call to setup_log_buf from kernel/init.c is the fallback. [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix CONFIG_PRINTK=n build] Signed-off-by: Mike Travis Cc: Yinghai Lu Cc: "H. Peter Anvin" Cc: Jack Steiner Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 95dde501907b06e7203c74f8435acfdab9eb2659 Author: Yinghai Lu Date: Tue May 24 17:13:19 2011 -0700 memblock: add error return when CONFIG_HAVE_MEMBLOCK is not set On larger systems, information in the kernel log is lost because there is so much early text printed, that it overflows the static log buffer before the log_buf_len kernel parameter can be processed, and a bigger log buffer allocated. Distros are relunctant to increase memory usage by increasing the size of the static log buffer, so minimize the problem by allocating the new log buffer as early as possible. This patch: Add an error return if CONFIG_HAVE_MEMBLOCK is not set instead of having to add #ifdef CONFIG_HAVE_MEMBLOCK around blocks of code calling that function. Signed-off-by: Mike Travis Cc: Yinghai Lu Cc: "H. Peter Anvin" Cc: Jack Steiner Cc: Thomas Gleixner Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d9be9b90d6dc5e712ca5d6109691a8de753ce7f1 Author: Jan Beulich Date: Tue May 24 17:13:18 2011 -0700 lib/vsprintf.c: fix interaction of kasprintf() and vsnprintf() when using %pV Otherwise, the warning at the top of vsnprintf() gets triggered by kvasprintf()'s first invocation (with NULL buffer and zero size) of vsnprintf(). Signed-off-by: Jan Beulich Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 746a2a838deec3ef86ef6b7c3edd4207b9a351aa Author: KOSAKI Motohiro Date: Tue May 24 17:13:17 2011 -0700 sparse: Undef __compiletime_{warning,error} if __CHECKER__ is defined sparse can't parse warning and error attribute. then they should be hidden from sparse. Signed-off-by: KOSAKI Motohiro Cc: Arjan van de Ven Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5bd7e6a30e1eb38f58f0046c0cd42dfc38e90d64 Author: KOSAKI Motohiro Date: Tue May 24 17:13:17 2011 -0700 sparse: define __must_be_array() for __CHECKER__ commit c5e631cf65f ("ARRAY_SIZE: check for type") added __must_be_array(). But sparse can't parse this gcc extention. Now make C=2 makes following sparse errors a lot. kernel/futex.c:2699:25: error: No right hand side of '+'-expression Because __must_be_array() is used for ARRAY_SIZE() macro and it is used very widely. This patch fixes it. Signed-off-by: KOSAKI Motohiro Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 903c0c7cdc21f2ccb7562a7bbc70289c0c2b16ad Author: KOSAKI Motohiro Date: Tue May 24 17:13:16 2011 -0700 sparse: define dummy BUILD_BUG_ON definition for sparse BUILD_BUG_ON() causes a syntax error to detect coding errors. So it causes sparse to detect an error too. This reduces sparse's usefulness. This patch makes a dummy BUILD_BUG_ON() definition for sparse. Signed-off-by: KOSAKI Motohiro Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d2b463135f84d15808163cd15638b108e323d3e7 Author: Andrew Worsley Date: Tue May 24 17:13:15 2011 -0700 init/calibrate.c: fix for critical bogoMIPS intermittent calculation failure A fix to the TSC (Time Stamp Counter) based bogoMIPS calculation used on secondary CPUs which has two faults: 1: Not handling wrapping of the lower 32 bits of the TSC counter on 32bit kernel - perhaps TSC is not reset by a warm reset? 2: TSC and Jiffies are no incrementing together properly. Either jiffies increment too quickly or Time Stamp Counter isn't incremented in during an SMI but the real time clock is and jiffies are incremented. Case 1 can result in a factor of 16 too large a value which makes udelay() values too small and can cause mysterious driver errors. Case 2 appears to give smaller 10-15% errors after averaging but enough to cause occasional failures on my own board I have tested this code on my own branch and attach patch suitable for current kernel code. See below for examples of the failures and how the fix handles these situations now. I reported this issue earlier here: Intermittent problem with BogoMIPs calculation on Intel AP CPUs - http://marc.info/?l=linux-kernel&m=129947246316875&w=4 I suspect this issue has been seen by others but as it is intermittent and bogoMIPS for secondary CPUs are no longer printed out it might have been difficult to identify this as the cause. Perhaps these unresolved issues, although quite old, might be relevant as possibly this fault has been around for a while. In particular Case 1 may only be relevant to 32bit kernels on newer HW (most people run 64bit kernels?). Case 2 is less dramatic since the earlier fix in this area and also intermittent. Re: bogomips discrepancy on Intel Core2 Quad CPU - http://marc.info/?l=linux-kernel&m=118929277524298&w=4 slow system and bogus bogomips - http://marc.info/?l=linux-kernel&m=116791286716107&w=4 Re: Re: [RFC-PATCH] clocksource: update lpj if clocksource has - http://marc.info/?l=linux-kernel&m=128952775819467&w=4 This issue is masked a little by commit feae3203d711db0a ("timers, init: Limit the number of per cpu calibration bootup messages") which only prints out the first bogoMIPS value making it much harder to notice other values differing. Perhaps it should be changed to only suppress them when they are similar values? Here are some outputs showing faults occurring and the new code handling them properly. See my earlier message for examples of the original failure. Case 1: A Time Stamp Counter wrap: ... Calibrating delay loop (skipped), value calculated using timer frequency.. 6332.70 BogoMIPS (lpj=31663540) .... calibrate_delay_direct() timer_rate_max=31666493 timer_rate_min=31666151 pre_start=4170369255 pre_end=4202035539 calibrate_delay_direct() timer_rate_max=2425955274 timer_rate_min=2425954941 pre_start=4265368533 pre_end=2396356387 calibrate_delay_direct() ignoring timer_rate as we had a TSC wrap around start=4265368581 >=post_end=2396356511 calibrate_delay_direct() timer_rate_max=31666274 timer_rate_min=31665942 pre_start=2440373374 pre_end=2472039515 calibrate_delay_direct() timer_rate_max=31666492 timer_rate_min=31666160 pre_start=2535372139 pre_end=2567038422 calibrate_delay_direct() timer_rate_max=31666455 timer_rate_min=31666207 pre_start=2630371084 pre_end=2662037415 Calibrating delay using timer specific routine.. 6333.28 BogoMIPS (lpj=31666428) Total of 2 processors activated (12665.99 BogoMIPS). .... Case 2: Some thing (presumably the SMM interrupt?) causing the very low increase in TSC counter for the DELAY_CALIBRATION_TICKS increase in jiffies ... Calibrating delay loop (skipped), value calculated using timer frequency.. 6333.25 BogoMIPS (lpj=31666270) ... calibrate_delay_direct() timer_rate_max=31666483 timer_rate_min=31666074 pre_start=4199536526 pre_end=4231202809 calibrate_delay_direct() timer_rate_max=864348 timer_rate_min=864016 pre_start=2405343672 pre_end=2406207897 calibrate_delay_direct() timer_rate_max=31666483 timer_rate_min=31666179 pre_start=2469540464 pre_end=2501206823 calibrate_delay_direct() timer_rate_max=31666511 timer_rate_min=31666122 pre_start=2564539400 pre_end=2596205712 calibrate_delay_direct() timer_rate_max=31666084 timer_rate_min=31665685 pre_start=2659538782 pre_end=2691204657 calibrate_delay_direct() dropping min bogoMips estimate 1 = 864348 Calibrating delay using timer specific routine.. 6333.27 BogoMIPS (lpj=31666390) Total of 2 processors activated (12666.53 BogoMIPS). ... After 70 boots I saw 2 variations <1% slip through [akpm@linux-foundation.org: coding-style fixes] [akpm@linux-foundation.org: fix straggly printk mess] Signed-off-by: Andrew Worsley Reviewed-by: Phil Carmody Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1dbe39424a43e56a6c9aed12661192af51dcdb9f Author: Eric Paris Date: Tue May 24 17:13:13 2011 -0700 xattr.h: expose string defines to userspace af4f136056c9 ("security: move LSM xattrnames to xattr.h") moved the XATTR_CAPS_SUFFIX define from capability.h to xattr.h. This makes sense except it was previously exports to userspace but xattr.h does not export it to userspace. This patch exports these headers to userspace to fix the ABI regression. There is some slight possibility that this will cause problems in other applications which used these #defines differently (wrongly) and I could JUST export the capabilities xattr name that we broke. Does anyonehave an idea how exposing these headers could cause a problem? Below is what is being exposed to userspace, included here since it isn't clear exactly what is going to be made available from the patch. /* Namespaces */ #define XATTR_OS2_PREFIX "os2." #define XATTR_OS2_PREFIX_LEN (sizeof (XATTR_OS2_PREFIX) - 1) #define XATTR_SECURITY_PREFIX "security." #define XATTR_SECURITY_PREFIX_LEN (sizeof (XATTR_SECURITY_PREFIX) - 1) #define XATTR_SYSTEM_PREFIX "system." #define XATTR_SYSTEM_PREFIX_LEN (sizeof (XATTR_SYSTEM_PREFIX) - 1) #define XATTR_TRUSTED_PREFIX "trusted." #define XATTR_TRUSTED_PREFIX_LEN (sizeof (XATTR_TRUSTED_PREFIX) - 1) #define XATTR_USER_PREFIX "user." #define XATTR_USER_PREFIX_LEN (sizeof (XATTR_USER_PREFIX) - 1) /* Security namespace */ #define XATTR_SELINUX_SUFFIX "selinux" #define XATTR_NAME_SELINUX XATTR_SECURITY_PREFIX XATTR_SELINUX_SUFFIX #define XATTR_SMACK_SUFFIX "SMACK64" #define XATTR_SMACK_IPIN "SMACK64IPIN" #define XATTR_SMACK_IPOUT "SMACK64IPOUT" #define XATTR_NAME_SMACK XATTR_SECURITY_PREFIX XATTR_SMACK_SUFFIX #define XATTR_NAME_SMACKIPIN XATTR_SECURITY_PREFIX XATTR_SMACK_IPIN #define XATTR_NAME_SMACKIPOUT XATTR_SECURITY_PREFIX XATTR_SMACK_IPOUT #define XATTR_CAPS_SUFFIX "capability" #define XATTR_NAME_CAPS XATTR_SECURITY_PREFIX XATTR_CAPS_SUFFIX Reported-by: Ozan Çaglayan Signed-off-by: Eric Paris Cc: Mimi Zohar Cc: Serge Hallyn Cc: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4b060420a596095869a6d7849caa798d23839cd1 Author: Mike Travis Date: Tue May 24 17:13:12 2011 -0700 bitmap, irq: add smp_affinity_list interface to /proc/irq Manually adjusting the smp_affinity for IRQ's becomes unwieldy when the cpu count is large. Setting smp affinity to cpus 256 to 263 would be: echo 000000ff,00000000,00000000,00000000,00000000,00000000,00000000,00000000 > smp_affinity instead of: echo 256-263 > smp_affinity_list Think about what it looks like for cpus around say, 4088 to 4095. We already have many alternate "list" interfaces: /sys/devices/system/cpu/cpuX/indexY/shared_cpu_list /sys/devices/system/cpu/cpuX/topology/thread_siblings_list /sys/devices/system/cpu/cpuX/topology/core_siblings_list /sys/devices/system/node/nodeX/cpulist /sys/devices/pci***/***/local_cpulist Add a companion interface, smp_affinity_list to use cpu lists instead of cpu maps. This conforms to other companion interfaces where both a map and a list interface exists. This required adding a bitmap_parselist_user() function in a manner similar to the bitmap_parse_user() function. [akpm@linux-foundation.org: make __bitmap_parselist() static] Signed-off-by: Mike Travis Cc: Thomas Gleixner Cc: Jack Steiner Cc: Lee Schermerhorn Cc: Andy Shevchenko Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e50c1f609c63223adaa38f5a79b18759a00adf72 Author: Amerigo Wang Date: Tue May 24 17:13:11 2011 -0700 fscache: remove dead code under CONFIG_WORKQUEUE_DEBUGFS There is no CONFIG_WORKQUEUE_DEBUGFS any more, so this code is dead. Signed-off-by: WANG Cong Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit dbee8a0affd5e6eaa5d7c816c4bc233f6f110f50 Author: Roland Dreier Date: Tue May 24 17:13:09 2011 -0700 x86: remove 32-bit versions of readq()/writeq() The presense of a writeq() implementation on 32-bit x86 that splits the 64-bit write into two 32-bit writes turns out to break the mpt2sas driver (and in general is risky for drivers as was discussed in ). To fix this, revert 2c5643b1c5c7 ("x86: provide readq()/writeq() on 32-bit too") and follow-on cleanups. This unfortunately leads to pushing non-atomic definitions of readq() and write() to various x86-only drivers that in the meantime started using the definitions in the x86 version of . However as discussed exhaustively, this is actually the right thing to do, because the right way to split a 64-bit transaction is hardware dependent and therefore belongs in the hardware driver (eg mpt2sas needs a spinlock to make sure no other accesses occur in between the two halves of the access). Build tested on 32- and 64-bit x86 allmodconfig. Link: http://lkml.kernel.org/r/x86-32-writeq-is-broken@mdm.bga.com Acked-by: Hitoshi Mitake Cc: Kashyap Desai Cc: Len Brown Cc: Ravi Anand Cc: Vikas Chaudhary Cc: Matthew Garrett Cc: Jason Uhlenkott Acked-by: James Bottomley Acked-by: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 818b667ba57f68bf1e7240fa441dda0b11e6b944 Author: Stephen Boyd Date: Tue May 24 17:13:08 2011 -0700 Remove unused PROC_CHANGE_PENALTY constant This constant hasn't been used since before the git era (2.6.12) and thus can be dropped. Signed-off-by: Stephen Boyd Cc: Russell King Cc: Richard Weinberger Cc: Hirokazu Takata Cc: Kyle McMartin Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 21b7d815b2cc380929181e1a4a7129e8b569e574 Author: Wanlong Gao Date: Tue May 24 17:13:06 2011 -0700 include/linux/c2port.h: remove wrong and never used macros The macro to_class_dev() uses the deprecated structure class_device, and the c2port_device has no member named class in the definition of the macro to_c2port_device. Signed-off-by: Wanlong Gao Cc: Rodolfo Giometti Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ac1ee0bfec2a4ad118f907ce586d0dfd8db7641 Author: Tim Gardner Date: Tue May 24 17:13:05 2011 -0700 ulimit: raise default hard ulimit on number of files to 4096 Apps are increasingly using more than 1024 file descriptors. See discussion in several distro bug trackers, e.g. BugLink: http://bugs.launchpad.net/bugs/663090 https://issues.rpath.com/browse/RPL-2054 You don't want to raise the default soft limit, since that might break apps that use select(), but it's safe to raise the default hard limit; that way, apps that know they need lots of file descriptors can raise their soft limit without needing root, and without user intervention. Ubuntu is doing this with a kernel change because they have a policy of not changing kernel defaults in userland. While 4096 might not be enough for *all* apps, it seems to be plenty for the apps I've seen lately that are unhappy with 1024. Signed-off-by: Tim Gardner Cc: Dan Kegel Cc: Al Viro Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit db271cf03f5fe39feab8e1b1818c0880c7290c5c Author: Richard Weinberger Date: Tue May 24 17:13:04 2011 -0700 um: fix crash while os_dump_core() os_dump_core() emits SIGTERM to terminate all UML processes. Kernel threads have to exit on SIGTERM instead of calling last_ditch_exit(). Multiple calls to last_ditch_exit() can cause a crash. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 607647ab04cb7c23616fb5c5dc8bad86f410226d Author: Richard Weinberger Date: Tue May 24 17:13:03 2011 -0700 um: include linux/prefetch.h Fix build failures on UML. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3ef6130ab25a9db6627212d2f6859cc7fc0427ed Author: Richard Weinberger Date: Tue May 24 17:13:03 2011 -0700 um: print info about fatal segfaults Print a short info about fatal segfaults like other archs do. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4ff4d8d342fe25c4d1106fb0ffdd310a43d0ace0 Author: Nolan Leake Date: Tue May 24 17:13:02 2011 -0700 um: add ucast ethernet transport The ucast transport is similar to the mcast transport (and, in fact, shares most of its code), only it uses UDP unicast to move packets. Obviously this is only useful for point-to-point connections between virtual ethernet devices. Signed-off-by: Nolan Leake Signed-off-by: Richard Weinberger Cc: David Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d634f194d4e2e58d57927c812aca097e67a2287d Author: Richard Weinberger Date: Tue May 24 17:13:01 2011 -0700 um: add earlyprintk support User Mode Linux can also benefit from earlyprintk. UML's earlyprintk writes kernel messages directly to stdout. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2525e70d492f8c7bbe1292db8fcd973607a56ac6 Author: Richard Weinberger Date: Tue May 24 17:13:00 2011 -0700 um: remove SIGHUP handler The UML kernel ignores SIGHUP anyway. This handler is in vain. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0ce451acb1872eab0fcf22753f93f51567e812fa Author: Richard Weinberger Date: Tue May 24 17:13:00 2011 -0700 um: fix UML_LIB_PATH UML_LIB_PATH is hardcoded to /usr/lib/uml/, on 64bit systems UML_LIB_PATH needs to be /usr/lib64/uml/. Signed-off-by: Richard Weinberger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8aebe21e0f805b9c411a51e716bb34aa61c0cad6 Author: KOSAKI Motohiro Date: Tue May 24 17:12:59 2011 -0700 cris: convert old cpumask API into new one Adapt to the new API. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KOSAKI Motohiro Cc: Mikael Starvik Cc: Jesper Nilsson Cc: Thiago Farina Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8ea9716fd6aa761482caa5d4d64b256ed07ac09f Author: KOSAKI Motohiro Date: Tue May 24 17:12:58 2011 -0700 mn10300: convert old cpumask API into new one Adapt to the new API. We plan to remove old cpumask APIs later. Thus this patch converts them into the new one. Signed-off-by: KOSAKI Motohiro Cc: David Howells Cc: Koichi Yasutake Cc: Hugh Dickins Cc: Chris Metcalf Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81ee42baa433881bcb471aa6366e2f885a33f2fb Author: Mark Brown Date: Tue May 24 17:12:57 2011 -0700 alpha: hook up gpiolib support Allow people to use gpiolib on Alpha if they want to, mostly for build coverage. The header is a stright copy of that for Microblaze, which in turn was taken from PowerPC. [akpm@linux-foundation.org: define GENERIC_GPIO] Signed-off-by: Mark Brown Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Acked-by: Grant Likely Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 81740fc6b2144f5d197affb10f3c4062fddf21e4 Author: KOSAKI Motohiro Date: Tue May 24 17:12:56 2011 -0700 alpha: replace with new cpumask APIs We plan to remove cpu_xx() old APIs. Thus convert them. This patch has no functional change. Signed-off-by: KOSAKI Motohiro Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f67d9b1576c1c6e02100f8b27f4e9d66bbeb4d49 Author: Bob Liu Date: Tue May 24 17:12:56 2011 -0700 nommu: add page alignment to mmap Currently on nommu arch mmap(),mremap() and munmap() doesn't do page_align() which isn't consist with mmu arch and cause some issues. First, some drivers' mmap() function depends on vma->vm_end - vma->start is page aligned which is true on mmu arch but not on nommu. eg: uvc camera driver. Second munmap() may return -EINVAL[split file] error in cases when end is not page aligned(passed into from userspace) but vma->vm_end is aligned dure to split or driver's mmap() ops. Add page alignment to fix those issues. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Bob Liu Cc: David Howells Cc: Paul Mundt Cc: Greg Ungerer Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit eb709b0d062efd653a61183af8e27b2711c3cf5c Author: Shaohua Li Date: Tue May 24 17:12:55 2011 -0700 mm: batch activate_page() to reduce lock contention The zone->lru_lock is heavily contented in workload where activate_page() is frequently used. We could do batch activate_page() to reduce the lock contention. The batched pages will be added into zone list when the pool is full or page reclaim is trying to drain them. For example, in a 4 socket 64 CPU system, create a sparse file and 64 processes, processes shared map to the file. Each process read access the whole file and then exit. The process exit will do unmap_vmas() and cause a lot of activate_page() call. In such workload, we saw about 58% total time reduction with below patch. Other workloads with a lot of activate_page also benefits a lot too. Andrew Morton suggested activate_page() and putback_lru_pages() should follow the same path to active pages, but this is hard to implement (see commit 7a608572a282a ("Revert "mm: batch activate_page() to reduce lock contention")). On the other hand, do we really need putback_lru_pages() to follow the same path? I tested several FIO/FFSB benchmark (about 20 scripts for each benchmark) in 3 machines here from 2 sockets to 4 sockets. My test doesn't show anything significant with/without below patch (there is slight difference but mostly some noise which we found even without below patch before). Below patch basically returns to the same as my first post. I tested some microbenchmarks: case-anon-cow-rand-mt 0.58% case-anon-cow-rand -3.30% case-anon-cow-seq-mt -0.51% case-anon-cow-seq -5.68% case-anon-r-rand-mt 0.23% case-anon-r-rand 0.81% case-anon-r-seq-mt -0.71% case-anon-r-seq -1.99% case-anon-rx-rand-mt 2.11% case-anon-rx-seq-mt 3.46% case-anon-w-rand-mt -0.03% case-anon-w-rand -0.50% case-anon-w-seq-mt -1.08% case-anon-w-seq -0.12% case-anon-wx-rand-mt -5.02% case-anon-wx-seq-mt -1.43% case-fork 1.65% case-fork-sleep -0.07% case-fork-withmem 1.39% case-hugetlb -0.59% case-lru-file-mmap-read-mt -0.54% case-lru-file-mmap-read 0.61% case-lru-file-mmap-read-rand -2.24% case-lru-file-readonce -0.64% case-lru-file-readtwice -11.69% case-lru-memcg -1.35% case-mmap-pread-rand-mt 1.88% case-mmap-pread-rand -15.26% case-mmap-pread-seq-mt 0.89% case-mmap-pread-seq -69.72% case-mmap-xread-rand-mt 0.71% case-mmap-xread-seq-mt 0.38% The most significent are: case-lru-file-readtwice -11.69% case-mmap-pread-rand -15.26% case-mmap-pread-seq -69.72% which use activate_page a lot. others are basically variations because each run has slightly difference. In UP case, 'size mm/swap.o' before the two patches: text data bss dec hex filename 6466 896 4 7366 1cc6 mm/swap.o after the two patches: text data bss dec hex filename 6343 896 4 7243 1c4b mm/swap.o Signed-off-by: Shaohua Li Cc: KOSAKI Motohiro Cc: Hiroyuki Kamezawa Cc: Andi Kleen Cc: Minchan Kim Cc: Rik van Riel Cc: Mel Gorman Cc: Johannes Weiner Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f68aa5b445fd00b67588ade611a4efb1a34dadb4 Author: Mike Frysinger Date: Tue May 24 17:12:53 2011 -0700 asm-generic/cacheflush.h: flush icache when copying to user pages The copy_to_user_page() function is supposed to flush the icache on the memory that was written, but the current asm-generic version lacks that logic. While normally it isn't a big deal as the asm-generic version of icache flushing is a stub, it is a deal for ports that want to use the asm-generic version as a baseline and then overlay its own specific parts (like icache flushing). Signed-off-by: Mike Frysinger Cc: Arnd Bergmann Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit cfa54a0fcfc1017c6f122b6f21aaba36daa07f71 Author: Andrew Barry Date: Tue May 24 17:12:52 2011 -0700 mm/page_alloc.c: prevent unending loop in __alloc_pages_slowpath() I believe I found a problem in __alloc_pages_slowpath, which allows a process to get stuck endlessly looping, even when lots of memory is available. Running an I/O and memory intensive stress-test I see a 0-order page allocation with __GFP_IO and __GFP_WAIT, running on a system with very little free memory. Right about the same time that the stress-test gets killed by the OOM-killer, the utility trying to allocate memory gets stuck in __alloc_pages_slowpath even though most of the systems memory was freed by the oom-kill of the stress-test. The utility ends up looping from the rebalance label down through the wait_iff_congested continiously. Because order=0, __alloc_pages_direct_compact skips the call to get_page_from_freelist. Because all of the reclaimable memory on the system has already been reclaimed, __alloc_pages_direct_reclaim skips the call to get_page_from_freelist. Since there is no __GFP_FS flag, the block with __alloc_pages_may_oom is skipped. The loop hits the wait_iff_congested, then jumps back to rebalance without ever trying to get_page_from_freelist. This loop repeats infinitely. The test case is pretty pathological. Running a mix of I/O stress-tests that do a lot of fork() and consume all of the system memory, I can pretty reliably hit this on 600 nodes, in about 12 hours. 32GB/node. Signed-off-by: Andrew Barry Signed-off-by: Minchan Kim Reviewed-by: Rik van Riel Acked-by: Mel Gorman Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a539f3533b78e39a22723d6d3e1e11b6c14454d9 Author: Daniel Kiper Date: Tue May 24 17:12:51 2011 -0700 mm: add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro Add SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macro which aligns given pfn to upper section and lower section boundary accordingly. Required for the latest memory hotplug support for the Xen balloon driver. Signed-off-by: Daniel Kiper Reviewed-by: Konrad Rzeszutek Wilk David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a2c8990aed5ab000491732b07c8c4465d1b389b8 Author: Michal Hocko Date: Tue May 24 17:12:50 2011 -0700 memsw: remove noswapaccount kernel parameter The noswapaccount parameter has been deprecated since 2.6.38 without any complaints from users so we can remove it. swapaccount=0|1 can be used instead. As we are removing the parameter we can also clean up swapaccount because it doesn't have to accept an empty string anymore (to match noswapaccount) and so we can push = into __setup macro rather than checking "=1" resp. "=0" strings Signed-off-by: Michal Hocko Cc: Hiroyuki Kamezawa Cc: Daisuke Nishimura Cc: Balbir Singh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5b52fc890bece77bffb9fade69239f71384ef02b Author: Stephen Wilson Date: Tue May 24 17:12:49 2011 -0700 proc: allocate storage for numa_maps statistics once In show_numa_map() we collect statistics into a numa_maps structure. Since the number of NUMA nodes can be very large, this structure is not a candidate for stack allocation. Instead of going thru a kmalloc()+kfree() cycle each time show_numa_map() is invoked, perform the allocation just once when /proc/pid/numa_maps is opened. Performing the allocation when numa_maps is opened, and thus before a reference to the target tasks mm is taken, eliminates a potential stalemate condition in the oom-killer as originally described by Hugh Dickins: ... imagine what happens if the system is out of memory, and the mm we're looking at is selected for killing by the OOM killer: while we wait in __get_free_page for more memory, no memory is freed from the selected mm because it cannot reach exit_mmap while we hold that reference. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f2beb7983613ecca20a61604f01ab50cc7a797e6 Author: Stephen Wilson Date: Tue May 24 17:12:48 2011 -0700 proc: make struct proc_maps_private truly private Now that mm/mempolicy.c is no longer implementing /proc/pid/numa_maps there is no need to export struct proc_maps_private to the world. Move it to fs/proc/internal.h instead. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f69ff943df6972aae96c10733b6847fa094d8a59 Author: Stephen Wilson Date: Tue May 24 17:12:47 2011 -0700 mm: proc: move show_numa_map() to fs/proc/task_mmu.c Moving show_numa_map() from mempolicy.c to task_mmu.c solves several issues. - Having the show() operation "miles away" from the corresponding seq_file iteration operations is a maintenance burden. - The need to export ad hoc info like struct proc_maps_private is eliminated. - The implementation of show_numa_map() can be improved in a simple manner by cooperating with the other seq_file operations (start, stop, etc) -- something that would be messy to do without this change. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13057efb0a0063eb8042d99093ec88a52c4f1593 Author: Stephen Wilson Date: Tue May 24 17:12:46 2011 -0700 mm: declare mpol_to_str() when CONFIG_TMPFS=n When CONFIG_TMPFS=n mpol_to_str() is not declared in mempolicy.h. However, in the NUMA case, the definition is always compiled. Since it is not strictly true that tmpfs is the only client, and since the symbol was always lurking around anyways, export mpol_to_str() unconditionally. Furthermore, this will allow us to move show_numa_map() out of mempolicy.c and into the procfs subsystem. Signed-off-by: Stephen Wilson Cc: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9840e37239183a947a15d617c67e418c6e505dd8 Author: Stephen Wilson Date: Tue May 24 17:12:45 2011 -0700 mm: remove check_huge_range() This function has been superseded by gather_hugetbl_stats() and is no longer needed. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 722e2ee09b8dfc2ac5eedb802dc0d227702df084 Author: Stephen Wilson Date: Tue May 24 17:12:44 2011 -0700 mm: make gather_stats() type-safe and remove forward declaration Improve the prototype of gather_stats() to take a struct numa_maps as argument instead of a generic void *. Update all callers to make the required type explicit. Since gather_stats() is not needed before its definition and is scheduled to be moved out of mempolicy.c the declaration is removed as well. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b1f72d1857bb0de19ce20a59f3f85e6dc47bdec8 Author: Stephen Wilson Date: Tue May 24 17:12:43 2011 -0700 mm: remove MPOL_MF_STATS Mapping statistics in a NUMA environment is now computed using the generic walk_page_range() logic. Remove the old/equivalent functionality. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 29ea2f6982f1edc4302729116f2246dd7b45471d Author: Stephen Wilson Date: Tue May 24 17:12:42 2011 -0700 mm: use walk_page_range() instead of custom page table walking code Converting show_numa_map() to use the generic routine decouples the function from mempolicy.c, allowing it to be moved out of the mm subsystem and into fs/proc. Also, include KSM pages in /proc/pid/numa_maps statistics. The pagewalk logic implemented by check_pte_range() failed to account for such pages as they were not applicable to the page migration case. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d98f6cb67fb5b9376d4957d7ba9f32eac35c2e08 Author: Stephen Wilson Date: Tue May 24 17:12:41 2011 -0700 mm: export get_vma_policy() In commit 48fce3429d ("mempolicies: unexport get_vma_policy()") get_vma_policy() was marked static as all clients were local to mempolicy.c. However, the decision to generate /proc/pid/numa_maps in the numa memory policy code and outside the procfs subsystem introduces an artificial interdependency between the two systems. Exporting get_vma_policy() once again is the first step to clean up this interdependency. Signed-off-by: Stephen Wilson Reviewed-by: KOSAKI Motohiro Cc: Hugh Dickins Cc: David Rientjes Cc: Lee Schermerhorn Cc: Alexey Dobriyan Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c856507f2b2b47a49d8587afb58930b463f6bff4 Author: Hugh Dickins Date: Tue May 24 17:12:40 2011 -0700 mm: remove last trace of shmem_get_unmapped_area Remove noMMU declaration of shmem_get_unmapped_area() from mm.h: it fell out of use in 2.6.21 and ceased to exist in 2.6.29. Signed-off-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b09e0fa4b4ea66266058eead43350bd7d55fec67 Author: Eric Paris Date: Tue May 24 17:12:39 2011 -0700 tmpfs: implement generic xattr support Implement generic xattrs for tmpfs filesystems. The Feodra project, while trying to replace suid apps with file capabilities, realized that tmpfs, which is used on the build systems, does not support file capabilities and thus cannot be used to build packages which use file capabilities. Xattrs are also needed for overlayfs. The xattr interface is a bit odd. If a filesystem does not implement any {get,set,list}xattr functions the VFS will call into some random LSM hooks and the running LSM can then implement some method for handling xattrs. SELinux for example provides a method to support security.selinux but no other security.* xattrs. As it stands today when one enables CONFIG_TMPFS_POSIX_ACL tmpfs will have xattr handler routines specifically to handle acls. Because of this tmpfs would loose the VFS/LSM helpers to support the running LSM. To make up for that tmpfs had stub functions that did nothing but call into the LSM hooks which implement the helpers. This new patch does not use the LSM fallback functions and instead just implements a native get/set/list xattr feature for the full security.* and trusted.* namespace like a normal filesystem. This means that tmpfs can now support both security.selinux and security.capability, which was not previously possible. The basic implementation is that I attach a: struct shmem_xattr { struct list_head list; /* anchored by shmem_inode_info->xattr_list */ char *name; size_t size; char value[0]; }; Into the struct shmem_inode_info for each xattr that is set. This implementation could easily support the user.* namespace as well, except some care needs to be taken to prevent large amounts of unswappable memory being allocated for unprivileged users. [mszeredi@suse.cz: new config option, suport trusted.*, support symlinks] Signed-off-by: Eric Paris Signed-off-by: Miklos Szeredi Acked-by: Serge Hallyn Tested-by: Serge Hallyn Cc: Kyle McMartin Acked-by: Hugh Dickins Tested-by: Jordi Pujol Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4eb317072be81bd93906f768679f745bc574e6b7 Author: Yinghai Lu Date: Tue May 24 17:12:38 2011 -0700 memblock/nobootmem: remove unneeded code from alloc_bootmem_node_high() The bootmem wrapper with memblock supports top-down now, so we no longer need this trick. Signed-off-by: Yinghai LU Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Olaf Hering Cc: Tejun Heo Cc: Lucas De Marchi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 8bba154ef29e16331e578029e9050c74b87b7ff9 Author: Yinghai Lu Date: Tue May 24 17:12:37 2011 -0700 memblock/nobootmem: allow alloc_bootmem() to take 0 as low limit The bootmem wrapper with memblock supports top-down now, so we do not need to set the low limit to __pa(MAX_DMA_ADDRESS). The logic should be: good to allocate above __pa(MAX_DMA_ADDRESS), but it is ok if we can not find memory above 16M on system that has a small amount of RAM. Signed-off-by: Yinghai LU Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Olaf Hering Cc: Tejun Heo Cc: Lucas De Marchi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 172703b08cd05e2d5196ac13e94cc186f629d58b Author: Matt Fleming Date: Tue May 24 17:12:36 2011 -0700 mm: delete non-atomic mm counter implementation The problem with having two different types of counters is that developers adding new code need to keep in mind whether it's safe to use both the atomic and non-atomic implementations. For example, when adding new callers of the *_mm_counter() functions a developer needs to ensure that those paths are always executed with page_table_lock held, in case we're using the non-atomic implementation of mm counters. Hugh Dickins introduced the atomic mm counters in commit f412ac08c986 ("[PATCH] mm: fix rss and mmlist locking"). When asked why he left the non-atomic counters around he said, | The only reason was to avoid adding costly atomic operations into a | configuration that had no need for them there: the page_table_lock | sufficed. | | Certainly it would be simpler just to delete the non-atomic variant. | | And I think it's fair to say that any configuration on which we're | measuring performance to that degree (rather than "does it boot fast?" | type measurements), would already be going the split ptlocks route. Removing the non-atomic counters eases the maintenance burden because developers no longer have to mindful of the two implementations when using *_mm_counter(). Note that all architectures provide a means of atomically updating atomic_long_t variables, even if they have to revert to the generic spinlock implementation because they don't support 64-bit atomic instructions (see lib/atomic64.c). Signed-off-by: Matt Fleming Acked-by: Dave Hansen Acked-by: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a197b59ae6e8bee56fcef37ea2482dc08414e2ac Author: David Rientjes Date: Tue May 24 17:12:35 2011 -0700 mm: fail GFP_DMA allocations when ZONE_DMA is not configured The page allocator will improperly return a page from ZONE_NORMAL even when __GFP_DMA is passed if CONFIG_ZONE_DMA is disabled. The caller expects DMA memory, perhaps for ISA devices with 16-bit address registers, and may get higher memory resulting in undefined behavior. This patch causes the page allocator to return NULL in such circumstances with a warning emitted to the kernel log on the first occurrence. Signed-off-by: David Rientjes Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: KAMEZAWA Hiroyuki Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ba93fa81b5f2bf0076407a3a777fff122ce16220 Author: Daniel Kiper Date: Tue May 24 17:12:34 2011 -0700 mm: do not define PFN_SECTION_SHIFT if !CONFIG_SPARSEMEM Do not define PFN_SECTION_SHIFT if !CONFIG_SPARSEMEM. Signed-off-by: Daniel Kiper Acked-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e3c40f379a144f35e53864a2cd970e238071afd7 Author: Daniel Kiper Date: Tue May 24 17:12:33 2011 -0700 mm: pfn_to_section_nr()/section_nr_to_pfn() is valid only in CONFIG_SPARSEMEM context pfn_to_section_nr()/section_nr_to_pfn() is valid only in CONFIG_SPARSEMEM context. Move it to proper place. Signed-off-by: Daniel Kiper Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bf4e8902ee5080f5d2c810b639e7e778c8082b52 Author: Daniel Kiper Date: Tue May 24 17:12:32 2011 -0700 mm: enable set_page_section() only if CONFIG_SPARSEMEM and !CONFIG_SPARSEMEM_VMEMMAP set_page_section() is meaningful only in CONFIG_SPARSEMEM and !CONFIG_SPARSEMEM_VMEMMAP context. Move it to proper place and amend accordingly functions which are using it. Signed-off-by: Daniel Kiper Acked-by: Dave Hansen Acked-by: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a3bc42f584cf9024580adeb4031d4202dac05858 Author: Daniel Kiper Date: Tue May 24 17:12:31 2011 -0700 mm: remove dependency on CONFIG_FLATMEM from online_page() online_pages() is only compiled for CONFIG_MEMORY_HOTPLUG_SPARSE, so there is no need to support CONFIG_FLATMEM code within it. This patch removes code that is never used. Signed-off-by: Daniel Kiper Acked-by: Dave Hansen Acked-by: David Rientjes Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 821ed6bbed3cf41c4050a431eeb822b33868d36a Author: Minchan Kim Date: Tue May 24 17:12:31 2011 -0700 mm: filter unevictable page out in deactivate_page() It's pointless that deactive_page's operates on unevictable pages. This patch removes unnecessary overhead which might be a bit problem in case that there are many unevictable page in system(ex, mprotect workload) [akpm@linux-foundation.org: tidy up comment] Reviewed-by: KOSAKI Motohiro Signed-off-by: Minchan Kim Reviewed-by: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2cbea1d3ab11946885d37a2461072ee4d687cb4e Author: Wu Fengguang Date: Tue May 24 17:12:30 2011 -0700 readahead: trigger mmap sequential readahead on PG_readahead Previously the mmap sequential readahead is triggered by updating ra->prev_pos on each page fault and compare it with current page offset. It costs dirtying the cache line on each _minor_ page fault. So remove the ra->prev_pos recording, and instead tag PG_readahead to trigger the possible sequential readahead. It's not only more simple, but also will work more reliably and reduce cache line bouncing on concurrent page faults on shared struct file. In the mosbench exim benchmark which does multi-threaded page faults on shared struct file, the ra->mmap_miss and ra->prev_pos updates are found to cause excessive cache line bouncing on tmpfs, which actually disabled readahead totally (shmem_backing_dev_info.ra_pages == 0). So remove the ra->prev_pos recording, and instead tag PG_readahead to trigger the possible sequential readahead. It's not only more simple, but also will work more reliably on concurrent reads on shared struct file. Signed-off-by: Wu Fengguang Tested-by: Tim Chen Reported-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 207d04baa3591a354711e863dd90087fc75873b3 Author: Andi Kleen Date: Tue May 24 17:12:29 2011 -0700 readahead: reduce unnecessary mmap_miss increases The original INT_MAX is too large, reduce it to - avoid unnecessarily dirtying/bouncing the cache line - restore mmap read-around faster on changed access pattern Background: in the mosbench exim benchmark which does multi-threaded page faults on shared struct file, the ra->mmap_miss updates are found to cause excessive cache line bouncing on tmpfs. The ra state updates are needless for tmpfs because it actually disabled readahead totally (shmem_backing_dev_info.ra_pages == 0). Tested-by: Tim Chen Signed-off-by: Andi Kleen Signed-off-by: Wu Fengguang Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 275b12bf5486f6f531111fd3d7dbbf01df427cfe Author: Wu Fengguang Date: Tue May 24 17:12:28 2011 -0700 readahead: return early when readahead is disabled Reduce readahead overheads by returning early in do_sync_mmap_readahead(). tmpfs has ra_pages=0 and it can page fault really fast (not constraint by IO if not swapping). Signed-off-by: Wu Fengguang Tested-by: Tim Chen Reported-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1495f230fa7750479c79e3656286b9183d662077 Author: Ying Han Date: Tue May 24 17:12:27 2011 -0700 vmscan: change shrinker API by passing shrink_control struct Change each shrinker's API by consolidating the existing parameters into shrink_control struct. This will simplify any further features added w/o touching each file of shrinker. [akpm@linux-foundation.org: fix build] [akpm@linux-foundation.org: fix warning] [kosaki.motohiro@jp.fujitsu.com: fix up new shrinker API] [akpm@linux-foundation.org: fix xfs warning] [akpm@linux-foundation.org: update gfs2] Signed-off-by: Ying Han Cc: KOSAKI Motohiro Cc: Minchan Kim Acked-by: Pavel Emelyanov Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Acked-by: Rik van Riel Cc: Johannes Weiner Cc: Hugh Dickins Cc: Dave Hansen Cc: Steven Whitehouse Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a09ed5e00084448453c8bada4dcd31e5fbfc2f21 Author: Ying Han Date: Tue May 24 17:12:26 2011 -0700 vmscan: change shrink_slab() interfaces by passing shrink_control Consolidate the existing parameters to shrink_slab() into a new shrink_control struct. This is needed later to pass the same struct to shrinkers. Signed-off-by: Ying Han Cc: KOSAKI Motohiro Cc: Minchan Kim Acked-by: Pavel Emelyanov Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Acked-by: Rik van Riel Cc: Johannes Weiner Cc: Hugh Dickins Cc: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7b1de5868b124d8f399d8791ed30a9b679d64d4d Author: Wu Fengguang Date: Tue May 24 17:12:25 2011 -0700 readahead: readahead page allocations are OK to fail Pass __GFP_NORETRY|__GFP_NOWARN for readahead page allocations. readahead page allocations are completely optional. They are OK to fail and in particular shall not trigger OOM on themselves. Reported-by: Dave Young Reviewed-by: KOSAKI Motohiro Signed-off-by: Wu Fengguang Reviewed-by: Minchan Kim Reviewed-by: Pekka Enberg Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d3163ce86dd386b4f7bda80241d7fea2bc0bb1d Author: Arve Hjønnevåg Date: Tue May 24 17:12:24 2011 -0700 mm: check if any page in a pageblock is reserved before marking it MIGRATE_RESERVE This fixes a problem where the first pageblock got marked MIGRATE_RESERVE even though it only had a few free pages. eg, On current ARM port, The kernel starts at offset 0x8000 to leave room for boot parameters, and the memory is freed later. This in turn caused no contiguous memory to be reserved and frequent kswapd wakeups that emptied the caches to get more contiguous memory. Unfortunatelly, ARM needs order-2 allocation for pgd (see arm/mm/pgd.c#pgd_alloc()). Therefore the issue is not minor nor easy avoidable. [kosaki.motohiro@jp.fujitsu.com: added some explanation] [kosaki.motohiro@jp.fujitsu.com: add !pfn_valid_within() to check] [minchan.kim@gmail.com: check end_pfn in pageblock_is_reserved] Signed-off-by: John Stultz Signed-off-by: Arve Hjønnevåg Signed-off-by: KOSAKI Motohiro Acked-by: Mel Gorman Acked-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0091a47da0b720ca39511c7d90dcc768cafcaf58 Author: David Rientjes Date: Tue May 24 17:12:23 2011 -0700 m32r, mm: set all online nodes in N_NORMAL_MEMORY For m32r, N_NORMAL_MEMORY represents all nodes that have present memory since it does not support HIGHMEM. This patch sets the bit at the time the node is initialized. If N_NORMAL_MEMORY is not accurate, slub may encounter errors since it uses this nodemask to setup per-cache kmem_cache_node data structures. Signed-off-by: David Rientjes Cc: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ad8b4b28573cea3fca0cfa06aac00fe8bf04499a Author: David Rientjes Date: Tue May 24 17:12:22 2011 -0700 alpha, mm: set all online nodes in N_NORMAL_MEMORY For alpha, N_NORMAL_MEMORY represents all nodes that have present memory since it does not support HIGHMEM. This patch sets the bit at the time the node is initialized. If N_NORMAL_MEMORY is not accurate, slub may encounter errors since it uses this nodemask to setup per-cache kmem_cache_node data structures. Signed-off-by: David Rientjes Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 0c917313a8d84fcc0c376db3f7edb7c06f06f920 Author: Konstantin Khlebnikov Date: Tue May 24 17:12:21 2011 -0700 mm: strictly require elevated page refcount in isolate_lru_page() isolate_lru_page() must be called only with stable reference to the page, this is what is written in the comment above it, this is reasonable. current isolate_lru_page() users and its page extra reference sources: mm/huge_memory.c: __collapse_huge_page_isolate() - reference from pte mm/memcontrol.c: mem_cgroup_move_parent() - get_page_unless_zero() mem_cgroup_move_charge_pte_range() - reference from pte mm/memory-failure.c: soft_offline_page() - fixed, reference from get_any_page() delete_from_lru_cache() - reference from caller or get_page_unless_zero() [ seems like there bug, because __memory_failure() can call page_action() for hpages tail, but it is ok for isolate_lru_page(), tail getted and not in lru] mm/memory_hotplug.c: do_migrate_range() - fixed, get_page_unless_zero() mm/mempolicy.c: migrate_page_add() - reference from pte mm/migrate.c: do_move_page_to_node_array() - reference from follow_page() mlock.c: - various external references mm/vmscan.c: putback_lru_page() - reference from isolate_lru_page() It seems that all isolate_lru_page() users are ready now for this restriction. So, let's replace redundant get_page_unless_zero() with get_page() and add page initial reference count check with VM_BUG_ON() Signed-off-by: Konstantin Khlebnikov Cc: Andi Kleen Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Mel Gorman Cc: Lee Schermerhorn Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bd486285f24ac2fd1ff64688fb0729712c5712c4 Author: Konstantin Khlebnikov Date: Tue May 24 17:12:20 2011 -0700 mem-hwpoison: fix page refcount around isolate_lru_page() Drop first page reference only after calling isolate_lru_page() to keep page stable reference while isolating. Signed-off-by: Konstantin Khlebnikov Cc: Andi Kleen Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Mel Gorman Cc: Lee Schermerhorn Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 700c2a46e88265326764197d5b8842490bae5569 Author: Konstantin Khlebnikov Date: Tue May 24 17:12:19 2011 -0700 mem-hotplug: call isolate_lru_page with elevated refcount isolate_lru_page() must be called only with stable reference to page. So, let's grab normal page reference. Signed-off-by: Konstantin Khlebnikov Cc: Andi Kleen Cc: KAMEZAWA Hiroyuki Cc: KOSAKI Motohiro Cc: Mel Gorman Cc: Lee Schermerhorn Cc: Rik van Riel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 22943ab116af1ead4dc112ec408a93cf1365b34a Author: Dave Hansen Date: Tue May 24 17:12:18 2011 -0700 mm: print vmalloc() state after allocation failures I was tracking down a page allocation failure that ended up in vmalloc(). Since vmalloc() uses 0-order pages, if somebody asks for an insane amount of memory, we'll still get a warning with "order:0" in it. That's not very useful. During recovery, vmalloc() also nicely frees all of the memory that it got up to the point of the failure. That is wonderful, but it also quickly hides any issues. We have a much different sitation if vmalloc() repeatedly fails 10GB in to: vmalloc(100 * 1<<30); versus repeatedly failing 4096 bytes in to a: vmalloc(8192); This patch will print out messages that look like this: [ 68.123503] vmalloc: allocation failure, allocated 6680576 of 13426688 bytes [ 68.124218] bash: page allocation failure: order:0, mode:0xd2 [ 68.124811] Pid: 3770, comm: bash Not tainted 2.6.39-rc3-00082-g85f2e68-dirty #333 [ 68.125579] Call Trace: [ 68.125853] [] warn_alloc_failed+0x146/0x170 [ 68.126464] [] ? printk+0x6c/0x70 [ 68.126791] [] ? alloc_pages_current+0x94/0xe0 [ 68.127661] [] __vmalloc_node_range+0x237/0x290 ... The 'order' variable is added for clarity when calling warn_alloc_failed() to avoid having an unexplained '0' as an argument. The 'tmp_mask' is because adding an open-coded '| __GFP_NOWARN' would take us over 80 columns for the alloc_pages_node() call. If we are going to add a line, it might as well be one that makes the sucker easier to read. As a side issue, I also noticed that ctl_ioctl() does vmalloc() based solely on an unverified value passed in from userspace. Granted, it's under CAP_SYS_ADMIN, but it still frightens me a bit. Signed-off-by: Dave Hansen Cc: Johannes Weiner Cc: David Rientjes Cc: Michal Nazarewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a238ab5b0239575c179f4976064192c3f7409dad Author: Dave Hansen Date: Tue May 24 17:12:16 2011 -0700 mm: break out page allocation warning code This originally started as a simple patch to give vmalloc() some more verbose output on failure on top of the plain page allocator messages. Johannes suggested that it might be nicer to lead with the vmalloc() info _before_ the page allocator messages. But, I do think there's a lot of value in what __alloc_pages_slowpath() does with its filtering and so forth. This patch creates a new function which other allocators can call instead of relying on the internal page allocator warnings. It also gives this function private rate-limiting which separates it from other printk_ratelimit() users. Signed-off-by: Dave Hansen Cc: Johannes Weiner Cc: David Rientjes Cc: Michal Nazarewicz Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit de03c72cfce5b263a674d04348b58475ec50163c Author: KOSAKI Motohiro Date: Tue May 24 17:12:15 2011 -0700 mm: convert mm->cpu_vm_cpumask into cpumask_var_t cpumask_t is very big struct and cpu_vm_mask is placed wrong position. It might lead to reduce cache hit ratio. This patch has two change. 1) Move the place of cpumask into last of mm_struct. Because usually cpumask is accessed only front bits when the system has cpu-hotplug capability 2) Convert cpu_vm_mask into cpumask_var_t. It may help to reduce memory footprint if cpumask_size() will use nr_cpumask_bits properly in future. In addition, this patch change the name of cpu_vm_mask with cpu_vm_mask_var. It may help to detect out of tree cpu_vm_mask users. This patch has no functional change. [akpm@linux-foundation.org: build fix] [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: KOSAKI Motohiro Cc: David Howells Cc: Koichi Yasutake Cc: Hugh Dickins Cc: Chris Metcalf Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 692e0b35427a088bf75d9363788c61c7edbe93a5 Author: Andrea Arcangeli Date: Tue May 24 17:12:14 2011 -0700 mm: thp: optimize memcg charge in khugepaged We don't need to hold the mmmap_sem through mem_cgroup_newpage_charge(), the mmap_sem is only hold for keeping the vma stable and we don't need the vma stable anymore after we return from alloc_hugepage_vma(). Signed-off-by: Andrea Arcangeli Cc: Johannes Weiner Cc: Hugh Dickins Cc: David Rientjes Cc: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9547d01bfb9c351dc19067f8a4cea9d3955f4125 Author: Peter Zijlstra Date: Tue May 24 17:12:14 2011 -0700 mm: uninline large generic tlb.h functions Some of these functions have grown beyond inline sanity, move them out-of-line. Signed-off-by: Peter Zijlstra Requested-by: Andrew Morton Requested-by: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 88c22088bf235f50b09a10bd9f022b0472bcb6b5 Author: Peter Zijlstra Date: Tue May 24 17:12:13 2011 -0700 mm: optimize page_lock_anon_vma() fast-path Optimize the page_lock_anon_vma() fast path to be one atomic op, instead of two. Signed-off-by: Peter Zijlstra Reviewed-by: KAMEZAWA Hiroyuki Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2b575eb64f7a9c701fb4bfdb12388ac547f6c2b6 Author: Peter Zijlstra Date: Tue May 24 17:12:11 2011 -0700 mm: convert anon_vma->lock to a mutex Straightforward conversion of anon_vma->lock to a mutex. Signed-off-by: Peter Zijlstra Acked-by: Hugh Dickins Reviewed-by: KOSAKI Motohiro Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 746b18d421da7f27e948e8af1ad82b6d0309324d Author: Peter Zijlstra Date: Tue May 24 17:12:10 2011 -0700 mm: use refcounts for page_lock_anon_vma() Convert page_lock_anon_vma() over to use refcounts. This is done to prepare for the conversion of anon_vma from spinlock to mutex. Sadly this inceases the cost of page_lock_anon_vma() from one to two atomics, a follow up patch addresses this, lets keep that simple for now. Signed-off-by: Peter Zijlstra Reviewed-by: KAMEZAWA Hiroyuki Reviewed-by: KOSAKI Motohiro Acked-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: Mel Gorman Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6111e4ca6829a0e8b092b8e5eeb6b5366091f29c Author: Peter Zijlstra Date: Tue May 24 17:12:08 2011 -0700 mm: improve page_lock_anon_vma() comment A slightly more verbose comment to go along with the trickery in page_lock_anon_vma(). Signed-off-by: Peter Zijlstra Reviewed-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 25aeeb046e695c3093a86aa9386128ffb3b1bc32 Author: Peter Zijlstra Date: Tue May 24 17:12:07 2011 -0700 mm: revert page_lock_anon_vma() lock annotation Its beyond ugly and gets in the way. Signed-off-by: Peter Zijlstra Acked-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: Namhyung Kim Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3d48ae45e72390ddf8cc5256ac32ed6f7a19cbea Author: Peter Zijlstra Date: Tue May 24 17:12:06 2011 -0700 mm: Convert i_mmap_lock to a mutex Straightforward conversion of i_mmap_lock to a mutex. Signed-off-by: Peter Zijlstra Acked-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 97a894136f29802da19a15541de3c019e1ca147e Author: Peter Zijlstra Date: Tue May 24 17:12:04 2011 -0700 mm: Remove i_mmap_lock lockbreak Hugh says: "The only significant loser, I think, would be page reclaim (when concurrent with truncation): could spin for a long time waiting for the i_mmap_mutex it expects would soon be dropped? " Counter points: - cpu contention makes the spin stop (need_resched()) - zap pages should be freeing pages at a higher rate than reclaim ever can I think the simplification of the truncate code is definitely worth it. Effectively reverts: 2aa15890f3c ("mm: prevent concurrent unmap_mapping_range() on the same inode") and takes out the code that caused its problem. Signed-off-by: Peter Zijlstra Reviewed-by: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e4c70a6629f9c74c4b0de258a3951890e9047c82 Author: Peter Zijlstra Date: Tue May 24 17:12:03 2011 -0700 lockdep, mutex: provide mutex_lock_nest_lock In order to convert i_mmap_lock to a mutex we need a mutex equivalent to spin_lock_nest_lock(), thus provide the mutex_lock_nest_lock() annotation. As with spin_lock_nest_lock(), mutex_lock_nest_lock() allows annotation of the locking pattern where an outer lock serializes the acquisition order of nested locks. That is, if every time you lock multiple locks A, say A1 and A2 you first acquire N, the order of acquiring A1 and A2 is irrelevant. Signed-off-by: Peter Zijlstra Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e303297e6c3a7b847c4731eb14006ca6b435ecca Author: Peter Zijlstra Date: Tue May 24 17:12:01 2011 -0700 mm: extended batches for generic mmu_gather Instead of using a single batch (the small on-stack, or an allocated page), try and extend the batch every time it runs out and only flush once either the extend fails or we're done. Signed-off-by: Peter Zijlstra Requested-by: Nick Piggin Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 267239116987d64850ad2037d8e0f3071dc3b5ce Author: Peter Zijlstra Date: Tue May 24 17:12:00 2011 -0700 mm, powerpc: move the RCU page-table freeing into generic code In case other architectures require RCU freed page-tables to implement gup_fast() and software filled hashes and similar things, provide the means to do so by moving the logic into generic code. Signed-off-by: Peter Zijlstra Requested-by: David Miller Cc: Benjamin Herrenschmidt Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1c395176962176660bb108f90e97e1686cfe0d85 Author: Peter Zijlstra Date: Tue May 24 17:11:58 2011 -0700 mm: now that all old mmu_gather code is gone, remove the storage Fold all the mmu_gather rework patches into one for submission Signed-off-by: Peter Zijlstra Reported-by: Hugh Dickins Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ff075d605511784c79cbf0ae73d90e07238267b3 Author: Peter Zijlstra Date: Tue May 24 17:11:57 2011 -0700 um: mmu_gather rework Fix up the um mmu_gather code to conform to the new API. Signed-off-by: Peter Zijlstra Cc: Jeff Dike Cc: Richard Weinberger Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7a95a2c80748bb91e0bf4b8d58396542e1319d21 Author: Peter Zijlstra Date: Tue May 24 17:11:55 2011 -0700 ia64: mmu_gather rework Fix up the ia64 mmu_gather code to conform to the new API. Signed-off-by: Peter Zijlstra Acked-by: Tony Luck Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1e56a56410bb64bce62d44563e35a143fc2d515f Author: Peter Zijlstra Date: Tue May 24 17:11:54 2011 -0700 sh: mmu_gather rework Fix up the sh mmu_gather code to conform to the new API. Signed-off-by: Peter Zijlstra Acked-by: Paul Mundt Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 9e14f6741062b6e6a71de75b4375e14c3e92c213 Author: Peter Zijlstra Date: Tue May 24 17:11:53 2011 -0700 arm: mmu_gather rework Fix up the arm mmu_gather code to conform to the new API. Signed-off-by: Peter Zijlstra Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 68f03921235c59507578a0165f87100d1120ec62 Author: Peter Zijlstra Date: Tue May 24 17:11:51 2011 -0700 s390: mmu_gather rework Adapt the stand-alone s390 mmu_gather implementation to the new preemptible mmu_gather interface. Signed-off-by: Peter Zijlstra Signed-off-by: Martin Schwidefsky Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 90f08e399d054d017c0e2c5089a0f44a76418271 Author: Peter Zijlstra Date: Tue May 24 17:11:50 2011 -0700 sparc: mmu_gather rework Rework the sparc mmu_gather usage to conform to the new world order :-) Sparc mmu_gather does two things: - tracks vaddrs to unhash - tracks pages to free Split these two things like powerpc has done and keep the vaddrs in per-cpu data structures and flush them on context switch. The remaining bits can then use the generic mmu_gather. Signed-off-by: Peter Zijlstra Acked-by: David Miller Cc: Benjamin Herrenschmidt Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d6bf29b44ddf3ca915f77b9383bee8b7a209f3fd Author: Peter Zijlstra Date: Tue May 24 17:11:48 2011 -0700 powerpc: mmu_gather rework Fix up powerpc to the new mmu_gather stuff. PPC has an extra batching queue to RCU free the actual pagetable allocations, use the ARCH extentions for that for now. For the ppc64_tlb_batch, which tracks the vaddrs to unhash from the hardware hash-table, keep using per-cpu arrays but flush on context switch and use a TLF bit to track the lazy_mmu state. Signed-off-by: Peter Zijlstra Acked-by: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Cc: KAMEZAWA Hiroyuki Cc: Hugh Dickins Cc: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d16dfc550f5326a4000f3322582a7c05dec91d7a Author: Peter Zijlstra Date: Tue May 24 17:11:45 2011 -0700 mm: mmu_gather rework Rework the existing mmu_gather infrastructure. The direct purpose of these patches was to allow preemptible mmu_gather, but even without that I think these patches provide an improvement to the status quo. The first 9 patches rework the mmu_gather infrastructure. For review purpose I've split them into generic and per-arch patches with the last of those a generic cleanup. The next patch provides generic RCU page-table freeing, and the followup is a patch converting s390 to use this. I've also got 4 patches from DaveM lined up (not included in this series) that uses this to implement gup_fast() for sparc64. Then there is one patch that extends the generic mmu_gather batching. After that follow the mm preemptibility patches, these make part of the mm a lot more preemptible. It converts i_mmap_lock and anon_vma->lock to mutexes which together with the mmu_gather rework makes mmu_gather preemptible as well. Making i_mmap_lock a mutex also enables a clean-up of the truncate code. This also allows for preemptible mmu_notifiers, something that XPMEM I think wants. Furthermore, it removes the new and universially detested unmap_mutex. This patch: Remove the first obstacle towards a fully preemptible mmu_gather. The current scheme assumes mmu_gather is always done with preemption disabled and uses per-cpu storage for the page batches. Change this to try and allocate a page for batching and in case of failure, use a small on-stack array to make some progress. Preemptible mmu_gather is desired in general and usable once i_mmap_lock becomes a mutex. Doing it before the mutex conversion saves us from having to rework the code by moving the mmu_gather bits inside the pte_lock. Also avoid flushing the tlb batches from under the pte lock, this is useful even without the i_mmap_lock conversion as it significantly reduces pte lock hold times. [akpm@linux-foundation.org: fix comment tpyo] Signed-off-by: Peter Zijlstra Cc: Benjamin Herrenschmidt Cc: David Miller Cc: Martin Schwidefsky Cc: Russell King Cc: Paul Mundt Cc: Jeff Dike Cc: Richard Weinberger Cc: Tony Luck Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Hugh Dickins Acked-by: Mel Gorman Cc: KOSAKI Motohiro Cc: Nick Piggin Cc: Namhyung Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d05f3169c0fbca16132ec7c2be71685c6de638b5 Author: Michal Hocko Date: Tue May 24 17:11:44 2011 -0700 mm: make expand_downwards() symmetrical with expand_upwards() Currently we have expand_upwards exported while expand_downwards is accessible only via expand_stack or expand_stack_downwards. check_stack_guard_page is a nice example of the asymmetry. It uses expand_stack for VM_GROWSDOWN while expand_upwards is called for VM_GROWSUP case. Let's clean this up by exporting both functions and make those names consistent. Let's use expand_{upwards,downwards} because expanding doesn't always involve stack manipulation (an example is ia64_do_page_fault which uses expand_upwards for registers backing store expansion). expand_downwards has to be defined for both CONFIG_STACK_GROWS{UP,DOWN} because get_arg_page calls the downwards version in the early process initialization phase for growsup configuration. Signed-off-by: Michal Hocko Acked-by: Hugh Dickins Cc: James Bottomley Cc: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 248ac0e1943ad1796393d281b096184719eb3f97 Author: Johannes Weiner Date: Tue May 24 17:11:43 2011 -0700 mm/vmalloc: remove guard page from between vmap blocks The vmap allocator is used to, among other things, allocate per-cpu vmap blocks, where each vmap block is naturally aligned to its own size. Obviously, leaving a guard page after each vmap area forbids packing vmap blocks efficiently and can make the kernel run out of possible vmap blocks long before overall vmap space is exhausted. The new interface to map a user-supplied page array into linear vmalloc space (vm_map_ram) insists on allocating from a vmap block (instead of falling back to a custom area) when the area size is below a certain threshold. With heavy users of this interface (e.g. XFS) and limited vmalloc space on 32-bit, vmap block exhaustion is a real problem. Remove the guard page from the core vmap allocator. vmalloc and the old vmap interface enforce a guard page on their own at a higher level. Note that without this patch, we had accidental guard pages after those vm_map_ram areas that happened to be at the end of a vmap block, but not between every area. This patch removes this accidental guard page only. If we want guard pages after every vm_map_ram area, this should be done separately. And just like with vmalloc and the old interface on a different level, not in the core allocator. Mel pointed out: "If necessary, the guard page could be reintroduced as a debugging-only option (CONFIG_DEBUG_PAGEALLOC?). Otherwise it seems reasonable." Signed-off-by: Johannes Weiner Cc: Nick Piggin Cc: Dave Chinner Acked-by: Mel Gorman Cc: Hugh Dickins Cc: Christoph Hellwig Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 82d4b5779a75887750748609f3415f01c1bb9f81 Author: Dave Hansen Date: Tue May 24 17:11:42 2011 -0700 include/linux/gfp.h: convert BUG_ON() into VM_BUG_ON() VM_BUG_ON() if effectively a BUG_ON() undef #ifdef CONFIG_DEBUG_VM. That is exactly what we have here now, and two different folks have suggested doing it this way. Signed-off-by: Dave Hansen Cc: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 15fa8f425557a0d698f933627771f520ef4ae34b Author: Dave Hansen Date: Tue May 24 17:11:41 2011 -0700 include/linux/gfp.h: work around apparent sparse confusion Running sparse on page_alloc.c today, it errors out: include/linux/gfp.h:254:17: error: bad constant expression include/linux/gfp.h:254:17: error: cannot size expression which is a line in gfp_zone(): BUILD_BUG_ON((GFP_ZONE_BAD >> bit) & 1); That's really unfortunate, because it ends up hiding all of the other legitimate sparse messages like this: mm/page_alloc.c:5315:59: warning: incorrect type in argument 1 (different base types) mm/page_alloc.c:5315:59: expected unsigned long [unsigned] [usertype] size mm/page_alloc.c:5315:59: got restricted gfp_t [usertype] ... Having sparse be able to catch these very oopsable bugs is a lot more important than keeping a BUILD_BUG_ON(). Kill the BUILD_BUG_ON(). Compiles on x86_64 with and without CONFIG_DEBUG_VM=y. defconfig boots fine for me. Signed-off-by: Dave Hansen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 72788c385604523422592249c19cba0187021e9b Author: David Rientjes Date: Tue May 24 17:11:40 2011 -0700 oom: replace PF_OOM_ORIGIN with toggling oom_score_adj There's a kernel-wide shortage of per-process flags, so it's always helpful to trim one when possible without incurring a significant penalty. It's even more important when you're planning on adding a per- process flag yourself, which I plan to do shortly for transparent hugepages. PF_OOM_ORIGIN is used by ksm and swapoff to prefer current since it has a tendency to allocate large amounts of memory and should be preferred for killing over other tasks. We'd rather immediately kill the task making the errant syscall rather than penalizing an innocent task. This patch removes PF_OOM_ORIGIN since its behavior is equivalent to setting the process's oom_score_adj to OOM_SCORE_ADJ_MAX. The process's old oom_score_adj is stored and then set to OOM_SCORE_ADJ_MAX during the time it used to have PF_OOM_ORIGIN. The old value is then reinstated when the process should no longer be considered a high priority for oom killing. Signed-off-by: David Rientjes Reviewed-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: Hugh Dickins Cc: Izik Eidus Cc: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c6a140bf164829769499b5e50d380893da39b29e Author: Andrea Arcangeli Date: Tue May 24 17:11:38 2011 -0700 mm/compaction: reverse the change that forbade sync migraton with __GFP_NO_KSWAPD It's uncertain this has been beneficial, so it's safer to undo it. All other compaction users would still go in synchronous mode if a first attempt at async compaction failed. Hopefully we don't need to force special behavior for THP (which is the only __GFP_NO_KSWAPD user so far and it's the easier to exercise and to be noticeable). This also make __GFP_NO_KSWAPD return to its original strict semantics specific to bypass kswapd, as THP allocations have khugepaged for the async THP allocations/compactions. Signed-off-by: Andrea Arcangeli Cc: Alex Villacis Lasso Cc: Mel Gorman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a6cccdc36c966e51fd969560d870cfd37afbfa9c Author: KOSAKI Motohiro Date: Tue May 24 17:11:33 2011 -0700 mm, mem-hotplug: update pcp->stat_threshold when memory hotplug occur Currently, cpu hotplug updates pcp->stat_threshold, but memory hotplug doesn't. There is no reason for this. [akpm@linux-foundation.org: fix CONFIG_SMP=n build] Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Acked-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1b79acc91115ba47e744b70bb166b77bd94f5855 Author: KOSAKI Motohiro Date: Tue May 24 17:11:32 2011 -0700 mm, mem-hotplug: recalculate lowmem_reserve when memory hotplug occurs Currently, memory hotplug calls setup_per_zone_wmarks() and calculate_zone_inactive_ratio(), but doesn't call setup_per_zone_lowmem_reserve(). It means the number of reserved pages aren't updated even if memory hot plug occur. This patch fixes it. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Acked-by: Mel Gorman Reviewed-by: Minchan Kim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 839a4fcc8af7412be2efd11f0bd0504757f79f08 Author: KOSAKI Motohiro Date: Tue May 24 17:11:31 2011 -0700 mm, mem-hotplug: fix section mismatch. setup_per_zone_inactive_ratio() should be __meminit. Commit bce7394a3e ("page-allocator: reset wmark_min and inactive ratio of zone when hotplug happens") introduced invalid section references. Now, setup_per_zone_inactive_ratio() is marked __init and then it can't be referenced from memory hotplug code. This patch marks it as __meminit and also marks caller as __ref. Signed-off-by: KOSAKI Motohiro Reviewed-by: Minchan Kim Cc: Yasunori Goto Cc: Rik van Riel Cc: Johannes Weiner Reviewed-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 37b23e0525d393d48a7d59f870b3bc061a30ccdb Author: KOSAKI Motohiro Date: Tue May 24 17:11:30 2011 -0700 x86,mm: make pagefault killable When an oom killing occurs, almost all processes are getting stuck at the following two points. 1) __alloc_pages_nodemask 2) __lock_page_or_retry 1) is not very problematic because TIF_MEMDIE leads to an allocation failure and getting out from page allocator. 2) is more problematic. In an OOM situation, zones typically don't have page cache at all and memory starvation might lead to greatly reduced IO performance. When a fork bomb occurs, TIF_MEMDIE tasks don't die quickly, meaning that a fork bomb may create new process quickly rather than the oom-killer killing it. Then, the system may become livelocked. This patch makes the pagefault interruptible by SIGKILL. Signed-off-by: KOSAKI Motohiro Reviewed-by: KAMEZAWA Hiroyuki Cc: Minchan Kim Cc: Matthew Wilcox Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f62e00cc3a00bfbd394a79fc22b334c31f91bd5f Author: KOSAKI Motohiro Date: Tue May 24 17:11:29 2011 -0700 mm: introduce wait_on_page_locked_killable() commit 2687a356 ("Add lock_page_killable") introduced killable lock_page(). Similarly this patch introdues killable wait_on_page_locked(). Signed-off-by: KOSAKI Motohiro Acked-by: KAMEZAWA Hiroyuki Reviewed-by: Minchan Kim Cc: Matthew Wilcox Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fa25c503dfa203b921199ea42c0046c89f2ed49f Author: KOSAKI Motohiro Date: Tue May 24 17:11:28 2011 -0700 mm: per-node vmstat: show proper vmstats commit 2ac390370a ("writeback: add /sys/devices/system/node//vmstat") added vmstat entry. But strangely it only show nr_written and nr_dirtied. # cat /sys/devices/system/node/node20/vmstat nr_written 0 nr_dirtied 0 Of course, It's not adequate. With this patch, the vmstat show all vm stastics as /proc/vmstat. # cat /sys/devices/system/node/node0/vmstat nr_free_pages 899224 nr_inactive_anon 201 nr_active_anon 17380 nr_inactive_file 31572 nr_active_file 28277 nr_unevictable 0 nr_mlock 0 nr_anon_pages 17321 nr_mapped 8640 nr_file_pages 60107 nr_dirty 33 nr_writeback 0 nr_slab_reclaimable 6850 nr_slab_unreclaimable 7604 nr_page_table_pages 3105 nr_kernel_stack 175 nr_unstable 0 nr_bounce 0 nr_vmscan_write 0 nr_writeback_temp 0 nr_isolated_anon 0 nr_isolated_file 0 nr_shmem 260 nr_dirtied 1050 nr_written 938 numa_hit 962872 numa_miss 0 numa_foreign 0 numa_interleave 8617 numa_local 962872 numa_other 0 nr_anon_transparent_hugepages 0 [akpm@linux-foundation.org: no externs in .c files] Signed-off-by: KOSAKI Motohiro Cc: Michael Rubin Cc: Wu Fengguang Acked-by: David Rientjes Cc: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit bb005a59e08733bb416126dc184f73120fc6366b Author: Namhyung Kim Date: Tue May 24 17:11:27 2011 -0700 mm: nommu: fix a compile warning in do_mmap_pgoff() Because 'ret' is declared as int, not unsigned long, no need to cast the error contants into unsigned long. If you compile this code on a 64-bit machine somehow, you'll see following warning: CC mm/nommu.o mm/nommu.c: In function `do_mmap_pgoff': mm/nommu.c:1411: warning: overflow in implicit constant conversion Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7223bb4a829628bdf37d544ed4363d99bac1ade6 Author: Namhyung Kim Date: Tue May 24 17:11:26 2011 -0700 mm: nommu: fix a potential memory leak in do_mmap_private() If f_op->read() fails and sysctl_nr_trim_pages > 1, there could be a memory leak between @region->vm_end and @region->vm_top. Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit d75a310c42c616c168953ed45c1091074f97828c Author: Namhyung Kim Date: Tue May 24 17:11:25 2011 -0700 mm: nommu: check the vma list when unmapping file-mapped vma Now we have the sorted vma list, use it in do_munmap() to check that we have an exact match. Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit e922c4c5360980bfeb862b3ec307d36bb344dcae Author: Namhyung Kim Date: Tue May 24 17:11:24 2011 -0700 mm: nommu: find vma using the sorted vma list Now we have the sorted vma list, use it in the find_vma[_exact]() rather than doing linear search on the rb-tree. Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b951bf2c4693bfc9744e11293be859209f65f579 Author: Namhyung Kim Date: Tue May 24 17:11:23 2011 -0700 mm: nommu: don't scan the vma list when deleting Since commit 297c5eee3724 ("mm: make the vma list be doubly linked") made it a doubly linked list, we don't need to scan the list when deleting @vma. And the original code didn't update the prev pointer. Fix it too. Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6038def0d11b322019d0dbb43f2a611247dfbdb6 Author: Namhyung Kim Date: Tue May 24 17:11:22 2011 -0700 mm: nommu: sort mm->mmap list properly When I was reading nommu code, I found that it handles the vma list/tree in an unusual way. IIUC, because there can be more than one identical/overrapped vmas in the list/tree, it sorts the tree more strictly and does a linear search on the tree. But it doesn't applied to the list (i.e. the list could be constructed in a different order than the tree so that we can't use the list when finding the first vma in that order). Since inserting/sorting a vma in the tree and link is done at the same time, we can easily construct both of them in the same order. And linear searching on the tree could be more costly than doing it on the list, it can be converted to use the list. Also, after the commit 297c5eee3724 ("mm: make the vma list be doubly linked") made the list be doubly linked, there were a couple of code need to be fixed to construct the list properly. Patch 1/6 is a preparation. It maintains the list sorted same as the tree and construct doubly-linked list properly. Patch 2/6 is a simple optimization for the vma deletion. Patch 3/6 and 4/6 convert tree traversal to list traversal and the rest are simple fixes and cleanups. This patch: @vma added into @mm should be sorted by start addr, end addr and VMA struct addr in that order because we may get identical VMAs in the @mm. However this was true only for the rbtree, not for the list. This patch fixes this by remembering 'rb_prev' during the tree traversal like find_vma_prepare() does and linking the @vma via __vma_link_list(). After this patch, we can iterate the whole VMAs in correct order simply by using @mm->mmap list. [akpm@linux-foundation.org: avoid duplicating __vma_link_list()] Signed-off-by: Namhyung Kim Acked-by: Greg Ungerer Cc: David Howells Cc: Paul Mundt Cc: Geert Uytterhoeven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac3bbec5ec69b973317677e038de2d1a0c90c18c Author: Sergey Senozhatsky Date: Tue May 24 17:11:21 2011 -0700 mm: remove unused zone_idx variable from set_migratetype_isolate Signed-off-by: Sergey Senozhatsky Reviewed-by: Christoph Lameter Acked-by: KAMEZAWA Hiroyuki Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 965f55dea0e331152fa53941a51e4e16f9f06fae Author: Shaohua Li Date: Tue May 24 17:11:20 2011 -0700 mmap: avoid merging cloned VMAs Avoid merging a VMA with another VMA which is cloned from the parent process. The cloned VMA shares the anon_vma lock with the parent process's VMA. If we do the merge, more vmas (even the new range is only for current process) use the perent process's anon_vma lock. This introduces scalability issues. find_mergeable_anon_vma() already considers this case. Signed-off-by: Shaohua Li Cc: Rik van Riel Cc: Hugh Dickins Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5f70b962ccc2f2e6259417cf3d1233dc9e16cf5e Author: Shaohua Li Date: Tue May 24 17:11:19 2011 -0700 mmap: avoid unnecessary anon_vma lock If we only change vma->vm_end, we can avoid taking anon_vma lock even if 'insert' isn't NULL, which is the case of split_vma. As I understand it, we need the lock before because rmap must get the 'insert' VMA when we adjust old VMA's vm_end (the 'insert' VMA is linked to anon_vma list in __insert_vm_struct before). But now this isn't true any more. The 'insert' VMA is already linked to anon_vma list in __split_vma(with anon_vma_clone()) instead of __insert_vm_struct. There is no race rmap can't get required VMAs. So the anon_vma lock is unnecessary, and this can reduce one locking in brk case and improve scalability. Signed-off-by: Shaohua Li Cc: Rik van Riel Acked-by: Hugh Dickins Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 34679d7eac9ecc20face093db9aa610f1e9c893a Author: Shaohua Li Date: Tue May 24 17:11:18 2011 -0700 mmap: add alignment for some variables Make some variables have correct alignment/section to avoid cache issue. In a workload which heavily does mmap/munmap, the variables will be used frequently. Signed-off-by: Shaohua Li Cc: Andi Kleen Cc: Rik van Riel Cc: Hugh Dickins Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 7bf02ea22c6cdd09e2d3f1d3c3fe366b834ae9af Author: David Rientjes Date: Tue May 24 17:11:16 2011 -0700 arch, mm: filter disallowed nodes from arch specific show_mem functions Architectures that implement their own show_mem() function did not pass the filter argument to show_free_areas() to appropriately avoid emitting the state of nodes that are disallowed in the current context. This patch now passes the filter argument to show_free_areas() so those nodes are now avoided. This patch also removes the show_free_areas() wrapper around __show_free_areas() and converts existing callers to pass an empty filter. ia64 emits additional information for each node, so skip_free_areas_zone() must be made global to filter disallowed nodes and it is converted to use a nid argument rather than a zone for this use case. Signed-off-by: David Rientjes Cc: Russell King Cc: Tony Luck Cc: Fenghua Yu Cc: Kyle McMartin Cc: Helge Deller Cc: James Bottomley Cc: "David S. Miller" Cc: Guan Xuetao Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 851cc856d73d1185243c149ed0c0839df8a1b2fe Author: Sebastian Andrzej Siewior Date: Tue May 24 17:11:15 2011 -0700 xtensa/mm: remove WANT_PAGE_VIRTUAL This is not useful: it provides page->virtual and is used with highmem. xtensa has no support for highmem and those HIGHMEM bits which are found by grep are partly implemented. The interesting functions like kmap() are missing. If someone actually implements the complete HIGHMEM support he could use HASHED_PAGE_VIRTUAL like most others do. Signed-off-by: Sebastian Andrzej Siewior Cc: Chris Zankel Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 45fd9515962b1837617f0e908b693e8f829f6e05 Author: Sebastian Andrzej Siewior Date: Tue May 24 17:11:14 2011 -0700 xtensa/mm: remove pgtable.c It is not referenced by any Makefile. pte_alloc_one_kernel() and pte_alloc_one() is implemented in arch/xtensa/include/asm/pgalloc.h. Signed-off-by: Sebastian Andrzej Siewior Cc: Chris Zankel Cc: Thomas Gleixner Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 877947bc25af5964f282dea112d24934050cc7b1 Author: Liu Yuan Date: Tue May 24 17:11:12 2011 -0700 drivers/video/backlight/adp5520_bl.c: check strict_strtoul() return value It should check if strict_strtoul() succeeds. [akpm@linux-foundation.org: don't override strict_strtoul() return value] Signed-off-by: Liu Yuan Acked-by: Michael Hennerich Cc: Richard Purdie Cc: Paul Mundt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f06590bd718ed950c98828e30ef93204028f3210 Author: Minchan Kim Date: Tue May 24 17:11:11 2011 -0700 mm: vmscan: correctly check if reclaimer should schedule during shrink_slab It has been reported on some laptops that kswapd is consuming large amounts of CPU and not being scheduled when SLUB is enabled during large amounts of file copying. It is expected that this is due to kswapd missing every cond_resched() point because; shrink_page_list() calls cond_resched() if inactive pages were isolated which in turn may not happen if all_unreclaimable is set in shrink_zones(). If for whatver reason, all_unreclaimable is set on all zones, we can miss calling cond_resched(). balance_pgdat() only calls cond_resched if the zones are not balanced. For a high-order allocation that is balanced, it checks order-0 again. During that window, order-0 might have become unbalanced so it loops again for order-0 and returns that it was reclaiming for order-0 to kswapd(). It can then find that a caller has rewoken kswapd for a high-order and re-enters balance_pgdat() without ever calling cond_resched(). shrink_slab only calls cond_resched() if we are reclaiming slab pages. If there are a large number of direct reclaimers, the shrinker_rwsem can be contended and prevent kswapd calling cond_resched(). This patch modifies the shrink_slab() case. If the semaphore is contended, the caller will still check cond_resched(). After each successful call into a shrinker, the check for cond_resched() remains in case one shrinker is particularly slow. [mgorman@suse.de: preserve call to cond_resched after each call into shrinker] Signed-off-by: Mel Gorman Signed-off-by: Minchan Kim Cc: Rik van Riel Cc: Johannes Weiner Cc: Wu Fengguang Cc: James Bottomley Tested-by: Colin King Cc: Raghavendra D Prabhu Cc: Jan Kara Cc: Chris Mason Cc: Christoph Lameter Cc: Pekka Enberg Cc: Rik van Riel Cc: [2.6.38+] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit afc7e326a3f5bafc41324d7926c324414e343ee5 Author: Johannes Weiner Date: Tue May 24 17:11:09 2011 -0700 mm: vmscan: correct use of pgdat_balanced in sleeping_prematurely There are a few reports of people experiencing hangs when copying large amounts of data with kswapd using a large amount of CPU which appear to be due to recent reclaim changes. SLUB using high orders is the trigger but not the root cause as SLUB has been using high orders for a while. The root cause was bugs introduced into reclaim which are addressed by the following two patches. Patch 1 corrects logic introduced by commit 1741c877 ("mm: kswapd: keep kswapd awake for high-order allocations until a percentage of the node is balanced") to allow kswapd to go to sleep when balanced for high orders. Patch 2 notes that it is possible for kswapd to miss every cond_resched() and updates shrink_slab() so it'll at least reach that scheduling point. Chris Wood reports that these two patches in isolation are sufficient to prevent the system hanging. AFAIK, they should also resolve similar hangs experienced by James Bottomley. This patch: Johannes Weiner poined out that the logic in commit 1741c877 ("mm: kswapd: keep kswapd awake for high-order allocations until a percentage of the node is balanced") is backwards. Instead of allowing kswapd to go to sleep when balancing for high order allocations, it keeps it kswapd running uselessly. Signed-off-by: Mel Gorman Reviewed-by: Rik van Riel Signed-off-by: Johannes Weiner Reviewed-by: Wu Fengguang Cc: James Bottomley Tested-by: Colin King Cc: Raghavendra D Prabhu Cc: Jan Kara Cc: Chris Mason Cc: Christoph Lameter Cc: Pekka Enberg Cc: Rik van Riel Reviewed-by: Minchan Kim Reviewed-by: Wu Fengguang Cc: [2.6.38+] Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a71ae47a2cbfa542c69f695809124da4e4dd9e8f Author: Christoph Lameter Date: Wed May 25 09:47:43 2011 -0500 slub: Fix double bit unlock in debug mode Commit 442b06bcea23 ("slub: Remove node check in slab_free") added a call to deactivate_slab() in the debug case in __slab_alloc(), which unlocks the current slab used for allocation. Going to the label 'unlock_out' then does it again. Also, in the debug case we do not need all the other processing that the 'unlock_out' path does. We always fall back to the slow path in the debug case. So the tid update is useless. Similarly, ALLOC_SLOWPATH would just be incremented for all allocations. Also a pretty useless thing. So simply restore irq flags and return the object. Signed-off-by: Christoph Lameter Reported-and-bisected-by: James Morris Reported-by: Ingo Molnar Reported-by: Jens Axboe Cc: Pekka Enberg Signed-off-by: Linus Torvalds commit b953ff2238661cd95513a8f2837197c6f77a642f Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 hdlcdrv: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Thomas Sailer Cc: linux-hams@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: Michal Marek commit c1afba3c6ce35a0956b008825dd49b07c8ee8362 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 baycom: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Thomas Sailer Cc: linux-hams@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: Michal Marek commit 7a2207a0e1142a9b214b323e43ab2ecc592e5b0e Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 17 20:51:14 2011 +0800 at91: drop at572d940hf support no-one use it and it's nearly impossible get a board to work on it and the Mainline implementation was never finished Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez Cc: Andrew Victor commit e57556e3b6dcbf9b459cd503b061457b6ed1758f Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sun Apr 24 11:40:22 2011 +0800 at91rm9200: introduce at91rm9200_set_type to specficy cpu package as we can not detect it by defaut the type will be bga introduce cpu_is_at91rm9200_bga and cpu_is_at91rm9200_pqfp Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez commit 3d51f259e819b49b3f88b594afcb044d1ffcda8a Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue May 3 00:44:58 2011 +0800 at91: drop boot_params and PLAT_PHYS_OFFSET select ARM_PATCH_PHYS_VIRT as with ARM_PATCH_PHYS_VIRT you can patch boot_params at runtime or any recent bootloader will provide a valid atags pointer in r2 as point out by Russell on AT91 we never use XIP so se do not need PLAT_PHYS_OFFSET Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez Cc: Andrew Victor Cc: Russell King commit ee2e35015d4f09ce748a96a79582e959e6053f1a Author: Jean-Christophe PLAGNIOL-VILLARD Date: Mon May 2 01:05:54 2011 +0800 at91: factorize common irq ID Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez Cc: Andrew Victor commit bd60299594fb1d28ae66563c9e76a0b89b0412cf Author: Jean-Christophe PLAGNIOL-VILLARD Date: Wed Feb 2 07:27:07 2011 +0100 at91: switch to CLKDEV_LOOKUP we do not change the clock naming convention so does not need to switch the AVR32 yet Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Nicolas Ferre Cc: Patrice Vilchez commit 1b021a3b23a40be89c4f3fbe6f4696aa15141f26 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Thu Apr 28 20:19:32 2011 +0800 at91: fix map_io init usage switch early init to init_early and introduce soc map_io with this Patch we will not do any more early device setup during the map io tks to Russell to point the new call back Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre Cc: Patrice Vilchez Acked-by: Russell King Acked-by: Andrew Victor commit 1cef3e15721dc9e75f9b661270153e1d6f5e0993 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Mon Apr 11 23:31:28 2011 +0800 at91/board-eco920: remove at91_beeper ressource as no driver at91_beeper exist Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre commit 2b348e2f82f532e3aff8e0ce9293033b3294c1e0 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Sun Apr 10 14:10:05 2011 +0800 atmel_serial: keep the platform_device unchanged specify the port num via platform_data this will allow to match the clock with the plaform_dev staticaly Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Alan Cox Cc: Nicolas Ferre Cc: Patrice Vilchez Cc: Hans-Christian Egtvedt Cc: Greg Kroah-Hartman commit dd41d3216b05200cf01381927804a35315352a35 Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue Apr 5 17:52:10 2011 +0800 at91sam9261: rename at91sam9261ek to at91sam9261 defconfig and update it with ubi, sound, nfs support etc... Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Nicolas Ferre commit dbadf0f29e2f3719ab950fb3a59e132bbe4bf63e Author: Jean-Christophe PLAGNIOL-VILLARD Date: Tue Apr 5 01:48:14 2011 +0800 at91sam9263: merge all boards defconfig into only one Tested on at91sam9263ek Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Guillaume GARDET Cc: Grégory Hermant Cc: Nicolas Ferre commit 76b2ab76a4492f8f43c511857181f8421901ce3f Author: Jean-Christophe PLAGNIOL-VILLARD Date: Thu Apr 14 00:34:03 2011 +0800 at91: remove MTD_NAND_ATMEL_BUSWIDTH_16 option no board configure it as 'n' and it's an issue to merge all defconfigs in one On AT91SAM926x boards both types of NAND flash can be present (8 and 16 bit data bus width). so will pass it via system_rev Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Nicolas Ferre Cc: Patrice Vilchez commit ee294bedb6d0658c9934ef5d96951a22003c8886 Author: Eric Van Hensbergen Date: Wed May 25 09:19:27 2011 -0500 9p: update Documentation pointers Update documentation pointers to include virtfs publication, 9p RFC as well as updated list of servers and alternative clients. Signed-off-by: Eric Van Hensbergen commit af6a25f0e1ec0265c267e6ee4513925eaba6d0ed Author: Richard Kennedy Date: Tue May 24 14:49:59 2011 +0100 x86: Reorder mm_context_t to remove x86_64 alignment padding and thus shrink mm_struct Reorder mm_context_t to remove alignment padding on 64 bit builds shrinking its size from 64 to 56 bytes. This allows mm_struct to shrink from 840 to 832 bytes, so using one fewer cache lines, and getting more objects per slab when using slub. slabinfo mm_struct reports before :- Sizes (bytes) Slabs ----------------------------------- Object : 840 Total : 7 SlabObj: 896 Full : 1 SlabSiz: 16384 Partial: 4 Loss : 56 CpuSlab: 2 Align : 64 Objects: 18 after :- Sizes (bytes) Slabs ---------------------------------- Object : 832 Total : 7 SlabObj: 832 Full : 1 SlabSiz: 16384 Partial: 4 Loss : 0 CpuSlab: 2 Align : 64 Objects: 19 Signed-off-by: Richard Kennedy Cc: wilsons@start.ca Cc: Linus Torvalds Cc: Andrew Morton Cc: Pekka Enberg Link: http://lkml.kernel.org/r/1306244999.1999.5.camel@castor.rsk Signed-off-by: Ingo Molnar commit e75762fdcd27c1d0293d9160b3ac6dcb3371272a Author: Rob Landley Date: Mon May 23 21:46:56 2011 -0500 net/9p: enable 9p to work in non-default network namespace Teach 9p filesystem to work in container with non-default network namespace. (Note: I also patched the unix domain socket code but don't have a test case for that. It's the same fix, I just don't have a server for it...) To test, run diod server (http://code.google.com/p/diod): diod -n -f -L stderr -l 172.23.255.1:9999 -c /dev/null -e /root and then mount like so: mount -t 9p -o port=9999,aname=/root,version=9p2000.L 172.23.255.1 /mnt A container test environment is described at http://landley.net/lxc Signed-off-by: Rob Landley Signed-off-by: Eric Van Hensbergen commit fe1cbabaea5e99a93bafe12fbf1b3b9cc71b610a Author: Aneesh Kumar K.V Date: Fri May 20 18:55:52 2011 +0000 net/9p: p9_idpool_get return -1 on error We need to return -1 on error. Also handle error properly Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 398c4f0efb5c2f07fe2f5cd67031b15fd3e920c9 Author: Aneesh Kumar K.V Date: Fri May 20 18:55:51 2011 +0000 fs/9p: Don't clunk dentry fid when we fail to get a writeback inode The dentry fid get clunked via the dput. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Eric Van Hensbergen commit 08bb3a5076500adaf16af11f5813c8eb43f3c9a9 Author: Sasha Levin Date: Tue May 17 13:51:26 2011 +0000 9p: Small cleanup in There are two small cleanups in this patch: - p9_errstr2errno was declared twice - remove one declaration. - A uint8_t type was mixed in, change it to u8 to match with the rest of the type names and remove dependency. Cc: Eric Van Hensbergen Cc: Ron Minnich Cc: Latchesar Ionkov Cc: Pekka Enberg Signed-off-by: Sasha Levin Signed-off-by: Eric Van Hensbergen commit 87211cd8db6e5d1c9154812139d04a3dc6f282bf Author: Eric Van Hensbergen Date: Mon May 16 10:46:39 2011 -0500 9p: remove experimental tag from tested configurations The 9p client is currently undergoing regular regresssion and stress testing as a by-product of the virtfs work. I think its finally time to take off the experimental tags from the well-tested code paths. Signed-off-by: Eric Van Hensbergen commit aca0076336d0cb689b87640194df794a0fedadc3 Author: Rob Landley Date: Sun May 8 18:46:38 2011 +0000 9p: typo fixes and minor cleanups Typo fixes and minor cleanups for v9fs Signed-off-by: Rob Landley Reviewed-by: Venkateswararao Jujjuri (JV) Signed-off-by: Eric Van Hensbergen commit 961a5a5028b8ae6fe91f28d5a81696de90b74bc2 Author: Rob Landley Date: Sat Apr 30 12:56:24 2011 -0500 net/9p: Change linuxdoc names to match functions. As on Jeopardy, my question is in the form of a patch: Does this have some special meaning, or is it an accident? (I looked at other filesystems but they didn't bother having doc entries for their init/exit function that I could find.) Signed-off-by: Rob Landley Signed-off-by: Eric Van Hensbergen commit d49e46875c11a09e80e76c66db90710369b8fe12 Author: Arnaud Lacombe Date: Tue May 24 14:16:18 2011 -0400 xconfig: merge code path to conf_write() Avoid to have multiple path saving the config. This fixes an error check miss when the window is being closed and the user requested the config to be written. Reported-by: Hiromu Yakura Pointed-out-by: Michal Marek Signed-off-by: Michal Marek commit f2889fee8c7fe0ac9752186d43f9486392bb204d Merge: 6221f222 aecb7b6 Author: Vinod Koul Date: Wed May 25 18:34:07 2011 +0530 Merge branch 'next' into for-linus commit aecb7b64dd9e2512c7a4c7e61dd781415d3dac5a Author: Viresh Kumar Date: Tue May 24 14:04:09 2011 +0530 dmaengine/dw_dmac: Update maintainer-ship Nobody is currently maintaining dw_dmac. We are using dw_dmac for SPEAr13xx and are currently maintaining it. After discussing with Vinod, sending this patch to update maintainer-ship of dw_dmac. Signed-off-by: Viresh Kumar Acked-by: Havard Skinnemoen Signed-off-by: Vinod Koul commit d6cb2e3a8dc44b52f6564e8249e54aab3c308026 Author: Mike Frysinger Date: Thu Mar 31 15:40:52 2011 -0400 Blackfin: use new common PERCPU_INPUT define The Blackfin percpu input sections are outdated, so rather than update them, drop them completely and use the new common define. Signed-off-by: Mike Frysinger commit f8bd42b8913209054b959b09236af5fa8dcaee82 Author: Lars-Peter Clausen Date: Tue May 24 08:17:11 2011 +0100 MAINTAINERS: Fix Analog Devices mailinglist address There is a small typo in the Analog Devices driver mailinglist address. Signed-off-by: Lars-Peter Clausen Acked-by: Michael Hennerich Signed-off-by: Mike Frysinger commit 6f53dbbb7fa9d29a5c8aa843f319ed10a8cde5bd Author: Scott Jiang Date: Tue Mar 1 09:43:50 2011 +0000 Blackfin: boards: update ASoC resources after machine driver overhaul Now that the Blackfin machine drivers have been updated to the multicomponent support, update the resources to match. The pin settings are now a board issue and removed from the driver. Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger commit f9691bb9674b6822ace56370a08c6fc02addf6cb Author: Steven Miao Date: Thu May 5 14:14:48 2011 +0800 Blackfin: work around anomaly 05000480 Anomaly 05000480 on BF537 rev 0.0, 0.1, 0.2: Multiple Simultaneous Urgent DMA Requests May Cause DMA System Instability Suggested Workaround: Program the DMA Traffic Control Period to a non-zero value. This forces the DMA block to group accesses together rather than allow arbitration for each piece of data placed on the internal DMA bus. Signed-off-by: Steven Miao Signed-off-by: Mike Frysinger commit 7a7a430f7498cd55820232d8e3f144161138f91a Author: Mike Frysinger Date: Wed May 18 20:46:03 2011 -0400 Blackfin: fix addr type with bfin_write_{or,and} helpers Since the bfin_write() func needs proper type information in order to expand into the right bfin_writeX() variant, preserve the addr's type when setting up the local __addr. Otherwise the helpers will detect the variant based upon sizeof(void) which is almost never right. Signed-off-by: Mike Frysinger commit 934fe05bf0c743896b478fe3558a282911cfe621 Author: Alexey Dobriyan Date: Sat May 14 19:51:54 2011 +0300 Blackfin: convert /proc/sram to seq_file ->read_proc interface is going away, switch to seq_file. Signed-off-by: Alexey Dobriyan Signed-off-by: Mike Frysinger commit 6362ec272c0375c0377164532e24bf9defdb8c79 Author: Alexey Dobriyan Date: Sat May 14 19:48:46 2011 +0300 Blackfin: switch /proc/gpio to seq_file ->read_proc interface is going away, switch to seq_file. Signed-off-by: Alexey Dobriyan Signed-off-by: Mike Frysinger commit d763c58a886068f1ec43751893b5aec35fc072e3 Author: Mike Frysinger Date: Sat May 14 10:22:45 2011 -0400 Blackfin: fix indentation with bfin_read() helper Use tabs instead of spaces to indent. Signed-off-by: Mike Frysinger commit fecedc807116ed820ca6f3138d6d47a3bc6c5a60 Author: KOSAKI Motohiro Date: Tue Apr 26 10:57:27 2011 +0900 Blackfin: convert old cpumask API to new one old cpu_xxx() APIs is planned to removed later. then, converted. Signed-off-by: KOSAKI Motohiro Signed-off-by: Mike Frysinger commit e887eb61e5a27ba54405f2ca51d8d0d378c4ffe5 Author: KOSAKI Motohiro Date: Tue Apr 26 10:56:42 2011 +0900 Blackfin: don't touch task->cpus_allowed directly Every callter (except kthread_bind) should use proper set_cpus_allowed_ptr() APIs. Signed-off-by: KOSAKI Motohiro Signed-off-by: Mike Frysinger commit 3cb8a39fa6695575959fc3661b5d379b4e552eaa Author: KOSAKI Motohiro Date: Tue Apr 26 10:55:41 2011 +0900 Blackfin: don't touch cpu_possible_map and cpu_present_map directly We plan to remove cpu_possible_map and cpu_present_map later and we have proper init_cpu_possible() and init_cpu_present() APIs. Therefore this patch rewrites platform_init_cpus and platform_prepare_cpus by their APIs. Signed-off-by: KOSAKI Motohiro Signed-off-by: Mike Frysinger commit 5607204755369bda4da57fe7df70ec11c2b593d9 Author: Mike Frysinger Date: Mon May 9 18:46:17 2011 -0400 Blackfin: bf548-ezkit/bf561-ezkit: update nor flash layout Both the BF548-EZKIT and the BF561-EZKIT use top boot flashes, so now that Das U-Boot uses the last small sector for its environment, update their nor layout in the kernel accordingly. Signed-off-by: Mike Frysinger commit 7db79172908990c3ea540fcc6819330d273f9f1c Author: Mike Frysinger Date: Fri May 6 11:47:52 2011 -0400 Blackfin: initial perf_event support Signed-off-by: Mike Frysinger commit 93f1742c631a87f02622e6a4570e65479f598672 Author: Mike Frysinger Date: Fri May 6 02:26:38 2011 -0400 Blackfin: update anomaly lists to latest public info Signed-off-by: Mike Frysinger commit f073cc8f39b48fdf4c8cd9520a6028fe69199b60 Author: Cliff Wickman Date: Tue May 24 13:07:36 2011 -0500 x86, UV: Clean up uv_tlb.c SGI UV's uv_tlb.c driver has become rather hard to read, with overly large functions, non-standard coding style and (way) too long variable, constant and function names and non-obvious code flow sequences. This patch improves the readability and maintainability of the driver significantly, by doing the following strict code cleanups with no side effects: - Split long functions into shorter logical functions. - Shortened some variable and structure member names. - Added special functions for reads and writes of MMR regs with very long names. - Added the 'tunables' table to shortened tunables_write(). - Added the 'stat_description' table to shorten uv_ptc_proc_write(). - Pass fewer 'stat' arguments where it can be derived from the 'bcp' argument. - Function definitions consistent on one line, and inline in few (short) cases. - Moved some small structures and an atomic inline function to the header file. - Moved some local variables to the blocks where they are used. - Updated the copyright date. - Shortened uv_write_global_mmr64() etc. using some aliasing; no line breaks. Renamed many uv_.. functions that are not exported. - Aligned structure fields. [ note that not all structures are aligned the same way though; I'd like to keep the extensive commenting in some of them. ] - Shortened some long structure names. - Standard pass/fail exit from init_per_cpu() - Vertical alignment for mass initializations. - More separation between blocks of code. Tested on a 16-processor Altix UV. Signed-off-by: Cliff Wickman Cc: penberg@kernel.org Link: http://lkml.kernel.org/r/E1QOw12-0004MN-Lp@eag09.americas.sgi.com Signed-off-by: Ingo Molnar commit 2a919596c16b4333af851ff473ebf96e289ab90c Author: Jack Steiner Date: Wed May 11 12:50:28 2011 -0500 x86, UV: Add support for SGI UV2 hub chip This patch adds support for a new version of the SGI UV hub chip. The hub chip is the node controller that connects multiple blades into a larger coherent SSI. For the most part, UV2 is compatible with UV1. The majority of the changes are in the addresses of MMRs and in a few cases, the contents of MMRs. These changes are the result in changes in the system topology such as node configuration, processor types, maximum nodes, physical address sizes, etc. Signed-off-by: Jack Steiner Link: http://lkml.kernel.org/r/20110511175028.GA18006@sgi.com Signed-off-by: Ingo Molnar commit 803103925b1f23fe0edf91348be3e5a8fd352d5e Author: Mike Frysinger Date: Mon May 2 00:00:35 2011 -0400 Blackfin: use on-chip reset func with newer parts Turns out the documentation is wrong and doing "RAISE 1" does not result in a software reset, only a core reset. So when the on-chip rom has a functioning reset helper, use it. Signed-off-by: Mike Frysinger commit f91c69168a218fb7ab7a5ce09fa1ccd20a904119 Author: Mike Frysinger Date: Mon Apr 25 04:11:24 2011 -0400 Blackfin: bf533-stamp/bf537-stamp: drop ad1980 from defconfigs These boards don't have AD1980 modules, and that device is deprecated, so don't bother building it up by default anymore. Signed-off-by: Mike Frysinger commit 00b5c50e47dacd4d288c6b265e00f85711b9ac64 Author: Mike Frysinger Date: Mon Apr 18 18:37:38 2011 -0400 Blackfin: optimize MMR reads during startup a bit Since the value of these MMRs aren't changing, store the value in a local variable and work off of that. This avoids multiple MMR reads which are implicitly forced by the volatile markings. Signed-off-by: Mike Frysinger commit 8c0541035007bd8bbacfc5d71c696cdf37696794 Author: Mike Frysinger Date: Fri Apr 15 13:04:59 2011 -0400 Blackfin: bf537: demux port H mask A and emac rx ints The BF537 SIC combines the gpio port H mask A interrupts with the emac rx interrupt, so we need to demux this in software. It also combines the gpio port H mask B and the emac tx interrupts, and the watchdog and port F mask B interrupts, but since we don't support mask B yet, just add the defines for now. Signed-off-by: Mike Frysinger commit e2a8092c3fa9766248e9515252ae44e6df2d97a0 Author: Mike Frysinger Date: Fri Apr 15 12:51:33 2011 -0400 Blackfin: bf537: fix excessive gpio int demuxing The search logic in the gpio demux walks all possible gpio blocks starting at the specified pin. The trouble on bf537 parts when we demux the port F and port G mask A interrupts is that we also demux port H mask A ints. Most of the time this isn't an issue as people don't usually use port H, but might as well avoid it when possible. Signed-off-by: Mike Frysinger commit dd8cb37b4e92c487fd10e7da96bab18d33de62da Author: Mike Frysinger Date: Fri Apr 15 03:19:22 2011 -0400 Blackfin: bf54x: drop unused pm gpio handling This functionality was merged into the common bfin_pm_standby_ctrl func some time ago, so punt these now unused funcs and data, and localize the wake funcs that aren't needed externally anymore. Signed-off-by: Mike Frysinger commit f58c3276d3652b0d96654ba08f0afc87c013da57 Author: Mike Frysinger Date: Fri Apr 15 03:08:20 2011 -0400 Blackfin: move bf537-specific irq code out of common code The SIC interrupt line muxing that the bf537 does is specific to this CPU (thankfully), so rip it out of the common code and move it to a bf537-specific file. This tidies up the common code significantly. Signed-off-by: Mike Frysinger commit 6327a574f9ce85f0daab8693913003a456f27f1f Author: Mike Frysinger Date: Fri Apr 15 03:06:59 2011 -0400 Blackfin: move internal irq prototypes out of global namespace These are only used in a few internal Blackfin places, so move the irq prototypes out of the global header and into the internal irq one. No functional changes other than shuffling locales. Signed-off-by: Mike Frysinger commit fc6bd7b8ad2043ceeb41bf46e25cd705ab2dce1a Author: Mike Frysinger Date: Fri Apr 15 01:35:53 2011 -0400 Blackfin: clean up irq ifdef logic a bit Prefer MMR named checks over part-specific lists, condense duplicated code across different #ifdef branches, simplify CONFIG_PM ifdefs, and drop unused kgdb header. Signed-off-by: Mike Frysinger commit 3086fd2768fd9276b309722c8f935301e14e8c17 Author: Mike Frysinger Date: Thu Apr 14 03:48:56 2011 -0400 Blackfin: bf51x/bf52x: fix typo in hysteresis MMR names Signed-off-by: Mike Frysinger commit c977819d0138bbc0c2799b8112fa4e4e93ab5b59 Author: Mike Frysinger Date: Wed Apr 13 23:59:08 2011 -0400 Blackfin: delete duplicated user single step prototypes These are in linux/ptrace.h, so no need for us to duplicate them. Signed-off-by: Mike Frysinger commit c505217ca058aa4bcb0cba7bc6b2d228120b3e3e Author: Sonic Zhang Date: Thu Aug 5 07:58:15 2010 +0000 Blackfin: kgdb: cache flushing is not safe in SMP mode Make sure we mark cache flushing as unsafe to kgdb in SMP mode so that kgdb doesn't flush things incorrectly on us. Signed-off-by: Sonic Zhang Signed-off-by: Mike Frysinger commit 2951acba8510a37c6b56f8481906a809c5eb3b0e Author: Mike Frysinger Date: Wed Apr 13 19:12:39 2011 -0400 Blackfin: SMP: drop unused blackfin_cpudata.idle pointer Not sure when we stopped using this field, but nothing in the tree uses this now, so punt it. Signed-off-by: Mike Frysinger commit 44491fbc5a228f3c2e61d842fd9fee0bfb839373 Author: Mike Frysinger Date: Wed Apr 13 18:57:57 2011 -0400 Blackfin: SMP: fix cpudata cache setup After some cache setup reordering changesets, the blackfin_cpudata init was left behind. While cpu0's data was correct, cpu1's data was not. Not that big of a deal as these are only used in the cpuinfo output, but should still be fixed. So move the setup of these fields to the common cache setup function to avoid this happening again in the future. Signed-off-by: Mike Frysinger commit 8d011f70b08f563b007743fd446a6022f0329cd4 Author: Mike Frysinger Date: Wed Apr 13 17:13:23 2011 -0400 Blackfin: clean up /proc/cpuinfo output The smp flush lines are too long and have too many newlines, so scale them back to match the other lines. The %p modifier shows "(null)" for 0, so use %08x instead. Signed-off-by: Mike Frysinger commit 3f62bcb259e87c9e1500b701f764c1f2ccb1da98 Author: Mike Frysinger Date: Thu Apr 7 21:53:50 2011 -0400 Blackfin: bf527-ezkit: tweak sound defconfig Build the sound pieces that the board actually has into the kernel, and punt older devices that we discourage. Signed-off-by: Mike Frysinger commit 115103a9fe5c7b03149af7ea13f837c5e71924be Author: Mike Frysinger Date: Wed Mar 30 04:09:26 2011 -0400 Blackfin: bf533/bf537/bf561: convert to BFIN_IRQ helper This brings the parts in line with newer ones, and makes things easier to read at a glance. Signed-off-by: Mike Frysinger commit 3dd666067d2b285724c828946e83100ea4c43d4b Author: Mike Frysinger Date: Wed Mar 30 03:59:00 2011 -0400 Blackfin: clean up style in irq defines These files had a lot of whitespace damage, mostly due to copying and pasting original files that had damage. The BF561 header also had a lot of unused CONFIG_DEF_xxx defines, so punt them all. Signed-off-by: Mike Frysinger commit 6adc521e7127732512ebd7fcfd3926d7970a82e1 Author: Mike Frysinger Date: Wed Mar 30 02:54:33 2011 -0400 Blackfin: unify core IRQ definitions Start a new common IRQ header and move all of the CEC pieces there. This lets the individual part headers worry just about its SIC defines. Signed-off-by: Mike Frysinger commit 6b108049d67090988fbb0b9d9905ffca114b6ff1 Author: Mike Frysinger Date: Wed Mar 30 01:35:41 2011 -0400 Blackfin: ints-priority: unify duplicate vec to irq lookup logic Seems the ipipe code just copied & pasted the existing irq lookup logic, so pull the logic out of do_irq() and into a local helper, and convert the two users over to that. Signed-off-by: Mike Frysinger commit e9e334c35ec3cd262d13640b50b67a29870a7105 Author: Mike Frysinger Date: Wed Mar 30 00:43:52 2011 -0400 Blackfin: ints-priority: clean up some local vars The local ivg structs need not be exported, so mark them as static. Further, the "num_spurious" variable is only incremented and never actually read anywhere, so punt it. Signed-off-by: Mike Frysinger commit bc6b92f8c31788a2fdc65d9be903983e5da78921 Author: Sonic Zhang Date: Tue Jun 30 09:48:03 2009 +0000 Blackfin: don't attempt to flush on-chip L1 SRAM regions Since the on-chip L1 regions are not cacheable, there is no point in trying to flush/invalidate them. Plus, older Blackfin parts like to trigger an exception (like BF533-0.3). Signed-off-by: Sonic Zhang Signed-off-by: Mike Frysinger commit 73ecfcf9088672220f7ca98811b2d05339c4f14c Author: Mike Frysinger Date: Tue Sep 25 05:14:15 2007 +0000 Blackfin: first pass at debug mmr support Signed-off-by: Mike Frysinger commit 556b27abf73833923d5cd4be80006292e1b31662 Author: Vivek Haldar Date: Wed May 25 07:41:54 2011 -0400 ext4: do not normalize block requests from fallocate() Currently, an fallocate request of size slightly larger than a power of 2 is turned into two block requests, each a power of 2, with the extra blocks pre-allocated for future use. When an application calls fallocate, it already has an idea about how large the file may grow so there is usually little benefit to reserve extra blocks on the preallocation list. This reduces disk fragmentation. Tested: fsstress. Also verified manually that fallocat'ed files are contiguously laid out with this change (whereas without it they begin at power-of-2 boundaries, leaving blocks in between). CPU usage of fallocate is not appreciably higher. In a tight fallocate loop, CPU usage hovers between 5%-8% with this change, and 5%-7% without it. Using a simulated file system aging program which the file system to 70%, the percentage of free extents larger than 8MB (as measured by e2freefrag) increased from 38.8% without this change, to 69.4% with this change. Signed-off-by: Vivek Haldar Signed-off-by: "Theodore Ts'o" commit a4bb6b64e39abc0e41ca077725f2a72c868e7622 Author: Allison Henderson Date: Wed May 25 07:41:50 2011 -0400 ext4: enable "punch hole" functionality This patch adds new routines: "ext4_punch_hole" "ext4_ext_punch_hole" and "ext4_ext_check_cache" fallocate has been modified to call ext4_punch_hole when the punch hole flag is passed. At the moment, we only support punching holes in extents, so this routine is pretty much a wrapper for the ext4_ext_punch_hole routine. The ext4_ext_punch_hole routine first completes all outstanding writes with the associated pages, and then releases them. The unblock aligned data is zeroed, and all blocks in between are punched out. The ext4_ext_check_cache routine is very similar to ext4_ext_in_cache except it accepts a ext4_ext_cache parameter instead of a ext4_extent parameter. This routine is used by ext4_ext_punch_hole to check and see if a block in a hole that has been cached. The ext4_ext_cache parameter is necessary because the members ext4_extent structure are not large enough to hold a 32 bit value. The existing ext4_ext_in_cache routine has become a wrapper to this new function. [ext4 punch hole patch series 5/5 v7] Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" Reviewed-by: Mingming Cao commit e861304b8ed83fe43e36d46794d72641c82d4636 Author: Allison Henderson Date: Wed May 25 07:41:46 2011 -0400 ext4: add "punch hole" flag to ext4_map_blocks() This patch adds a new flag to ext4_map_blocks() that specifies the given range of blocks should be punched out. Extents are first converted to uninitialized extents before they are punched out. Because punching a hole may require that the extent be split, it is possible that the splitting may need more blocks than are available. To deal with this, use of reserved blocks are enabled to allow the split to proceed. The routine then returns the number of blocks successfully punched out. [ext4 punch hole patch series 4/5 v7] Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" Reviewed-by: Mingming Cao commit d583fb87a3ff0ca50befd2f73f7a67fade1c8c56 Author: Allison Henderson Date: Wed May 25 07:41:43 2011 -0400 ext4: punch out extents This patch modifies the truncate routines to support hole punching Below is a brief summary of the patches changes: - Added end param to ext_ext4_rm_leaf This function has been modified to accept an end parameter which enables it to punch holes in leafs instead of just truncating them. - Implemented the "remove head" case in the ext_remove_blocks routine This routine is used by ext_ext4_rm_leaf to remove the tail of an extent during a truncate. The new ext_ext4_rm_leaf routine will now also use it to remove the head of an extent in the case that the hole covers a region of blocks at the beginning of an extent. - Added "end" param to ext4_ext_remove_space routine This function has been modified to accept a stop parameter, which is passed through to ext4_ext_rm_leaf. [ext4 punch hole patch series 3/5 v6] Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" commit 308488518dfcbe3be250085cd582f5b0c1ce72a9 Author: Allison Henderson Date: Wed May 25 07:41:32 2011 -0400 ext4: add new function ext4_block_zero_page_range() This patch modifies the existing ext4_block_truncate_page() function which was used by the truncate code path, and which zeroes out block unaligned data, by adding a new length parameter, and renames it to ext4_block_zero_page_rage(). This function can now be used to zero out the head of a block, the tail of a block, or the middle of a block. The ext4_block_truncate_page() function is now a wrapper to ext4_block_zero_page_range(). [ext4 punch hole patch series 2/5 v7] Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" Reviewed-by: Mingming Cao commit 55f020db66ce187fb8c8e4002a94b0eb714da450 Author: Allison Henderson Date: Wed May 25 07:41:26 2011 -0400 ext4: add flag to ext4_has_free_blocks This patch adds an allocation request flag to the ext4_has_free_blocks function which enables the use of reserved blocks. This will allow a punch hole to proceed even if the disk is full. Punching a hole may require additional blocks to first split the extents. Because ext4_has_free_blocks is a low level function, the flag needs to be passed down through several functions listed below: ext4_ext_insert_extent ext4_ext_create_new_leaf ext4_ext_grow_indepth ext4_ext_split ext4_ext_new_meta_block ext4_mb_new_blocks ext4_claim_free_blocks ext4_has_free_blocks [ext4 punch hole patch series 1/5 v7] Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" Reviewed-by: Mingming Cao commit 5f1e15868871a9da820357e0e3ff6fe89d2a16a6 Author: Hans Verkuil Date: Mon May 23 07:12:27 2011 -0300 [media] Media DocBook: fix validation errors Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c6ae804a65649d5919d232d65dc6a08c9e5ac01b Author: Hans Verkuil Date: Thu May 5 04:37:28 2011 -0300 [media] wl12xx: g_volatile_ctrl fix: wrong field set The function g_volatile_ctrl should change the current value rather than the new value. These two drivers didn't do that, so the value is never reported correctly. In the future this will change since this behavior is clearly unexpected, but for now fix these drivers first. Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit c9d5d7790cd7c9457772dc51381f0e0e4e691f68 Author: Randy Dunlap Date: Sun May 22 21:34:12 2011 -0300 [media] fix kconfig dependency warning for VIDEO_TIMBERDALE Fix kconfig unmet dependency warning: warning: (VIDEO_TIMBERDALE) selects TIMB_DMA which has unmet direct dependencies (DMADEVICES && (MFD_TIMBERDALE || HAS_IOMEM)) Signed-off-by: Randy Dunlap Cc: Pelagicore AB Signed-off-by: Mauro Carvalho Chehab commit 0017505de0d2888f57a9f84e8eb3963b3cd28baf Author: Igor M. Liplianin Date: Thu May 5 16:35:01 2011 -0300 [media] dm1105: GPIO handling added, I2C on GPIO added, LNB control through GPIO reworked Here is patch for GPIO's handling. It allows to support I2C on GPIO's and per board LNB control through GPIO's. Also incuded some support for Hendrik Skarpeid card. For those, who needs to tweak the driver, I think it is clear how to change and test GPIO's for LNB and other GPIO related stuff now. [mchehab@redhat.com: I2C_CLASS_TV_DIGITAL is deprecated. removed to avoid breaking compilation] Signed-off-by: Igor M. Liplianin Signed-off-by: Mauro Carvalho Chehab commit bc125106f8afe15ffb0aae70d9b72bebec46e519 Author: HeungJun, Kim Date: Fri May 20 02:27:28 2011 -0300 [media] Add support for M-5MOLS 8 Mega Pixel camera ISP Add I2C/V4L2 subdev driver for M-5MOLS integrated image signal processor with 8 Mega Pixel sensor. Signed-off-by: HeungJun, Kim Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit f90e5b5b136ede1f0fd15999e95f13124d6b0dbd Author: Bob Peterson Date: Tue May 24 10:44:42 2011 -0400 GFS2: Processes waiting on inode glock that no processes are holding This patch fixes a race in the GFS2 glock state machine that may result in lockups. The symptom is that all nodes but one will hang, waiting for a particular glock. All the holder records will have the "W" (Waiting) bit set. The other node will typically have the glock stuck in Exclusive mode (EX) with no holder records, but the dinode will be cached. In other words, an entry with "I:" will appear in the glock dump for that glock, but nothing else. The race has to do with the glock "Pending Demote" bit, which can be set, then immediately reset, thus losing the fact that another node needs the glock. The sequence of events is: 1. Something schedules the glock workqueue (e.g. glock request from fs) 2. The glock workqueue gets to the point between the test of the reply pending bit and the spin lock: if (test_and_clear_bit(GLF_REPLY_PENDING, &gl->gl_flags)) { finish_xmote(gl, gl->gl_reply); drop_ref = 1; } down_read(&gfs2_umount_flush_sem); <---- i.e. here spin_lock(&gl->gl_spin); 3. In comes (a) the reply to our EX lock request setting GLF_REPLY_PENDING and (b) the demote request which sets GLF_PENDING_DEMOTE 4. The following test is executed: if (test_and_clear_bit(GLF_PENDING_DEMOTE, &gl->gl_flags) && gl->gl_state != LM_ST_UNLOCKED && gl->gl_demote_state != LM_ST_EXCLUSIVE) { This resets the pending demote flag, and gl->gl_demote_state is not equal to exclusive, however because the reply from the dlm arrived after we checked for the GLF_REPLY_PENDING flag, gl->gl_state is still equal to unlocked, so although we reset the GLF_PENDING_DEMOTE flag, we didn't then set the GLF_DEMOTE flag or reinstate the GLF_PENDING_DEMOTE_FLAG. The patch closes the timing window by only transitioning the "Pending demote" bit to the "demote" flag once we know the other conditions (not unlocked and not exclusive) are met. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit a331b0c3665506aa23bfc78c777199b30349d731 Author: Clemens Ladisch Date: Wed May 25 09:48:48 2011 +0200 MAINTAINERS: add FireWire audio maintainer Add the maintainer of the FireWire audio drivers. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 66ee3bef3ce0bab155de082805388bd6ec2785f8 Author: Kuninori Morimoto Date: Wed May 25 07:56:25 2011 +0000 ARM: mach-shmobile: mackerel: add renesas_usbhs support for USB1 renesas_usbhs driver can use external interrupt mode (which come from USB-PHY) or autonomy mode (it use own interrupt) for detecting connection/disconnection when Function. And it will be power OFF while it has been disconnecting if external interrupt mode is selected. mackerel board has 2 USB ports. But we can not use external interrupt mode on CN22 USB0 port which is only for USB Function. IRQ7-PORT40 is already used by Touchscreen, and USB-PHY needs IRQ7-PORT167. It is impossible to use IRQ7 demux on mackerel. We can use external interrupt mode USB-Function on "USB1". USB1 can become Host by r8a66597, and become Function by renesas_usbhs. But don't select both drivers in same time. These 2 drivers are not supporting IRQ SHARD. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit d5a0bf6cc526d326283983bb7935493b722e7063 Author: Daniel Mack Date: Wed May 25 09:09:03 2011 +0200 ALSA: usb-audio: more control quirks for M-Audio FastTrack devices Make use of the freshly introduced methods to re-use standard mixer handling and add some controls that are hidden but implemented in a standard conform way on M-Audio's FastTrack devices. Signed-off-by: Daniel Mack Original-code-by: Felix Homann Signed-off-by: Takashi Iwai commit 014950b013b7966b7e4a3ae6931c75e3c115296f Author: Daniel Mack Date: Wed May 25 09:09:02 2011 +0200 ALSA: usb-audio: add new quirk type QUIRK_AUDIO_STANDARD_MIXER This quirk type will let the driver assume that there is a standard mixer on a given interface, or that a specific mixer quirks will handle the device. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 9e38658f703732cb69936553cef4bdb4e5294f3f Author: Daniel Mack Date: Wed May 25 09:09:01 2011 +0200 ALSA: usb-audio: export snd_usb_feature_unit_ctl In order to allow quirks functions to hook up to the standard feature unit op tables, this patch exports a pointer to the struct that is used internally. That way, all the code handling the control can be kept private, and external code can reference the symbol to re-use it. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit ef9d59708949b2012b1b723a1eaec82981c40013 Author: Daniel Mack Date: Wed May 25 09:09:00 2011 +0200 ALSA: usb-audio: rework add_control_to_empty() This patch renames add_control_to_empty() to snd_usb_mixer_add_control() and exports it, so the quirks functions can make use of it. Also, as "struct mixer_build" is private to mixer.c, rewrite the function to take an argument of type "struct usb_mixer_interface" instead. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 5875c2cb7633ca280c2ece43389d6a6f3c00e951 Author: Daniel Mack Date: Wed May 25 09:08:59 2011 +0200 ALSA: usb-audio: move assignment of chip->ctrl_intf This is needed for upcoming changes to the quirks mechanism. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit dda54e76d7dba0532ebdd72e0b4f492a03f83225 Author: Tristan Ye Date: Wed May 25 14:45:41 2011 +0800 Ocfs2/move_extents: Set several trivial constraints for threshold. The threshold should be greater than clustersize and less than i_size. Signed-off-by: Tristan Ye commit 4dfa66bd595120530506448f3d519f341afd736e Author: Tristan Ye Date: Wed May 25 14:30:36 2011 +0800 Ocfs2/move_extents: Let defrag handle partial extent moving. We're going to support partial extent moving, which may split entire extent movement into pieces to compromise the insuffice allocations, it eases the 'ENSPC' pain and makes the whole moving much less likely to fail, the downside is it may make the fs even more fragmented before moving, just let the userspace make a trade-off here. Signed-off-by: Tristan Ye commit 53069d4e76954e2e63c1b3c501051c6fbcf7298c Author: Tristan Ye Date: Wed May 25 14:23:43 2011 +0800 Ocfs2/move_extents: move/defrag extents within a certain range. the basic logic of moving extents for a file is pretty like punching-hole sequence, walk the extents within the range as user specified, calculating an appropriate len to defrag/move, then let ocfs2_defrag/move_extent() to do the actual moving. This func ends up setting 'OCFS2_MOVE_EXT_FL_COMPLETE' to userpace if operation gets done successfully. Signed-off-by: Tristan Ye commit ee16cc037e255801892481a2d0b7c1fff2adf1aa Author: Tristan Ye Date: Fri Mar 18 14:35:40 2011 +0800 Ocfs2/move_extents: helper to calculate the defraging length in one run. The helper is to calculate the defrag length in one run according to a threshold, it will proceed doing defragmentation until the threshold was meet, and skip a LARGE extent if any. Signed-off-by: Tristan Ye commit e08477176d5575493ba4c30041245c34f2737ad4 Author: Tristan Ye Date: Tue May 24 17:35:19 2011 +0800 Ocfs2/move_extents: move entire/partial extent. ocfs2_move_extent() logic will validate the goal_offset_in_block, where extents to be moved, what's more, it also compromises a bit to probe the appropriate region around given goal_offset when the original goal is not able to fit the movement. Signed-off-by: Tristan Ye commit 8473aa8a2b5857b1bdfb57d860594d2eb2b4a0d6 Author: Tristan Ye Date: Tue May 24 18:51:41 2011 +0800 Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode. These helpers were actually borrowed from alloc.c, which may be publicized later. Signed-off-by: Tristan Ye commit e6b5859cccfa0fec02f3c5b1069481efc7186f47 Author: Tristan Ye Date: Fri Mar 18 14:35:37 2011 +0800 Ocfs2/move_extents: helper to probe a proper region to move in an alloc group. Before doing the movement of extents, we'd better probe the alloc group from 'goal_blk' for searching a contiguous region to fit the wanted movement, we even will have a best-effort try by compromising to a threshold around the given goal. Signed-off-by: Tristan Ye commit 99e4c750419e0bb24a1bbf094b1e6a5a4eedbc36 Author: Tristan Ye Date: Fri Mar 18 14:35:36 2011 +0800 Ocfs2/move_extents: helper to validate and adjust moving goal. First best-effort attempt to validate and adjust the goal (physical address in block), while it can't guarantee later operation can succeed all the time since global_bitmap may change a bit over time. Signed-off-by: Tristan Ye commit 1c06b9126130aa4a917bba81c39579ed08a67b4e Author: Tristan Ye Date: Fri Mar 18 14:35:35 2011 +0800 Ocfs2/move_extents: find the victim alloc group, where the given #blk fits. This function tries locate the right alloc group, where a given physical block resides, it returns the caller a buffer_head of victim group descriptor, and also the offset of block in this group, by passing the block number. Signed-off-by: Tristan Ye commit 202ee5facb2c55f36a4324a4f56d8bdf3617a579 Author: Tristan Ye Date: Fri Mar 18 14:35:34 2011 +0800 Ocfs2/move_extents: defrag a range of extent. It's a relatively complete function to accomplish defragmentation for entire or partial extent, one journal handle was kept during the operation, it was logically doing one more thing than ocfs2_move_extent() acutally, yes, it's claiming the new clusters itself;-) Signed-off-by: Tristan Ye commit 8f603e567aa7a243e68ca48b4f105b990851360f Author: Tristan Ye Date: Fri Mar 18 14:35:33 2011 +0800 Ocfs2/move_extents: move a range of extent. The moving range of __ocfs2_move_extent() was within one extent always, it consists following parts: 1. Duplicates the clusters in pages to new_blkoffset, where extent to be moved. 2. Split the original extent with new extent, coalecse the nearby extents if possible. 3. Append old clusters to truncate log, or decrease_refcount if the extent was refcounted. Signed-off-by: Tristan Ye commit de474ee8bbc315b0e6772cebdb24b335f82cf95d Author: Tristan Ye Date: Fri Mar 18 14:35:32 2011 +0800 Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving. ocfs2_lock_allocators_move_extents() was like the common ocfs2_lock_allocators(), to lock metadata and data alloctors during extents moving, reserve appropriate metadata blocks and data clusters, also performa a best- effort to calculate the credits for journal transaction in one run of movement. Signed-off-by: Tristan Ye commit 028ba5df63fa9fc18045bc1e9b48cdd43727e1c5 Author: Tristan Ye Date: Tue May 24 16:42:09 2011 +0800 Ocfs2/move_extents: Add basic framework and source files for extent moving. Adding new files move_extents.[c|h] and fill it with nothing but only a context structure. Signed-off-by: Tristan Ye commit 220ebc4334326bc23e4c4c3f076dc5a58ec293f6 Author: Tristan Ye Date: Wed May 25 13:37:51 2011 +0800 Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2. Patch also manages to add a manipulative struture for this ioctl. Signed-off-by: Tristan Ye commit 3e19a25e0591a6248f3ddd2c08566666607d827d Author: Tristan Ye Date: Tue May 24 16:21:20 2011 +0800 Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c The original goal of commonizing these funcs is to benefit defraging/extent_moving codes in the future, based on the fact that reflink and defragmentation having the same Copy-On-Wrtie mechanism. Signed-off-by: Tristan Ye commit 087faf77a57b06f9a8ce37781c68e3f02468322b Merge: e2968f7 eae9b85 Author: Paul Mundt Date: Wed May 25 15:01:25 2011 +0900 Merge branch 'common/fbdev-meram' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 commit 1acd3de54e242834a385810bc3f0fd44211e494e Author: Paul Mundt Date: Wed May 25 14:54:30 2011 +0900 ARM: mach-shmobile: Correct the G4EVM SDHI0 I/O range. This obviously should have been 0xe6d500ff, fix it up accordingly. Signed-off-by: Paul Mundt commit af4ccf4f86c0008bdbe2532c110d45919983b468 Author: Takashi Iwai Date: Wed May 25 07:33:20 2011 +0200 ALSA: hda - Use model=auto for Lenovo G555 The new auto-parser fixes problems on Lenovo G555. Signed-off-by: Takashi Iwai commit 5d44f927a5467d64c4f1e0d579bcb3f543c275e0 Author: Stephen Warren Date: Tue May 24 17:11:17 2011 -0600 ALSA: HDA: Unify HDMI hotplug handling. This change unifies the initial handling of a pin's state with the code to update a pin's state after a hotplug (unsolicited response) event. The initial probing, and all updates, are now routed through hdmi_present_sense. The stored PD and ELDV status is now always derived from GetPinSense verb execution, and not from the data in the unsolicited response. This means: a) The WAR for NVIDIA codec's UR.PD values ("old_pin_detect") can be removed, since this only affected the no-longer-used unsolicited response payload. b) In turn, this means that most NVIDIA codecs can simply use patch_generic_hdmi instead of having a custom variant just to set old_pin_detect. c) When PD && ELDV becomes true, no extra verbs are executed, because the GetPinSense that was previously executed by snd_hdmi_get_eld (really, hdmi_eld_valid) has simply moved into hdmi_present_sense. d) When PD && ELDV becomes false, there is a single extra GetPinSense verb executed for codecs where old_pin_detect wasn't set, i.e. some NVIDIA, and all ATI/AMD and Intel codecs. I doubt this will be a performance issue. The new unified code in hdmi_present_sense also ensures that eld->eld_valid is not set unless eld->monitor_present is also set. This protects against potential invalid combinations of PD and ELDV received from HW, and transitively from a graphics driver. Also, print the derived PD/ELDV bits from hdmi_present_sense so the kernel log always displays the actual state stored, which will differ from the values in the unsolicited response for NVIDIA HW where old_pin_detect was previously set. Finally, a couple of small tweaks originally by Takashi: * Clear the ELD content to zero before reading it, so that if it's not read (i.e. when !(PD && ELDV)) it's in a known state. * Don't show ELD fields in /proc ELD files when the ELD isn't valid. The only possibility I can see for regression here is a codec where the GetPinSense verb returns incorrect data. However, we're already exposed to that, since that data is used (a) from hdmi_add_pin to set up the initial pin state, and (b) within snd_hda_input_jack_report to query a pin's presence value. As such, I don't believe any HW has bugs here. Includes-changes-by: Takashi Iwai Signed-off-by: Stephen Warren Acked-by: Wu Fengguang Signed-off-by: Takashi Iwai commit 4e60b4f8300c1e15753e8c82c699d52603646200 Author: Tony Vroon Date: Tue May 24 22:16:15 2011 +0100 ALSA: hda - Force AD1988_6STACK_DIG for Asus M3N-HT Deluxe The microphone input on the back panel (pink connector) stopped operating correctly after an upgrade from 2.6.35 to 2.6.38; the actual problem manifests itself as a lack of microphone bias voltage (VREF_HIZ) on node 0x17. With AD1988_6STACK_DIG the maximum bias voltage (VREF_80) is applied and the headset operates correctly. Signed-off-by: Tony Vroon Tested-by: Doug Redlich Signed-off-by: Takashi Iwai commit ac10f81d94f49f1bd9618680263400d275ddf825 Author: Alex Deucher Date: Wed May 25 01:00:45 2011 -0400 drm/radeon/kms/blit: workaround some hw issues on evergreen+ Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d24a10b9f8ed548981696cd36e2b4f16e6f360b1 Author: Tristan Ye Date: Tue May 24 15:27:17 2011 +0800 Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl. This new code is a bit more complicated than former ones, the goal is to show user all statistics required to take a deep insight into filesystem on how the disk is being fragmentaed. The goal is achieved by scaning global bitmap from (cluster)group to group to figure out following factors in the filesystem: - How many free chunks in a fixed size as user requested. - How many real free chunks in all size. - Min/Max/Avg size(in) clusters of free chunks. - How do free chunks distribute(in size) in terms of a histogram, just like following: --------------------------------------------------------- Extent Size Range : Free extents Free Clusters Percent 32K... 64K- : 1 1 0.00% 1M... 2M- : 9 288 0.03% 8M... 16M- : 2 831 0.09% 32M... 64M- : 1 2047 0.23% 128M... 256M- : 1 8191 0.92% 256M... 512M- : 2 21706 2.43% 512M... 1024M- : 27 858623 96.29% --------------------------------------------------------- Userspace ioctl() call eventually gets the above info returned by passing a 'struct ocfs2_info_freefrag' with the chunk_size being specified first. Signed-off-by: Tristan Ye commit 3e5db17d4da7f45c454940096d9e429cca12ef9f Author: Tristan Ye Date: Tue May 24 15:25:54 2011 +0800 Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl. The new code is dedicated to calculate free inodes number of all inode_allocs, then return the info to userpace in terms of an array. Specially, flag 'OCFS2_INFO_FL_NON_COHERENT', manipulated by '--cluster-coherent' from userspace, is now going to be involved. setting the flag on means no cluster coherency considered, usually, userspace tools choose none-coherency strategy by default for the sake of performace. Signed-off-by: Tristan Ye commit 8aa1fa360d0e2b31891f180d8b8e0f8d38f9243c Author: Tristan Ye Date: Tue May 24 15:22:59 2011 +0800 Ocfs2: Using inline funcs to set/clear *FILLED* flags in info handler. It just removes some macros for the sake of typechecking gains. Signed-off-by: Tristan Ye commit c59de9287993b5c36f9005f745a3ce0b1008131d Author: Andrei Warkentin Date: Mon May 23 15:06:35 2011 -0500 mmc: quirks: Add/remove quirks conditional support. Conditional add/remove quirks for MMC and SD. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 88095e7b473a3d9ec3b9c60429576e9cbd327c89 Author: Tony Olech Date: Sat May 14 16:48:13 2011 -0400 mmc: Add new VUB300 USB-to-SD/SDIO/MMC driver Add a driver for Elan Digital System's VUB300 chip which is a USB connected SDIO/SDmem/MMC host controller. A VUB300 chip enables a USB 2.0 or USB 1.1 connected host computer to use SDIO/SD/MMC cards without the need for a directly connected, for example via PCI, SDIO host controller. Signed-off-by: Anthony F Olech [cjb: various punctuation and style fixes] Tested-by: Chris Ball Signed-off-by: Chris Ball commit 73627f7ce11d135dcaf16730ecfad55c3fb12d30 Author: Philip Rakity Date: Fri Apr 22 13:19:25 2011 -0700 mmc: sdhci-pxa: Add quirks for DMA/ADMA to match h/w 32 Bit DMA/ADMA Access 32 Bit Size Support ADMA End Descriptor in current chain (no need for dummy entry) Signed-off-by: Philip Rakity Tested-by: Chris Ball Signed-off-by: Chris Ball commit 06b2233a20bf25c8ee57b7c6e13f528309ac6edc Author: Jaehoon Chung Date: Thu May 12 17:18:59 2011 +0900 mmc: core: duplicated trial with same freq in mmc_rescan_try_freq() mmc_rescan_try_freq() tries to init two times with the last frequency. For example, if host->f_min is 400KHz, we see the message below: mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz mmc1: mmc_rescan_try_freq: trying to init card at 400000 Hz Andy Ross says that he didn't try this code on a board with an f_min that exactly matches one of the table entries, which explains why the bug wasn't detected. Signed-off-by: Jaehoon Chung Signed-off-by: Kyungmin Park Cc: Andy Ross Signed-off-by: Chris Ball commit 4c4cb171054230c2e58ed6574d7faa1871c75bbe Author: Philip Rakity Date: Fri May 13 11:17:18 2011 +0530 mmc: core: add support for eMMC Dual Data Rate eMMC voltage change not required for 1.8V. 3.3V and 1.8V vcc are capable of doing DDR. vccq of 1.8v is not required. Signed-off-by: Philip Rakity Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit 261bbd463a091b939770255d559bbc89b1bad568 Author: Philip Rakity Date: Fri May 13 11:17:17 2011 +0530 mmc: core: eMMC signal voltage does not use CMD11 eMMC chips do not use CMD11 when changing voltage. Add extra argument to call to indicate if CMD11 needs to be sent. Signed-off-by: Philip Rakity Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit 756515c6267a580aecc67d114bb289dd30a466a1 Author: Philip Rakity Date: Fri May 13 11:17:16 2011 +0530 mmc: sdhci-pxa: add platform code for UHS signaling Marvell controller requires 1.8V bit in UHS control register 2 be set when doing UHS. eMMC does not require 1.8V for DDR. add platform code to handle this. Signed-off-by: Philip Rakity Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit 6322cdd0eb22e016aeced886c2046d115139c962 Author: Philip Rakity Date: Fri May 13 11:17:15 2011 +0530 mmc: sdhci: add hooks for setting UHS in platform specific code Allow platform specific code to set UHS registers if implementation requires speciial platform specific handling Signed-off-by: Philip Rakity Reviewed-by: Arindam Nath Signed-off-by: Chris Ball commit a8e6df7343cf67c9104955da0de70075a6ee1dfd Author: Eliad Peller Date: Mon May 9 11:32:31 2011 +0300 mmc: core: clear MMC_PM_KEEP_POWER flag on resume Since the MMC_PM_KEEP_POWER flag should be set on each suspend, it should also cleared on each resume. Upon resuming, we have to know if power was kept (for re-initialization, etc.), so clear it just after resuming. Signed-off-by: Eliad Peller Signed-off-by: Chris Ball commit 1d6c4e0a00399de9de3f066de175eb5fcc4b7b46 Author: Jaehoon Chung Date: Wed May 11 15:52:39 2011 +0900 mmc: dw_mmc: fixed wrong regulator_enable in suspend/resume regulator_enable() was incorrectly placed in the suspend function instead of the resume function. Signed-off-by: Jaehoon Chung Signed-off-by: Kyungmin Park Acked-by: Will Newton Signed-off-by: Chris Ball commit 2595880481ac894d390365092de9aaf92b44e147 Author: Guennadi Liakhovetski Date: Wed May 11 16:51:15 2011 +0000 mmc: sdhi: allow powering down controller with no card inserted Supply a link to TMIO private data for platforms to implement their own card detection. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 7311bef0697bcfbbcb898c3c22e61e23f203ae9d Author: Guennadi Liakhovetski Date: Wed May 11 16:51:11 2011 +0000 mmc: tmio: runtime suspend the controller, where possible The TMIO MMC controller cannot be powered off to save power, when no card is plugged in, because then it will not be able to detect a new card-insertion event. On some implementations, however, it is possible to switch to using another source to detect card insertion. This patch adds support for such implementations. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit d6a1f863433bdf3f8406dedfa33fa79ee9259db3 Author: Magnus Damm Date: Fri May 6 11:02:45 2011 +0000 mmc: sdhi: support up to 3 interrupt sources Convert the SDHI code to support more than a single interrupt source. Needed to support hardware that uses GIC instead of INTC as interrupt controller. Will also allow us to remove the irq forwarding workaround from the INTC code in the future. Signed-off-by: Simon Horman Signed-off-by: Magnus Damm Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 1f7d6819e56dda651a32b0193ff9e7929f62709f Author: Magnus Damm Date: Fri May 6 11:02:41 2011 +0000 mmc: sdhi: print physical base address and clock rate Instead of printing out useless information such as the virtual base address and one of 4 interrupts, convert the SDHI probe() to print out physical base address together with clock rate. We do have a struct device so make use of dev_info(). Signed-off-by: Magnus Damm Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 3ab5006471855e0864e0d83a5b39c811c525ed83 Author: Magnus Damm Date: Fri May 6 11:02:37 2011 +0000 mmc: sdhi: no need for special interrupt flags Modify the SDHI driver to get rid of unwanted irq flags. IRQF_DISABLED unused, see include/linux/interrupt.h IRQF_TRIGGER_FALLING only relevant on external IRQ pins, but since SDHI is internal in the SoC this can go away. Needed to support SDHI on sh73a0 that comes with a GIC that errors out with the IRQF_TRIGGER_FALLING setting. Signed-off-by: Magnus Damm Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 8e7bfdb37ac001c95d2c768932b57de1019409cd Author: Magnus Damm Date: Fri May 6 11:02:33 2011 +0000 mmc: tmio/sdhi: break out interrupt request/free Move request_irq()/free_irq() from the shared code in tmio_mmc.c into the SDHI/tmio specific portion in sh_mobile_sdhi.c and tmio_mmc_pio.c. This is ground work to allow us to adjust the SDHI code with IRQ flags and number of interupt sources. Signed-off-by: Magnus Damm Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit df3ef2d3c92c0a562ebde3699af7d12401fddf60 Author: Guennadi Liakhovetski Date: Thu Apr 21 07:20:16 2011 +0000 mmc: protect the tmio_mmc driver against a theoretical race The MMC subsystem does not guarantee, that host driver .request() and .set_ios() callbacks are serialised. Such concurrent calls, however, do not have to be meaningfully supported, drivers just have to make sure to avoid any severe problems. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit faca6648e6f9659400bdafb985b50ba41f1a23b5 Author: Guennadi Liakhovetski Date: Thu May 5 16:20:48 2011 +0000 mmc: add runtime and system power-management support to the MMCIF driver Adding support for runtime power-management to the MMCIF driver allows it to save power as long as no card is present. To also allow to turn off the power domain at that time, we release DMA channels during that time, since on some sh-mobile systems the DMA controller(s) and the MMCIF block belong to the same power domain. System-wide power management has been tested with experimental PM patches on AP4-based systems. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit e6ee7182c3b22afe0b983eac89dc020a93a13179 Author: Guennadi Liakhovetski Date: Thu May 5 16:13:12 2011 +0000 mmc: Add runtime and system-wide PM to the TMIO MMC driver Add runtime and system-wide power management to the TMIO MMC driver in PIO and DMA modes, allowing it to properly save and restore its state during system suspend. Runtime PM is very crude ATM, because the controller has to be powered on all the time to detect card hotplug events. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Chris Ball commit 3b0beafc92406b98cbc2749b8db736f313d390b1 Author: Guennadi Liakhovetski Date: Fri Apr 15 18:30:47 2011 +0000 mmc: sh_mmcif: protect against a theoretical race The MMC subsystem does not guarantee that host driver .request() and .set_ios() callbacks are serialised. Such concurrent calls, however, do not have to be meaningfully supported, drivers just have to make sure to avoid any severe problems. Signed-off-by: Guennadi Liakhovetski Cc: Simon Horman Cc: Magnus Damm Signed-off-by: Chris Ball commit 06e8935febe687e2a561707d4c7ca4245d261dbe Author: Stefan Nilsson XK Date: Wed May 11 17:48:05 2011 +0200 mmc: sdio: optimized SDIO IRQ handling for single irq If there is only 1 function interrupt registered it is possible to improve performance by directly calling the irq handler and avoiding the overhead of reading the CCCR registers. Signed-off-by: Per Forlin Acked-by: Ulf Hansson Reviewed-by: Nicolas Pitre Signed-off-by: Chris Ball commit 253d6a280f77a9b61a76f9b1bfb83545fbd58726 Author: Andy Shevchenko Date: Tue May 10 15:59:01 2011 +0300 mmc: mmc_test: minor clean up, use t = &test.area everywhere Signed-off-by: Andy Shevchenko Signed-off-by: Chris Ball commit aea253ecffecd38b5ab97edd73fbe2842a7de371 Author: Vladimir Motyka Date: Wed May 11 00:00:43 2011 -0400 mmc: card: fix potential null dereference of 'idata' When allocation of idata failed there was a null dereference. Also avoid calling kfree where it isn't needed. Signed-off-by: Vladimir Motyka Signed-off-by: Chris Ball commit cf2b5eea1ea0ff9b3184bc6771bcb93a9fdcd1d9 Author: Arindam Nath Date: Thu May 5 12:19:07 2011 +0530 mmc: sdhci: add support for retuning mode 1 Host Controller v3.00 can support retuning modes 1,2 or 3 depending on the bits 46-47 of the Capabilities register. Also, the timer count for retuning is indicated by bits 40-43 of the same register. We initialize timer_list for retuning the first time we execute tuning procedure. This condition is indicated by SDHCI_NEEDS_RETUNING not being set. Since retuning mode 1 sets a limit of 4MB on the maximum data length, we set max_blk_count appropriately. Once the tuning timer expires, we set SDHCI_NEEDS_RETUNING flag, and if the flag is set, we execute tuning procedure before sending the next command. We need to restore mmc_request structure after executing retuning procedure since host->mrq is used inside the procedure to send CMD19. We also disable and re-enable this flag during suspend and resume respectively, as per the spec v3.00. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit c3ed3877625f10d600b0eca2ca48a68c46aed660 Author: Arindam Nath Date: Thu May 5 12:19:06 2011 +0530 mmc: sdhci: add support for programmable clock mode Host Controller v3.00 supports programmable clock mode as an optional feature. The support for this mode is indicated by non-zero value in bits 48-55 of the Capabilities register. If supported, the actual value of Clock Multiplier is one more than the value provided in the bit fields. We only set Clock Generator Select (bit 5) and SDCLK Frequency Select (bits 8-15) of the Clock Control register in case Preset Value Enable is not set, otherwise these fields are automatically set by the Host Controller based on the UHS mode selected. Also, since the maximum and minimum clock frequency in this mode can be (Base Clock * Clock Mul) and (Base Clock * Clock Mul)/1024 respectively, f_max and f_min have been recalculated to reflect this change. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit 4d55c5a13a189a80d40383f02c8026f9a87d7c87 Author: Arindam Nath Date: Thu May 5 12:19:05 2011 +0530 mmc: sdhci: enable preset value after uhs initialization According to the Host Controller spec v3.00, setting Preset Value Enable in the Host Control2 register lets SDCLK Frequency Select, Clock Generator Select and Driver Strength Select to be set automatically by the Host Controller based on the UHS-I mode set. This patch enables this feature. Since Preset Value Enable makes sense only for UHS-I cards, we enable this feature after successfull UHS-I initialization. We also reset Preset Value Enable next time before initialization. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit b513ea250eb7c36a8afb3df938d632ca6b4df7cd Author: Arindam Nath Date: Thu May 5 12:19:04 2011 +0530 mmc: sd: add support for tuning during uhs initialization Host Controller needs tuning during initialization to operate SDR50 and SDR104 UHS-I cards. Whether SDR50 mode actually needs tuning is indicated by bit 45 of the Host Controller Capabilities register. A new command CMD19 has been defined in the Physical Layer spec v3.01 to request the card to send tuning pattern. We enable Buffer Read Ready interrupt at the very begining of tuning procedure, because that is the only interrupt generated by the Host Controller during tuning. We program the block size to 64 in the Block Size register. We make sure that DMA Enable and Multi Block Select in the Transfer Mode register are set to 0 before actually sending CMD19. The tuning block is sent by the card to the Host Controller using DAT lines, so we set Data Present Select (bit 5) in the Command register. The Host Controller is responsible for doing the verfication of tuning block sent by the card at the hardware level. After sending CMD19, we wait for Buffer Read Ready interrupt. In case we don't receive an interrupt after the specified timeout value, we fall back on fixed sampling clock by setting Execute Tuning (bit 6) and Sampling Clock Select (bit 7) of Host Control2 register to 0. Before exiting the tuning procedure, we disable Buffer Read Ready interrupt and re-enable other interrupts. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit 3a3035114307cd55e024662bb295a87b849f0bd4 Author: Arindam Nath Date: Thu May 5 12:19:03 2011 +0530 mmc: sd: report correct speed and capacity of uhs cards Since only UHS-I cards respond with S18A set in response to ACMD41, we set the card as ultra-high-speed after successfull initialization. We need to decide whether a card is SDXC based on the C_SIZE field of CSDv2.0 register. According to Physical Layer spec v3.01, the minimum value of C_SIZE for SDXC card is 00FFFFh. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit 5371c927bcd06a5c9dd6785bab2d452b87d9abc6 Author: Arindam Nath Date: Thu May 5 12:19:02 2011 +0530 mmc: sd: set current limit for uhs cards We decide on the current limit to be set for the card based on the Capability of Host Controller to provide current at 1.8V signalling, and the maximum current limit of the card as indicated by CMD6 mode 0. We then set the current limit for the card using CMD6 mode 1. As per the Physical Layer Spec v3.01, the current limit switch is only applicable for SDR50, SDR104, and DDR50 bus speed modes. For other UHS-I modes, we set the default current limit of 200mA. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit 49c468fcf878d2c86e31920cf54aa90c88418a66 Author: Arindam Nath Date: Thu May 5 12:19:01 2011 +0530 mmc: sd: add support for uhs bus speed mode selection This patch adds support for setting UHS-I bus speed mode during UHS-I initialization procedure. Since both the host and card can support more than one bus speed, we select the highest speed based on both of their capabilities. First we set the bus speed mode for the card using CMD6 mode 1, and then we program the host controller to support the required speed mode. We also set High Speed Enable in case one of the UHS-I modes is selected. We take care to reset SD clock before setting UHS mode in the Host Control2 register, and then re-enable it as per the Host Controller spec v3.00. We then set the clock frequency for the UHS-I mode selected. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit 758535c4e3cdd2b5b09565d9651aaa541aac3de8 Author: Arindam Nath Date: Thu May 5 12:19:00 2011 +0530 mmc: sdhci: reset sdclk before setting high speed enable As per Host Controller spec v3.00, we reset SDCLK before setting High Speed Enable, and then set it back to avoid generating clock gliches. Before enabling SDCLK again, we make sure the clock is stable, so we use sdhci_set_clock(). Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit d6d50a15a2897d4133d536dd4343b5cf21163db3 Author: Arindam Nath Date: Thu May 5 12:18:59 2011 +0530 mmc: sd: add support for driver type selection This patch adds support for setting driver strength during UHS-I initialization procedure. Since UHS-I cards set S18A (bit 24) in response to ACMD41, we use this as a base for UHS-I initialization. We modify the parameter list of mmc_sd_get_cid() so that we can save the ROCR from ACMD41 to check whether bit 24 is set. We decide whether the Host Controller supports A, C, or D driver type depending on the Capabilities register. Driver type B is suported by default. We then set the appropriate driver type for the card using CMD6 mode 1. As per Host Controller spec v3.00, we set driver type for the host only if Preset Value Enable in the Host Control2 register is not set. SDHCI_HOST_CONTROL has been renamed to SDHCI_HOST_CONTROL1 to conform to the spec. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit cc0a5a587dece540b84f3a862f58118dedc847ab Author: Kuninori Morimoto Date: Wed May 25 02:49:18 2011 +0000 ARM: arch-shmobile: sh7372: add renesas_usbhs irq support renesas_usbhs is remake version of r8a66597 Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 54525552c6ccfd867e819845da14be994e303218 Author: Guennadi Liakhovetski Date: Tue May 24 10:23:59 2011 +0000 sh: mark DMA slave ID 0 as invalid This makes it possible to leave DMA slave IDs in the platform data at default 0 value without hitting DMA channel allocation error paths. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 1c7fcbed1adee44708dafb65ac40b186c203d7e8 Author: Damian Date: Tue May 24 07:01:22 2011 +0000 sh_mobile_meram: MERAM platform data for LCDC Based on the patch by Takanari Hayama Add the necessary platform data to add MERAM functionality to LCDC Includes platform data for both the AP4EVB and mackerel Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit eae9b85b5f65027df64130d8a3eeb2de9d094eda Author: Damian Date: Tue May 24 07:01:21 2011 +0000 sh_mobile_meram: Safely disable MERAM operation when not initialized If the MERAM platform data is defined, but the MERAM has not been properly initaliazed we need to safely fall back to non-MERAM operation. Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit 416656ca427296c646c4a75d9a58769d582ca90c Author: Magnus Damm Date: Tue May 24 11:19:35 2011 +0000 ARM: mach-shmobile: sh73a0: mark DMA slave ID 0 as invalid This makes it possible to leave DMA slave IDs in the platform data at default 0 value without hitting DMA channel allocation error paths. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit f7481d012060d057b2727851373ca957958d41f1 Author: Guennadi Liakhovetski Date: Tue May 24 10:24:03 2011 +0000 ARM: mach-shmobile: mark DMA slave ID 0 as invalid This makes it possible to leave DMA slave IDs in the platform data at default 0 value without hitting DMA channel allocation error paths. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 6820e69c5e52cd127ab99e2f52664ed1e59e902f Author: Magnus Damm Date: Tue May 24 10:42:15 2011 +0000 ARM: mach-shmobile: Enable DMAEngine for SDHI on AG5EVM Add SDHI0 and SDHI1 slave ids for RX and TX to enable DMA Engine support for SDHI on the AG5EVM board. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 19aec34bd8c7309e39b19ed3bc9b7989d138b043 Author: Magnus Damm Date: Tue May 24 10:40:33 2011 +0000 ARM: mach-shmobile: Enable DMAEngine for MMCIF on AG5EVM Simply add MMCIF slave ids for RX and TX to enable DMA Engine support for the AG5EVM board. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 681e1b3eeb3606e06a7c4984e8058df84296f8bb Author: Magnus Damm Date: Tue May 24 10:37:16 2011 +0000 ARM: mach-shmobile: sh73a0 DMA Engine support for SY-DMAC Add SY-DMAC support via shdma.c to the sh73a0 SoC including slave ids, platform data and clock bindings. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit d026e00e5841aa5612c2a877b688ffb7d99dd60a Author: Magnus Damm Date: Tue May 24 10:31:28 2011 +0000 dmaengine: shdma: Update SH_DMAC_MAX_CHANNELS to 20 Update SH_DMAC_MAX_CHANNELS to support the 20 DMA channels included in the sh73a0 SY-DMAC hardware. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 300e5f97d2a32196cbe03104cd6ffe2af97d9338 Author: Magnus Damm Date: Tue May 24 10:31:20 2011 +0000 dmaengine: shdma: Fix SH_DMAC_MAX_CHANNELS handling Fix the shdma.c handing of SH_DMAC_MAX_CHANNELS to avoid overwriting the chan_irq[] and chan_flag[] arrays in the case of pdata->channel_num is larger than SH_DMAC_MAX_CHANNELS. With this patch applied up to SH_DMAC_MAX_CHANNELS will be used by the shdma.c driver. If more channels are available in the platform data the user will be notified on the console. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 26fc02ab5551349b2e593829a76cb44328ee7f61 Author: Magnus Damm Date: Tue May 24 10:31:12 2011 +0000 dmaengine: shdma: Make second memory window optional This patch makes the shdma.c driver allow slave operation on DMA hardware mapped with a single I/O-memory window. The dmae_set_dmars() function is adjusted to use the first memory window in case of a missing DMARS window. At probe() time the code is updated to enable DMA_SLAVE only if slave information is passed with the platform data. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 66ad12931d523e833516659eafcc29af9a08fff3 Author: Paul Mundt Date: Wed May 25 11:22:58 2011 +0900 ARM: mach-shmobile: Tidy up after SH7372 pm changes. Signed-off-by: Paul Mundt commit 082a8ca1d3a2fbab76dba8ff66bc25c46677361d Author: Magnus Damm Date: Fri Apr 29 02:39:32 2011 +0900 ARM: mach-shmobile: sh7372 Core Standby CPUIdle This patch ties in the previously added sh7372 sleep mode known as Core Standby together with the shared SH-Mobile ARM CPUIdle implementation. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 0af4817b80870cc12f4b6f38d89f3c012a7a6b28 Author: Magnus Damm Date: Fri Apr 29 02:36:07 2011 +0900 ARM: mach-shmobile: CPUIdle support This patch adds a shared SH-Mobile ARM specific CPUIdle implementation supporting WFI only at this point. It serves as a common point for late registration of the arch-specific CPUIdle code, and supports adding extra sleep modes using the callback shmobile_cpuidle_setup() together with shmobile_cpuidle_modes[]. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 97991657be8d85c2883ca477964f271d8c1bb96d Author: Magnus Damm Date: Fri Apr 29 02:28:08 2011 +0900 ARM: mach-shmobile: sh7372 Core Standby Suspend-to-RAM Add sh7372 Core Standby sleep mode support and tie it in with the shared SH-Mobile ARM suspend code. The Core Standby mode is the lightest sh7372-specific sleep mode, cutting power to the ARM core excluding the L2 cache. Any interrupt source can be used for wakeups. The low level portion of this code is based on the TI OMAP sleep code in sleep34xx.S, thanks to them. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit c3dada1894de46139c21352a1000c0fd02d308d5 Author: Magnus Damm Date: Fri Apr 29 02:23:28 2011 +0900 ARM: mach-shmobile: Suspend-to-RAM support This patch adds a simple Suspend-to-RAM implementation for SH-Mobile ARM. The struct shmobile_suspend_ops are kept global to allow cpu-specific code to override the callbacks if needed. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit e2968f7018193eb5385a925225f135c9ba61eb93 Merge: af1ce6b f64d8a5 Author: Paul Mundt Date: Wed May 25 11:06:36 2011 +0900 Merge branch 'mb862xxfb-for-next' of git://git.denx.de/linux-2.6-agust commit 6a8a98b22b10f1560d5f90aded4a54234b9b2724 Author: Jamie Iles Date: Mon May 23 10:23:43 2011 +0100 mtd: kill CONFIG_MTD_PARTITIONS Now that none of the drivers use CONFIG_MTD_PARTITIONS we can remove it from Kconfig and the last remaining uses. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit eea72d5fdf59879edb2c6639b0b7cc385e0df646 Author: Jamie Iles Date: Mon May 23 10:23:42 2011 +0100 mtd: remove add_mtd_partitions, add_mtd_device and friends These symbols are replaced with mtd_device_register() (and removal with mtd_device_unregister()) for public registration. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit ee0e87b174bb41f0310cf089262bf5dd8f95a212 Author: Jamie Iles Date: Mon May 23 10:23:40 2011 +0100 mtd: convert remaining users to mtd_device_register() The older add_mtd_device()/add_mtd_partitions() and their removal counterparts will soon be gone. Replace uses with mtd_device_register() and mtd_device_unregister(). Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 6b57c11601c8fa4bfa046513c4df155b3b58ea89 Author: Jamie Iles Date: Mon May 23 10:23:39 2011 +0100 mtd: samsung onenand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Kyungmin Park Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit ff6e1b26d510b1d3459665c66026977c9e0569b8 Author: Jamie Iles Date: Mon May 23 10:23:38 2011 +0100 mtd: omap2 onenand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Kyungmin Park Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit c52840f878d373677fa98223e2204d17a30fbfd5 Author: Jamie Iles Date: Mon May 23 10:23:37 2011 +0100 mtd: txx9ndfmc: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit d1e084e6637fa23de92e4ffb04c99b10daefa6e9 Author: Jamie Iles Date: Mon May 23 10:23:36 2011 +0100 mtd: tmio_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5667bc8a5b1ef152cebaf8004026ff6825949116 Author: Jamie Iles Date: Mon May 23 10:23:35 2011 +0100 mtd: socrates_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 6baed700f21c9b200e344518932a7046b05853a4 Author: Jamie Iles Date: Mon May 23 10:23:34 2011 +0100 mtd: sharpsl: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit af86ea8fa3df5516175ec948875f6e742e82c1ad Author: Jamie Iles Date: Mon May 23 10:23:33 2011 +0100 mtd: s3c2410 nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Ben Dooks Cc: Kukjin Kim Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit acd4134ac9706d9a7ea1c1babee9a313a8e9cac6 Author: Jamie Iles Date: Mon May 23 10:23:32 2011 +0100 mtd: ppchameleonevb: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 55c0689c08cfd0c596245d64c116794c9ee06a74 Author: Jamie Iles Date: Mon May 23 10:23:31 2011 +0100 mtd: orion_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 54e07f5482cf76e87f1f56f709f279b164a620a5 Author: Jamie Iles Date: Mon May 23 10:23:30 2011 +0100 mtd: omap2: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a04d23dfea631993bcb256c638e379c002af9e4f Author: Jamie Iles Date: Mon May 23 10:23:29 2011 +0100 mtd: nomadik_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 1f3a7c626f7e55657255df89fab418714502093a Author: Jamie Iles Date: Mon May 23 10:23:28 2011 +0100 mtd: ndfc: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 759f1d325c381470a48c666eb2430af4834ef3ee Author: Jamie Iles Date: Mon May 23 10:23:27 2011 +0100 mtd: mxc_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 248f56d3870c03a031755a403f942028c68d39e2 Author: Jamie Iles Date: Mon May 23 10:23:26 2011 +0100 mtd: mpc5121_nfc: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 85358b2aa951ad096af444765baf1e275e8a0749 Author: Jamie Iles Date: Mon May 23 10:23:25 2011 +0100 mtd: jz4740_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit c4a5522020ab3842880359aaae4464f08dcc74d5 Author: Jamie Iles Date: Mon May 23 10:23:24 2011 +0100 mtd: h1910: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 99335d0002439b92917512dd8baeff60f774809f Author: Jamie Iles Date: Mon May 23 10:23:23 2011 +0100 mtd: fsmc_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 13c41db94902c4ff62b24dc911bc8d4d75eb17f5 Author: Jamie Iles Date: Mon May 23 10:23:22 2011 +0100 mtd: fsl_upm: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit ed9281e60af1d63222eff69527e22e382e558887 Author: Jamie Iles Date: Mon May 23 10:23:21 2011 +0100 mtd: fsl_elbc_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit da499d414b964403e0070a2b0113b1a4180c6fbe Author: Jamie Iles Date: Mon May 23 10:23:20 2011 +0100 mtd: edb7312 nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 0f47e952fe8b9eb67c24b96e7c48c075657634ba Author: Jamie Iles Date: Mon May 23 10:23:19 2011 +0100 mtd: diskonchip: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 098771158813fb391dd6c1c8b907599db91fb0c7 Author: Jamie Iles Date: Mon May 23 10:23:18 2011 +0100 mtd: davinci_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the check for mtd_has_partitions() as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a17f7ca510035beee7527f352b3a46fe5dcabce1 Author: Jamie Iles Date: Mon May 23 10:23:17 2011 +0100 mtd: cs553x_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 46720bbf67224660271a04a7ab03913fd0d3c206 Author: Jamie Iles Date: Mon May 23 10:23:16 2011 +0100 mtd: cafe_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 88146872f0fbd89e425e3e0db71d42df8db9d932 Author: Jamie Iles Date: Mon May 23 10:23:15 2011 +0100 mtd: bf5xx_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 63c9dd92579fbaa59fead0e9b75dd7db43130d21 Author: Jamie Iles Date: Mon May 23 10:23:14 2011 +0100 mtd: bcm_umi_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit e6232b42438cefc06124b1e09613d8b27f6b6f5d Author: Jamie Iles Date: Mon May 23 10:23:13 2011 +0100 mtd: atmel_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5e7e96866df7a9ff7733bd1660e0a3c510bf1b45 Author: Jamie Iles Date: Mon May 23 10:23:12 2011 +0100 mtd: uclinux: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit b5c0a4ea1ba0b6840bc8522c6ce901a7658b395a Author: Jamie Iles Date: Mon May 23 10:23:11 2011 +0100 mtd: tqm8xll: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit f6c11c1826a6ed853019cf2bdf51489d10c07642 Author: Jamie Iles Date: Mon May 23 10:23:10 2011 +0100 mtd: scx200_docflash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 2fe2e24ead67530d624e0bb23da9f0bfdec44f8c Author: Jamie Iles Date: Mon May 23 10:23:09 2011 +0100 mtd: sa1100-flash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 16b0eb154393831eddcf4f19cdca323611c86c9f Author: Jamie Iles Date: Mon May 23 10:23:08 2011 +0100 mtd: rbtx4939-flash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 095dd5003f531514170fd1645ab31ed88b56aaf5 Author: Jamie Iles Date: Mon May 23 10:23:07 2011 +0100 mtd: plat-ram: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 902766bfdfdacc01deb6857bada61cd1e5dc40b0 Author: Jamie Iles Date: Mon May 23 10:23:06 2011 +0100 mtd: latch-addr-flash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 95bf224f6c26e5dc4f411f95bb2efa5487ed57bd Author: Jamie Iles Date: Mon May 23 10:23:05 2011 +0100 mtd: intel_vr_nor: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 96b639fd5319986fc21f9d99a78cae97d099bc4c Author: Jamie Iles Date: Mon May 23 10:23:04 2011 +0100 mtd: impa7: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 360e40aedb59799fef4ff58fe6b9436cd487f6e6 Author: Jamie Iles Date: Mon May 23 10:23:03 2011 +0100 mtd: h720x-flash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit fdbf3bf6b855233cd618021c702accb69b8b10bc Author: Jamie Iles Date: Mon May 23 10:23:02 2011 +0100 mtd: gpio-addr-flash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5af3aa24cf552e1a8c2874697d1f30769d8abf5c Author: Jamie Iles Date: Mon May 23 10:23:01 2011 +0100 mtd: edb7312: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit bc2ffddc46be60c12462f8ae60ed0eae2a62a17b Author: Jamie Iles Date: Mon May 23 10:23:00 2011 +0100 mtd: dc21285: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 98b3979b92143656a2361eb5bdc14f5b50b95bce Author: Jamie Iles Date: Mon May 23 10:22:59 2011 +0100 mtd: sst25l: convert to mtd_device_register() Convert to mtd_device_register() and remove the check for mtd_has_partitions() as we always have partitioning enabled now. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 436c06da0482d7fb4843d3e546196b66433c56e6 Author: Jamie Iles Date: Mon May 23 10:22:58 2011 +0100 mtd: dataflash: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit ba52f3a253d12848fa0e9c242a3406963ae98ece Author: Jamie Iles Date: Mon May 23 10:22:57 2011 +0100 mtd: m25p80: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 711a632d1f0d3ffc576f7a298f66888f66014d61 Author: Jamie Iles Date: Mon May 23 10:22:56 2011 +0100 mtd: onenand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Kyungmin Park Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 47854888cc21cb1afd7797c66886a8b06cf35979 Author: Jamie Iles Date: Mon May 23 10:22:55 2011 +0100 mips: tx99: remove CONFIG_MTD_PARTITIONS check CONFIG_MTD_PARTITIONS no longer exists as MTD partitioning is always enabled now. Cc: Ralf Baechle Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5851becb5bae13ca6525fd0d97116043fcb0e20e Author: Jamie Iles Date: Mon May 23 10:22:54 2011 +0100 mtd: octeon: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Ralf Baechle Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 36cda05b375ad0fbaba3879047b62d270d214376 Author: Jamie Iles Date: Mon May 23 10:22:53 2011 +0100 mtd: cris: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Mikael Starvik Cc: Jesper Nilsson Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit fee88c58c7ddf6f0f41b76a59253d55d321da41a Author: Jamie Iles Date: Mon May 23 10:22:52 2011 +0100 mtd: bfin: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Mike Frysinger Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 78352282f3960fa2a60af363749c14b4c138bc63 Author: Jamie Iles Date: Mon May 23 10:22:51 2011 +0100 mtd: s3c2410: remove CONFIG_MTD_PARTITIONS test MTD is now always build with partitioning support so this can be removed. Cc: Ben Dooks Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 3dfad123e81cdf11642aa63da1149ee71a369d2d Author: Jamie Iles Date: Mon May 23 10:22:50 2011 +0100 mtd: pxa: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Cc: David Woodhouse Cc: Artem Bityutskiy Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 6cbbf2ffa170c4cb5f1d1c0dd0f2bd597813a002 Author: Jamie Iles Date: Mon May 23 10:22:49 2011 +0100 mtd: ixp: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Imre Kaloz Cc: Krzysztof Halasa Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit c06addd3153af8e6ee10079e8afa2c3bb8a1516e Author: Jamie Iles Date: Mon May 23 10:22:48 2011 +0100 arm: mtd: gemini: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Cc: Hans Ulli Kroll Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 3ee904f275ccbde7407ba7575006d94774cb20d9 Author: Jamie Iles Date: Mon May 23 10:22:47 2011 +0100 mtd: plat_nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5ffcaf3d947ab20d52cf750c2c699328cc6ca9ff Author: Jamie Iles Date: Mon May 23 10:22:46 2011 +0100 mtd: nand: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 984e6d8ec5abe0487e4c3c22d233cd6ba8695cda Author: Jamie Iles Date: Mon May 23 10:22:45 2011 +0100 mtd: physmap: convert to mtd_device_register() Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS preprocessor conditionals as partitioning is always available. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 11b73c8b10e58ae90c12e51be5531007e86a9c66 Author: Jamie Iles Date: Mon May 23 10:22:44 2011 +0100 mtd: provide of_mtd_parse_partitions for !CONFIG_MTD_OF_PARTS If we don't have OpenFirmware enabled then provide a stub of_mtd_parse_partitions that returns no partitions so drivers don't need ifdeffery inside. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit f5671ab3f67a10f7234de21464391c20c1ef8ebb Author: Jamie Iles Date: Mon May 23 17:15:46 2011 +0100 mtd: introduce mtd_device_(un)register() To prepare for the removal of add_mtd_device and add_mtd_partitions(), introduce mtd_device_register(). This will create partitions if they are supplied or register the whole device if there are no partitions. Once all drivers are converted to use mtd_device_register(), add_mtd_device() and add_mtd_partitions() will be made internal only. v2: move kerneldoc to implementation file and fixup some kerneldoc warnings. Artem: tweak comments: remove junk tabs, use dots consistently. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5fcb033159bc4f66782f13fa1e7f981f41a951ef Author: Jamie Iles Date: Mon May 23 10:22:42 2011 +0100 mtd: always build partitioning support There are very few situations where MTD partitioning is not required, and the benefit in code size reduction by making this configurable does not warrant the level of ifdeffery needed. Artem: this patch is not final - we just make sure that mtd partitions are always compiled in, and at the end of the series we'll kill MTD_PARTITIONS altogether. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit d5ca51292d899a19882cb9bf8f64079209e688fe Author: Wanlong Gao Date: Fri May 20 21:14:30 2011 +0800 mtd:fix the bad format in the mtdcore.c Remove the spare spaces in the head of the lines. Signed-off-by: Wanlong Gao Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 8d8f26e19cae48541b824f164021e1ff05067f8c Author: Maxin B. John Date: Fri May 20 15:44:10 2011 +0100 mtd: mtdswap: fix possible null dereference This patch fixes the possible null dereference of the variable "oinfo" Thanks to Coverity for spotting this. Signed-off-by: Maxin B. John Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5c8d2607756a63ddf5b2f2dd368851b8febe4e72 Author: Tadashi Abe Date: Thu May 19 16:17:50 2011 +0900 mtd: remove duplicate assignment of chip->state This is a trivial patch which removes unnecessary assignment of chip->state in put_chip(). It's duplicated. Signed-off-by: Tadashi Abe Acked-by: Joakim Tjernlund Signed-off-by: David Woodhouse commit 100f2341e305f98de3aa12fb472771ab029cbda7 Author: Tadashi Abe Date: Thu May 19 15:58:15 2011 +0900 mtd: fix hang-up in cfi erase and read contention cfi erase command hangs up when erase and read contention occurs. If read runs at the same address as erase operation, read issues Erase-Suspend via get_chip() and the erase goes into sleep in wait queue. But in this case, read operation exits by time-out without waking it up. I think the other variants (0001, 0020 and lpddr) have the same problem too. Tested and verified the patch only on CFI-0002 flash, though. Signed-off-by: Tadashi Abe Acked-by: Joakim Tjernlund Signed-off-by: David Woodhouse commit 52534f2dba5d033c0c33e515faa2767d7e8e986a Author: Wanlong Gao Date: Tue May 17 22:36:18 2011 +0800 mtd: simplify get_mtd_device_nm function 'get_mtd_device_nm()' has a piece of code which equivalent to what '__get_mtd_device()' does - remove this duplicated code and use ''__get_mtd_device()' instead. Artem: changed commit message. Artem: while on it, remove an unnecessary extra empty line Signed-off-by: Wanlong Gao Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 7c802fbd541448accec7bbc0e72ef38693a29593 Author: Artem Bityutskiy Date: Tue May 17 11:13:17 2011 +0300 mtd: be silent when mtd partition parser cannot be found Currently when we register partitions in 'parse_mtd_partitions()' we accept the list of parsers we should try. And if one of the parsers was not found we print a message. Well, first of all this whole idea is bad - look at how many 'part_probes' and 'part_probe_types' variables we have - nearly every driver defines one. Instead, we should just go through all registered parsers all the time. But this needs to be worked on separately. This patch makes life of MTD partitions' users a bit simpler and allows them to safely request parsers which have not been registered - 'parse_mtd_partitions()' will not print a "not available" message in this case. The point is that drivers do not have to do things like this any longer: static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", "afs", NULL }; but can simply do like this: static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", "afs", NULL }; Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 447d9bd82020f159456ee00b011486205205aaa7 Author: Alexey Dobriyan Date: Fri May 13 23:34:19 2011 +0300 mtd: convert to seq_file interface ->read_proc interface is going away, switch to seq_file. Signed-off-by: Alexey Dobriyan Acked-by: Mike Frysinger Signed-off-by: Andrew Morton Signed-off-by: David Woodhouse commit 013909c4ffd16ded4895528b856fd8782df04dc6 Author: Arindam Nath Date: Thu May 5 12:18:58 2011 +0530 mmc: sd: query function modes for uhs cards SD cards which conform to Physical Layer Spec v3.01 can support additional Bus Speed Modes, Driver Strength, and Current Limit other than the default values. We use CMD6 mode 0 to read these additional card functions. The values read here will be used during UHS-I initialization steps. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit f2119df6b764609af4baceb68caf1e848c1c8aa7 Author: Arindam Nath Date: Thu May 5 12:18:57 2011 +0530 mmc: sd: add support for signal voltage switch procedure Host Controller v3.00 adds another Capabilities register. Apart from other things, this new register indicates whether the Host Controller supports SDR50, SDR104, and DDR50 UHS-I modes. The spec doesn't mention about explicit support for SDR12 and SDR25 UHS-I modes, so the Host Controller v3.00 should support them by default. Also if the controller supports SDR104 mode, it will also support SDR50 mode as well. So depending on the host support, we set the corresponding MMC_CAP_* flags. One more new register. Host Control2 is added in v3.00, which is used during Signal Voltage Switch procedure described below. Since as per v3.00 spec, UHS-I supported hosts should set S18R to 1, we set S18R (bit 24) of OCR before sending ACMD41. We also need to set XPC (bit 28) of OCR in case the host can supply >150mA. This support is indicated by the Maximum Current Capabilities register of the Host Controller. If the response of ACMD41 has both CCS and S18A set, we start the signal voltage switch procedure, which if successfull, will switch the card from 3.3V signalling to 1.8V signalling. Signal voltage switch procedure adds support for a new command CMD11 in the Physical Layer Spec v3.01. As part of this procedure, we need to set 1.8V Signalling Enable (bit 3) of Host Control2 register, which if remains set after 5ms, means the switch to 1.8V signalling is successfull. Otherwise, we clear bit 24 of OCR and retry the initialization sequence. When we remove the card, and insert the same or another card, we need to make sure that we start with 3.3V signalling voltage. So we call mmc_set_signal_voltage() with MMC_SIGNAL_VOLTAGE_330 set so that we are back to 3.3V signalling voltage before we actually start initializing the card. Tested by Zhangfei Gao with a Toshiba uhs card and general hs card, on mmp2 in SDMA mode. Signed-off-by: Arindam Nath Reviewed-by: Philip Rakity Tested-by: Philip Rakity Acked-by: Zhangfei Gao Signed-off-by: Chris Ball commit c5d8c0cae4af7d78823d32fcd1c458ee1a1b5489 Author: Kishore Kadiyala Date: Wed May 11 21:17:27 2011 +0530 mtd: omap: fix subpage ecc issue with prefetch When reading/writing a subpage (When HW ECC is not available/enabled) for number of bytes not aligned to 4, the mis-aligned bytes are handled first (by cpu copy method) before enabling the Prefetch engine to/from 'p'(start of buffer 'buf'). Then it reads/writes rest of the bytes with the help of Prefetch engine, if available, or again using cpu copy method. Currently, reading/writing of rest of bytes, is not done correctly since its trying to read/write again to/from begining of buffer 'buf', overwriting the mis-aligned bytes. Read & write using prefetch engine got broken in commit '2c01946c'. We never hit a scenario of not getting 'gpmc_prefetch_enable' call success. So, problem did not get caught up. Signed-off-by: Kishore Kadiyala Signed-off-by: Vimal Singh Reported-by: Bryan DE FARIA Cc: stable@kernel.org [2.6.35+] Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 61cc8276fa776ced06b0e5b67b57e12c4997d388 Author: Mike Frysinger Date: Mon May 9 10:07:58 2011 -0400 mtd: sst25l: fix section markings The previous section mismatch fix for this driver wasn't entirely correct. The sst25l_flash_info array is now used in the devinit probe func, but is marked as initdata, so building results in the warning: WARNING: drivers/mtd/devices/sst25l.o(.devinit.text): Section mismatch in reference from the function sst25l_probe() to the variable .init.data:sst25l_flash_info Further, the remove func should be devexit rather than exit to match the probe func. Signed-off-by: Mike Frysinger Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit cb87ea28ed9e75a41eb456bfcb547b4e6f10e750 Author: John Calixto Date: Tue Apr 26 18:56:29 2011 -0400 mmc: core: Add mmc CMD+ACMD passthrough ioctl Allows appropriately-privileged applications to send CMD (normal) and ACMD (application-specific; preceded with CMD55) commands to cards/devices on the mmc bus. This is primarily useful for enabling the security functionality built in to every SD card. It can also be used as a generic passthrough (e.g. to enable virtual machines to control mmc bus devices directly). However, this use case has not been tested rigorously. Generic passthrough testing was only conducted for a few non-security opcodes to prove the feasibility of the passthrough. Since any opcode can be sent using this passthrough, it is very possible to render the card/device unusable. Applications that use this ioctl must have CAP_SYS_RAWIO. Security commands tested on TI PCIxx12 (SDHCI), Sigma Designs SMP8652 SoC, TI OMAP3621/OMAP3630 SoC, Samsung S5PC110 SoC, Qualcomm MSM7200A SoC. Signed-off-by: John Calixto Reviewed-by: Andrei Warkentin Reviewed-by: Arnd Bergmann Signed-off-by: Chris Ball commit 641c3187b9d53cfd4c23b0ce2ab18a13d5e775e5 Author: Rabin Vincent Date: Sat Apr 23 20:52:58 2011 +0530 mmc: block: init force_ro sysfs attribute To avoid lockdep warnings: BUG: key dc90a520 not in .data! ------------[ cut here ]------------ WARNING: at /home/rabin/kernel/arm/kernel/lockdep.c:2701 sysfs_add_file_mode+0x4c/0xb0() Modules linked in: [] (unwind_backtrace+0x0/0xe4) from [] (warn_slowpath_common+0x4c/0x64) [] (warn_slowpath_common+0x4c/0x64) from [] (warn_slowpath_null+0x18/0x1c) [] (warn_slowpath_null+0x18/0x1c) from [] (sysfs_add_file_mode+0x4c/0xb0) [] (sysfs_add_file_mode+0x4c/0xb0) from [] (mmc_add_disk+0x40/0x64) [] (mmc_add_disk+0x40/0x64) from [] (mmc_blk_probe+0x188/0x1fc) [] (mmc_blk_probe+0x188/0x1fc) from [] (mmc_bus_probe+0x14/0x18) ... Signed-off-by: Rabin Vincent Signed-off-by: Chris Ball commit 82b0e23a295cc58d1290017ee97a40956ad68d94 Author: Takashi Iwai Date: Thu Apr 21 20:26:38 2011 +0200 mmc: sdhci: Fix read-only detection with JMicron 388 chip On HP laptops with JMicron 388 chip, the write-locked SD card isn't detected correctly as read-only in many cases. This is because the PRESENT_STATE register becomes unsable just after plugging, and it returns the WRITE_PROTECT bit wrongly at the first read. This patch fixes the read-only detection by adding a new sdhci quirk indicating to check the register more intensively with a relatively long delay. The patch is tested with 2.6.39-rc4 kernel. Cc: Aries Lee Signed-off-by: Takashi Iwai Signed-off-by: Chris Ball commit 3d2d2b657f61cccc4b339b031b106c911ea942a0 Author: Kevin Cernekee Date: Sun May 8 10:48:02 2011 -0700 mtd: m25p80: Add Spansion S25FL512S, S70FL01GS S25FL512S = 64MiB single die, same family as S25FL256S S70FL01GS = 2x S25FL512S dies in one package (separate chip selects) These devices are not sampling yet, but they are expected to be very similar to S25FL256S, which has been tested. Signed-off-by: Kevin Cernekee Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit f06c9153f5ecd47dfed23f87b9d08e42ff0e4170 Author: Andrei Warkentin Date: Thu Apr 21 22:46:13 2011 -0500 mmc: Ensure hardware partitions don't mess with mmcblk device naming. With the hardware partitions support (which represent additional logical devices present on MMC), devidx does not correspond with index used to form /dev/mmcblkX names. So use an additional allocated index for device names. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit baa9ae3cfdf8ca2cb019c02c0a9e16f63cdd0260 Author: Kevin Cernekee Date: Sun May 8 10:48:01 2011 -0700 mtd: m25p80: Add Spansion S25FL256S These are 32MiB parts which use a slightly different 4-byte enable sequence from Macronix. Default to the Spansion 4-byte scheme in set_4byte(), as it is more likely to be copied by other vendors. Signed-off-by: Kevin Cernekee Signed-off-by: David Woodhouse commit 393c1a34dd852dbf0c409ec94dd48057100480ea Author: Philip Rakity Date: Fri Jan 21 11:26:40 2011 -0800 mmc: sdhci: Add pre and post reset processing for chip specific reset Marvell pxa controllers have private registers that may need to be modified before and after a reset is done. For example, the SD reset operation, RESET_ALL, will reset the private registers to their default state. This will cause the clock adjustment registers that may have been programmed to have incorrect values. RESET_DATA sometimes needs to be delayed before the reset is done (depending on SoC) to enable any transactions being handled by the SDIO card to be completed. Needed in pre SD 3.0 silicon to handle clock gating. Implement hooks to allow this to happen. Signed-off-by: Philip Rakity Signed-off-by: Chris Ball commit aa0846534b9c7238187b4276e83efb9969d4c6e3 Author: Kevin Cernekee Date: Sun May 8 10:48:00 2011 -0700 mtd: m25p80: Clean up JEDEC manufacturer checks Use the manufacturer ID names from cfi.h instead of hard-coding hex constants. Introduce a JEDEC_MFR macro for clarity. Signed-off-by: Kevin Cernekee Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 16004f3685541c57a280bae3fde6562256fd0ba5 Author: Kevin Cernekee Date: Sun May 8 10:47:59 2011 -0700 mtd: m25p80: Add Numonyx m25px32 family Signed-off-by: Kevin Cernekee Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 4b01681c77642c62a833187066c35e71e59caaf5 Author: Mark Brown Date: Tue Apr 19 18:44:17 2011 +0100 mmc: sdhci: Fix SDHCI_QUIRK_TIMEOUT_USES_SDCLK Commit 373e6a (mmc: sdhci: R1B command handling + MMC_CAP_ERASE) moved the handling of SDHCI_QUIRK_TIMEOUT_USES_SDCLK from sdhci_calc_timeout() to sdhci_add_host(). This causes division by zero errors on at least the S3C SDHCI controller as the quirk implementation needs host->clock set to work but host->clock has not been set when sdhci_add_host() is called. Fix this by backing out that portion of the change, the clock may vary at runtime anyway. It does occur to me that we may want to move the quirk to where we set the clock but this seems more invasive and I'm concerned about undesirable side effects. Signed-off-by: Mark Brown Cc: Andrei Warkentin Signed-off-by: Chris Ball commit c89eeda810f0ec4f0eee0206ebb79e476df9f83e Author: Jamie Iles Date: Fri May 6 15:28:57 2011 +0100 mtd: denali: detect the number of banks Not all configurations of the Denali controller support 4 banks. The controller can support between 1 and 16 banks. Detect this from the design features register. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 24f5b53ba076e983bc64fa48534ca795d7813d51 Author: Chris Ball Date: Wed Apr 13 23:49:45 2011 -0400 mmc: initialize struct mmc_request at declaration time Converts from: struct mmc_request mrq; memset(&mrq, 0, sizeof(struct mmc_request)); to: struct mmc_request mrq = {0}; because it's shorter, as performant, and easier to work out whether initialization has happened. Signed-off-by: Chris Ball commit 9589bf5bed2936a159fc96c96339f15a512fdfa9 Author: Jamie Iles Date: Fri May 6 15:28:56 2011 +0100 mtd: denali: remove nearly-duplicated register definitions The controller has interrupt enable/status register pairs for each bank (along with ECC and status registers) that differ only in address offset. Rather than providing definitions for each register, make the address a macro so that it scales for devices with different numbers of banks. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a61ad2b49bfce94dfddce828cd9222e4b9e7825b Author: Chris Ball Date: Wed Apr 13 23:46:05 2011 -0400 mmc: initialize struct mmc_data at declaration time Converts from: struct mmc_data data; memset(&data, 0, sizeof(struct mmc_data)); to: struct mmc_data data = {0}; because it's shorter, as performant, and easier to work out whether initialization has happened. Signed-off-by: Chris Ball commit 1278dba167f01bb3c6626d16450d31129d041087 Author: Chris Ball Date: Wed Apr 13 23:40:30 2011 -0400 mmc: initialize struct mmc_command at declaration time Converts from: struct mmc_command cmd; memset(&cmd, 0, sizeof(struct mmc_command)); to: struct mmc_command cmd = {0}; because it's shorter, as performant, and easier to work out whether initialization has happened. Signed-off-by: Chris Ball commit 84457949e4921f15548a9d317a4a4318b3c3af75 Author: Jamie Iles Date: Fri May 6 15:28:55 2011 +0100 mtd: denali: convert to generic DMA API Rather than using the PCI specific DMA API, convert to the generic DMA API so that we can use the Denali NAND controller on other bus types. Signed-off-by: Jamie Iles Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 62929e4be3fe4cc632b3b03645e083c6548de531 Author: Chris Ball Date: Wed Apr 13 16:28:34 2011 -0400 mmc: card: Fix use of uninitialized data in mmc_blk_issue_rw_rq. mmc_blk_issue_rw_rq did not zero out mmc_command on stack. Signed-off-by: Chris Ball commit 30574ed143e10dd19295b7d80be55f2cd6764c6f Author: Chris Ball Date: Wed Apr 13 16:25:30 2011 -0400 mmc: core: Fix use of uninitialized data in mmc_send_if_cond. mmc_send_if_cond did not zero out mmc_command on stack. Signed-off-by: Chris Ball commit eff3bba61fc19a64a1ca56343e38b6506bef9dea Author: john.maxin@nokia.com Date: Fri May 6 09:17:21 2011 +0000 mtd: onenand: add missing check Coverity has reported that inside the function "onenand_block_by_block_erase()" in onenand_base.c, we should add a check to prevent the incrementing of possible NULL value for "region" Signed-off-by: Maxin B. John Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 87f6119e25bbe0fd60e76f599d5fa10cf489519c Author: Andrei Warkentin Date: Wed Apr 13 15:33:12 2011 -0500 mmc: core: Fix use of uninitialized data in mmc_cmd_app. mmc_cmd_app did not zero out mmc_command on stack. Reported-by: Chuanxiao Dong Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 6a7a6b45f454686a1549729bfbae31f0b3b595d6 Author: Andrei Warkentin Date: Tue Apr 12 15:06:53 2011 -0500 mmc: quirks: Fix erase/trim for certain SanDisk cards. CMD38 argument is passed through EXT_CSD[113]. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit f6a03cbf43e586211f8ea088148c8ecd3fc4b5be Author: Mikko Vinni Date: Tue Apr 12 09:36:18 2011 -0400 mmc: sdhci: work around broken dma boundary behavior Some SD host controllers (noticed on an integrated JMicron SD reader on an HP Pavilion dv5-1250eo laptop) don't update the dma address register before signaling a dma interrupt due to a dma boundary. Update the register manually to the next boundary (by default 512KiB), at which the transfer stopped. As long as each transfer is at most 512KiB in size (guaranteed by a BUG_ON in sdhci_prepare_data()) and the boundary is kept at the default value, this fix is needed at most once per transfer. Smaller boundaries are taken care of by counting the transferred bytes. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=28462 Signed-off-by: Mikko Vinni Signed-off-by: Chris Ball commit 6f60c22252af05df94352240f30f9fc84090d88d Author: Andrei Warkentin Date: Mon Apr 11 19:11:04 2011 -0400 mmc: quirks: Support for block quirks. Block quirks implemented using core/quirks.c support. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 26d9be11485ea8c1102c3e8eaa7667412eef4950 Author: Artem Bityutskiy Date: Thu Apr 28 20:26:59 2011 +0300 mtd: return badblockbits back In commit c7b28e25cb9beb943aead770ff14551b55fa8c79 the initialization of the backblockbits was accidentally removed. This patch returns it back, because otherwise some NAND drivers are broken. This problem was reported by "Saxena, Parth " here: http://lists.infradead.org/pipermail/linux-mtd/2011-April/035221.html Reported-by: Saxena, Parth Signed-off-by: Artem Bityutskiy Tested-by: Saxena, Parth Acked-by: Saxena, Parth Acked-by: Brian Norris Cc: stable@kernel.org [2.6.36+] Signed-off-by: David Woodhouse commit 371a689f64b0da140c3bcd3f55305ffa1c3a58ef Author: Andrei Warkentin Date: Mon Apr 11 18:10:25 2011 -0500 mmc: MMC boot partitions support. Allows device MMC boot partitions to be accessed. MMC partitions are treated effectively as separate block devices on the same MMC card. Signed-off-by: Andrei Warkentin Acked-by: Arnd Bergmann Signed-off-by: Chris Ball commit 1a258db6f396e26c2c00b19c0107a891895d4584 Author: Andrei Warkentin Date: Mon Apr 11 18:10:24 2011 -0500 mmc: card: block.c cleanup for host claim/release. Move host claim/release into mmc_blk_issue_rq. (This is helpful so that selecting partition only has to happen in one place for these commands.) Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 410fe2f02630fa76b5311c06b7411731202d3b68 Author: Felix Radensky Date: Tue Apr 26 12:36:46 2011 +0300 mtd: nand: ndfc: add multiple chip select support This patch extends NDFC driver to support all 4 chip selects available in NDFC NAND controller. Tested on custom 460EX board with 2 chip select NAND device. Artem: white-space cleanups Signed-off-by: Felix Radensky Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit d3a8d95dcbb726b9cf0bbc166b2473bdd236c88c Author: Andrei Warkentin Date: Mon Apr 11 16:13:43 2011 -0500 mmc: core: Allow setting CMD timeout for CMD6 (SWITCH). CMD6 is an R1B-type command, where DAT is used as busy. Depending on register written using CMD6, timeout value can be different as per spec. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit a3c7778f8153b9e4eceea6738973280b9e63c618 Author: Andrei Warkentin Date: Mon Apr 11 16:13:42 2011 -0500 mmc: sdhci: R1B command handling + MMC_CAP_ERASE. ERASE command needs R1B response, so fix R1B-type command handling for SDHCI controller. For non-DAT commands using a busy response, the cmd->cmd_timeout_ms (in ms) field is used for timeout calculations. Based on patch by Chuanxiao Dong Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit eaa02f751ff4f8abfc2e55a15c20a5a274244418 Author: Andrei Warkentin Date: Mon Apr 11 16:13:41 2011 -0500 mmc: core: Rename erase_timeout to cmd_timeout_ms. Renames erase_timeout to cmd_timeout_ms inside struct mmc_command. First step to making host honor timeouts for non-data-transfer commands. Cleans up erase timeout code. Signed-off-by: Andrei Warkentin Signed-off-by: Chris Ball commit 853c6cac0dc0d9d330deb5b48c19eebafaed1841 Author: Randy Dunlap Date: Tue Apr 12 12:59:09 2011 -0400 mmc: quirks: fix truncation warnings Fix data truncation warnings: .manfid is not unsigned long: drivers/mmc/core/quirks.c:36: warning: large integer implicitly truncated to unsigned type drivers/mmc/core/quirks.c:40: warning: large integer implicitly truncated to unsigned type drivers/mmc/core/quirks.c:43: warning: large integer implicitly truncated to unsigned type drivers/mmc/core/quirks.c:46: warning: large integer implicitly truncated to unsigned type Signed-off-by: Randy Dunlap Signed-off-by: Chris Ball commit 32780cd1350e651e68bdf33b7f5b009d21d5b794 Author: Andrei Warkentin Date: Mon Apr 11 17:02:15 2011 -0500 mmc: quirks: Extends card quirks with MMC/SD quirks matching the CID. The current mechanism is SDIO-only. This allows us to create function-specific quirks, without creating messy Kconfig dependencies, or polluting core/ with function-specific code. Signed-off-by: Andrei Warkentin Acked-by: Arnd Bergmann Signed-off-by: Chris Ball commit 1ddd0d9a3177356f2a29c8f3826ad79e1ad18397 Author: Grant Erickson Date: Fri Apr 8 08:51:34 2011 -0700 JFFS2: retry large buffer allocations Replace direct call to kmalloc for a potentially large, contiguous buffer allocation with one to mtd_kmalloc_up_to which helps ensure the operation can succeed under low-memory, highly- fragmented situations albeit somewhat more slowly. Signed-off-by: Grant Erickson Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit f317dfeb86c83d03304a74ce5426a69422b79547 Author: Wolfram Sang Date: Mon Apr 11 06:11:29 2011 +0200 mmc: core: fix memory leak in mmc_add_host led_trigger_register_simple() allocates memory which must not be leaked in the error-path of mmc_add_host. Move it past the only error-check in the function. Signed-off-by: Wolfram Sang Signed-off-by: Chris Ball commit 3e45cf5e85a4f344fc4c8c901ac057a2402db125 Author: Grant Erickson Date: Fri Apr 8 08:51:33 2011 -0700 mtd: mtdchar: retry large buffer allocations Replace direct call to kmalloc for a potentially large, contiguous buffer allocation with one to mtd_kmalloc_up_to which helps ensure the operation can succeed under low-memory, highly- fragmented situations albeit somewhat more slowly. Signed-off-by: Grant Erickson Tested-by: Ben Gardiner Tested-by: Stefano Babic Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit b177bc9188c04e140e5d8928e88623a92ba751bf Author: Ameya Palande <2ameya@gmail.com> Date: Tue Apr 5 21:13:13 2011 +0300 mmc: sdhci-pci: Fix checkpatch.pl errors This patch fixes 21 errors and 6 warnings reported by checkpatch.pl. Signed-off-by: Ameya Palande <2ameya@gmail.com> Reviewed-by: Wolfram Sang Signed-off-by: Chris Ball commit 14e7dc76f24577694f1c121e6ce1fd2f3d46c726 Author: Ohad Ben-Cohen Date: Tue Apr 5 18:02:26 2011 +0300 mmc: quirks: wl1271 is MMC_QUIRK_DISABLE_CD The wl12xx device supports disconnecting the pull-up resistor on CD/DAT[3] (pin 1) of the card. Tell SDIO core to disconnect that resistor during card init, since we don't need it at that point (and anyway all hosts shall provide pull-up resistors on all data lines DAT[3:0] as described in section 6 of the SD physical specification). As a result, this may save some power, but it's also generally healthy since it prevents both ends from pulling up that pin, which results in undesirable asymmetric physical bus. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit 2059a02dcb84236f9db9197fa9b00418d7b8465b Author: Ohad Ben-Cohen Date: Tue Apr 5 18:02:25 2011 +0300 mmc: add MMC_QUIRK_DISABLE_CD 006ebd5d introduced sdio_disable_cd(), which disconnects the pull-up resistor on CD/DAT[3] (pin 1) of the card. Make it possible to start using sdio_disable_cd() by introducing MMC_QUIRK_DISABLE_CD. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit 0b4043d70af5871908864fa725821bc8e667542d Author: Ohad Ben-Cohen Date: Tue Apr 5 17:50:15 2011 +0300 mmc: quirks: wl1271 is MMC_QUIRK_NONSTD_FUNC_IF Tell SDIO core to ignore the standard SDIO function interface codes indicated by the wl1271. This is required because the wl1271 erroneously indicates its first function as a standard Bluetooth SDIO interface, and that drives btsdio mad. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit eab4068795d670b065164096805cbf15a19e9690 Author: Ohad Ben-Cohen Date: Tue Apr 5 17:50:14 2011 +0300 mmc: add MMC_QUIRK_NONSTD_FUNC_IF Introduce MMC_QUIRK_NONSTD_FUNC_IF to ignore the "SDIO Standard Function interface code" as indicated by the card's FBR, and instead treat all functions as non-standard interfaces. This is required to prevent standard drivers from facing errors when trying to communicate with SDIO cards that erroneously indicate standard function interface codes. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit 6b93d01fe5971951911a070f51f412d50e9536dc Author: Ohad Ben-Cohen Date: Tue Apr 5 17:43:21 2011 +0300 mmc: do not switch to 1-bit mode if not required 6b5eda36 followed SDIO spec part E1 section 8, which states that in case SDIO interrupts are being used to wake up a suspended host, then it is required to switch to 1-bit mode before stopping the clock. Before switching to 1-bit mode (or back to 4-bit mode on resume), make sure that SDIO interrupts are really being used to wake the host. This is helpful for devices which have an external irq line (e.g. wl1271), and do not use SDIO interrupts to wake up the host. In this case, switching to 1-bit mode (and back to 4-bit mode on resume) is not necessary. Reported-by: Eliad Peller Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit 33b53716bc4b3ff3da2bc41581226424443f9d5a Author: Grant Erickson Date: Fri Apr 8 08:51:32 2011 -0700 mtd: create function to perform large allocations Introduce a common function to handle large, contiguous kmalloc buffer allocations by exponentially backing off on the size of the requested kernel transfer buffer until it succeeds or until the requested transfer buffer size falls below the page size. This helps ensure the operation can succeed under low-memory, highly- fragmented situations albeit somewhat more slowly. Artem: so this patch solves the problem that the kernel tries to kmalloc too large buffers, which (a) may fail and does fail - people complain about this, and (b) slows down the system in case of high memory fragmentation, because the kernel starts dropping caches, writing back, swapping, etc. But we do not really have to allocate a lot of memory to do the I/O, we may do this even with as little as one min. I/O unit (NAND page) of RAM. So the idea of this patch is that if the user asks to read or write a lot, we try to kmalloc a lot, with GFP flags which make the kernel _not_ drop caches, etc. If we can allocate it - good, if not - we try to allocate twice as less, and so on, until we reach the min. I/O unit size, which is our last resort allocation and use the normal GFP_KERNEL flag. Artem: re-write the allocation function so that it makes sure the allocated buffer is aligned to the min. I/O size of the flash. Signed-off-by: Grant Erickson Tested-by: Ben Gardiner Tested-by: Stefano Babic Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a5e9425d2010978c5f85986cc70a9fa0c0d5b912 Author: Ohad Ben-Cohen Date: Tue Apr 5 17:43:20 2011 +0300 mmc: mmc_card_keep_power cleanups mmc_card_is_powered_resumed is a mouthful; instead, simply use mmc_card_keep_power, which also better explains the purpose of the macro. Employ mmc_card_keep_power() where possible. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Chris Ball commit f4c5522b0a8827f39f83f928961d87e081bfe71c Author: Andrei Warkentin Date: Thu Mar 31 18:40:00 2011 -0500 mmc: Reliable write support. Allows reliable writes to be used for MMC writes. Reliable writes are used to service write REQ_FUA/REQ_META requests. Handles both the legacy and the enhanced reliable write support in MMC cards. Signed-off-by: Andrei Warkentin Reviewed-by: Arnd Bergmann Signed-off-by: Chris Ball commit 766a6bf6e987ff5f5085c614b5a62a55006b6a7e Author: Shawn Guo Date: Thu Mar 31 09:31:19 2011 +0800 mmc: sdhci: change CONFIG of MMC_SDHCI_TEGRA from 'tristate' to 'bool' This config option is used to decide whether tegra sdhci support should be build into the sdhci-platform module. So setting it 'm' is nonsense, since we can't build part of an module as a module. The effect for 'm' will probably be the same as for 'n'. Signed-off-by: Shawn Guo Signed-off-by: Chris Ball commit c7f409e39e65cb007304da718b0a7b25a0144a0a Author: Venkat Rao Date: Fri Mar 25 20:37:47 2011 -0400 mmc: tegra: add pm_flags Enable fast bcm4329 WIFI suspend/resume on Tegra2 board. This patch allows the mach-tegra support to tell the tegra MMC host controller to NOT turn off power for the MMC controller the WIFI part lives behind. Thus bcm4329 firmware doesn't need to be reloaded. Signed-off-by: Venkat Rao Tested-by: Grant Grundler Reviewed-by: Olof Johansson Acked-by: Olof Johansson Signed-off-by: Chris Ball commit 0b38c4ebf037290eef27b31bdc37cacf804c7a48 Author: John Ogness Date: Fri Mar 25 09:47:37 2011 +0100 mmc: remove redundant irq disabling There is no need to disable irq's when using the sg_copy_*_buffer() functions because those functions do that already. There are also no races for the mm_queue struct here that would require the irq's to be disabled before calling sg_copy_*_buffer(). Signed-off-by: John Ogness Signed-off-by: Chris Ball commit 41e2a4893566ced3c46af15df5b727326881e47d Author: Philip Rakity Date: Sat Mar 19 14:10:33 2011 -0400 mmc: Ensure linux starts in eMMC user partition uBoot sometimes leaves eMMC pointing to the private boot partition. Ensure we always start looking at the user partition. Signed-off-by: Philip Rakity Signed-off-by: Bruce Clemens Signed-off-by: Mark F. Brown Signed-off-by: Chris Ball commit 431e1ecabddcd7cbba237182ddf431771f98bb4c Author: Felix Radensky Date: Mon Apr 25 01:57:12 2011 +0300 mtd: mtdconcat: fix NAND OOB write Currently mtdconcat is broken for NAND. An attemtpt to create JFFS2 filesystem on concatenation of several NAND devices fails with OOB write errors. This patch fixes that problem. Signed-off-by: Felix Radensky Signed-off-by: Artem Bityutskiy Cc: stable@kernel.org Signed-off-by: David Woodhouse commit a80f1c1f6a15e4eeba5c146ec9c5c0e12458abc5 Author: Jan Weitzel Date: Tue Apr 19 16:15:34 2011 +0200 mtd: omap2: mtd split nand_scan in ident and tail nand_scan calls nand_scan_tail and here we got a ecc.layout and calculate oobavail for this layout. After calling nand_scan, we change the layout pointer if OMAP_ECC_HAMMING_CODE_HW_ROMCODE is set. This results in not calcluated oobavail. Mountig as jffs2 is not possible. To fix that nand_scan has to split up in nand_scan_ident and nand_scan_tail setting ecc.layout between these calls. So nand_scan_tail calculates oobvail for the used layout. This is also done in serveral other platforms. Signed-off-by: Jan Weitzel Reviewed-by: Vimal Singh Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 94735ec4044a6d318b83ad3c5794e931ed168d10 Author: Artem Bityutskiy Date: Mon Apr 18 07:50:37 2011 +0300 mtd: mtd_blkdevs: fix error path in blktrans_open The 'blktrans_open()' does not handle possible '__get_mtd_device()' failures because it does not check the error code. Moreover, the 'dev->tr->open()' failures are not handled correctly because in this case the function just goes ahead and gets the mtd device, then returns an error. But Instead, it should _not_ try to get the mtd device, then it should put back the module and the kref. This patch fixes the issue. Note, I only compile-tested it. This patch was inspired by a bug report about a similar issue in 2.6.34 kernels sent by Mike Turner to the MTD mailing list: http://lists.infradead.org/pipermail/linux-mtd/2011-April/034980.html Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 5c39c4c54c585e13a8d6b5a8f64af682e7c68091 Author: Hans-Christian Egtvedt Date: Wed Apr 13 15:55:17 2011 +0200 mtd: atmel_nand: add missing include of linux/dmaengine.h Including linux/dmaengine.h fixes the missing definition of the enum dma_ctrl_flags type used in atmel_nand_dma_op function. Signed-off-by: Hans-Christian Egtvedt Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit c2aad6d6585c320ed5e111db5e03d27e901dfa81 Author: Jiri Pinkava Date: Wed Apr 13 12:26:48 2011 +0200 mtd: nand: remove doubled chip deselection on (un)lock Chip deselection is already done in nand_release_device. So only duplicate code. Signed-off-by: Jiri Pinkava Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit ac497c1602555c908c9738fa93b1145f431d1876 Author: Jiri Pinkava Date: Wed Apr 13 11:59:30 2011 +0200 mtd: nand: fix S3C NAND clock stop Current implementation of s3c2410_nand_select_chip call clk_disable every time when chip = -1 (de-select). This happend multiple times even if chip was already de-selected. This causes disabling clock even if they are already disabled and due to nature of clock subsytem implementation this causes nand clock to be disabled and newer enabled again. Signed-off-by: Jiri Pinkava Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit c9ddab25d1b62baead4b0c5de562f1fce026dcfd Author: Gernot Hoyler Date: Mon Apr 11 15:53:35 2011 +0200 mtd: cmdset_0002: add CFI 1.5 support for S29GL-S This patch adds CFI 1.5 support for the new Spansion S29GL-S device family. For details, see the data sheet on the Spansion web site: http://www.spansion.com/Support/Datasheets/S29GL_128S_01GS_00_02_e.pdf Signed-off-by: Gernot Hoyler Acked-by: Guillaume LECERF Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 99b17c08bca2810f5910b3027f1b9d82edf7a576 Author: Roman Tereshonkov Date: Mon Apr 11 12:52:01 2011 +0300 mtd: onenand: add ecclayout and subpage_sft for non-flex 4KiB page onenand So as the ecclayout and suppage size for 4KiB page Flex- and none-Flex OneNAND are different the new values for none-Flex 4KiB page OneNAND memory are added. The introduced ecclayout and suppage size are based on specification 4Gib M-die OneNAND Flash (KFM4G16Q4M, KFN8G16Q4M). Rev. 1.3, Apr. 2010 For eccpos we expose only 64 bytes out of 72, for oobfree the spare area fields marked as "Managed by internal ECC logic for Logical Sector Number area" are used. Signed-off-by: Roman Tereshonkov Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 9b5705a2bd81e012162ef02eaa96879cd3f370df Author: Michal Marek Date: Tue Apr 5 16:59:03 2011 +0200 mtd: denali: drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Signed-off-by: Michal Marek Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a2f812df0b3d467db2ae5e3be38c36ff692ff99f Author: Brian Norris Date: Fri Mar 18 21:53:42 2011 -0700 mtd: nand: dynamic allocation of flash-based BBT structs It is nicer to dynamically create our badblock patterns than to statically define them. The nand_create_default_bbt_descr() function does a sufficient job of handling various bad block scanning options for either flash-based or non-flash-based BBTs, so we might as well use the function for both cases. This patch simplifies and shortens our code (and removes a TODO that I left a few months ago). Signed-off-by: Brian Norris Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit a626743f579aa743473fd8b9215ca198bacf2ac4 Author: Brian Norris Date: Fri Mar 18 21:53:41 2011 -0700 mtd: nand: renumber conflicting BBT flags The NAND_USE_FLASH_BBT_NO_OOB and NAND_CREATE_EMPTY_BBT flags conflict with the NAND_BBT_SCANBYTE1AND6 and NAND_BBT_DYNAMICSTRUCT flags, respectively. This change will allow us to utilize these options independently. Signed-off-by: Brian Norris Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 9c76b4e531735a6b3b73d982d79559b98c66b11b Author: Gabor Juhos Date: Fri Mar 25 08:48:52 2011 +0100 mtd: m25p80: add support for the MX25L1606E chip Signed-off-by: Gabor Juhos Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 8cb2a180abfa7b677c63cddfb21df9cefb27fe2d Author: Sergey Senozhatsky Date: Tue Mar 22 14:11:02 2011 +0200 jffs2: remove unused variables Remove unused 'jffs2_sb_info *c' variable from 'jffs2_lookup()' and 'jffs2_readdir()'. Signed-off-by: Sergey Senozhatsky Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit d178e3e88f538323eb483df1563c8edfb71fdb39 Author: Baruch Siach Date: Mon Mar 14 09:01:56 2011 +0200 mtd: mxc_nand: add support for multiple chips on V21 devices Do the following to add support for up to 4 chips on V21 devices (i.MX25 and i.MX35): * implement .select_chip for V21 * adjust existing NFC_V1_V2_BUF_ADDR writes to take chip select into account * unlock all chip selects at preset_v1_v2() * scan up to 4 devices at .probe This has been tested on i.MX25 with two attached NAND chip (on one die). Signed-off-by: Baruch Siach Signed-off-by: Artem Bityutskiy Signed-off-by: David Woodhouse commit 4a7df24ddc7097cd789a7527187826552ea0765e Merge: 37d8cb5 5bdfdfe Author: Linus Torvalds Date: Tue May 24 16:39:23 2011 -0700 Merge branch 'for-linus/2640/i2c' of git://git.fluff.org/bjdooks/linux * 'for-linus/2640/i2c' of git://git.fluff.org/bjdooks/linux: (21 commits) mach-ux500: set proper I2C platform data from MOP500s i2c-nomadik: break out single messsage transmission i2c-nomadik: reset the hw after status check i2c-nomadik: remove the unnecessary delay i2c-nomadik: change the TX and RX threshold i2c-nomadik: add code to retry on timeout failure i2c-nomadik: use pm_runtime API i2c-nomadik: print abort cause only on abort tag i2c-nomadik: correct adapter timeout initialization i2c-nomadik: remove the redundant error message i2c-nomadik: corrrect returned error numbers i2c-nomadik: fix speed enumerator i2c-nomadik: make i2c timeout specific per i2c bus i2c-nomadik: add regulator support i2c: i2c-sh_mobile bus speed platform data V2 i2c: i2c-sh_mobile clock string removal i2c-eg20t: Support new device ML7223 IOH i2c: tegra: Add de-bounce cycles. i2c: tegra: fix repeated start handling i2c: tegra: recover from spurious interrupt storm ... commit 7ccafc5f75c87853f3c49845d5a884f2376e03ce Author: Kees Cook Date: Tue May 24 16:29:26 2011 -0700 x86, cpufeature: Update CPU feature RDRND to RDRAND The Intel manual changed the name of the CPUID bit to match the instruction name. We should follow suit for sanity's sake. (See Intel SDM Volume 2, Table 3-20 "Feature Information Returned in the ECX Register".) [ hpa: we can only do this at this time because there are currently no CPUs with this feature on the market, hence this is pre-hardware enabling. However, Cc:'ing stable so that stable can present a consistent ABI. ] Signed-off-by: Kees Cook Link: http://lkml.kernel.org/r/20110524232926.GA27728@outflux.net Signed-off-by: H. Peter Anvin Cc: Fenghua Yu Cc: v2.6.36-39 commit 5bdfdfeed5eed599a3ddc455f7c254a209ceae8d Merge: efbe0f2 81f8115 40abcf7 2b030bd Author: Ben Dooks Date: Wed May 25 00:25:55 2011 +0100 Merge branches 'for-2639/i2c-eg20t', 'for-2639/i2c-shmobile', 'for-2639/i2c-tegra' and 'for-2639/i2c-nomadik2' into for-linus/2640/i2c commit 2b030bda66b0a59f8ebf0ce2117088256a5f9f97 Author: Linus Walleij Date: Fri May 13 12:31:13 2011 +0200 mach-ux500: set proper I2C platform data from MOP500s This specifies the new per-platform timeout per I2C bus and switches the I2C buses to fast mode, and increase the FIFO depth to 8 for reads and writes. Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 82a4413450376cbce0bb2b794fb880dbfda89299 Author: Linus Walleij Date: Fri May 13 12:31:01 2011 +0200 i2c-nomadik: break out single messsage transmission Reduce code size in the message transfer function by factoring out a single-message transfer function. Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 0511f643cbe6990daf4b53b1268b5c2ea28d1733 Author: Virupax Sadashivpetimath Date: Fri May 13 12:30:53 2011 +0200 i2c-nomadik: reset the hw after status check In case of I2C timeout, reset the HW only after the HW status is read, otherwise the staus will be lost. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Jonas Aberg Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit b5e890f7e70707d1e10e8d4844806d2223e8b36d Author: Virupax Sadashivpetimath Date: Fri May 13 12:30:42 2011 +0200 i2c-nomadik: remove the unnecessary delay The delay in the driver seems to be not needed, so remove it. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Markus Grape Tested-by: Per Persson Tested-by: Chethan Krishna N Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 553553413a6abdda220a697ef439ba2f4b1d4a7c Author: Virupax Sadashivpetimath Date: Fri May 13 12:30:34 2011 +0200 i2c-nomadik: change the TX and RX threshold 1) Increase RX FIFO threshold so that there is a reduction in the number of interrupts handled to complete a transaction. 2) Fill TX FIFO in the write function. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit ebd10e0783d9fb92a147e60902e22c2d3f3ad69d Author: Virupax Sadashivpetimath Date: Fri May 13 12:30:23 2011 +0200 i2c-nomadik: add code to retry on timeout failure It is seen that i2c-nomadik controller randomly stops generating the interrupts leading to a i2c timeout. As a workaround to this problem, add retries to the on going transfer on failure. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Jonas ABERG Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit b0e751a925260e5998a76dad41d4565ef26870db Author: Rabin Vincent Date: Fri May 13 12:30:07 2011 +0200 i2c-nomadik: use pm_runtime API Use the pm_runtime API for pins control. Signed-off-by: Rabin Vincent Reviewed-by: Srinidhi Kasagar Reviewed-by: Jonas Aberg [deleted some surplus runtime PM code] Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 4cb3f538cd88fddaa659a924e7abdb685cd5e784 Author: Virupax Sadashivpetimath Date: Fri May 13 12:29:55 2011 +0200 i2c-nomadik: print abort cause only on abort tag Modify the code to: 1)Print the cause of i2c failure only if the status is set to ABORT. 2)Print slave address on send/receive fail, will help in which slave failed. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit cd20e4fa910540c339b483d0b95ca237abf3354a Author: Virupax Sadashivpetimath Date: Fri May 13 12:29:46 2011 +0200 i2c-nomadik: correct adapter timeout initialization Correct the incorrect initialization of adapter timeout not to be in milliseconds, as it needs to be done in jiffies. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit c436f92a4646e4635554bda39407dfb907352321 Author: srinidhi kasagar Date: Fri May 13 12:29:38 2011 +0200 i2c-nomadik: remove the redundant error message The abort cause string itself is an error, so remove the redundant explicit error message. Signed-off-by: Srinidhi Kasagar Reviewed-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 99381bec0a569a69345148cb1ac74c2caa43a227 Author: Virupax Sadashivpetimath Date: Fri May 13 12:29:28 2011 +0200 i2c-nomadik: corrrect returned error numbers The code was returning bad error numbers or just -1 in some cases. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 2320f504d3c87b814abf37f224ab68d52d2a512c Author: Linus Walleij Date: Fri May 13 12:29:20 2011 +0200 i2c-nomadik: fix speed enumerator The I2C speed enumerators in the i2c-nomadik header file were in the wrong order. Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 9772760079253cd9a428434b43d415d18b152332 Author: Virupax Sadashivpetimath Date: Fri May 13 12:29:12 2011 +0200 i2c-nomadik: make i2c timeout specific per i2c bus Add option to have different i2c timeout delay for different i2c buses specified in platform data. Default to the old value unless specified. Signed-off-by: Virupax Sadashivpetimath Reviewed-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit a20d23945f30ec701a544fdd90d6537f4041af6f Author: Jonas Aberg Date: Fri May 13 12:29:02 2011 +0200 i2c-nomadik: add regulator support This on-chip I2C controller needs to fetch the regulator representing its voltage domain so that it won't be switched off. Signed-off-by: Jonas Aberg Signed-off-by: Linus Walleij Signed-off-by: Ben Dooks commit 014322dac6ae0048c928c6ca2faf0d53194f9d15 Merge: 03eb141 1a717c0 Author: Russell King Date: Wed May 25 00:11:25 2011 +0100 Merge branch 'davinci-next' of git://gitorious.org/linux-davinci/linux-davinci into devel-stable commit 03eb14199e8a2ff2bc170b283305990151b0d619 Merge: d762f43 ede338f Author: Russell King Date: Wed May 25 00:08:17 2011 +0100 Merge branch 'devicetree/arm-next' of git://git.secretlab.ca/git/linux-2.6 into devel-stable commit ae81230686282af745ebb7a74c0332349cb9131a Author: Aditya Kali Date: Tue May 24 19:00:39 2011 -0400 ext4: reserve inodes and feature code for 'quota' feature I am working on patch to add quota as a built-in feature for ext4 filesystem. The implementation is based on the design given at https://ext4.wiki.kernel.org/index.php/Design_For_1st_Class_Quota_in_Ext4. This patch reserves the inode numbers 3 and 4 for quota purposes and also reserves EXT4_FEATURE_RO_COMPAT_QUOTA feature code. Signed-off-by: Aditya Kali Signed-off-by: "Theodore Ts'o" commit c5e06d101aaf72f1f2192a661414459775e9bd74 Author: Johann Lombardi Date: Tue May 24 18:31:25 2011 -0400 ext4: add support for multiple mount protection Prevent an ext4 filesystem from being mounted multiple times. A sequence number is stored on disk and is periodically updated (every 5 seconds by default) by a mounted filesystem. At mount time, we now wait for s_mmp_update_interval seconds to make sure that the MMP sequence does not change. In case of failure, the nodename, bdevname and the time at which the MMP block was last updated is displayed. Signed-off-by: Andreas Dilger Signed-off-by: Johann Lombardi Signed-off-by: "Theodore Ts'o" commit 956c920786694f51601a0ef7ee12956fd6aa216e Author: Stephen Rothwell Date: Thu May 12 13:51:13 2011 +1000 net: fix get_net_ns_by_fd for !CONFIG_NET_NS After merging the final tree, today's linux-next build (powerpc ppc44x_defconfig) failed like this: net/built-in.o: In function `get_net_ns_by_fd': (.text+0x11976): undefined reference to `netns_operations' net/built-in.o: In function `get_net_ns_by_fd': (.text+0x1197a): undefined reference to `netns_operations' netns_operations is only available if CONFIG_NET_NS is set ... Caused by commit f063052947f7 ("net: Allow setting the network namespace by fd"). Signed-off-by: Stephen Rothwell Signed-off-by: Eric W. Biederman commit 62ca24baf1417e56fd2ae4ff07adfe7f6a2e42fc Author: Eric W. Biederman Date: Wed May 11 15:42:08 2011 -0700 ns proc: Return -ENOENT for a nonexistent /proc/self/ns/ entry. Spotted-by: Nathan Lynch Signed-off-by: Eric W. Biederman commit 618e724b8d79c6232daac49cb39b0723bf5c4b08 Author: Eric W. Biederman Date: Wed May 11 14:06:58 2011 -0700 ns: Declare sys_setns in syscalls.h Ooops I overlooked this one, and missing it causes compile errors of the powerpc syscall. Signed-off-by: Eric W. Biederman commit d02a9391f79cab65cde74cd9e8ccd2290a565229 Author: Kazuya Mio Date: Tue May 24 18:30:07 2011 -0400 ext4: ensure f_bfree returned by ext4_statfs() is non-negative I found the issue that the number of free blocks went negative. # stat -f /mnt/mp1/ File: "/mnt/mp1/" ID: e175ccb83a872efe Namelen: 255 Type: ext2/ext3 Block size: 4096 Fundamental block size: 4096 Blocks: Total: 258022 Free: -15 Available: -13122 Inodes: Total: 65536 Free: 63029 f_bfree in struct statfs will go negative when the filesystem has few free blocks. Because the number of dirty blocks is bigger than the number of free blocks in the following two cases. CASE 1: ext4_da_writepages mpage_da_map_and_submit ext4_map_blocks ext4_ext_map_blocks ext4_mb_new_blocks ext4_mb_diskspace_used percpu_counter_sub(&sbi->s_freeblocks_counter, ac->ac_b_ex.fe_len); <--- interrupt statfs systemcall ---> ext4_da_update_reserve_space percpu_counter_sub(&sbi->s_dirtyblocks_counter, used + ei->i_allocated_meta_blocks); CASE 2: ext4_write_begin __block_write_begin ext4_map_blocks ext4_ext_map_blocks ext4_mb_new_blocks ext4_mb_diskspace_used percpu_counter_sub(&sbi->s_freeblocks_counter, ac->ac_b_ex.fe_len); <--- interrupt statfs systemcall ---> percpu_counter_sub(&sbi->s_dirtyblocks_counter, reserv_blks); To avoid the issue, this patch ensures that f_bfree is non-negative. Signed-off-by: Kazuya Mio commit 28739eea9cd42598b632972f5cc64a458c5d40b3 Author: Lukas Czerner Date: Tue May 24 18:28:07 2011 -0400 ext4: protect bb_first_free in ext4_trim_all_free() with group lock We should protect reading bd_info->bb_first_free with the group lock because otherwise we might miss some free blocks. This is not a big deal at all, but the change to do right thing is really simple, so lets do that. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit 37d8cb5478651b27779b9a80d024c614c452eae3 Merge: dc522ad 07da037 Author: Linus Torvalds Date: Tue May 24 15:20:02 2011 -0700 Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: i2c-parport: Various cleanups i2c-i801: Don't depend on other kernel driver config options i2c-i801: Check for vendor Fujitsu before probing for apanel i2c-i801: Don't probe for slaves on IDF channels i2c-i801: SMBus patch for Intel Panther Point DeviceIDs i2c/writing-clients: Fix foo_driver.id_table commit 78944086663e6c1b03f3d60bf7610128149be5fc Author: Lukas Czerner Date: Tue May 24 18:16:27 2011 -0400 ext4: only load buddy bitmap in ext4_trim_fs() when it is needed Currently we are loading buddy ext4_mb_load_buddy() for every block group we are going through in ext4_trim_fs() in many cases just to find out that there is not enough space to be bothered with. As Amir Goldstein suggested we can use bb_free information directly from ext4_group_info. This commit removes ext4_mb_load_buddy() from ext4_trim_fs() and rather get the ext4_group_info via ext4_get_group_info() and use the bb_free information directly from that. This avoids unnecessary call to load buddy in the case the group does not have enough free space to trim. Loading buddy is now moved to ext4_trim_all_free(). Tested by me with xfstests 251. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" commit dc522adbee91dd17fa31f8e8cf72673fe0e8370e Merge: df3256f c2b6773 Author: Linus Torvalds Date: Tue May 24 15:11:46 2011 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6: jbd: Fix comment to match the code in journal_start() jbd/jbd2: remove obsolete summarise_journal_usage. jbd: Fix forever sleeping process in do_get_write_access() ext2: fix error msg when mounting fs with too-large blocksize jbd: fix fsync() tid wraparound bug ext3: Fix fs corruption when make_indexed_dir() fails ext3: Fix lock inversion in ext3_symlink() commit df3256f9ab7ae2127144de5ba2abca332278a42d Merge: b0ca118 901025d Author: Linus Torvalds Date: Tue May 24 15:04:00 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm: dlm: make plock operation killable dlm: remove shared message stub for recovery dlm: delayed reply message warning dlm: Remove superfluous call to recalc_sigpending() commit f42a9813fbf930fea3bdd0524dcb43c7feb0c977 Author: Rafael J. Wysocki Date: Tue May 24 23:36:06 2011 +0200 PM / Hibernate: Update kerneldoc comments in hibernate.c Some of the kerneldoc comments in kernel/power/hibernate.c are outdated and some of them don't adhere to the kernel's standards. Update them and make them look in a consistent way. Signed-off-by: Rafael J. Wysocki Acked-by: Randy Dunlap commit 354258011e8e86961f7a72ad154ca8caf0c4c6f7 Author: Rafael J. Wysocki Date: Tue May 24 23:35:55 2011 +0200 PM / Hibernate: Remove arch_prepare_suspend() All architectures supporting hibernation define arch_prepare_suspend() as an empty function, so remove it. Signed-off-by: Rafael J. Wysocki commit c867516de5256e9cfba2ec5847fa27e0f0ddd2c5 Author: Eryu Guan Date: Tue May 24 17:09:58 2011 -0400 jbd2: Fix comment to match the code in jbd2__journal_start() jbd2__journal_start() returns an ERR_PTR() value rather than NULL on failure. Signed-off-by: Eryu Guan Signed-off-by: "Theodore Ts'o" commit 31ec97d9cebac804814de298592648f7c18d8281 Merge: 557eed6 daf8cf6 Author: John W. Linville Date: Tue May 24 16:47:54 2011 -0400 Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem commit 92505299a131b47992d318f2875d5629ac870d87 Author: Liam Girdwood Date: Tue May 24 17:38:52 2011 +0100 ASoC: core - remove superfluous new line. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit b0ca118dbacbc6c35e15f216e25e95cca7aedf5b Merge: 2bb732c b7b5755 Author: Linus Torvalds Date: Tue May 24 13:38:19 2011 -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: (43 commits) TOMOYO: Fix wrong domainname validation. SELINUX: add /sys/fs/selinux mount point to put selinuxfs CRED: Fix load_flat_shared_library() to initialise bprm correctly SELinux: introduce path_has_perm flex_array: allow 0 length elements flex_arrays: allow zero length flex arrays flex_array: flex_array_prealloc takes a number of elements, not an end SELinux: pass last path component in may_create SELinux: put name based create rules in a hashtable SELinux: generic hashtab entry counter SELinux: calculate and print hashtab stats with a generic function SELinux: skip filename trans rules if ttype does not match parent dir SELinux: rename filename_compute_type argument to *type instead of *con SELinux: fix comment to state filename_compute_type takes an objname not a qstr SMACK: smack_file_lock can use the struct path LSM: separate LSM_AUDIT_DATA_DENTRY from LSM_AUDIT_DATA_PATH LSM: split LSM_AUDIT_DATA_FS into _PATH and _INODE SELINUX: Make selinux cache VFS RCU walks safe SECURITY: Move exec_permission RCU checks into security modules SELinux: security_read_policy should take a size_t not ssize_t ... commit 2bb732cdb48d271ff7a910260ffb851fb4bc8a28 Merge: f50d1d9 c4d5ee1 Author: Linus Torvalds Date: Tue May 24 13:31:37 2011 -0700 Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: make KBUILD_NOCMDDEP=1 handle empty built-in.o scripts/kallsyms.c: fix potential segfault scripts/gen_initramfs_list.sh: Convert to a /bin/sh script kbuild: Fix GNU make v3.80 compatibility kbuild: Fix passing -Wno-* options to gcc 4.4+ kbuild: move scripts/basic/docproc.c to scripts/docproc.c kbuild: Fix Makefile.asm-generic for um kbuild: Allow to combine multiple W= levels kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0 Fix handling of backlash character in LINUX_COMPILE_BY name kbuild: asm-generic support kbuild: implement several W= levels kbuild: Fix build with binutils <= 2.19 initramfs: Use KBUILD_BUILD_TIMESTAMP for generated entries kbuild: Allow to override LINUX_COMPILE_BY and LINUX_COMPILE_HOST macros kbuild: Drop unused LINUX_COMPILE_TIME and LINUX_COMPILE_DOMAIN macros kbuild: Use the deterministic mode of ar kbuild: Call gzip with -n kbuild: move KALLSYMS_EXTRA_PASS from Kconfig to Makefile Kconfig: improve KALLSYMS_ALL documentation Fix up trivial conflict in Makefile commit f50d1d9e8d964fdd3b4cedfbca8843d1bc5916c1 Merge: 98b98d3 4ef7e71 Author: Linus Torvalds Date: Tue May 24 13:28:35 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: pcmcia: Make struct pcmcia_device_id const, sound drivers edition staging: pcmcia: Convert pcmcia_device_id declarations to const pcmcia: Convert pcmcia_device_id declarations to const pcmcia: Make declaration and uses of struct pcmcia_device_id const pcmcia/sa1100: put sa11x0_pcmcia_hw_init[] to .devinit.data commit 1032fbfd792f2b384ac16a63993b8fae5eea9083 Author: Bengt Jonsson Date: Fri Apr 1 14:43:33 2011 +0200 mach-ux500: voltage domain regulators for DB8500 The DB8500 has ePOD:s (electronic power domains) which are possible to switch on/off to deactivate silicon blocks on the DB8500 SoC by cutting their power without retention. We model these as simple regulators with one bit on/off settings. Acked-by: Liam Girdwood Acked-by: Mark Brown Signed-off-by: Bengt Jonsson Signed-off-by: Sundar Iyer Signed-off-by: Jonas Aberg Signed-off-by: Virupax Sadashivpetimath Signed-off-by: Martin Persson Signed-off-by: Linus Walleij commit f0e733f32e56ded9309a8b8da3a77d47beb3cbdd Author: Linus Walleij Date: Sun May 15 19:34:29 2011 +0200 cpufreq: make DB8500 cpufreq driver compile Concluding interface update and movement of the driver by making the DB8500 cpufreq driver compile in the cpufreq subsystem. Cc: Arnd Bergmann Acked-by: Dave Jones Signed-off-by: Linus Walleij commit 72b2fd5cb89933a5b0dba32735d9b22ae3fb866e Author: Linus Walleij Date: Sun May 15 19:19:51 2011 +0200 cpufreq: update DB8500 cpufreq driver This updates the ux500 cpufreq driver to the new interface from the updated DB8500 PRCMU Cc: Arnd Bergmann Acked-by: Dave Jones Signed-off-by: Linus Walleij commit 46936340c4e545f3be935b9d34e0554d16dbac30 Author: Linus Walleij Date: Sun May 15 19:16:38 2011 +0200 mach-ux500: move CPUfreq driver to cpufreq subsystem As part of the ARM arch subsystem migration, move the DB8500 cpufreq driver to drivers/cpufreq as discussed with Dave Jones. The Makefile is not updated in order to avoid cross-subsystem conflicts for this file in merges. Cc: Arnd Bergmann Acked-by: Dave Jones Signed-off-by: Linus Walleij commit 8317797ca657081ed81312ea3501f3a3d59d52e9 Author: Linus Walleij Date: Tue May 3 18:14:48 2011 +0200 mfd: add DB5500 PRCMU driver This adds the DB5500 PRCMU driver. Right now this one is pretty restricted in functionality, exposing a simple interface to send I2C messages. Acked-by: Samuel Ortiz Signed-off-by: Linus Walleij commit 3df57bcf5a6ba74572218a811bd0e311414f2aff Author: Mattias Nilsson Date: Mon May 16 00:15:05 2011 +0200 mfd: update DB8500 PRCMU driver This updates the DB8500 PRCMU driver to the latest version available internally. Nominally we would update the dependent CPUfreq driver at the same time but since that is being moved around in this patch set we postpone that by simply deactivating it for the time being. This is a snapshot of the current PRCMU firmware API as it looks right now. The PRCMU firmware is still subject to change. This also updates the CPUfreq driver to a newer version that will utilize the new API. Acked-by: Samuel Ortiz Signed-off-by: Mattias Nilsson Signed-off-by: Martin Persson Signed-off-by: Per Fransson Signed-off-by: Jonas Aaberg Signed-off-by: Sebastien Rault Signed-off-by: Bengt Jonsson Signed-off-by: Rickard Andersson Signed-off-by: Linus Walleij commit 6b3678354647a653e669746c05765f05d2b90239 Author: David S. Miller Date: Tue May 24 16:15:41 2011 -0400 bug.h: Fix build with CONFIG_PRINTK disabled. Based upon an email by Joe Perches. Reported-by: Randy Dunlap Signed-off-by: David S. Miller Acked-by: Randy Dunlap commit 650c2a2145981696c414be1d540a32447d0e353e Author: Linus Walleij Date: Sun May 15 22:53:56 2011 +0200 mach-ux500: move the DB8500 PRCMU driver to MFD We have decided that this function arbiter fits better in the MFD subsystem. Since we need to concatenate the split header files we move it basically like this: mv mach-ux500/prcmu-db8500.c drivers/mfd/db8500-prcmu.c mv mach-ux500/include/mach/prcmu-defs.h include/linux/mfd/db8500-prcmu.h mv mach-ux500/include/mach/prcmu-regs.h drivers/mfd/db8500-prcmu-regs.h mach-ux500/include/mach/prcmu.h >> include/linux/mfd/db8500-prcmu.h rm arch/arm/mach-ux500/include/mach/prcmu.h Then we update different #include statements and Makefile orders etc to make the PRCMU driver compile, link and boot in the new place without really changing any code. Acked-by: Samuel Ortiz Signed-off-by: Linus Walleij commit 118718905de6e32c11e09a8f41c7abff6155ba19 Author: Linus Walleij Date: Tue Mar 29 16:53:29 2011 +0200 mach-ux500: make PRCMU base address dynamic This makes the PRCMU base address be selected at runtime for U8500 and U5500 instead of being compiled-in. Signed-off-by: Linus Walleij commit 9f3c645c68a42083117bbfeaa9aadb053b494090 Author: Linus Walleij Date: Mon Mar 28 13:32:50 2011 +0200 mach-ux500: rename PRCMU driver per SoC This renames the prcmu.c file to prcmu-db8500.c so as to indicate that it is for this one SoC. Signed-off-by: Linus Walleij commit 5d99eaeef7023e06eeaf8d54be5976fbb4a99045 Author: Linus Walleij Date: Tue Mar 29 22:05:06 2011 +0200 mach-ux500: update ASIC version detection This makes the core detect the DB8500 V2.0 and V2.1 ASICs, and add a convenience macro for "V2 or later". Signed-off-by: Linus Walleij commit 06be2efaf444f6b639892394e0a6afcd73fe1de4 Author: Rabin Vincent Date: Tue Mar 29 21:59:51 2011 +0200 mach-ux500: update SoC and board IRQ handling This splits out a per-SoC IRQ range handling, so that the DB8500 and DB5500 SoC:s can reuse aproximately the same IRQ range with the largest span setting the roof. The same change is done for the boards, mutatis mutandis, with a new file for the U5500 board. Signed-off-by: Rabin Vincent Signed-off-by: Linus Walleij commit b25962599bcc31cf685127c682931e07167f3d1a Author: Linus Walleij Date: Tue Mar 29 17:37:04 2011 +0200 mach-ux500: update the DB5500 register file Signed-off-by: Linus Walleij commit 326474067f75f6c39277acbb61c45ad924f03f30 Author: Linus Walleij Date: Tue Mar 29 17:34:23 2011 +0200 mach-ux500: update the DB8500 register file Signed-off-by: Linus Walleij commit daf8cf608d57a0b9f22276036e420cc82cf6ab4f Author: Randy Dunlap Date: Sun May 22 17:22:45 2011 -0700 wireless: fix fatal kernel-doc error + warning in mac80211.h Fix new kernel-doc Error and Warning in : Error(linux-2.6.39-git5/include/net/mac80211.h:550): cannot understand prototype: 'struct ieee80211_sched_scan_ies ' Warning(linux-2.6.39-git5/include/net/mac80211.h:2289): No description found for parameter 'sta' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 1ba0145884de7993c5d4f02d629eb18c17527e6e Author: Randy Dunlap Date: Sun May 22 17:16:20 2011 -0700 wireless: fix cfg80211.h new kernel-doc warnings Fix new kernel-doc warnings in : Warning(linux-2.6.39-git5/include/net/cfg80211.h:560): No description found for parameter 'bss_param' Warning(linux-2.6.39-git5/include/net/cfg80211.h:1555): Enum value 'WIPHY_FLAG_SUPPORTS_SCHED_SCAN' not described in enum 'wiphy_flags' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 54a430c0a4991951805df92efb8c42bdb1277ffd Author: Wey-Yi Guy Date: Fri May 20 11:56:18 2011 -0700 iwlagn: dbg_fixed_rate only used when CONFIG_MAC80211_DEBUGFS enabled Fix compiling error when CONFIG_MAC80211_DEBUGFS is not enabled drivers/net/wireless/iwlwifi/iwl-agn-rs.c:351: error: 'struct iwl_lq_sta' has no member named 'dbg_fixed_rate' drivers/net/wireless/iwlwifi/iwl-agn-rs.c:1076: error: 'struct iwl_lq_sta' has no member named 'dbg_fixed_rate' Reported-by: Randy Dunlap Signed-off-by: Wey-Yi Guy Acked-by: Randy Dunlap Signed-off-by: John W. Linville commit 98b98d316349e9a028e632629fe813d07fa5afdd Merge: 0d66cba 931474c Author: Linus Torvalds Date: Tue May 24 12:06:40 2011 -0700 Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (169 commits) drivers/gpu/drm/radeon/atom.c: fix warning drm/radeon/kms: bump kms version number drm/radeon/kms: properly set num banks for fusion asics drm/radeon/kms/atom: move dig phy init out of modesetting drm/radeon/kms/cayman: fix typo in register mask drm/radeon/kms: fix typo in spread spectrum code drm/radeon/kms: fix tile_config value reported to userspace on cayman. drm/radeon/kms: fix incorrect comparison in cayman setup code. drm/radeon/kms: add wait idle ioctl for eg->cayman drm/radeon/cayman: setup hdp to invalidate and flush when asked drm/radeon/evergreen/btc/fusion: setup hdp to invalidate and flush when asked agp/uninorth: Fix lockups with radeon KMS and >1x. drm/radeon/kms: the SS_Id field in the LCD table if for LVDS only drm/radeon/kms: properly set the CLK_REF bit for DCE3 devices drm/radeon/kms: fixup eDP connector handling drm/radeon/kms: bail early for eDP in hotplug callback drm/radeon/kms: simplify hotplug handler logic drm/radeon/kms: rewrite DP handling drm/radeon/kms/atom: add support for setting DP panel mode drm/radeon/kms: atombios.h updates for DP panel mode ... commit 0d66cba1ac3ad38614077443d604d6a09cec99de Merge: 4637f40 5bd4187 Author: Linus Torvalds Date: Tue May 24 12:06:02 2011 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (29 commits) [S390] cpu hotplug: fix external interrupt subclass mask handling [S390] oprofile: dont access lowcore [S390] oprofile: add missing irq stats counter [S390] Ignore sendmmsg system call note wired up warning [S390] s390,oprofile: fix compile error for !CONFIG_SMP [S390] s390,oprofile: fix alert counter increment [S390] Remove unused includes in process.c [S390] get CPC image name [S390] sclp: event buffer dissection [S390] chsc: process channel-path-availability information [S390] refactor page table functions for better pgste support [S390] merge page_test_dirty and page_clear_dirty [S390] qdio: prevent compile warning [S390] sclp: remove unnecessary sendmask check [S390] convert old cpumask API into new one [S390] pfault: cleanup code [S390] pfault: cpu hotplug vs missing completion interrupts [S390] smp: add __noreturn attribute to cpu_die() [S390] percpu: implement arch specific irqsafe_cpu_ops [S390] vdso: disable gcov profiling ... commit 07da0372dd6ca5517400ce95040861def25930c8 Author: Jean Delvare Date: Tue May 24 20:58:49 2011 +0200 i2c-parport: Various cleanups * Fix white space. * Rename labels to something meaningful. * Prefix defines with PORT_ to avoid collision with macros from . * Add const markers where possible. Signed-off-by: Jean Delvare commit 4637f40f200063973553ce3c4c1ac6c247e4535c Merge: 5129df0 b73077e Author: Linus Torvalds Date: Tue May 24 11:58:49 2011 -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: (40 commits) Input: ADP5589 - new driver for I2C Keypad Decoder and I/O Expander Input: tsc2007 - add X, Y and Z fuzz factors to platform data Input: tsc2007 - add poll_period parameter to platform data Input: tsc2007 - add poll_delay parameter to platform data Input: tsc2007 - add max_rt parameter to platform data Input: tsc2007 - debounce pressure measurement Input: ad714x - fix captouch wheel option algorithm Input: ad714x - allow platform code to specify irqflags Input: ad714x - fix threshold and completion interrupt masks Input: ad714x - fix up input configuration Input: elantech - remove support for proprietary X driver Input: elantech - report multitouch with proper ABS_MT messages Input: elantech - export pressure and width when supported Input: elantech - describe further the protocol Input: atmel_tsadcc - correct call to input_free_device Input: add driver FSL MPR121 capacitive touch sensor Input: remove useless synchronize_rcu() calls Input: ads7846 - fix gpio_pendown configuration Input: ads7846 - add possibility to use external vref on ads7846 Input: rotary-encoder - add support for half-period encoders ... commit 8eacfcebf0274310a751924c02c5c31cbdf057b3 Author: Jean Delvare Date: Tue May 24 20:58:49 2011 +0200 i2c-i801: Don't depend on other kernel driver config options Don't let other driver config options influence us, as it makes the code more complex and fragile for a small benefit. There's nothing wrong with instantiating I2C devices even if they don't have a driver. And we're talking about 835 extra bytes in the binary on x86-64, that's hardly worth arguing about. Signed-off-by: Jean Delvare Cc: David Woodhouse Cc: Hans de Goede commit 6aa1464d5482cc8f6f026ebb12d94b77a58c823b Author: Jean Delvare Date: Tue May 24 20:58:49 2011 +0200 i2c-i801: Check for vendor Fujitsu before probing for apanel Scanning the BIOS memory for the apanel information is costly, so avoid doing it on non-Fujitsu machines. Signed-off-by: Jean Delvare commit e7198fbf50fd5db4cc9681beed760403f794320d Author: Jean Delvare Date: Tue May 24 20:58:49 2011 +0200 i2c-i801: Don't probe for slaves on IDF channels I don't know if Fujitsu is ever going to produce Patsburg-based machines, but if they do, I'd rather not probe the secondary (IDF) SMBus channels. At least not until we have a good reason for doing so. On a side note, I'm not even sure if it is right to enable detection of HWMON and DDC devices on the IDF channels. Time will tell... Signed-off-by: Jean Delvare Acked-by: Hans de Goede Acked-by: David Woodhouse commit 6e2a851e71e65d4ec5bbc51802c36a61322d792b Author: Seth Heasley Date: Tue May 24 20:58:49 2011 +0200 i2c-i801: SMBus patch for Intel Panther Point DeviceIDs This patch adds the SMBus controller DeviceID for the Intel Panther Point PCH. Signed-off-by: Seth Heasley Signed-off-by: Jean Delvare commit 3116c86033079a1d4d4e84c40028f96b614843b8 Author: Vikram Narayanan Date: Tue May 24 20:58:48 2011 +0200 i2c/writing-clients: Fix foo_driver.id_table The i2c_device_id structure variable's name is not used in the i2c_driver structure. Signed-off-by: Vikram Narayanan Cc: stable@kernel.org Signed-off-by: Jean Delvare commit 5129df03d0c44b2d5a5f9d7d52f3b079706b9a8f Merge: 4d42948 6988f20 Author: Linus Torvalds Date: Tue May 24 11:53:42 2011 -0700 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu * 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: percpu: Unify input section names percpu: Avoid extra NOP in percpu_cmpxchg16b_double percpu: Cast away printk format warning percpu: Always align percpu output section to PAGE_SIZE Fix up fairly trivial conflict in arch/x86/include/asm/percpu.h as per Tejun commit db3540522e955c1ebb391f4f5324dff4f20ecd09 Author: Sage Weil Date: Tue May 24 11:46:31 2011 -0700 ceph: fix cap flush race reentrancy In e9964c10 we change cap flushing to do a delicate dance because some inodes on the cap_dirty list could be in a migrating state (got EXPORT but not IMPORT) in which we couldn't actually flush and move from dirty->flushing, breaking the while (!empty) { process first } loop structure. It worked for a single sync thread, but was not reentrant and triggered infinite loops when multiple syncers came along. Instead, move inodes with dirty to a separate cap_dirty_migrating list when in the limbo export-but-no-import state, allowing us to go back to the simple loop structure (which was reentrant). This is cleaner and more robust. Audited the cap_dirty users and this looks fine: list_empty(&ci->i_dirty_item) is still a reliable indicator of whether we have dirty caps (which list we're on is irrelevant) and list_del_init() calls still do the right thing. Signed-off-by: Sage Weil commit cd634fb6eec72ef8e6dd677546b8d0ffdd2501eb Author: Sage Weil Date: Thu May 12 09:29:18 2011 -0700 libceph: subscribe to osdmap when cluster is full When the cluster is marked full, subscribe to subsequent map updates to ensure we find out promptly when it is no longer full. This will prevent us from spewing ENOSPC for (much) longer than necessary. Signed-off-by: Sage Weil commit 7662d8ff57d2b00ce8f7fe0b60a85efbb2c05652 Author: Sage Weil Date: Tue May 3 12:52:05 2011 -0700 libceph: handle new osdmap down/state change encoding Old incrementals encode a 0 value (nearly always) when an osd goes down. Change that to allow any state bit(s) to be flipped. Special case 0 to mean flip the CEPH_OSD_UP bit to mimic the old behavior. Signed-off-by: Sage Weil commit 9db4b3e32778400555d5cc6fb61d4058902d37f7 Author: Sage Weil Date: Tue Apr 19 22:49:06 2011 -0700 rbd: handle online resize of underlying rbd image If we get a notification that the image header has changed, check for a change in the image size. Signed-off-by: Sage Weil commit 45e3d3eeb6578e523e100622266945ecd71723bb Author: Sage Weil Date: Wed Apr 6 09:35:00 2011 -0700 ceph: avoid inode lookup on nfs fh reconnect If we get the inode from the MDS, we have a reference in req; don't do a fresh lookup. Signed-off-by: Sage Weil commit 3c454cf21645bc96668e286f6352ac2c4c895fa2 Author: Sage Weil Date: Wed Apr 6 09:31:40 2011 -0700 ceph: use LOOKUPINO to make unconnected nfs fh more reliable If we are unable to locate an inode by ino, ask the MDS using the new LOOKUPINO command. Signed-off-by: Sage Weil commit aedfec59eed37d1ff7ce09b303b668234e9a7f8e Author: Sage Weil Date: Thu May 12 20:57:03 2011 -0700 rbd: use snprintf for disk->disk_name Signed-off-by: Sage Weil commit 916d4d672779de8e42346fff338617c7b841e8e5 Author: Sage Weil Date: Thu May 12 16:10:50 2011 -0700 rbd: cleanup: make kfree match kmalloc Signed-off-by: Sage Weil commit 4d429480352c63db2228489f0db9fd381cdc3c9c Merge: eb08d8f ab50ff6 Author: Linus Torvalds Date: Tue May 24 11:51:26 2011 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubi-2.6 * 'linux-next' of git://git.infradead.org/ubi-2.6: UBI: switch to dynamic printks UBI: turn some macros into static inline UBI: improve checking in debugging prints UBI: fix typo in a message UBI: fix minor stylistic issues UBI: use __packed instead of __attribute__((packed)) UBI: cleanup comments around volume properties UBI: re-name set volume properties ioctl UBI: make the control character device non-seekable commit eb08d8ff476ad39a149e1044c7d3fd742a168864 Merge: 9f22aae 56e4674 Author: Linus Torvalds Date: Tue May 24 11:51:07 2011 -0700 Merge branch 'linux-next' of git://git.infradead.org/ubifs-2.6 * 'linux-next' of git://git.infradead.org/ubifs-2.6: (52 commits) UBIFS: switch to dynamic printks UBIFS: fix kernel-doc comments UBIFS: fix extremely rare mount failure UBIFS: simplify LEB recovery function further UBIFS: always cleanup the recovered LEB UBIFS: clean up LEB recovery function UBIFS: fix-up free space on mount if flag is set UBIFS: add the fixup function UBIFS: add a superblock flag for free space fix-up UBIFS: share the next_log_lnum helper UBIFS: expect corruption only in last journal head LEBs UBIFS: synchronize write-buffer before switching to the next bud UBIFS: remove BUG statement UBIFS: change bud replay function conventions UBIFS: substitute the replay tree with a replay list UBIFS: simplify replay UBIFS: store free and dirty space in the bud replay entry UBIFS: remove unnecessary stack variable UBIFS: double check that buds are replied in order UBIFS: make 2 functions static ... commit 9f22aae04631ec90eeab804b024de3c658dae406 Merge: 988c7f2 531d289 Author: Linus Torvalds Date: Tue May 24 11:50:27 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: (22 commits) m68knommu: Use generic show_interrupts() coldfire_qspi compile fix m68k: merge the mmu and non-mmu versions of sys_m68k.c m68knommu: use asm-generic/bitops/ext2-atomic.h m68knommu: Remove obsolete #include m68k: merge mmu and non-mmu versions of asm-offsets.c m68k: merge non-mmu and mmu versions of m68k_ksyms.c m68knommu: remove un-needed exporting of COLDFIRE symbols m68knommu: move EXPORT of kernel_thread to function definition m68knommu: move EXPORT of local checksumming functions to definitions m68knommu: move EXPORT of dump_fpu to function definition m68knommu: clean up mm/init_no.c m68k: merge the mmu and non-mmu mm/Makefile m68k: mv kmap_mm.c to kmap.c m68knommu: remove stubs for __ioremap() and iounmap() m68knommu: remove unused kernel_set_cachemode() m68k: let Makefile sort out compiling mmu and non-mmu lib/checksum.c m68k: remove duplicate memcpy() implementation m68k: remove duplicate memset() implementation m68k: remove duplicate memmove() implementation ... commit 988c7f2d6d5622c2407bcad49c0349fbad6489a7 Merge: d762f43 2f344d2 Author: Linus Torvalds Date: Tue May 24 11:49:16 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, ioapic: Restore ioapic entries during resume properly x86: Get rid of asmregparm um: Use RWSEM_GENERIC_SPINLOCK on x86 commit 2f344d2e51888785be551a756d8a8aa58269aaa8 Author: Suresh Siddha Date: Tue May 24 10:45:31 2011 -0700 x86, ioapic: Restore ioapic entries during resume properly In mask/restore_ioapic_entries() we should be restoring ioapic entries when ioapics[apic].saved_registers is not NULL. Fix the typo and address the resume hang regression reported by Linus. This was not found sooner because the systems where these changes were tested on kept the IO-APIC entries intact over resume. Reported-and-tested-by: Linus Torvalds Signed-off-by: Suresh Siddha Cc: Daniel J Blueman Link: http://lkml.kernel.org/r/1306259131.7171.7.camel@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 1f37070d3ff325827c6213e51b57f21fd5ac9d05 Author: Stephen Hemminger Date: Tue May 24 13:50:52 2011 -0400 dst: catch uninitialized metrics Catch cases where dst_metric_set() and other functions are called but _metrics is NULL. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 5d8bee676fc9fc9389302baa9ba47bc2ed885f64 Author: Sathya Perla Date: Mon May 23 20:29:09 2011 +0000 be2net: hash key for rss-config cmd not set A non-zero, non-descript value is needed as the hash key. The hash variable was left un-initialized; but sometimes it gets a zero value and hashing is not effective. The constant value used now (not of any significance) seems to work fine. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 33eb9873a283a2076f2b5628813d5365ca420ea9 Author: Eric Dumazet Date: Tue May 24 13:32:18 2011 -0400 bridge: initialize fake_rtable metrics bridge netfilter code uses a fake_rtable, and we must init its _metric field or risk NULL dereference later. Ref: https://bugzilla.kernel.org/show_bug.cgi?id=35672 Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit b30c516f875004f025f4d10147bde28c5e98466b Author: Eric Dumazet Date: Tue May 24 13:29:50 2011 -0400 net: fix __dst_destroy_metrics_generic() dst_default_metrics is readonly, we dont want to kfree() it later. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 19694ac88d4a73c6f12159d9e53bd636319a69dc Author: Alexey Orishko Date: Tue May 24 05:26:13 2011 +0000 CDC NCM: release interfaces fix in unbind() Changes: - claim slave/data interface during bind() and release interfaces in unbind() unconditionally - in case of error during bind(), release claimed data interface in the same function - remove obsolited "*_claimed" entries from driver context Signed-off-by: Alexey Orishko Signed-off-by: David S. Miller commit eb722d7a2e11b0426a17acaa7336120acbc49406 Author: Dmitry Kravkov Date: Tue May 24 02:06:06 2011 +0000 bnx2x: fix inverted condition Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 24cf3af3fed5edcf90bc2a0ed181e6ce1513d2dc Author: Veaceslav Falico Date: Mon May 23 23:15:05 2011 +0000 igmp: call ip_mc_clear_src() only when we have no users of ip_mc_list In igmp_group_dropped() we call ip_mc_clear_src(), which resets the number of source filters per mulitcast. However, igmp_group_dropped() is also called on NETDEV_DOWN, NETDEV_PRE_TYPE_CHANGE and NETDEV_UNREGISTER, which means that the group might get added back on NETDEV_UP, NETDEV_REGISTER and NETDEV_POST_TYPE_CHANGE respectively, leaving us with broken source filters. To fix that, we must clear the source filters only when there are no users in the ip_mc_list, i.e. in ip_mc_dec_group() and on device destroy. Acked-by: David L Stevens Signed-off-by: Veaceslav Falico Signed-off-by: David S. Miller commit be3fc413da9eb17cce0991f214ab019d16c88c41 Author: Eric Dumazet Date: Mon May 23 23:07:32 2011 +0000 net: use synchronize_rcu_expedited() synchronize_rcu() is very slow in various situations (HZ=100, CONFIG_NO_HZ=y, CONFIG_PREEMPT=n) Extract from my (mostly idle) 8 core machine : synchronize_rcu() in 99985 us synchronize_rcu() in 79982 us synchronize_rcu() in 87612 us synchronize_rcu() in 79827 us synchronize_rcu() in 109860 us synchronize_rcu() in 98039 us synchronize_rcu() in 89841 us synchronize_rcu() in 79842 us synchronize_rcu() in 80151 us synchronize_rcu() in 119833 us synchronize_rcu() in 99858 us synchronize_rcu() in 73999 us synchronize_rcu() in 79855 us synchronize_rcu() in 79853 us When we hold RTNL mutex, we would like to spend some cpu cycles but not block too long other processes waiting for this mutex. We also want to setup/dismantle network features as fast as possible at boot/shutdown time. This patch makes synchronize_net() call the expedited version if RTNL is locked. synchronize_rcu_expedited() typical delay is about 20 us on my machine. synchronize_rcu_expedited() in 18 us synchronize_rcu_expedited() in 18 us synchronize_rcu_expedited() in 18 us synchronize_rcu_expedited() in 18 us synchronize_rcu_expedited() in 20 us synchronize_rcu_expedited() in 16 us synchronize_rcu_expedited() in 20 us synchronize_rcu_expedited() in 18 us synchronize_rcu_expedited() in 18 us Signed-off-by: Eric Dumazet CC: Paul E. McKenney CC: Ben Greear Reviewed-by: Paul E. McKenney Signed-off-by: David S. Miller commit fad4dab5e44e10acf6b0235e469cb8e773b58e31 Author: Samuel Thibault Date: Wed May 18 17:06:05 2011 +0200 [SCSI] Fix Ultrastor asm snippet Commit 1292500b replaced "=m" (*field) : "1" (*field) with "=m" (*field) : with comment "The following patch fixes it by using the '+' operator on the (*field) operand, marking it as read-write to gcc." '+' was actually forgotten. This really puts it. Signed-off-by: Samuel Thibault Cc: stable@kernel.org Signed-off-by: James Bottomley commit 6e2037b0fd4d4ad9be941a3520d21945bc031a20 Author: Andrew Morton Date: Mon May 23 15:29:13 2011 -0700 [SCSI] osst: fix warning drivers/scsi/osst.c: In function '__os_scsi_tape_open': drivers/scsi/osst.c:4705: warning: ISO C90 forbids mixed declarations and code Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit a061f57d662ac2b19a1ff1955349adce7a282a5d Author: Roel Kluin Date: Mon May 23 15:29:12 2011 -0700 [SCSI] osst: wrong index used in inner loop Index i was already used in the outer loop. Fixes a potentially-infinite loop. [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Roel Kluin Cc: Willem Riede Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 8e910965975a125fff806acae80ab2b640a8dac7 Author: Vasiliy Kulikov Date: Mon May 23 15:29:12 2011 -0700 [SCSI] aic94xx: world-writable sysfs update_bios file Don't allow everybody to load firmware. Signed-off-by: Vasiliy Kulikov Signed-off-by: Andrew Morton Signed-off-by: James Bottomley commit 52f81dbaf1378faf64c3ecea5129cebf826ef126 Author: Liu Yuan Date: Fri Apr 1 06:23:49 2011 +0000 RDMA/nes: Add a check for strict_strtoul() It should check if strict_strtoul() succeeds before using 'wqm_quanta_value'. Signed-off-by: Liu Yuan [ Convert to kstrtoul() directly while we're here. - Roland ] Signed-off-by: Roland Dreier commit 86cfa7fcb7f2a14a62341ff03263826c85ec17e9 Author: Nicholas Bellinger Date: Mon May 23 14:10:32 2011 -0700 [SCSI] MAINTAINERS: Add drivers/target/ entry Signed-off-by: Nicholas A. Bellinger Signed-off-by: James Bottomley commit e66ecd505addaaf40e7d352796ba8d344f6359dd Author: Nicholas Bellinger Date: Thu May 19 20:19:14 2011 -0700 [SCSI] target: Convert TASK_ATTR to scsi_tcq.h definitions This patch converts target core and follwing scsi-misc upstream fabric modules to use include/scsi/scsi_tcq.h includes for SIMPLE, HEAD_OF_QUEUE and ORDERED SCSI tasks instead of scsi/libsas.h with TASK_ATTR* *) tcm_loop: Convert tcm_loop_allocate_core_cmd() + tcm_loop_device_reset() to scsi_tcq.h *) tcm_fc: Convert ft_send_cmd() from FCP_PTA_* to scsi_tcq.h Reported-by: Christoph Hellwig Signed-off-by: Nicholas A. Bellinger Signed-off-by: James Bottomley commit d60b7a0fc918245c6fb8cc2b15e570e040d8f38b Author: Nicholas Bellinger Date: Thu May 19 20:19:13 2011 -0700 [SCSI] target: Convert REPORT_LUNs to use int_to_scsilun This patch converts transport_core_report_lun_response() to use drivers/scsi/scsi_scan.c:int_to_scsilun instead of using the struct target_core_fabric_ops->pack_lun() fabric provided API vector. It also removes the tfo->pack_lun check from target_fabric_tf_ops_check() and removes from struct target_core_fabric_ops->pack_lun() from target_core_fabric_ops.h, and the following mainline scsi-misc fabric modules: *) tcm_loop: Drop tcm_loop_pack_lun() usage *) tcm_fc: Drop ft_pack_lun() usage Reported-by: Mike Christie Signed-off-by: Nicholas A. Bellinger Signed-off-by: James Bottomley commit af57c3ac9947990da2608561b71f4799eb7795c6 Author: Nicholas Bellinger Date: Thu May 19 20:19:12 2011 -0700 [SCSI] target: Fix task->task_execute_queue=1 clear bug + LUN_RESET OOPs This patch fixes a bug where task->task_execute_queue=1 was not being cleared once se_task had been removed from se_device->execute_task_list, resulting in an OOPs in core_tmr_lun_reset() for the task->task_active=0 case where transport_remove_task_from_execute_queue() was incorrectly being called. This patch fixes two cases in transport_get_task_from_execute_queue() and transport_remove_task_from_execute_queue() to properly clear task->task_execute_queue=0 once list_del(&task->t_execute_list) has been called. It also adds an explict check in transport_remove_task_from_execute_queue() to dump_stack + return if called with task->task_execute_queue=0. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 807838686eb9e40d73b8a3f2384881358f51fff0 Author: Steve Wise Date: Fri May 13 18:37:18 2011 +0000 RDMA/cxgb3: Don't post zero-byte read if endpoint is going away tx_ack() wasn't checking the endpoint state and consequently would attempt to post the p2p 0B read on an endpoint/QP that is closing or aborting. This causes a NULL pointer dereference crash. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit f436677262a5b524ac87675014c6d4e8ee153029 Author: Nicholas Bellinger Date: Thu May 19 20:19:11 2011 -0700 [SCSI] target: Fix bug with task_sg chained transport_free_dev_tasks release This patch addresses a bug in the target core release path for HW operation where transport_free_dev_tasks() was incorrectly being called from transport_lun_remove_cmd() while releasing a se_cmd reference and calling struct target_core_fabric_ops->queue_data_in(). This would result in a OOPs with HW target mode when the release of se_task->task_sg[] would happen before pci_unmap_sg() can be called in HW target mode fabric module code. This patch addresses the issue by moving transport_free_dev_tasks() from transport_lun_remove_cmd() into transport_generic_free_cmd(), and adding TRANSPORT_FREE_CMD_INTR and transport_generic_free_cmd_intr() to allow se_cmd descriptor release to happen fromfrom within transport_processing_thread() process context when release of se_cmd is not possible from HW interrupt context. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 53ab6709b4d35b1924240854d794482fd7d33d4a Author: Nicholas Bellinger Date: Thu May 19 20:19:10 2011 -0700 [SCSI] target: Fix interrupt context bug with stats_lock and core_tmr_alloc_req This patch fixes two bugs wrt to the interrupt context usage of target core with HW target mode drivers. It first converts the usage of struct se_device->stats_lock in transport_get_lun_for_cmd() and core_tmr_lun_reset() to properly use spin_lock_irq() to address an BUG with CONFIG_LOCKDEP_SUPPORT=y enabled. This patch also adds a 'in_interrupt()' check to allow GFP_ATOMIC usage from core_tmr_alloc_req() to fix a 'sleeping in interrupt context' BUG with HW target fabrics that require this logic to function. Signed-off-by: Nicholas Bellinger Cc: stable@kernel.org Signed-off-by: James Bottomley commit 97868c8905a1537153d406c4a3aa39a503a5c299 Author: Nicholas Bellinger Date: Thu May 19 20:19:09 2011 -0700 [SCSI] target: Fix multi task->task_sg[] chaining logic bug This patch fixes a bug in transport_do_task_sg_chain() used by HW target mode modules with sg_chain() to provide a single sg_next() walkable memory layout for use with pci_map_sg() and friends. This patch addresses an issue with mapping multiple small block max_sector tasks across multiple struct se_task->task_sg[] mappings for HW target mode operation. This was causing OOPs with (cmd->t_task->t_tasks_no > 1) I/O traffic for HW target drivers using transport_do_task_sg_chain(), and has been tested so far with tcm_fc(openfcoe), tcm_qla2xxx, and ib_srpt fabrics with t_tasks_no > 1 IBLOCK backends using a smaller max_sectors to trigger the original issue. Signed-off-by: Nicholas Bellinger Acked-by: Kiran Patil Cc: stable@kernel.org Signed-off-by: James Bottomley commit 3eef6257de48ff84a5d98ca533685df8a3beaeb8 Author: David Jeffery Date: Thu May 19 14:41:12 2011 -0400 [SCSI] Reduce error recovery time by reducing use of TURs In error recovery, most scsi error recovery stages will send a TUR command for every bad command when a driver's error handler reports success. When several bad commands to the same device, this results in a device being probed multiple times. This becomes very problematic if the device or connection is in a state where the device still doesn't respond to commands even after a recovery function returns success. The error handler must wait for the test commands to time out. The time waiting for the redundant commands can drastically lengthen error recovery. This patch alters the scsi mid-layer's error routines to send test commands once per device instead of once per bad command. This can drastically lower error recovery time. [jejb: fixed up whitespace and formatting] Signed-of-by: David Jeffery Signed-off-by: James Bottomley commit c337374bf23b88620bcc66a7a09f141cc640f548 Author: Steve Wise Date: Fri May 20 16:25:05 2011 +0000 RDMA/cxgb4: Use completion objects for event blocking There exists a race condition when using wait_queue_head_t objects that are declared on the stack. This was being done in a few places where we are sending work requests to the FW and awaiting replies, but we don't have an endpoint structure with an embedded c4iw_wr_wait struct. So the code was allocating it locally on the stack. Bad design. The race is: 1) thread on cpuX declares the wait_queue_head_t on the stack, then posts a firmware WR with that wait object ptr as the cookie to be returned in the WR reply. This thread will proceed to block in wait_event_timeout() but before it does: 2) An interrupt runs on cpuY with the WR reply. fw6_msg() handles this and calls c4iw_wake_up(). c4iw_wake_up() sets the condition variable in the c4iw_wr_wait object to TRUE and will call wake_up(), but before it calls wake_up(): 3) The thread on cpuX calls c4iw_wait_for_reply(), which calls wait_event_timeout(). The wait_event_timeout() macro checks the condition variable and returns immediately since it is TRUE. So this thread never blocks/sleeps. The function then returns effectively deallocating the c4iw_wr_wait object that was on the stack. 4) So at this point cpuY has a pointer to the c4iw_wr_wait object that is no longer valid. Further its pointing to a stack frame that might now be in use by some other context/thread. So cpuY continues execution and calls wake_up() on a ptr to a wait object that as been effectively deallocated. This race, when it hits, can cause a crash in wake_up(), which I've seen under heavy stress. It can also corrupt the referenced stack which can cause any number of failures. The fix: Use struct completion, which supports on-stack declarations. Completions use a spinlock around setting the condition to true and the wake up so that steps 2 and 4 above are atomic and step 3 can never happen in-between. Signed-off-by: Steve Wise commit 0bcaa11154f07502e68375617e5650173eea8e50 Author: Luben Tuikov Date: Thu May 19 00:00:58 2011 -0700 [SCSI] Retrieve the Caching mode page (version 2) Some kernel transport drivers unconditionally disable retrieval of the Caching mode page. One such for example is the BBB/CBI transport over USB. Such a restraint is too harsh as some devices do support the Caching mode page. Unconditionally enabling the retrieval of this mode page over those transports at their transport code level may result in some devices failing and becoming unusable. This patch implements a method of retrieving the Caching mode page without unconditionally enabling it in the transports which unconditionally disable it. The idea is to ask for all supported pages, page code 0x3F, and then search for the Caching mode page in the mode parameter data returned. The sd driver already asks for all the mode pages supported by the attached device by setting the page code to 0x3F in order to find out if the media is write protected by reading the WP bit in the Device Specific Parameter field. It then attempts to retrieve only the Caching mode page by setting the page code to 8 and actually attempting to retrieve it if and only if the transport allows it. The method implemented here is that if the transport doesn't allow retrieval of the Caching mode page and the device is not RBC, then we ask for all pages supported by setting the page code to 0x3F (similarly to how the WP bit is retrieved above), and then we search for the Caching mode page in the mode parameter data returned. With this patch, devices over SATA, report this (no change): Oct 22 18:45:58 localhost kernel: sd 0:0:0:0: [sda] 976773168 512-byte logical blocks: (500 GB/465 GiB) Oct 22 18:45:58 localhost kernel: sd 0:0:0:0: Attached scsi generic sg0 type 0 Oct 22 18:45:58 localhost kernel: sd 0:0:0:0: [sda] Write Protect is off Oct 22 18:45:58 localhost kernel: sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00 Oct 22 18:45:58 localhost kernel: sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA Smart devices report their Caching mode page. This is a change where we'd previously see the kernel making assumption about the device's cache being write-through: Oct 22 18:45:58 localhost kernel: sd 6:0:0:0: Attached scsi generic sg2 type 0 Oct 22 18:45:58 localhost kernel: sd 6:0:0:0: [sdb] 610472646 4096-byte logical blocks: (2.50 TB/2.27 TiB) Oct 22 18:45:58 localhost kernel: sd 6:0:0:0: [sdb] Write Protect is off Oct 22 18:45:58 localhost kernel: sd 6:0:0:0: [sdb] Mode Sense: 47 00 10 08 Oct 22 18:45:58 localhost kernel: sd 6:0:0:0: [sdb] Write cache: enabled, read cache: enabled, supports DPO and FUA And "dumb" devices over BBB, are correctly shown not to support reporting the Caching mode page: Oct 22 18:49:06 localhost kernel: sd 7:0:0:0: [sdc] 15663104 512-byte logical blocks: (8.01 GB/7.46 GiB) Oct 22 18:49:06 localhost kernel: sd 7:0:0:0: [sdc] Write Protect is off Oct 22 18:49:06 localhost kernel: sd 7:0:0:0: [sdc] Mode Sense: 23 00 00 00 Oct 22 18:49:06 localhost kernel: sd 7:0:0:0: [sdc] No Caching mode page present Oct 22 18:49:06 localhost kernel: sd 7:0:0:0: [sdc] Assuming drive cache: write through Version 2 adds this: Some devices don't support page code 0x3F, and others require a fixed transfer length of 192 bytes. This single commit includes a patch by Alan Stern which fixes this. Reported-and-tested-by: Richard Senior Signed-off-by: Alan Stern Signed-off-by: Luben Tuikov Signed-off-by: James Bottomley commit 9ae58e144df1a4ecc91dcd9eea5a3f4a6d13b5fc Author: Eddie Wai Date: Mon May 16 11:13:20 2011 -0700 [SCSI] bnx2i: Optimized the iSCSI offload performance Modified the event coalescing code for iSCSI offload to combat both corner cases and optimize performance as follows: 1. Added mechanism to loop back a second time to process any leftover CQEs that was generated by the hardware during the time the driver is busy processing previous CQEs in the bh. This not only helps the performance but also fixes the corner case when no more CQEs are being generated in the pipeline; so those leftover CQEs will get a a chance to be processed. 2. Added ARM_CQE_FP to distinguish between fast path arming versus slow path arming. This change will guarantee that the CQEs will always get a chance to be re-armed during fast path completions. 3. Removed the inline event coalescing division for perf optimization. Also fixed a division-by-zero error when the event_coal_div module param was set to 0. 4. Changed the default SQ WQEs size from 256 to 128 to match chip default. 5. Changed the cmd_per_lun from 32 to 24. Signed-off-by: Eddie Wai Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit d5307a078bb0288945c900c6f4a2fd77ba6d0817 Author: Eddie Wai Date: Mon May 16 11:13:19 2011 -0700 [SCSI] bnx2i: Updated the connection shutdown/cleanup timeout Modified the 10s wait time for inflight offload connections to advance to the next state to 2s based on test result. Modified the 20s shutdown timeout to 30s based on test result. Signed-off-by: Eddie Wai Reviewed-by: Mike Christie Cc: stable@kernel.org Signed-off-by: James Bottomley commit 7287c63e986fe1a51a89f4bb1327320274a7a741 Author: Eddie Wai Date: Mon May 16 11:13:18 2011 -0700 [SCSI] bnx2i: Fixed packet error created when the sq_size is set to 16 The number of chip's internal command cell, which is use to generate SCSI cmd packets to the target, was not initialized correctly by the driver when the sq_size is changed from the default 128. This, in turn, will create a problem where the chip's transmit pipe will erroneously reuse an old command cell that is no longer valid. The fix is to correctly initialize the chip's command cell upon setup. Signed-off-by: Eddie Wai Reviewed-by: Mike Christie Cc: stable@kernel.org Signed-off-by: James Bottomley commit 6b278656f26707d410778d42cd6f789b5c53c41b Author: Vikas Chaudhary Date: Tue May 17 23:17:12 2011 -0700 [SCSI] qla4xxx: Update driver version to 5.02.00-k7 Signed-off-by: Vikas Chaudhary Signed-off-by: James Bottomley commit 7ad633c06b6f1498cf26922b165837b121f27519 Author: Harish Zunjarrao Date: Tue May 17 23:17:11 2011 -0700 [SCSI] qla4xxx: Added vendor specific sysfs attributes Added fw_version, serial_num, iscsi version and boot loader version sysfs attributes. Signed-off-by: Harish Zunjarrao Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 8f0722cae6a799e0cd5f1eb5ed4569a11f8dcf79 Author: Vikas Chaudhary Date: Tue May 17 23:17:10 2011 -0700 [SCSI] qla4xxx: Remove host_lock in queuecommand function Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 1b46807e0bc6160449ce04a207fa98a694bc443c Author: Lalit Chandivade Date: Tue May 17 23:17:09 2011 -0700 [SCSI] qla4xxx: Remove AF_DPC_SCHEDULED flag from ha. Since queue_work does not requeue, there is no need to check if a work is in progress using the AF_DPC_SCHEDULED flag. queue_work would return if work is pending without adding the work, do_dpc would again get invoked from qla4xxx_timer if there is still DPC flags set. Signed-off-by: Lalit Chandivade Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 977f46a4bb58e2a8f4d287db311084e24c502b77 Author: Vikas Chaudhary Date: Tue May 17 23:17:08 2011 -0700 [SCSI] qla4xxx: Don't check FW alive if ISP82XX reset is in progress Corrected logic to don't check for F/W is alive if reset is already in progress for ISP82XX Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 0160ef12693cf1614f602051474792c5b71c639f Author: Vikas Chaudhary Date: Tue May 17 23:17:07 2011 -0700 [SCSI] qla4xxx: Don't process mbx interrupt unconditionally Do not process interrupt unconditionally during mailbox processing which can lead to spurious interrupt. Mailbox completion are now polled if interrupt are disabled or wait for interrupt to come in if its enabled Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 6d78bd56be54286a72413db82d87fc371867629f Author: Prasanna Mumbai Date: Tue May 17 23:17:06 2011 -0700 [SCSI] qla4xxx: Complete the cmd if sense_len is zero Complete the cmd if sense length is zero. For cases where sense data spans across multiple iocb's by FW, we need to hold on to the I/O (ha->status_srb != NULL) till we have processed them all and copied the sense data from internal buffer to scsi_cmd sense buffer. Signed-off-by: Prasanna Mumbai Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 68d92ebf598e205619dea753a9a990aef4ab8f7a Author: Vikas Chaudhary Date: Tue May 17 23:17:05 2011 -0700 [SCSI] qla4xxx: Dump HW/FW reg to figure out what caused FW to be hung for ISP82XX Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit cb74428ee3811d7749d07e00161336ba9f98b394 Author: Vikas Chaudhary Date: Tue May 17 23:17:04 2011 -0700 [SCSI] qla4xxx: Updated the reset sequence for ISP82xx Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit 185f107ef9913d9263bc9c2014d16a5a65c4894e Author: Prasanna Mumbai Date: Tue May 17 23:17:03 2011 -0700 [SCSI] qla4xxx: update function qla4xxx_isr_decode_mailbox() - Added MBOX_ASTS_DUPLICATE_IP AEN handling. - Update MBOX_AEN_REG_COUNT to 8 so that driver will save status of all mbox registers in aen_q Signed-off-by: Prasanna Mumbai Signed-off-by: Vikas Chaudhary Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit c498bf1a1bd4e4a9140045b747cafe6386bc59a5 Author: Martin K. Petersen Date: Wed May 18 00:46:34 2011 -0400 [SCSI] scsi_trace: Decode UNMAP bit in WRITE SAME(10) As of SBC3r26 WRITE SAME(10) supports the UNMAP bit. Signed-off-by: Martin K. Petersen Signed-off-by: James Bottomley commit 756aca7edd37611b73e1e86ea64a67b62d251509 Author: Martin K. Petersen Date: Wed May 18 00:45:22 2011 -0400 [SCSI] mpt2sas: Fix missing reference tag seed with Type 2 devices Ensure that the initial reference tag is passed on to the HBA firmware for DIF Type 2 devices. Signed-off-by: Martin K. Petersen Acked-by: Kashyap Desai Signed-off-by: James Bottomley commit 2a8cfad06ebbb68e8c113a39bdd653297fb9369c Author: Martin K. Petersen Date: Wed May 18 00:31:07 2011 -0400 [SCSI] sd: Unmap discard alignment needs to be converted to bytes The block layer discard alignment is reported in bytes, not in units of the logical block size. Signed-off-by: Martin K. Petersen Signed-off-by: James Bottomley commit 45d7f0cc58183062adea0a1de3d8cba768134138 Author: Jing Huang Date: Wed Apr 13 11:45:53 2011 -0700 [SCSI] bfa: kdump fix Root cause: When kernel crashes, bfa IOC state machine and FW doesn't get a notification and hence are not cleanly shutdown. So registers holding driver/IOC state information are not reset back to valid disabled/parking values. This causes subsequent driver initialization to hang during kdump kernel boot. Fix description: during the initialization of first PCI function, reset corresponding register when unclean shutown is detect by reading chip registers. This will make sure that ioc/fw gets clean re-initialization. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit a5442ba4a428081ebac7090f46c62ffaa17ca951 Author: Wayne Boyer Date: Tue May 17 09:18:53 2011 -0700 [SCSI] ipr: fix possible false positive detection of stuck interrupt If the driver is getting flooded with interrupts, there's a possibility that the interrupt service routine could falsely detect a stuck interrupt condition and reset the adapter. This patch changes the logic such that the routine will loop back into the command processing code one more time after detecting the stuck interrupt signature. If there are no commands to process after that pass, and the interrupt is still not cleared, then the driver will print the "Error clearing HRRQ" message and reset the adapter. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit d85e607b344d8fcd644456508a5bbe63ce011221 Author: Robert Love Date: Mon May 16 16:46:02 2011 -0700 [SCSI] libfcoe: Remove unnecessary module state checks libfcoe's interface consists of create, destroy, enable, disable and create_vn2vn. These are currently module paramaters added durring the module initialization. A concern arose that the module parameters were being added with write permissions before the module had completed initialization. The following code was added to each sysfs store file. * Make sure the module has been initialized, and is not about to be * removed. Module parameter sysfs files are writable before the * module_init function is called and after module_exit. */ if (THIS_MODULE->state != MODULE_STATE_LIVE) goto out_nodev; This check was called out as unhelpful as the module can go dead at any time and therefore its state isn't a reliable thing to look at as a sign of stability and initialization completion. Also, that functional interfaces like these should be added after module initialization. This patch removes the unnecessary checks and hopes to disprove the concern about initialization ordering. Recent fcoe transport rework changes now require fcoe transports to register with libfcoe before any operation can take place. libfcoe may access some static variables but nothing that could cause a problem. Once a fcoe transport is registered, libfcoe is usable and any interface calls will be functional. Signed-off-by: Robert Love Tested-by: Ross Brattain Signed-off-by: James Bottomley commit 8467b96c035a45418c5db2619f396b7131b4efa8 Author: Yi Zou Date: Mon May 16 16:45:57 2011 -0700 [SCSI] libfc: do not immediately retry the cmd when seq_send fails in fc_fcp_send_data Currently, when seq_send() fails in fc_fcp_send_data(), fc_fcp_retry_cmd() would complete this failed I/O directly and let scsi-ml retry. However, target side is not notified which may hang the target. Instead, we should just bail out from from fc_fcp_send_data and let scsi-ml times it out and aborts this I/O instead. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 0a219edb263ef93e4fd7a83804bea667e72a7bfa Author: Vasu Dev Date: Mon May 16 16:45:51 2011 -0700 [SCSI] libfc: fix race in SRR response In this case fsp was freed before error handler was invoked, this is fixed by having SRR fsp reference freed by exch destructor so that fsp will be always held until it exch is freed. Also don't reset fsp->recov_seq since this is needed by SRR error handler to do exch done. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 8d23f4ba38f399a6169613c6f158e39691aa694f Author: Vasu Dev Date: Mon May 16 16:45:45 2011 -0700 [SCSI] libfc: don't call resp handler after FC_EX_TIMEOUT In cases exch is already timed out then exch layer could end up calling resp handler again for its response frame received after timeout, though in this case fc_exch_timeout handler would have already called resp with FC_EX_TIMEOUT. This would cause REC response handler to release its fsp pkt hold twice instead once and possibly similar issues with other ELS exchanges in this race. To avoid this race have resp updated under exch lock in rx path, the resp would get set to NULL in case of FC_EX_TIMEOUT under the same lock to prevent resp callback after FC_EX_TIMEOUT. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 6a716a8535ea8ed7676cea1e122f1c3d02e55b6b Author: Yi Zou Date: Mon May 16 16:45:40 2011 -0700 [SCSI] libfc: release DDP context if frame_send() fails In case frame_send() fails, make sure to let the underlying HW release the DDP context that has already been set up before calling frame_send(). Signed-off-by: Yi Zou Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 83383dd11a445bbe493c75b9c88c243aa43df8d7 Author: Hillf Danton Date: Mon May 16 16:45:35 2011 -0700 [SCSI] libfc: fix mm leak in handling incoming request for target discovery When handling incoming request, if the operation code carried by the received frame is not RSCN, the frame should be freed as in the RSCN case, or there is memory leakage. Signed-off-by: Hillf Danton Signed-off-by: Robert Love Signed-off-by: James Bottomley commit bdf252183e58654fcceedbf3fdcfd878b9e4f2d6 Author: Neerav Parikh Date: Mon May 16 16:45:29 2011 -0700 [SCSI] fcoe: Prevent creation of an NPIV port with duplicate WWPN This patch adds a validation step before allowing creation of a new NPIV port. It checks whether the WWPN passed for the new NPIV port to be created is unique for the given physical port. Signed-off-by: Neerav Parikh Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit c051ad2e57e379e07e4ec28b2a54eeb0d04c5d59 Author: Bhanu Prakash Gollapudi Date: Mon May 16 16:45:24 2011 -0700 [SCSI] libfcoe: Incorrect CVL handling for NPIV ports Host doesnt handle CVL to NPIV instantiated ports correctly. - As per FC-BB-5 Rev 2 CVLs with no VN_Port descriptors shall be treated as implicit logout of ALL vn_ports. - CVL for NPIV ports should be handled before physical port even if descriptor for physical port appears before NPIV ports Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 4f788dce0baf44295a8d9708d3f124587158c061 Author: adam radford Date: Wed May 11 18:35:05 2011 -0700 [SCSI] megaraid_sas: Version and Changelog update Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 3cc6851f9a3509e2ced0eb218599857b07c0ab46 Author: adam radford Date: Wed May 11 18:34:52 2011 -0700 [SCSI] megaraid_sas: Add 1078 OCR support Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 495c5609700e21059fa0a4651b0f4f5847332319 Author: adam radford Date: Wed May 11 18:34:40 2011 -0700 [SCSI] megaraid_sas: Convert 6,10,12 byte CDB's for FastPath IO The following patch for megaraid_sas converts 6,10,12 byte CDB's to 16 byte CDB for large LBA's for FastPath IO. Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 541f90b7c6dffe4cf4a3e8142ac8bd047da94733 Author: adam radford Date: Wed May 11 18:34:29 2011 -0700 [SCSI] megaraid_sas: Fix bug where AENs could be lost in probe() and resume() Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 46fd256e05581e4a04d5a8ec107d35afe938c65b Author: adam radford Date: Wed May 11 18:34:17 2011 -0700 [SCSI] megaraid_sas: Disable interrupts/free_irq() in megasas_shutdown() The following patch for megaraid_sas disables interrupts and free_irq() in megasas_shutdown(). Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 7e70e7336515cd367b9cfcf5379e04808bdcbe96 Author: adam radford Date: Wed May 11 18:34:08 2011 -0700 [SCSI] megaraid_sas: Check MFI_REG_STATE.fault.resetAdapter The following patch for megaraid_sas fixes the function megasas_reset_fusion() and makes the reset code check MFI_REG_STATE.fault.resetAdapter. Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 70d031f36fa50a53128d0d2b5f95032cd534778b Author: adam radford Date: Wed May 11 18:33:58 2011 -0700 [SCSI] megaraid_sas: Remove un-used function The following patch for megaraid_sas removes un-used function megasas_return_cmd_for_smid(). Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit 3f1abce4aba4ced0ba8be54b22f2882bdd01c746 Author: adam radford Date: Wed May 11 18:33:47 2011 -0700 [SCSI] megaraid_sas: Remove MSI-X black list, use MFI_REG_STATE instead This patch for megaraid_sas removes the MSI-X black list and uses MFI_REG_STATE.ready.msiEnable instead. Signed-off-by: Adam Radford Signed-off-by: James Bottomley commit bb650a1bef73a8c1fd076fae4c4f0701cf3b5f25 Author: Xiangliang Yu Date: Sun May 8 19:27:01 2011 +0800 [SCSI] libsas: fix SATA NCQ error Current version of libsas can not handle SATA NCQ error. This patch handle SATA NCQ error as AHCI do. Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 5fd5cc83a886d691ab8cd6d4404ca35e09ce88e3 Author: Kashyap, Desai Date: Wed May 4 16:37:04 2011 +0530 [SCSI] mpt2sas: Driver version upgrade 08.100.00.02 Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 3ace8e052be5293ebb3e00f819effccc64108a38 Author: Kashyap, Desai Date: Wed May 4 16:35:58 2011 +0530 [SCSI] mpt2sas: move even handling of MPT2SAS_TURN_ON_FAULT_LED into process context Driver was a sending a SEP request during interrupt context which required to go to sleep. The fix is to rearrange the code so a fake event MPT2SAS_TURN_ON_FAULT_LED is fired from interrupt context, then later during the kernel worker threads processing, the SEP request is issued to firmware. Cc: stable@kernel.org Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 0bd41dfc9fbbcf174d5336c1c9fc5ba917519761 Author: Arun Sharma Date: Tue May 17 10:36:16 2011 -0700 kbuild: Create a kernel-headers RPM To compile binaries which depend on new kernel interfaces, we need a kernel-headers RPM Signed-off-by: Arun Sharma Signed-off-by: Michal Marek commit 55a7bc5a30ff2d30d8a34fea2af9fc601b32e61a Author: Christoph Hellwig Date: Wed May 4 18:55:15 2011 +0000 xfs: do not discard alloc btree blocks Blocks for the allocation btree are allocated from and released to the AGFL, and thus frequently reused. Even worse we do not have an easy way to avoid using an AGFL block when it is discarded due to the simple FILO list of free blocks, and thus can frequently stall on blocks that are currently undergoing a discard. Add a flag to the busy extent tracking structure to skip the discard for allocation btree blocks. In normal operation these blocks are reused frequently enough that there is no need to discard them anyway, but if they spill over to the allocation btree as part of a balance we "leak" blocks that we would otherwise discard. We could fix this by adding another flag and keeping these block in the rbtree even after they aren't busy any more so that we could discard them when they migrate out of the AGFL. Given that this would cause significant overhead I don't think it's worthwile for now. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit e84661aa84e2e003738563f65155d4f12dc474e7 Author: Christoph Hellwig Date: Fri May 20 13:45:32 2011 +0000 xfs: add online discard support Now that we have reliably tracking of deleted extents in a transaction we can easily implement "online" discard support which calls blkdev_issue_discard once a transaction commits. The actual discard is a two stage operation as we first have to mark the busy extent as not available for reuse before we can start the actual discard. Note that we don't bother supporting discard for the non-delaylog mode. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 93628ffb9ba67c154849ac6c387f98f5e3198b84 Author: Jan Kara Date: Tue May 24 12:00:54 2011 -0400 ext4: fix waiting and sending of a barrier in ext4_sync_file() jbd2_log_start_commit() returns 1 only when we really start a transaction. But we also need to wait for a transaction when the commit is already running. Fix this problem by waiting for transaction commit unconditionally (which is just a quick check if the transaction is already committed). Also we have to be more careful with sending of a barrier because when transaction is being committed in parallel to ext4_sync_file() running, we cannot be sure that the barrier the journalling code sends happens after we wrote all the data for fsync (note that not every data writeout needs to trigger metadata changes thus commit of some metadata changes can be running while other data is still written out). So use jbd2_will_send_data_barrier() helper to detect the common cases when we can be sure barrier will be issued by the commit code and issue the barrier ourselves in the remaining cases. Reported-by: Edward Goggin Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit bbd2be36910728f485ac78ea36e0f4f5a38e691e Author: Jan Kara Date: Tue May 24 11:59:18 2011 -0400 jbd2: Add function jbd2_trans_will_send_data_barrier() Provide a function which returns whether a transaction with given tid will send a flush to the filesystem device. The function will be used by ext4 to detect whether fsync needs to send a separate flush or not. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 81be12c8179c1c397d3f179cdd9b3f7146cf47f1 Author: Jan Kara Date: Tue May 24 11:52:40 2011 -0400 jbd2: fix sending of data flush on journal commit In data=ordered mode, it's theoretically possible (however rare) that an inode is filed to transaction's t_inode_list and a flusher thread writes all the data and inode is reclaimed before the transaction starts to commit. In such a case, we could erroneously omit sending a flush to file system device when it is different from the journal device (because data can still be in disk cache only). Fix the problem by setting a flag in a transaction when some inode is added to it and then send disk flush in the commit code when the flag is set. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 857c7e438769c0f251092a20b587d6e743ee489d Author: Michal Marek Date: Thu May 5 00:37:13 2011 +0200 rpm-pkg: Fix when current directory is a symlink The better fix would be to stop using the parent directory (principle of least surprise), but as long as we use it, use it consistently. Signed-off-by: Michal Marek commit b221349fa8b45d13c3650089f0514df7d1eb36c3 Author: Yongqiang Yang Date: Tue May 24 11:36:58 2011 -0400 ext4: fix ext4_ext_fiemap_cb() to handle blocks before request range correctly To get delayed-extent information, ext4_ext_fiemap_cb() looks up pagecache, it thus collects information starting from a page's head block. If blocksize < pagesize, the beginning blocks of a page may lies before the request range. So ext4_ext_fiemap_cb() should proceed ignoring them, because they has been handled before. If no mapped buffer in the range is found in the 1st page, we need to look up the 2nd page, otherwise delayed-extents after a hole will be ignored. Without this patch, xfstests 225 will hung on ext4 with 1K block. Reported-by: Amir Goldstein Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" commit 61b61e3c5c9bf37ca2915ac981f444989ab22f10 Author: Liam Girdwood Date: Tue May 24 13:57:43 2011 +0100 ASoC: core - fix module reference counting for CPU DAIs Currently CODEC and platform drivers have their module reference count incremented soc_probe_dai_link() whilst CPU DAI drivers have their reference count incremented in soc_bind_dai_link(). CPU DAIs should have their reference count incremented in soc_probe_dai_link() just like the CODEC and platform drivers. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 477a66948ef8683f182682cc68e8520baf8a5b43 Author: Daniel Mack Date: Tue May 24 14:10:32 2011 +0200 ASoC: fix raumfeld platform Commit f0fba2ad (ASoC: multi-component - ASoC Multi-Component Support) broke support for Raumfeld platforms as it didn't take into account the different hardware features on individual devices. In particular, Raumfeld speakers have no S/PDIF output, so the members of the snd_soc_card struct must be set dynamically. Signed-off-by: Daniel Mack Acked-by: Liam Girdwood Signed-off-by: Mark Brown Cc: stable@kernel.org commit a1c15c59feee36267c43142a41152fbf7402afb6 Author: Namhyung Kim Date: Tue May 24 16:48:55 2011 +0200 loop: handle on-demand devices correctly When finding or allocating a loop device, loop_probe() did not take partition numbers into account so that it can result to a different device. Consider following example: $ sudo modprobe loop max_part=15 $ ls -l /dev/loop* brw-rw---- 1 root disk 7, 0 2011-05-24 22:16 /dev/loop0 brw-rw---- 1 root disk 7, 16 2011-05-24 22:16 /dev/loop1 brw-rw---- 1 root disk 7, 32 2011-05-24 22:16 /dev/loop2 brw-rw---- 1 root disk 7, 48 2011-05-24 22:16 /dev/loop3 brw-rw---- 1 root disk 7, 64 2011-05-24 22:16 /dev/loop4 brw-rw---- 1 root disk 7, 80 2011-05-24 22:16 /dev/loop5 brw-rw---- 1 root disk 7, 96 2011-05-24 22:16 /dev/loop6 brw-rw---- 1 root disk 7, 112 2011-05-24 22:16 /dev/loop7 $ sudo mknod /dev/loop8 b 7 128 $ sudo losetup /dev/loop8 ~/temp/disk-with-3-parts.img $ sudo losetup -a /dev/loop128: [0805]:278201 (/home/namhyung/temp/disk-with-3-parts.img) $ ls -l /dev/loop* brw-rw---- 1 root disk 7, 0 2011-05-24 22:16 /dev/loop0 brw-rw---- 1 root disk 7, 16 2011-05-24 22:16 /dev/loop1 brw-rw---- 1 root disk 7, 2048 2011-05-24 22:18 /dev/loop128 brw-rw---- 1 root disk 7, 2049 2011-05-24 22:18 /dev/loop128p1 brw-rw---- 1 root disk 7, 2050 2011-05-24 22:18 /dev/loop128p2 brw-rw---- 1 root disk 7, 2051 2011-05-24 22:18 /dev/loop128p3 brw-rw---- 1 root disk 7, 32 2011-05-24 22:16 /dev/loop2 brw-rw---- 1 root disk 7, 48 2011-05-24 22:16 /dev/loop3 brw-rw---- 1 root disk 7, 64 2011-05-24 22:16 /dev/loop4 brw-rw---- 1 root disk 7, 80 2011-05-24 22:16 /dev/loop5 brw-rw---- 1 root disk 7, 96 2011-05-24 22:16 /dev/loop6 brw-rw---- 1 root disk 7, 112 2011-05-24 22:16 /dev/loop7 brw-r--r-- 1 root root 7, 128 2011-05-24 22:17 /dev/loop8 After this patch, /dev/loop8 - instead of /dev/loop128 - was accessed correctly. In addition, 'range' passed to blk_register_region() should include all range of dev_t that LOOP_MAJOR can address. It does not need to be limited by partition numbers unless 'max_loop' param was specified. Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: stable@kernel.org Signed-off-by: Jens Axboe commit 78f4bb367fd147a0e7e3998ba6e47109999d8814 Author: Namhyung Kim Date: Tue May 24 16:48:54 2011 +0200 loop: limit 'max_part' module param to DISK_MAX_PARTS The 'max_part' parameter controls the number of maximum partition a loop block device can have. However if a user specifies very large value it would exceed the limitation of device minor number and can cause a kernel panic (or, at least, produce invalid device nodes in some cases). On my desktop system, following command kills the kernel. On qemu, it triggers similar oops but the kernel was alive: $ sudo modprobe loop max_part0000 ------------[ cut here ]------------ kernel BUG at /media/Linux_Data/project/linux/fs/sysfs/group.c:65! invalid opcode: 0000 [#1] SMP last sysfs file: CPU 0 Modules linked in: loop(+) Pid: 43, comm: insmod Tainted: G W 2.6.39-qemu+ #155 Bochs Bochs RIP: 0010:[] [] internal_create_group= +0x2a/0x170 RSP: 0018:ffff880007b3fde8 EFLAGS: 00000246 RAX: 00000000ffffffef RBX: ffff880007b3d878 RCX: 00000000000007b4 RDX: ffffffff8152da50 RSI: 0000000000000000 RDI: ffff880007b3d878 RBP: ffff880007b3fe38 R08: ffff880007b3fde8 R09: 0000000000000000 R10: ffff88000783b4a8 R11: ffff880007b3d878 R12: ffffffff8152da50 R13: ffff880007b3d868 R14: 0000000000000000 R15: ffff880007b3d800 FS: 0000000002137880(0063) GS:ffff880007c00000(0000) knlGS:00000000000000= 00 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000422680 CR3: 0000000007b50000 CR4: 00000000000006b0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 0000000000000000 DR7: 0000000000000000 Process insmod (pid: 43, threadinfo ffff880007b3e000, task ffff880007afb9c= 0) Stack: ffff880007b3fe58 ffffffff811e66dd ffff880007b3fe58 ffffffff811e570b 0000000000000010 ffff880007b3d800 ffff880007a7b390 ffff880007b3d868 0000000000400920 ffff880007b3d800 ffff880007b3fe48 ffffffff8113cfc8 Call Trace: [] ? device_add+0x4bc/0x5af [] ? dev_set_name+0x3c/0x3e [] sysfs_create_group+0xe/0x12 [] blk_trace_init_sysfs+0x14/0x16 [] blk_register_queue+0x47/0xf7 [] add_disk+0xdf/0x290 [] loop_init+0xeb/0x1b8 [loop] [] ? 0xffffffffa0005fff [] do_one_initcall+0x7a/0x12e [] sys_init_module+0x9c/0x1e0 [] system_call_fastpath+0x16/0x1b Code: c3 55 48 89 e5 41 57 41 56 41 89 f6 41 55 41 54 49 89 d4 53 48 89 fb= 48 83 ec 28 48 85 ff 74 0b 85 f6 75 0b 48 83 7f 30 00 75 14 <0f> 0b eb fe = 48 83 7f 30 00 b9 ea ff ff ff 0f 84 18 01 00 00 49 RIP [] internal_create_group+0x2a/0x170 RSP ---[ end trace a123eb592043acad ]--- Signed-off-by: Namhyung Kim Cc: Laurent Vivier Cc: stable@kernel.org Signed-off-by: Jens Axboe commit f64d8a5fdec35ed36f76130517a5580974a324a4 Author: Anatolij Gustschin Date: Fri May 13 13:31:37 2011 +0200 video: mb862xxfb: add support for L1 displaying Allow displaying L1 video data on top of the primary L0 layer. The L1 layer position and dimensions can be configured and the layer enabled/disabled by using the appropriate L1 controls added by this patch. Signed-off-by: Anatolij Gustschin commit f8a6b1f44833a4eb4c323b8b71fc592646212090 Author: Anatolij Gustschin Date: Tue May 24 15:19:48 2011 +0200 video: mb862xx: add support for controller's I2C bus adapter Add adapter driver for I2C adapter in Coral-P(A)/Lime GDCs. So we can easily access devices on controller's I2C bus using i2c-dev interface. Signed-off-by: Anatolij Gustschin commit 12ed0c4baa4144ab3560ae793b5120316d74c0fe Author: Anatolij Gustschin Date: Fri May 13 12:52:29 2011 +0200 video: mb862xxfb: relocate register space to get contiguous vram By default the GDC registers are located in the middle of the 64MiB area for video RAM and registers. When 32MiB VRAM or more is used, relocate the register space to the top of the 64MiB space so that we get the contiguous VRAM for GDC frame buffer layers, drawing frames, capture and cursor buffers. Signed-off-by: Anatolij Gustschin commit 3cadf9455c31de340ed77394dfad330caeb66b58 Author: Anatolij Gustschin Date: Fri May 13 14:12:15 2011 +0200 video: mb862xxfb: use pre-initialized configuration for PCI GDCs If the bootloader has already initialized the display controller, do not re-initialize it in the driver. Take over the bootloader's configuration instead. This is already supported for non PCI GDCs Lime and Mint. Add this functionality for PCI GDCs Coral-P and Coral-PA. It is useful to avoid flicker and also avoids unneeded init delays while booting. Signed-off-by: Anatolij Gustschin commit dcdf2f7e7e154957f913e5468e3715e1a0401138 Author: Anatolij Gustschin Date: Fri May 13 11:05:08 2011 +0200 video: mb862xxfb: correct fix.smem_len field initialization Initialize smem_len field to the actual frame buffer size and not to the whole video RAM size. This prevents overwriting other video memory (which could be used by other layers, cursors or accelerated drivers) by frame buffer applications relying on fix.smem_len. Signed-off-by: Anatolij Gustschin commit bdebd4892e05cc9068659f25af33c6b322034eb2 Author: Arnaud Lacombe Date: Sun May 15 23:22:56 2011 -0400 kconfig: do not record timestamp in .config Signed-off-by: Arnaud Lacombe Signed-off-by: Michal Marek commit ca995cbf77f3df599b7e751c2d08d90787c65c45 Author: Jim Cromie Date: Mon May 23 12:44:57 2011 -0600 export_report: use warn() to issue WARNING, so they go to stderr Also count CONFIG_MODVERSIONS warnings, and print a NOTE at start of SECTION 2 if any were issued. Section 2 will be empty if the build is lacking this CONFIG_ item, and user may have missed the warnings, as they're off screen. Signed-off-by: Jim Cromie Signed-off-by: Michal Marek commit bdabc7a345db97b3839c2c3deef40023cf8017ef Author: Jim Cromie Date: Mon May 23 12:44:56 2011 -0600 export_report: sort SECTION 2 output Sort SECTION 2 modules by name. Within those module listings, sort the symbol providers by name, and remove the count, as it is misleading; its the kernel-wide count of uses of that symbol, not the count pertaining to the module being outlined. (this can be seen by grepping the output for a single symbol). The count is still used to sort the symbols. Signed-off-by: Jim Cromie Signed-off-by: Michal Marek commit de7b0b4110795be914e6cafdfec4276b2618cc78 Author: Jim Cromie Date: Mon May 23 12:44:55 2011 -0600 export_report: do collectcfiles work in perl itself Avoid spawning a shell pipeline doing cat, grep, sed, and do it all inside perl. The <*.c> globbing construct works at least as far back as 5.8.9 Note that this is not just an optimization; the sed command in the pipeline was unterminated, due to lack of escape on the end-of-line (\$) in the regex, resulting in this: $ perl ../linux-2.6/scripts/export_report.pl > /dev/null sed: -e expression #1, char 5: unterminated `s' command sh: .mod.c/: not found Comments on an earlier patch sought an all-perl implementation. Signed-off-by: Jim Cromie cc: Michal Marek , cc: linux-kbuild@vger.kernel.org cc: Arnaud Lacombe lacombar@gmail.com cc: Stephen Hemminger shemminger@vyatta.com Signed-off-by: Michal Marek commit 6ef3d36eee2a5593e31f9f77b4aa992024838ff7 Author: Eduardo Silva Date: Thu May 19 08:38:25 2011 -0400 gconfig: Hide unused left treeview when start up the interface When the gconfig program starts in full mode view, it shows the left treeview which belongs to the 'split mode view'. The patch fix this visual issue. Signed-off-by: Eduardo Silva Signed-off-by: Michal Marek commit 2626e674021c28250874a68f47b0f4759fcf63db Author: Eduardo Silva Date: Thu May 19 08:37:01 2011 -0400 gconfig: enable rules hint for main treeviews Due to the large amount of rows in the treeviews, is difficult to match columns with rows, setting the rules hint to 'true' allows the treeview to alternate background colors in the rows making the data more readable. Signed-off-by: Eduardo Silva Tested-by: Randy Dunlap Signed-off-by: Michal Marek commit c4dbe54ed7296ac3249c415d512dd6d649f66f4b Author: Eric Dumazet Date: Tue May 24 14:08:08 2011 +0200 seqlock: Get rid of SEQLOCK_UNLOCKED All static seqlock should be initialized with the lockdep friendly __SEQLOCK_UNLOCKED() macro. Remove legacy SEQLOCK_UNLOCKED() macro. Signed-off-by: Eric Dumazet Cc: David Miller Link: http://lkml.kernel.org/r/%3C1306238888.3026.31.camel%40edumazet-laptop%3E Signed-off-by: Thomas Gleixner commit b7b57551bbda1390959207f79f2038aa7adb72ae Merge: 434d42c 7a627e3 Author: James Morris Date: Tue May 24 23:20:19 2011 +1000 Merge branch 'master' of git://git.infradead.org/users/eparis/selinux into for-linus Conflicts: lib/flex_array.c security/selinux/avc.c security/selinux/hooks.c security/selinux/ss/policydb.c security/smack/smack_lsm.c Manually resolve conflicts. Signed-off-by: James Morris commit 434d42cfd05a7cc452457a81d2029540cba12150 Merge: d762f43 12a5a26 Author: James Morris Date: Tue May 24 22:55:24 2011 +1000 Merge branch 'next' into for-linus commit 45e9683e87b69328175df3a9e42039b9892ca47e Author: Stephen Rothwell Date: Tue May 24 13:28:54 2011 +1000 compat: include aio_abi.h for aio_context_t fixes this build error on sparc64 (at least): In file included from arch/sparc/include/asm/siginfo.h:19, from include/linux/signal.h:5, from include/linux/sched.h:73, from arch/sparc/kernel/asm-offsets.c:13: include/linux/compat.h:401: error: expected ')' before 'ctx_id' include/linux/compat.h:406: error: expected ')' before 'ctx_id' Signed-off-by: Stephen Rothwell Signed-off-by: Chris Metcalf commit 973aa8181e10050809b56ecbaadd01495766a19e Author: Andy Lutomirski Date: Mon May 23 09:31:31 2011 -0400 x86-64: Optimize vDSO time() This function just reads a 64-bit variable that's updated atomically, so we don't need any locks. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C40e2700f8cda4d511e5910be1e633025d28b36c2.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit f144a6b4d1688675d88990e29567b2335b48205e Author: Andy Lutomirski Date: Mon May 23 09:31:30 2011 -0400 x86-64: Add time to vDSO The only fast implementation of time(2) we expose is through the vsyscall page and we want to get userspace to stop using the vsyscall page. So make it available through the vDSO as well. This is essentially a cut-n-paste job. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3Cbf963bac5207de4b29613f27c42705e4371812a8.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 6447facba36e3fff77ab4c68f46297a5dab024c8 Author: Andy Lutomirski Date: Mon May 23 09:31:29 2011 -0400 x86-64: Turn off -pg and turn on -foptimize-sibling-calls for vDSO The vDSO isn't part of the kernel, so profiling and kernel backtraces don't really matter. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C23087b738c037342abb53f2f07b9bef89ceaeea3.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 44259b1abfaa8bb819d25d41d71e8e33e25dd36a Author: Andy Lutomirski Date: Mon May 23 09:31:28 2011 -0400 x86-64: Move vread_tsc into a new file with sensible options vread_tsc is short and hot, and it's userspace code so the usual reasons to enable -pg and turn off sibling calls don't apply. (OK, turning off sibling calls has no effect. But it might someday...) As an added benefit, tsc.c is profilable now. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C99c6d7f5efa3ccb65b4ac6eb443e1ab7bad47d7b.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 0f51f2852ccf0fe38a02d340d0ba625e8e32a863 Author: Andy Lutomirski Date: Mon May 23 09:31:27 2011 -0400 x86-64: Vclock_gettime(CLOCK_MONOTONIC) can't ever see nsec < 0 vclock_gettime's do_monotonic helper can't ever generate a negative nsec value, so it doesn't need to check whether it's negative. In the CLOCK_MONOTONIC_COARSE case, ns can't ever exceed 2e9-1, so we can avoid the loop entirely. This saves a single easily-predicted branch. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3Cd6d528d32c7a21618057cfc9005942a0fe5cb54a.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 3729db5ca2b2000c660e5a5d0eb68b1053212cab Author: Andy Lutomirski Date: Mon May 23 09:31:26 2011 -0400 x86-64: Don't generate cmov in vread_tsc vread_tsc checks whether rdtsc returns something less than cycle_last, which is an extremely predictable branch. GCC likes to generate a cmov anyway, which is several cycles slower than a predicted branch. This saves a couple of nanoseconds. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C561280649519de41352fcb620684dfb22bad6bac.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 057e6a8c660e95c3f4e7162e00e2fee1fc90c50d Author: Andy Lutomirski Date: Mon May 23 09:31:25 2011 -0400 x86-64: Remove unnecessary barrier in vread_tsc RDTSC is completely unordered on modern Intel and AMD CPUs. The Intel manual says that lfence;rdtsc causes all previous instructions to complete before the tsc is read, and the AMD manual says to use mfence;rdtsc to do the same thing. From a decent amount of testing [1] this is enough to make rdtsc be ordered with respect to subsequent loads across a wide variety of CPUs. On Sandy Bridge (i7-2600), this improves a loop of clock_gettime(CLOCK_MONOTONIC) by more than 5 ns/iter. [1] https://lkml.org/lkml/2011/4/18/350 Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C1c158b9d74338aa5361f96dd473d0e6a58235302.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 8c49d9a74bac5ea3f18480307057241b808fcc0c Author: Andy Lutomirski Date: Mon May 23 09:31:24 2011 -0400 x86-64: Clean up vdso/kernel shared variables Variables that are shared between the vdso and the kernel are currently a bit of a mess. They are each defined with their own magic, they are accessed differently in the kernel, the vsyscall page, and the vdso, and one of them (vsyscall_clock) doesn't even really exist. This changes them all to use a common mechanism. All of them are delcared in vvar.h with a fixed address (validated by the linker script). In the kernel (as before), they look like ordinary read-write variables. In the vsyscall page and the vdso, they are accessed through a new macro VVAR, which gives read-only access. The vdso is now loaded verbatim into memory without any fixups. As a side bonus, access from the vdso is faster because a level of indirection is removed. While we're at it, pack jiffies and vgetcpu_mode into the same cacheline. Signed-off-by: Andy Lutomirski Cc: Andi Kleen Cc: Linus Torvalds Cc: "David S. Miller" Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Borislav Petkov Link: http://lkml.kernel.org/r/%3C7357882fbb51fa30491636a7b6528747301b7ee9.1306156808.git.luto%40mit.edu%3E Signed-off-by: Thomas Gleixner commit 1b4ac2a935aaf194241a2f4165d6407ba9650e1a Author: Richard Weinberger Date: Tue May 24 00:18:05 2011 +0200 x86: Get rid of asmregparm As UML does no longer need asmregparm we can remove it. Signed-off-by: Richard Weinberger Cc: namhyung@gmail.com Cc: davem@davemloft.net Cc: fweisbec@gmail.com Cc: dhowells@redhat.com Link: http://lkml.kernel.org/r/%3C1306189085-29896-1-git-send-email-richard%40nod.at%3E Signed-off-by: Thomas Gleixner commit 3a3679078aed2c451ebc32836bbd3b8219a65e01 Author: Richard Weinberger Date: Mon May 23 22:51:33 2011 +0200 um: Use RWSEM_GENERIC_SPINLOCK on x86 Commit d12337 (rwsem: Remove redundant asmregparm annotation) broke rwsem on UML. As we cannot compile UML with -mregparm=3 and keeping asmregparm only for UML is inadequate the easiest solution is using RWSEM_GENERIC_SPINLOCK. Thanks to Thomas Gleixner for the idea. Reported-by: Toralf Förster Tested-by: Toralf Förster Signed-off-by: Richard Weinberger Cc: user-mode-linux-devel@lists.sourceforge.net Cc: # .39.x Link: http://lkml.kernel.org/r/%3C1306183893-26655-1-git-send-email-richard%40nod.at%3E Signed-off-by: Thomas Gleixner commit 7b668357810ecb5fdda4418689d50f5d95aea6a8 Author: Alex Williamson Date: Tue May 24 12:02:41 2011 +0100 intel-iommu: Flush unmaps at domain_exit We typically batch unmaps to be lazily flushed out at regular intervals. When we destroy a domain, we need to force a flush of these lazy unmaps to be sure none reference the domain we're about to free. Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=35062 Signed-off-by: Alex Williamson Signed-off-by: David Woodhouse Cc: stable@kernel.org commit b3a530e4e734cab7043a3ab7d135f539042443a7 Author: Jan Kiszka Date: Sun May 15 12:34:55 2011 +0200 intel-iommu: Remove obsolete comment from detect_intel_iommu Since cacd4213d8, this comment no longer applies. Signed-off-by: Jan Kiszka Signed-off-by: David Woodhouse commit b779260b097dec295e8798277ed08ec5ecd3b2c1 Author: Joseph Cihula Date: Tue May 3 00:08:37 2011 -0700 intel-iommu: fix VT-d PMR disable for TXT on S3 resume This patch is a follow on to https://lkml.org/lkml/2011/3/21/239, which was merged as commit 51a63e67da6056c13b5b597dcc9e1b3bd7ceaa55. This patch adds support for S3, as pointed out by Chris Wright. Signed-off-by: Joseph Cihula Signed-off-by: David Woodhouse commit e23be0a27dcc9297ff0495360d89bc5b0bf12383 Author: Jimmy Hon Date: Fri May 20 17:59:19 2011 -0400 HID: add quirk for HyperPen 10000U Add 5543:0064 UC-Logic Technology Corp. Aiptek HyperPen 10000U to quirks with HID_QUIRK_MULTI_INPUT. Originally the device is reporting the x,y coordinates on Z and RX. By adding this quirk, there will be two kernel devices. The first one is muted and the second device will report coordinates on X and Y. Signed-off-by: Jimmy Hon Signed-off-by: Jiri Kosina commit b76a06e08d94b2a63e47837dfe46bbbf0a3af6c2 Author: Anton Blanchard Date: Sun May 8 19:32:36 2011 -0400 oprofile: Use linux/mutex.h The oprofile code is still including asm/mutex.h instead of linux/mutex.h. Signed-off-by: Anton Blanchard Signed-off-by: Robert Richter commit e2df82ffb8f61efdefba2857da09306182e9c599 Author: Takashi Iwai Date: Tue May 24 11:49:12 2011 +0200 ALSA: hda - Fix speaker auto-mute in Cxt auto-parser Fix some logic failures in auto-mute handling in Conexant auto-parser. Also, modify codes to be a bit more understandable. Signed-off-by: Takashi Iwai commit 8af088710d1eb3c980e0ef3779c8d47f3f217b48 Author: Eric Dumazet Date: Tue May 24 11:12:58 2011 +0200 posix-timers: RCU conversion Ben Nagy reported a scalability problem with KVM/QEMU that hit very hard a single spinlock (idr_lock) in posix-timers code, on its 48 core machine. Even on a 16 cpu machine (2x4x2), a single test can show 98% of cpu time used in ticket_spin_lock, from lock_timer Ref: http://www.spinics.net/lists/kvm/msg51526.html Switching to RCU is quite easy, IDR being already RCU ready. idr_lock should be locked only for an insert/delete, not a lookup. Benchmark on a 2x4x2 machine, 16 processes calling timer_gettime(). Before : real 1m18.669s user 0m1.346s sys 1m17.180s After : real 0m3.296s user 0m1.366s sys 0m1.926s Reported-by: Ben Nagy Signed-off-by: Eric Dumazet Tested-by: Ben Nagy Cc: Oleg Nesterov Cc: Avi Kivity Cc: John Stultz Cc: Richard Cochran Cc: Paul E. McKenney Cc: Andrew Morton Signed-off-by: Thomas Gleixner commit 7f77897ef2b6a5ee4eb8bc24fe8b1f3eab254328 Author: Jiri Kosina Date: Tue May 24 11:43:18 2011 +0200 HID: hiddev: fix potential use-after-free Commit 6cb4b040795 ("HID: hiddev: fix race between hiddev_disconnect and hiddev_release") made it possible to access hiddev (for unlocking the existance mutex) once hiddev has been kfreed. Change the order so that this can not happen (always unlock the mutex first, it is needed only to protect access to ->exist and ->open). Signed-off-by: Jiri Kosina commit d819437156fd99da61d4e1402b2dbfc5cc472265 Author: Eric B Munson Date: Mon May 23 10:22:40 2011 -0400 oprofile, powerpc: Handle events that raise an exception without overflowing Commit 0837e3242c73566fc1c0196b4ec61779c25ffc93 fixes a situation on POWER7 where events can roll back if a specualtive event doesn't actually complete. This can raise a performance monitor exception. We need to catch this to ensure that we reset the PMC. In all cases the PMC will be less than 256 cycles from overflow. This patch lifts Anton's fix for the problem in perf and applies it to oprofile as well. Signed-off-by: Eric B Munson Cc: # as far back as it applies cleanly Tested-by: Maynard Johnson Signed-off-by: Robert Richter commit af1ce6b2fad7d572aef040d61a935da28a861853 Author: Jingoo Han Date: Tue May 24 08:55:23 2011 +0000 video: s3c-fb: correct transparency checking in 32bpp 32bpp means ARGB 8888 in the driver, therfore the transparency length and offset should be 8 and 24 respectively. However, the transparency length and offset were previously 0, which means that the driver supports RGB 888 without alpha blending when 32bpp is used. So, the transparency checking in 32bpp is corrected so that the transparency length and offset are 8 and 24 respectively. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 6aa9681100303bd467cbd0262eb00da8d492fc7f Author: Jingoo Han Date: Tue May 24 08:55:31 2011 +0000 video: s3c-fb: add gpio setup function to resume function This patch adds gpio setup function to resume function to ensure gpio used by FIMD IP and LCD panel during a resume. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 0ddf72be4edbd7640b57c13161f71416df16ec11 Author: Andrew Morton Date: Mon May 23 15:29:32 2011 -0700 drbd: fix warning In file included from drivers/block/drbd/drbd_main.c:54: drivers/block/drbd/drbd_int.h:1190: warning: parameter has incomplete type Forward declarations of enums do not work. Fix it unpleasantly by moving the prototype. Cc: Jens Axboe Signed-off-by: Lars Ellenberg Signed-off-by: Philipp Reisner Signed-off-by: Andrew Morton commit 9b2f61aec73dc9e735e247fd720c673b30999e7c Author: Philipp Reisner Date: Tue May 24 10:27:38 2011 +0200 drbd: fix warning Signed-off-by: Philipp Reisner commit 4e2b1084b0fb79c963b73586815e1ef034dc2b57 Author: Paul Mundt Date: Tue May 24 17:33:51 2011 +0900 sh: Update shmin to reflect PIO dependency. shmin uses __set_io_port_base() for legacy I/O mapping that ethernet and other SuperI/O functions depend on. Ensure that PIO support is built in until the board is updated for MMIO properly. Signed-off-by: Paul Mundt commit 0f0ebd980e0e8a2fd33ab3ef0d5b0cffbcddd8a1 Author: Paul Mundt Date: Tue May 24 17:25:23 2011 +0900 sh: arch/sh/kernel/process_32.c needs linux/prefetch.h. Trivial build fix for certain configurations that don't grab linux/prefetch.h via alternate means (specifically SH-2 and SH-3 parts). Signed-off-by: Paul Mundt commit 1547010e6e15a3f44f49381246421a1e19de526e Author: Namhyung Kim Date: Tue May 24 10:23:22 2011 +0200 cfq-iosched: free cic_index if cfqd allocation fails When struct cfq_data allocation fails, cic_index need to be freed. Signed-off-by: Namhyung Kim Signed-off-by: Jens Axboe commit 20359f27e8ff115f7cddf3da5b3a6cdcca2e650d Author: Namhyung Kim Date: Tue May 24 10:23:22 2011 +0200 cfq-iosched: remove unused 'group_changed' in cfq_service_tree_add() The 'group_changed' variable is initialized to 0 and never changed, so checking the variable is meaningless. It is a leftover from 0bbfeb832042 ("cfq-iosched: Always provide group iosolation."). Let's get rid of it. Signed-off-by: Namhyung Kim Cc: Justin TerAvest Signed-off-by: Jens Axboe commit 229836bd63c5413a4f8eed93d610b432be141e9b Author: Namhyung Kim Date: Tue May 24 10:23:21 2011 +0200 cfq-iosched: reduce bit operations in cfq_choose_req() Reduce the number of bit operations in cfq_choose_req() on average (and worst) cases. Signed-off-by: Namhyung Kim Signed-off-by: Jens Axboe commit b9f8ce059940064a732da49b5d6e618381dad956 Author: Namhyung Kim Date: Tue May 24 10:23:21 2011 +0200 cfq-iosched: algebraic simplification in cfq_prio_to_maxrq() Simplify the calculation in cfq_prio_to_maxrq(), plus replace CFQ_PRIO_LISTS to IOPRIO_BE_NR since they are the same and IOPRIO_BE_NR looks more reasonable in this context IMHO. Signed-off-by: Namhyung Kim Signed-off-by: Jens Axboe commit 24c4830c8ec3cbc904d84c213126a35f41a4e455 Author: Bart Van Assche Date: Sat May 21 18:32:29 2011 +0200 drbd: Fix spelling Found these with the help of ispell -l. Signed-off-by: Bart Van Assche Signed-off-by: Lars Ellenberg Signed-off-by: Philipp Reisner commit 9a0d9d0389ef769e4b01abf50fcc11407706270b Author: Lars Ellenberg Date: Mon May 2 11:51:31 2011 +0200 drbd: fix schedule in atomic An administrative detach used to request a state change directly to D_DISKLESS, first suspending IO to avoid the last put_ldev() occuring from an endio handler, potentially in irq context. This is not enough on the receiving side (typically secondary), we may miss some peer_req on the way to local disk, which then may do the last put_ldev() from their drbd_peer_request_endio(). This patch makes the detach always go through the intermediate D_FAILED state. We may consider to rename it D_DETACHING. Alternative approach would be to create yet an other work item to be scheduled on the worker, do the destructor work from there, and get the timing right. manually picked commit 564040f from the drbd 8.4 branch. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 99432fcc528d7a5ac8494a4c07ad4726670c96e2 Author: Philipp Reisner Date: Fri May 20 16:39:13 2011 +0200 drbd: Take a more conservative approach when deciding max_bio_size The old (optimistic) implementation could shrink the bio size on an primary device. Shrinking the bio size on a primary device is bad. Since there we might get BIOs with the old (bigger) size shortly after we published the new size. The new implementation is more conservative, and eventually increases the max_bio_size on a primary device (which is valid). It does so, when it knows the local limit AND the remote limit. We cache the last seen max_bio_size of the peer in the meta data, and rely on that, to make the operation of single nodes more efficient. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 21423fa79119a80e335de0c82ec29f67ed59f1bc Author: Philipp Reisner Date: Tue May 17 14:19:41 2011 +0200 drbd: Fixed state transitions after async outdate-peer-handler returned Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit fa7d939663b61f5c2bd3436d3aa126d4c0f47aa8 Author: Philipp Reisner Date: Tue May 17 14:48:55 2011 +0200 drbd: Disallow the peer_disk_state to be D_OUTDATED while connected Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit a8e407925d49c521151dd24b6376c1f9a04a093f Author: Philipp Reisner Date: Fri May 13 12:03:55 2011 +0200 drbd: Fix for the connection problems on high latency links It seems that the real cause of all the issues where that we did not noticed in drbd_try_connect() when the other guy closes one socket if the round trip time gets higher than 100ms. There were that 100ms hard coded! Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 76727f684aa2d6a2dc59a7e5cf77e092a1bf4fb6 Author: Lars Ellenberg Date: Mon May 16 15:31:45 2011 +0200 drbd: fix potential activity log refcount imbalance in error path It is no longer sufficient to trigger on local WRITE, we need to check on (rq_state & RQ_IN_ACT_LOG) before calling drbd_al_complete_io also in the error path. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit d2e17807e3799bae24664a92f4d2d3dade021e00 Author: Philipp Reisner Date: Mon Mar 14 11:54:47 2011 +0100 drbd: Only downgrade the disk state in case of disk failures Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit f36af18c7b4ea1ba333c09b606bb4a7e5af66b4d Author: Lars Ellenberg Date: Wed Mar 9 22:44:55 2011 +0100 drbd: fix disconnect/reconnect loop, if ping-timeout == ping-int If there is no replication traffic within the idle timeout (ping-int seconds), DRBD will send a P_PING, and adjust the timeout to ping-timeout. If there is no P_PING_ACK received within this ping-timeout, DRBD finally drops the connection, and tries to re-establish it. To decide which timeout was active, we compared the current timeout with the ping-timeout, and dropped the connection, if that was the case. By default, ping-int is 10 seconds, ping-timeout is 500 ms. Unfortunately, if you configure ping-timeout to be the same as ping-int, expiry of the idle-timeout had been mistaken for a missing ping ack, and caused an immediate reconnection attempt. Fix: Allow both timeouts to be equal, use a local variable to store which timeout is active. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 53ea433145d9a56c7ad5e69f21f5662053e00e84 Author: Lars Ellenberg Date: Tue Mar 8 17:11:40 2011 +0100 drbd: fix potential distributed deadlock We limit ourselves to a configurable maximum number of pages used as temporary bio pages. If the configured "max_buffers" is not big enough to match the bandwidth of the respective deployment, a distributed deadlock could be triggered by e.g. fast online verify and heavy application IO. TCP connections would block on congestion, because both receivers would wait on pages to become available. Fortunately the respective senders in this case would be able to give back some pages already. So do that. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 600942e0fdb7ed1565d056d7305c46c7c0544a3e Author: Lars Ellenberg Date: Thu Jan 27 15:24:58 2011 +0100 lru_cache.h: fix comments referring to ts_ instead of lc_ For some time we contemplated calling the "struct lru_cache" a "struct tracked_set", and some comments kept the ts_ prefix. Fix those to match the member field names. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 738a84b25cac5af94936e5a1b15cd9909212383c Author: Philipp Reisner Date: Thu Mar 3 00:21:30 2011 +0100 drbd: Fix for application IO with the on-io-error=pass-on policy In case a write failes on the local disk, go into D_INCONSISTENT disk state. That causes future reads of that block to be shipped to the peer. Read retry remote was already in place. Actually the documentation needs to get fixed now. Since the application is still shielded from the error. (as long as we have only a single disk failing) The difference to detach is that we keep the disk. And therefore might keep all the other, still working sectors up to date. Signed-off-by: Philipp Reisner Signed-off-by: Lars Ellenberg commit 6988f20fe04e9ef3aea488cb8ab57fbeb78e12f0 Merge: 0415b00 6ea0c34 Author: Tejun Heo Date: Tue May 24 09:59:36 2011 +0200 Merge branch 'fixes-2.6.39' into for-2.6.40 commit 9b28b11e2a648f07c8481b9666ccf1c088e1ab74 Merge: b7679ab 99aa182 Author: Tony Lindgren Date: Tue May 24 00:45:06 2011 -0700 Merge branch 'for_2.6.40/pm-cleanup' of ssh://master.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into omap-for-linus commit 8f25c01dec43ccfb0ec7d6216c1494772917a429 Author: Geert Uytterhoeven Date: Sat May 21 19:42:56 2011 +0000 fbdev/amifb: Remove superfluous alignment of frame buffer memory amiga_chip_alloc() already aligns to the PAGE_SIZE Signed-off-by: Geert Uytterhoeven Signed-off-by: Paul Mundt commit a707642a0653c457376068d9d4a77afe93c10c93 Author: Geert Uytterhoeven Date: Sat May 21 19:42:55 2011 +0000 fbdev/amifb: Do not call panic() if there's not enough Chip RAM Fail gracefully instead. Signed-off-by: Geert Uytterhoeven Signed-off-by: Paul Mundt commit e3e4e9c61eb7bbd1171a2b948f1ea4591bac8289 Author: Geert Uytterhoeven Date: Sat May 21 19:42:54 2011 +0000 fbdev/amifb: Correct check for video memory size The check should compare the available memory size with the highest allocation value (VIDEOMEMSIZE_*_2M), not with the lowest value (VIDEOMEMSIZE_*_1M). Signed-off-by: Geert Uytterhoeven Signed-off-by: Paul Mundt commit b9b52cf4617bedccef64cee63ba8ec68b213bc21 Author: Ben Hutchings Date: Thu May 12 12:42:17 2011 +0000 video: mb862xxfb: Require either FB_MB862XX_PCI_GDC or FB_MB862XX_LIME The driver can be built as either a PCI or platform (OF) driver. It might make sense to built it as both (though that is not currently possible) but it certainly doesn't make sense to build it as neither! Add dependencies and add a choice group to ensure that exactly one of FB_MB862XX_PCI_GDC and FB_MB862XX_LIME is selected. Signed-off-by: Ben Hutchings Acked-by: Anatolij Gustschin Signed-off-by: Paul Mundt commit af4a835bba5fe710b870b8ec8c294e2338cbb112 Author: Jingoo Han Date: Fri Apr 22 07:09:48 2011 +0000 video: s3c-fb: add window variant information for S5P Compared to s3c64xx, S5P series such as S5PC100 and S5PV210 have the different window features including valid bpp, palette size and palette bpp. Therefore, window variant information for S5P should be added. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit cd74ebaf7ac18eced59a3983b266be39d7b28ee0 Author: Jingoo Han Date: Fri Apr 22 07:09:40 2011 +0000 video: s3c-fb: add additional validate bpps Additional validate bpps are added to windows as follows: window0: 18 bpp for RGB666 window1, 2 and 3: 28 bpp for ARGB4888 window4: 19 bpp for ARGB1666, 28 bpp for ARGB4888 Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit c9d503e93562e1de093ff16a480fc8801cfa70d9 Author: Jingoo Han Date: Fri Apr 22 07:09:31 2011 +0000 video: s3c-fb: correct window osd size offset values Offset values for OSD size registers of window 1 and 2 are corrected. The offset values of OSD size registers are as follows: window0: VIDOSDC (0x8) window1 and 2: VIDOSDD (0xc) window3 and 4: not present Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 12e572d90c0868be9d3158325da7ccd5cb91c2cd Author: Stephen Rothwell Date: Fri May 20 16:29:01 2011 +1000 udlfb: include prefetch.h explicitly Commit e66eed651fd1 ("list: remove prefetching from regular list iterators") removed the include of prefetch.h from list.h, so we need to include it explicitly, now. fixes this build error on powerpc: drivers/video/udlfb.c: In function 'dlfb_compress_hline': drivers/video/udlfb.c:421: error: implicit declaration of function 'prefetch_range' Signed-off-by: Stephen Rothwell Signed-off-by: Paul Mundt commit 08f3153861e3ce8ff28fa82efe50cfb744afee7e Author: Julia Lawall Date: Fri Apr 22 20:11:23 2011 +0000 drivers/video/s3c2410fb.c: Convert release_resource to release_mem_region Request_mem_region should be used with release_mem_region, not release_resource. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @s exists@ expression e1,e2,e3,e4,e; @@ *e4 = request_mem_region(e1,e2,e3) ... when != e4 = e *release_resource(e4); // Signed-off-by: Julia Lawall Signed-off-by: Paul Mundt commit d2f6b7f7aaa245d6d96f9b3a95fc258f20c9e0a8 Author: Julia Lawall Date: Fri Apr 22 20:11:22 2011 +0000 drivers/video/sm501fb.c: Convert release_resource to release_mem_region Request_mem_region should be used with release_mem_region, not release_resource. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @s exists@ expression e1,e2,e3,e4,e; @@ *e4 = request_mem_region(e1,e2,e3) ... when != e4 = e *release_resource(e4); // Signed-off-by: Julia Lawall Signed-off-by: Paul Mundt commit 683e7cdc207f71eef3ff46f5d36ec505c65fbbc6 Author: Julia Lawall Date: Fri Apr 22 20:11:21 2011 +0000 drivers/video: Convert release_resource to release_mem_region Request_mem_region should be used with release_mem_region, not release_resource. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @s exists@ expression e1,e2,e3,e4,e; @@ *e4 = request_mem_region(e1,e2,e3) ... when != e4 = e *release_resource(e4); // Signed-off-by: Julia Lawall Signed-off-by: Paul Mundt commit 94cd1ae2fd251fd8206c043ce91a99a45439a116 Author: Liu Yuan Date: Mon Apr 18 10:44:38 2011 +0000 video, udlfb: Fix two build warnings about 'ignoring return value' build warning: ... drivers/video/udlfb.c:1590: warning: ignoring return value of ‘device_create_file’, declared with attribute warn_unused_result drivers/video/udlfb.c:1592: warning: ignoring return value of ‘device_create_bin_file’, declared with attribute warn_unused_result ... So add two checks to get rid of 'em. Signed-off-by: Liu Yuan Signed-off-by: Paul Mundt commit b73077eb03f510a84b102fb97640e595a958403c Merge: 28350e3 9d2e173 Author: Dmitry Torokhov Date: Tue May 24 00:06:26 2011 -0700 Merge branch 'next' into for-linus commit 6dbdf2a1cee23c34a66a35cfa2ae48e62e268dcb Author: Tormod Volden Date: Sun Apr 10 20:57:35 2011 +0000 savagefb: Enable LCD detection on mobile Twister Copy and paste from the Xorg DDX. Tested on TwisterK (Compaq Presario 700). Signed-off-by: Tormod Volden Signed-off-by: Paul Mundt commit cc406341d26381bf27329704360dfecd547b4fc0 Author: Tormod Volden Date: Sun Apr 10 20:57:34 2011 +0000 savagefb: New S3_TWISTER and S3_PROSAVAGEDDR chip families Realign the chip families with the Xorg DDX Signed-off-by: Tormod Volden Signed-off-by: Paul Mundt commit b7679ab3f70482ff4b75a8c735c8224ebedb6020 Merge: b08827f 208466d Author: Tony Lindgren Date: Tue May 24 00:04:49 2011 -0700 Merge branch 'for-tony' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb into omap-for-linus commit 1db41e032d563eb47deab40dc5595be306b143ba Author: axel lin Date: Tue Feb 22 01:52:42 2011 +0000 video: da8xx-fb: fix section mismatch warning Signed-off-by: Axel Lin Signed-off-by: Paul Mundt commit 98ba073c606fba7a48a8e0d36e3b02105d31c768 Author: Robin Dong Date: Fri May 6 16:01:40 2011 +0800 ocfs2: change incorrect 'extern' keyword to 'static' in dlmfs Change function param_set_dlmfs_capabilities from 'extern' to 'static' since function param_get_dlmfs_capabilities is also 'static'. Signed-off-by: Robin Dong Signed-off-by: Joel Becker commit d15660a1e6b70c75456c72050e52af63bbeb05a3 Merge: a6b5825 ebe5e12 3fedd2a Author: Paul Mundt Date: Tue May 24 15:49:57 2011 +0900 Merge branches 'common/fbdev' and 'common/fbdev-meram' of master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6 commit ebe5e12d00f4785092a9650845ad3451bbf4b311 Author: Guennadi Liakhovetski Date: Thu May 5 16:33:40 2011 +0000 fbdev: sh_mobile_lcdc: remove runtime PM calls from the notifier The notifier function calls sh_mobile_lcdc_stop() and sh_mobile_lcdc_start(), which already take care about the runtime PM state. Remove redundant calls. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 69843ba7f24950f8ef5dadacfbfbd08f53e3455b Author: Guennadi Liakhovetski Date: Thu May 5 16:32:36 2011 +0000 fbdev: sh_mobile_lcdc: reduce scope of a variable The "ret" variable in sh_mobile_lcdc_start() is only used at one location, move its definition to the inner-most scope. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 81df448eb02db14128875a6cff90876b39422a6d Author: Guennadi Liakhovetski Date: Thu May 5 16:35:11 2011 +0000 fbdev: sh_mobile_hdmi: runtime suspend HDMI on error and clean up paths Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 9f62e96084cd7ae6dedcfb4caf066ed6cc67e0d7 Author: Sunil Mushran Date: Thu May 19 14:34:09 2011 -0700 ocfs2/dlm: dlm_is_lockres_migrateable() returns boolean Patch cleans up the gunk added by commit 388c4bcb4e63e88fb1f312a2f5f9eb2623afcf5b. dlm_is_lockres_migrateable() now returns 1 if lockresource is deemed migrateable and 0 if not. Signed-off-by: Sunil Mushran Signed-off-by: Joel Becker commit 10fca35ff12ad2a7017bce6567cffe9da443d7a2 Author: Tao Ma Date: Mon May 23 10:36:45 2011 +0800 ocfs2: Add trace event for trim. Add the corresponding trace event for trim. Signed-off-by: Tao Ma Signed-off-by: Joel Becker commit 55e67872b67ebd30d1326067cdba53a622ab497d Author: Tao Ma Date: Mon May 23 10:36:44 2011 +0800 ocfs2: Add FITRIM ioctl. Add the corresponding ioctl function for FITRIM. Signed-off-by: Tao Ma Signed-off-by: Joel Becker commit e80de36d8dbff216a384e9204e54d59deeadf344 Author: Tao Ma Date: Mon May 23 10:36:43 2011 +0800 ocfs2: Add ocfs2_trim_fs for SSD trim support. Add ocfs2_trim_fs to support trimming freed clusters in the volume. A range will be given and all the freed clusters greater than minlen will be discarded to the block layer. Signed-off-by: Tao Ma Signed-off-by: Joel Becker commit 69a60c4d177632bd56ae567dc0a082f7119b71c2 Author: Amerigo Wang Date: Sun May 1 21:34:16 2011 +0800 ocfs2: remove the /sys/o2cb symlink It is obsoleted since Dec 2005. Signed-off-by: WANG Cong Signed-off-by: Joel Becker commit e2b0c215c2bd57693af69f7a430585109c02b07f Author: Tiger Yang Date: Wed Mar 2 19:32:09 2011 +0800 ocfs2: clean up mount option about atime in ocfs2.txt As ocfs2 supports relatime and strictatime, we need update the relative document. Atime_quantum need work with strictatime, so only show it in procfs when mount with strictatime. Signed-off-by: Tiger Yang Signed-off-by: Joel Becker commit a6b5825aa703714523a745a8e050b9d6105f6704 Merge: 9fb4c7f 0d66cbb Author: Paul Mundt Date: Tue May 24 15:35:54 2011 +0900 Merge branch 'for-paul' of git://gitorious.org/linux-omap-dss2/linux Conflicts: drivers/video/omap2/dss/dsi.c drivers/video/omap2/dss/dss_features.c drivers/video/omap2/dss/dss_features.h Signed-off-by: Paul Mundt commit 9fb4c7fbbcb1e947567d13b82e429ae47a46e337 Merge: dc3e5b6 d762f43 Author: Paul Mundt Date: Tue May 24 15:32:20 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 commit dc3e5b6a6e842116ec2436161adf31877f09b6b9 Author: Konstantin Khlebnikov Date: Tue Apr 19 09:47:15 2011 +0000 efifb: fix int to pointer cast warning drivers/video/efifb.c:247: warning: cast to pointer from integer of different size Signed-off-by: Konstantin Khlebnikov Signed-off-by: Peter Jones Signed-off-by: Paul Mundt commit cac6f98dfca51ec2dc906064ba0bf8be4f820ba0 Author: Paul Mundt Date: Tue May 24 15:25:40 2011 +0900 mailmap: Add entry for Damian Hobson-Garcia. Signed-off-by: Paul Mundt commit 86a73144a72b1d2e7f3df06f806dbc08b77c07e6 Author: Guennadi Liakhovetski Date: Tue Feb 22 09:57:49 2011 +0000 ARM: switch mackerel to dynamically manage the platform camera Use soc_camera_platform helper functions to dynamically manage the camera device. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit d08fe475120e3f17df37656d0644c0f17a797852 Merge: fb66c52 d762f43 Author: Paul Mundt Date: Tue May 24 15:24:52 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into rmobile-latest commit 52b96c2592e8fdb93231c9644b68112518916a57 Author: Guennadi Liakhovetski Date: Fri Apr 15 18:30:55 2011 +0000 sh: add MMCIF runtime PM support on ecovec Signed-off-by: Guennadi Liakhovetski Cc: Simon Horman Cc: Magnus Damm Signed-off-by: Paul Mundt commit a3793a0d86e2d65dda6beb86fa295be25b238159 Author: Guennadi Liakhovetski Date: Tue Feb 22 09:57:44 2011 +0000 sh: switch ap325rxa to dynamically manage the platform camera Use soc_camera_platform helper functions to dynamically manage the camera device. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 531d2895917566ab0d82faa0696d0576569f1053 Author: Geert Uytterhoeven Date: Sat Apr 30 23:15:07 2011 +0200 m68knommu: Use generic show_interrupts() Apart from whitespace differences, /proc/interrupts doesn't change by enabling GENERIC_IRQ_SHOW. Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit 0b4bf78214efcdadbbe5b09c5dff35dcc9bcb3df Author: Steven King Date: Sun Apr 24 10:48:07 2011 -0700 coldfire_qspi compile fix The m68k/m68knommu merge broke the qspi build. Signed-off-by: Steven King Signed-off-by: Greg Ungerer commit cae2e6cc002d6fdee7d8a230736fa7c685e54b35 Author: Greg Ungerer Date: Thu Apr 21 12:48:07 2011 +1000 m68k: merge the mmu and non-mmu versions of sys_m68k.c There is a lot of common code in the sys_m68k.c files. The mmu and non-mmu versions can easily be merged into a single file. There is really only 2 functions that differ in the 2 cases. A single ifdef on CONFIG_MMU can take care of this. Alternatively we could break those 2 functions out and maintain sys_m68k_no.c and sys_m68k_mm.c with just this code in it (Makefile could then just build the right one). Does anyone have strong feelings on which way they want this done? Signed-off-by: Greg Ungerer commit 48e1328e06dd9bd7a4932ee47428475963ea55b0 Author: Akinobu Mita Date: Sun Apr 17 22:57:29 2011 +0900 m68knommu: use asm-generic/bitops/ext2-atomic.h m68knommu can use generic implementation of ext2 atomic bitops. Signed-off-by: Akinobu Mita Signed-off-by: Greg Ungerer commit b60de9f5142ffc677e4e1bf0d1e8ad177d21095f Author: Geert Uytterhoeven Date: Wed Apr 6 21:43:19 2011 +0200 m68knommu: Remove obsolete #include Signed-off-by: Geert Uytterhoeven Signed-off-by: Greg Ungerer commit aa4d1f897f6a7ffdb3654a2152b60d9d832951a3 Author: Greg Ungerer Date: Tue Mar 29 15:55:36 2011 +1000 m68k: merge mmu and non-mmu versions of asm-offsets.c It is strait forward to merge the mmu and non-mmu versions of asm-offstes.c. Some name changes are required for the preempt and thread_info.flags in the non-mmu entry.S assembler to make them consistent for both setups. Signed-off-by: Greg Ungerer commit 71338aa7d050c86d8765cd36e46be514fb0ebbce Author: Dan Rosenberg Date: Mon May 23 12:17:35 2011 +0000 net: convert %p usage to %pK The %pK format specifier is designed to hide exposed kernel pointers, specifically via /proc interfaces. Exposing these pointers provides an easy target for kernel write vulnerabilities, since they reveal the locations of writable structures containing easily triggerable function pointers. The behavior of %pK depends on the kptr_restrict sysctl. If kptr_restrict is set to 0, no deviation from the standard %p behavior occurs. If kptr_restrict is set to 1, the default, if the current user (intended to be a reader via seq_printf(), etc.) does not have CAP_SYSLOG (currently in the LSM tree), kernel pointers using %pK are printed as 0's. If kptr_restrict is set to 2, kernel pointers using %pK are printed as 0's regardless of privileges. Replacing with 0's was chosen over the default "(null)", which cannot be parsed by userland %p, which expects "(nil)". The supporting code for kptr_restrict and %pK are currently in the -mm tree. This patch converts users of %p in net/ to %pK. Cases of printing pointers to the syslog are not covered, since this would eliminate useful information for postmortem debugging and the reading of the syslog is already optionally protected by the dmesg_restrict sysctl. Signed-off-by: Dan Rosenberg Cc: James Morris Cc: Eric Dumazet Cc: Thomas Graf Cc: Eugene Teo Cc: Kees Cook Cc: Ingo Molnar Cc: David S. Miller Cc: Peter Zijlstra Cc: Eric Paris Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 229de618ba6ff36e382b908b7637fe56c25ae9f1 Author: Mike Frysinger Date: Mon May 23 12:17:09 2011 +0000 net/irda: convert bfin_sir to common Blackfin UART header No need to duplicate these defines now that the common Blackfin code has unified these for all UART devices. Signed-off-by: Mike Frysinger Cc: Samuel Ortiz Cc: David Miller Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 6ac3f6649223d916bbdf1e823926f8f3b34b5d99 Author: David S. Miller Date: Tue May 24 01:11:51 2011 -0400 ipv6: Fix return of xfrm6_tunnel_rcv() Like ipv4, just return xfrm6_rcv_spi()'s return value directly. Signed-off-by: David S. Miller commit d762f4383100c2a87b1a3f2d678cd3b5425655b4 Merge: 5214638 78207ff Author: Linus Torvalds Date: Mon May 23 21:24:07 2011 -0700 Merge branch 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 * 'sh-latest' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (23 commits) sh: Ignore R_SH_NONE module relocations. SH: SE7751: Fix pcibios_map_platform_irq prototype. sh: remove warning and warning_symbol from struct stacktrace_ops sh: wire up sys_sendmmsg. clocksource: sh_tmu: Runtime PM support clocksource: sh_tmu: __clocksource_updatefreq_hz() update clocksource: sh_cmt: Runtime PM support clocksource: sh_cmt: __clocksource_updatefreq_hz() update dmaengine: shdma: synchronize RCU before freeing, simplify spinlock dmaengine: shdma: add runtime- and system-level power management dmaengine: shdma: fix locking sh: sh-sci: sh7377 and sh73a0 build fixes sh: cosmetic improvement: use an existing pointer serial: sh-sci: suspend/resume wakeup support V2 serial: sh-sci: Runtime PM support sh: select IRQ_FORCED_THREADING. sh: intc: Set virtual IRQs as nothread. sh: fixup fpu.o compile order i2c: add a module alias to the sh-mobile driver ALSA: add a module alias to the FSI driver ... commit 5214638384a968574a5ea3df1d3b3194da32a496 Merge: df462b3 0f61f3e Author: Linus Torvalds Date: Mon May 23 21:20:48 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: perf tools: Fix sample type size calculation in 32 bits archs profile: Use vzalloc() rather than vmalloc() & memset() commit df462b3dbeeaae7141f1b63cbfcc1e1bae6a85fc Merge: 343800e cf25220 Author: Linus Torvalds Date: Mon May 23 21:12:49 2011 -0700 Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (247 commits) [media] gspca - sunplus: Fix some warnings and simplify code [media] gspca: Fix some warnings tied to 'no debug' [media] gspca: Unset debug by default [media] gspca - cpia1: Remove a bad conditional compilation instruction [media] gspca - main: Remove USB traces [media] gspca - main: Version change to 2.13 [media] gspca - stk014 / t613: Accept the index 0 in querymenu [media] gspca - kinect: Remove __devinitdata [media] gspca - cpia1: Fix some warnings [media] video/Kconfig: Fix mis-classified devices [media] support for medion dvb stick 1660:1921 [media] tm6000: fix uninitialized field, change prink to dprintk [media] cx231xx: Add support for Iconbit U100 [media] saa7134 add new TV cards [media] Use a more consistent value for RC repeat period [media] cx18: Move spinlock and vb_type initialisation into stream_init [media] tm6000: remove tm6010 sif audio start and stop [media] tm6000: remove unused exports [media] tm6000: add pts logging [media] tm6000: change from ioctl to unlocked_ioctl ... commit 343800e7d20944aead238c2c6e3f7789f8b6587c Merge: f4e0bcf f68e542 Author: Linus Torvalds Date: Mon May 23 21:11:38 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6: fat: Fix statfs->f_namelen fat: Replace all printk with fat_msg() fat: Add fat_msg() function for preformated FAT messages fat: Convert fat_fs_error to use %pV fat: Fix possible null deref in fat_cache_add() fat: use new setup() for ->dir_ops too commit f4e0bcf06b9771af04273473592aeeb860ca2816 Author: Guenter Roeck Date: Mon May 23 14:05:38 2011 -0700 hwmon: (coretemp) Add comments describing the handling of HT CPUs The coretemp driver provides a single set of device attributes for each physical core of a HT CPU to avoid duplicate sensors. This functionality was introduced with commit d883b9f09772 ("hwmon: (coretemp) Skip duplicate CPU entries"). Commit e40cc4bdfd4b ("x86/hwmon: register alternate sibling upon CPU removal") extends this functionality to register the HT sibling of a CPU which is taken offline, to ensure that sensor attributes are provided if at least one HT sibling of a core is online. Add comments into the code describing the functionality in some more detail. Signed-off-by: Guenter Roeck Cc: Fenghua Yu Cc: Durgadoss R Signed-off-by: Linus Torvalds commit 5f2e8e2b0bf0f3a1819b25f6117a7f20bd15521d Author: Linus Torvalds Date: Mon May 23 21:07:40 2011 -0700 kernel/watchdog.c: Use proper ANSI C prototypes We try to enforce it by using -Wstrict-prototypes, but apparently they sometimes get through. Introduced by 4eec42f39204 ("watchdog: Change the default timeout and configure nmi watchdog period based"). Reported-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 6e9101aeec39961308176e0f59e73ac5d37d243a Author: Ingo Molnar Date: Tue May 24 05:43:18 2011 +0200 watchdog: Fix non-standard prototype of get_softlockup_thresh() This build warning slipped through: kernel/watchdog.c:102: warning: function declaration isn't a prototype As reported by Stephen Rothwell. Also address an unused variable warning that GCC 4.6.0 reports: we cannot do anything about failed watchdog ops during CPU hotplug (it's not serious enough to return an error from the notifier), so ignore them. Reported-by: Stephen Rothwell Cc: Mandeep Singh Baines Cc: Marcin Slusarz Cc: Don Zickus Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/20110524134129.8da27016.sfr@canb.auug.org.au Signed-off-by: Ingo Molnar LKML-Reference: <20110517071642.GF22305@elte.hu> commit fb66c5238547495b4a79f590b20400683702448a Author: Magnus Damm Date: Mon May 23 05:10:36 2011 +0000 ARM: mach-shmobile: Add SDHI support for AG5EVM and sh73a0 Add SDHI0 and SDHI1 support to the AG5EVM board including platform data, pinmux configuration and clock bindings. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 2007aea18c2c7262614bf942f95b3e1f519bd409 Author: Simon Horman Date: Wed Apr 27 07:43:58 2011 +0000 ARM: arch-shmobile: Use multiple irq vectors for SDHI This patch reverts "ARM: mach-shmobile: sh7372 SDHI vector merge" and supplies 3 IRQ resources for each SDHI block. Some blocks have a 4th IRQ, but this is used for DRM feathres that I do not have access tot he documentation for and are almost certainly tainted by licensing issues. So the 4th IRQ is not hooked-up even if it exists. Cc: Chris Ball Cc: Guennadi Liakhovetski Cc: Paul Mundt Cc: Magnus Damm Signed-off-by: Simon Horman Signed-off-by: Paul Mundt commit 6b36fdd11b15b6fea900f7fa0195ca3f54a33153 Author: Magnus Damm Date: Thu May 19 06:30:59 2011 +0000 ARM: mach-shmobile: AG5EVM DSI resource string update Update the struct resources for DSI0 to include the hardware block name. Purely cosmetic, makes /proc/iomem look slightly better. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 60116a73780fcf7dc01950467d75229926dc73dc Author: Magnus Damm Date: Thu May 19 06:26:20 2011 +0000 ARM: mach-shmobile: sh73a0 twd_base fix Fix the case of too late twd_base initialization for SMP on sh73a0 which bas been broken because sh73a0 specific smp_prepare_cpu() and percpu_timer_setup() changed order in the commits: 05c74a6cbcfb416286a947668ba32f63d99fe74a c413521eb4e2d7ffd5ce432a144708d479054bd3 Without this fix the sh73a0 SMP kernel panics on boot. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 34154f355904c837402aab61ef17b78f972a10b5 Author: Magnus Damm Date: Thu May 19 05:10:13 2011 +0000 ARM: mach-shmobile: headsmp.S build fix Git commit f4117ac9e237b74afdf5e001d5ea26a4d15e9847 introduced PLAT_PHYS_OFFSET, but headsmp.S was left unchanged which results in a compile error: AS arch/arm/mach-shmobile/headsmp.o arch/arm/mach-shmobile/headsmp.S: Assembler messages: arch/arm/mach-shmobile/headsmp.S:27: Error: undefined symbol `secondary_startup' in operation arch/arm/mach-shmobile/headsmp.S:27: Error: undefined symbol `PHYS_OFFSET' in operation make[1]: *** [arch/arm/mach-shmobile/headsmp.o] Error 1 make[1]: *** Waiting for unfinished jobs.... Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 6776fba7e272ab236c789d58f290495d42684fe3 Author: Magnus Damm Date: Tue May 17 10:39:22 2011 +0000 ARM: mach-shmobile: Disable sh7372 RT side MSTP bits Update the sh7372 clock code to set the RT side set of MSTP bits to a fixed disabled state. The sh7372 SoC contains two sets of MSTP bits, one for the ARM (SYS) side, and one for the SH4AL-DSP (RT) side. The actual clock associated with the MSTP bit will only be stopped when both sides have set the MSTP bit to disabled mode. Some MSTP bits are enabled by default after hardware reset, so this patch adjusts the code to disable all MSTP bits associated with the RT side to allow the SYS side to have full control. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit a63666c146f85a5ddcc3b2443d7c5888490e66b2 Author: Guennadi Liakhovetski Date: Thu May 5 16:26:06 2011 +0000 ARM: mach-shmobile: PLL does not have to run constantly for HDMI The PLLC2 clock on AP4 systems does not need to run constantly to be able to use HDMI. The HDMI hotplug interrupt works without the PLL too, after which all the necessary clocks will be turned on by the runtime PM. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit fe78e68ab8508550403238a489d6ba62b8079a50 Author: Guennadi Liakhovetski Date: Thu May 5 15:56:31 2011 +0000 ARM: mach-shmobile: add DMA for MMCIF on mackerel Add DMA mode support for the MMCIF controller on mackerel. Signed-off-by: Guennadi Liakhovetski Reviewed-by: Simon Horman Signed-off-by: Paul Mundt commit 5bcd75177bed1e36186ee681a31a7251b32d956b Author: Guennadi Liakhovetski Date: Thu May 5 15:56:27 2011 +0000 ARM: mach-shmobile: MMCIF on mackerel can also be a module Remember to also check for the CONFIG_MMC_SH_MMCIF_MODULE option for the case of a modular MMCIF driver. Signed-off-by: Guennadi Liakhovetski Reviewed-by: Simon Horman Signed-off-by: Paul Mundt commit c9fcf007f1c3380b0d2161017da46510c18d662b Author: Magnus Damm Date: Thu Apr 28 03:19:05 2011 +0000 ARM: mach-shmobile: sh7377 UIO platform data V3 Export the following sh7377 multimedia hardware blocks using UIO: VPU, VEU[0-3], JPU and SPU2[0-1] Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 6822471e29a41f5a245d521a7d95868a5434fd16 Author: Magnus Damm Date: Thu Apr 28 03:21:00 2011 +0000 ARM: mach-shmobile: sh7372 UIO platform data V3 Export the following sh7372 multimedia hardware blocks using UIO: VPU, VEU[0-3], JPU and SPU2[0-1] Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit de3283511f5bf305a8c36b8413d9834e4e7e26c5 Author: Magnus Damm Date: Thu Apr 28 03:16:32 2011 +0000 ARM: mach-shmobile: sh7367 UIO platform data V3 Export the following sh7367 multimedia hardware blocks using UIO: VPU, VEU[0-3], VEU2H, JPU and SPU1 Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 1d0738ea48829cb234fcaba830eef3461985ff44 Author: Magnus Damm Date: Thu Apr 28 03:02:40 2011 +0000 ARM: mach-shmobile: Use SCIFA and SCIFB port types on sh7377 Update the sh7377 serial port types to make use of PORT_SCIFA and PORT_SCIFB. This makes the software match the sh7377 data sheet. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit f61831ee61525a82e382b600622c3b35671a92f2 Author: Simon Horman Date: Wed Apr 27 03:17:15 2011 +0000 ARM: mach-shmobile: ap4evb, mackerel: fixup scif initialisation for zboot * Set receive enable and transmit enable bits of SCASCR0 (E6C400089). Values previously written to this register was bogus. Curiously earlyprintk works with the previous code. * Remove duplicate initialisation of GPIO port 152, SCIFA0_TXD (0xE6053098). This should have no effect other than to very slightly reduce the amount of code. Reported-by: Magnus Damm Signed-off-by: Simon Horman Signed-off-by: Paul Mundt commit 3c1105df699188a70f5c17dc0795affea388bca7 Author: Jeff Layton Date: Sun May 22 07:09:13 2011 -0400 cifs: don't call mid_q_entry->callback under the Global_MidLock (try #5) Minor revision to the last version of this patch -- the only difference is the fix to the cFYI statement in cifs_reconnect. Holding the spinlock while we call this function means that it can't sleep, which really limits what it can do. Taking it out from under the spinlock also means less contention for this global lock. Change the semantics such that the Global_MidLock is not held when the callback is called. To do this requires that we take extra care not to have sync_mid_result remove the mid from the list when the mid is in a state where that has already happened. This prevents list corruption when the mid is sitting on a private list for reconnect or when cifsd is coming down. Reviewed-by: Shirish Pargaonkar Reviewed-by: Pavel Shilovsky Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 724d9f1cfba0cb16a7151333b501e8f7885450d8 Author: Pavel Shilovsky Date: Thu May 5 09:55:12 2011 +0000 CIFS: Simplify mount code for further shared sb capability Reorganize code to get mount option at first and when get a superblock. This lets us use shared superblock model further for equal mounts. Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 8b1aaeaf54f1bcaa0bbec6bb170db367c998d27c Merge: bca606a 5e152b4 Author: Paul Mundt Date: Tue May 24 12:05:26 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into rmobile-latest commit 0f61f3e4db71946292ef8d6d6df74b8fcf001646 Author: Frederic Weisbecker Date: Tue May 24 03:31:26 2011 +0200 perf tools: Fix sample type size calculation in 32 bits archs The shift used here to count the number of bits set in the mask doesn't work above the low part for archs that are not 64 bits. Fix the constant used for the shift. This fixes a 32-bit perf top failure reported by Eric Dumazet: Can't parse sample, err = -14 Can't parse sample, err = -14 ... Reported-and-tested-by: Eric Dumazet Signed-off-by: Frederic Weisbecker Cc: Linus Torvalds Cc: Steven Rostedt Cc: Eric Dumazet Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit a697dc934f52355494b746d7b5568227e0910ae8 Author: Greg Ungerer Date: Tue Mar 29 15:06:37 2011 +1000 m68k: merge non-mmu and mmu versions of m68k_ksyms.c After cleaning up m68k_ksyms_no.c it is now strait forward to merge the non-mmu and mmu versions of m68k_ksyms.c. The need for the extra gcc functions is not strictly based on having an MMU or not. It is based on the family the processor belongs too, so use an appropriate conditional check. Signed-off-by: Greg Ungerer commit 2c7f3feb63276f08dd289a2cb29694af17ad70dd Author: Greg Ungerer Date: Tue Mar 29 14:25:14 2011 +1000 m68knommu: remove un-needed exporting of COLDFIRE symbols There is no reason most of the symbols enclosed in a conditional on CONFIG_COLDFIRE need to be exported. And they sure don't need to be doing it in m68k_ksyms_no.c. Move the dma symbols export (which are currently needed) to the definitions of those, and remove the rest of the exporting here. Signed-off-by: Greg Ungerer commit dcc4d72fad84adcd98cb0a552f4287c1ed06d5d6 Author: Greg Ungerer Date: Tue Mar 29 14:14:21 2011 +1000 m68knommu: move EXPORT of kernel_thread to function definition The EXPORT_SYMBOL(kernel_thread) belongs at the definition of that function, not in some other random code file. So move it there. Signed-off-by: Greg Ungerer commit b33972eb476401637c345b6eb91969b2df7e1ec0 Author: Greg Ungerer Date: Tue Mar 29 14:10:23 2011 +1000 m68knommu: move EXPORT of local checksumming functions to definitions The EXPORT_SYMBOL() of the local lib checksum functions belongs with the definitions, not in some other random code file. So move then there. Signed-off-by: Greg Ungerer commit 67cc09ed7093f49fc776164761507999991a6ef6 Author: Greg Ungerer Date: Tue Mar 29 14:03:26 2011 +1000 m68knommu: move EXPORT of dump_fpu to function definition The EXPORT_SYMBOL(dump_fpu) belongs at the definition of the function, not in some other random code file. So move it there. Signed-off-by: Greg Ungerer commit b1ffa25925c8166003d985b2803854fedcd44604 Author: Greg Ungerer Date: Tue Mar 29 13:39:47 2011 +1000 m68knommu: clean up mm/init_no.c The memory initialization code for m68knommu has grown a bit crufty, clean it up. . remove unused declaration for die_if_kernel() . remove un-needed declaration of free_initmem() . removed unused definitions of empty_bad_page and empty_bad_page_table . removed unused DEBUG code . make free_initmem() proper prototype Signed-off-by: Greg Ungerer commit f225c8675086b60d85264ef824568309163d79f8 Author: Greg Ungerer Date: Mon Mar 28 22:38:48 2011 +1000 m68k: merge the mmu and non-mmu mm/Makefile Its is trivial to megre the mmu and non-mmu arch/m68k/mm/Makefile's back into a single file. So do it. Signed-off-by: Greg Ungerer commit 1bccc43c1010f2ac88156c005fab6823569b0a39 Author: Greg Ungerer Date: Mon Mar 28 22:37:13 2011 +1000 m68k: mv kmap_mm.c to kmap.c The non-mmu kmap_no.c has been removed. So we can move kmap_mm.c back to being the only kmap.c. Signed-off-by: Greg Ungerer commit 593732bd41a6f16eeed9880ae7d51920fc5350ff Author: Greg Ungerer Date: Mon Mar 28 22:32:05 2011 +1000 m68knommu: remove stubs for __ioremap() and iounmap() The implementation of iounmap() and __ioremap() for non-mmu m68k is trivial. We can inline them in m68knommu headers and remove the trivial implementations. Signed-off-by: Greg Ungerer commit 92474a2513e828c27e371728845f24cef98748b2 Author: Greg Ungerer Date: Mon Mar 28 18:00:08 2011 +1000 m68knommu: remove unused kernel_set_cachemode() None of the m68knommu platforms will ever use kernel_set_cachemode(). And it is specific to a couple of m68k devices. So remove it. Signed-off-by: Greg Ungerer commit 9461702d2a54cd4d9da09b7755c96815791a9d07 Author: Greg Ungerer Date: Mon Apr 18 15:27:55 2011 +1000 m68k: let Makefile sort out compiling mmu and non-mmu lib/checksum.c We don't need an arch/m68k/lib/checksum.c wrapper to include the correct mmu or non-mmu version of the checksum code. Let the Makefile just build the appropriate one. Signed-off-by: Greg Ungerer commit 66d83ab32aec5d84d707d4d72717b9468ec33a96 Author: Greg Ungerer Date: Mon Mar 28 16:53:37 2011 +1000 m68k: remove duplicate memcpy() implementation Merging the mmu and non-mmu directories we ended up with duplicate implementations of memcpy(). One is a little more optimized for the >= 68020 case, but that can easily be inserted into a single implementation of memcpy(). Clean up the exporting of this symbol too, otherwise we end up exporting it twice on a no-mmu build. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit d10ed2f5383cc6e6b7649f03540b8cb1838d5f67 Author: Greg Ungerer Date: Mon Mar 28 16:48:00 2011 +1000 m68k: remove duplicate memset() implementation Merging the mmu and non-mmu directories we ended up with duplicate implementations of memset(). One is a little more optimized for the >= 68020 case, but that can easily be inserted into a single implementation of memset(). Clean up the exporting of this symbol too, otherwise we end up exporting it twice on a no-mmu build. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit 80160de89d0a7c9a93dfe91eef2b448cbc380cd0 Author: Greg Ungerer Date: Mon Mar 28 16:44:28 2011 +1000 m68k: remove duplicate memmove() implementation Merging the mmu and non-mmu directories we ended up with duplicate (and identical) implementations of memmove(). Remove one of them. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit b82ed87e67b081e55608b86b3e6f6f9036cedbd3 Author: Greg Ungerer Date: Mon Mar 28 15:58:49 2011 +1000 m68k: merge mmu and non-mmu versions of lib/Makefile We can easily support the slight differences in libs needed by the mmu and non-mmu builds in a single Makefile, so merge them back into a single file again. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit 98d655a68f864588ff21ae372ddd3563a6699f1c Author: Greg Ungerer Date: Mon Mar 28 15:58:06 2011 +1000 m68k: merge mmu and non-mmu versions of muldi3 The implementation of gcc's muldi3 support function differs only in the use of the machine's 64 bit sized mul or not. (It isn't based on using an MMU or not). Merge the current mmu and non-mmu versions of arc/m68k/lib/muldi3 and use the appropriate pre-processor conditionals to get the right version for all m68k processor types. Signed-off-by: Greg Ungerer Acked-by: Geert Uytterhoeven commit 931474c4c30633400ff0dff8fb452ae20e01d067 Merge: 351fc4d 2ec8a5f Author: Dave Airlie Date: Tue May 24 09:08:28 2011 +1000 Merge branch 'drm-radeon-next' of /ssd/git/drm-radeon-next into drm-core-next * 'drm-radeon-next' of /ssd/git/drm-radeon-next: (32 commits) drivers/gpu/drm/radeon/atom.c: fix warning drm/radeon/kms: bump kms version number drm/radeon/kms: properly set num banks for fusion asics drm/radeon/kms/atom: move dig phy init out of modesetting drm/radeon/kms/cayman: fix typo in register mask drm/radeon/kms: fix typo in spread spectrum code drm/radeon/kms: fix tile_config value reported to userspace on cayman. drm/radeon/kms: fix incorrect comparison in cayman setup code. drm/radeon/kms: add wait idle ioctl for eg->cayman drm/radeon/cayman: setup hdp to invalidate and flush when asked drm/radeon/evergreen/btc/fusion: setup hdp to invalidate and flush when asked agp/uninorth: Fix lockups with radeon KMS and >1x. drm/radeon/kms: the SS_Id field in the LCD table if for LVDS only drm/radeon/kms: properly set the CLK_REF bit for DCE3 devices drm/radeon/kms: fixup eDP connector handling drm/radeon/kms: bail early for eDP in hotplug callback drm/radeon/kms: simplify hotplug handler logic drm/radeon/kms: rewrite DP handling drm/radeon/kms/atom: add support for setting DP panel mode drm/radeon/kms: atombios.h updates for DP panel mode ... commit 2ec8a5feaf3000bf4f9744d0caad0d5f12ce1409 Author: Andrew Morton Date: Mon May 23 14:48:32 2011 -0700 drivers/gpu/drm/radeon/atom.c: fix warning udelay() doesn't like 8-bit arguments: drivers/gpu/drm/radeon/atom.c: In function 'atom_op_delay': drivers/gpu/drm/radeon/atom.c:653: warning: comparison is always false due to limited range of data type while we're there, use msleep() rather than open-coding it. Cc: David Airlie Reviewed-by: Alex Deucher Cc: Matt Turner Signed-off-by: Andrew Morton Signed-off-by: Dave Airlie commit d19c37a5809cd425caf989d45eb5e5eb68d17d99 Author: Alex Deucher Date: Fri May 20 12:35:23 2011 -0400 drm/radeon/kms: bump kms version number - proper bank size for fusion for 2D tiling. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 5bfa487955016dc99f83195921f74287743f0033 Author: Alex Deucher Date: Fri May 20 12:35:22 2011 -0400 drm/radeon/kms: properly set num banks for fusion asics Needed by userspace for 2D tiled buffer alignment Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit ac89af1e1010640db072416c786f97391b85790f Author: Alex Deucher Date: Sun May 22 13:20:36 2011 -0400 drm/radeon/kms/atom: move dig phy init out of modesetting It only needs to be called once at startup, not for every modeset. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit bb92091acfbb9549e3fd2900427c7548e9ebd1bd Author: Alex Deucher Date: Mon May 23 14:22:26 2011 -0400 drm/radeon/kms/cayman: fix typo in register mask Noticed by Droste on IRC. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d0ae3e890b5afbfdc80ffe9d4b7299b779daaa6a Author: Alex Deucher Date: Mon May 23 14:06:20 2011 -0400 drm/radeon/kms: fix typo in spread spectrum code Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 5e152b4c9e0fce6149c74406346a7ae7e7a17727 Merge: a77febb 9251bac Author: Linus Torvalds Date: Mon May 23 15:39:34 2011 -0700 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (27 commits) PCI: Don't use dmi_name_in_vendors in quirk PCI: remove unused AER functions PCI/sysfs: move bus cpuaffinity to class dev_attrs PCI: add rescan to /sys/.../pci_bus/.../ PCI: update bridge resources to get more big ranges when allocating space (again) KVM: Use pci_store/load_saved_state() around VM device usage PCI: Add interfaces to store and load the device saved state PCI: Track the size of each saved capability data area PCI/e1000e: Add and use pci_disable_link_state_locked() x86/PCI: derive pcibios_last_bus from ACPI MCFG PCI: add latency tolerance reporting enable/disable support PCI: add OBFF enable/disable support PCI: add ID-based ordering enable/disable support PCI hotplug: acpiphp: assume device is in state D0 after powering on a slot. PCI: Set PCIE maxpayload for card during hotplug insertion PCI/ACPI: Report _OSC control mask returned on failure to get control x86/PCI: irq and pci_ids patch for Intel Panther Point DeviceIDs PCI: handle positive error codes PCI: check pci_vpd_pci22_wait() return PCI: Use ICH6_GPIO_EN in ich6_lpc_acpi_gpio ... Fix up trivial conflicts in include/linux/pci_ids.h: commit a6e5e2be4461 moved the intel SMBUS ID definitons to the i2c-i801.c driver. commit c2b67735e5d3a419e90047b3f4179e54a39637bc Author: Eryu Guan Date: Tue May 24 00:17:34 2011 +0800 jbd: Fix comment to match the code in journal_start() journal_start returns an ERR_PTR() value rather than NULL on failure. Cc: Jan Kara Signed-off-by: Eryu Guan Signed-off-by: Jan Kara commit 4e2d9491a78929badcf774869b458486acb96365 Author: Rafael J. Wysocki Date: Tue May 24 00:21:26 2011 +0200 PM / Hibernate: Update some comments in core hibernate code Some comments in the core hibernate code are outdated, some aren't necessary any more and at least one of them is plain wrong. Remove those comments or update them. Signed-off-by: Rafael J. Wysocki commit a77febbef105554c5a37241cf903f48ab7bc03c7 Merge: 42cd71b bf59170 Author: Linus Torvalds Date: Mon May 23 15:19:16 2011 -0700 Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs * 'for-linus' of git://oss.sgi.com/xfs/xfs: xfs: obey minleft values during extent allocation correctly xfs: reset buffer pointers before freeing them xfs: avoid getting stuck during async inode flushes xfs: fix xfs_itruncate_start tracing xfs: fix duplicate workqueue initialisation xfs: kill off xfs_printk() xfs: fix race condition in AIL push trigger xfs: make AIL target updates and compares 32bit safe. xfs: always push the AIL to the target xfs: exit AIL push work correctly when AIL is empty xfs: ensure reclaim cursor is reset correctly at end of AG xfs: add an x86 compat handler for XFS_IOC_ZERO_RANGE xfs: fix compiler warning in xfs_trace.h xfs: cleanup duplicate initializations xfs: reduce the number of pagb_lock roundtrips in xfs_alloc_clear_busy xfs: exact busy extent tracking xfs: do not immediately reuse busy extent ranges xfs: optimize AGFL refills commit 42cd71bf1e3a081b3150018bbf448cb6c8a844a5 Merge: f503993 9a55d97 Author: Linus Torvalds Date: Mon May 23 15:15:27 2011 -0700 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (137 commits) ARM: bcmring: convert to use sp804 clockevents ARM: bcmring: convert to sp804 clocksource ARM: 6912/1: bcmring: Add clkdev table in init_early clockevents: ARM sp804: obtain sp804 timer rate via clks clockevents: ARM sp804: allow clockevent name to be specified clocksource: ARM sp804: obtain sp804 timer rate via clks clocksource: ARM sp804: allow clocksource name to be specified clocksource: convert OMAP1 to 32-bit down counting clocksource clocksource: convert MXS timrotv2 to 32-bit down counting clocksource clocksource: convert SPEAr platforms 16-bit up counting clocksource clocksource: convert Integrator/AP 16-bit down counting clocksource clocksource: convert W90x900 24-bit down counting clocksource clocksource: convert ARM 32-bit down counting clocksources clocksource: convert ARM 32-bit up counting clocksources clocksource: add common mmio clocksource ARM: update sa1100 to reflect PXA updates ARM: omap1: convert to using readl/writel instead of volatile struct ARM: omap1: delete useless interrupt handler ARM: s5p: consolidate selection of timer register ARM: 6939/1: fix missing 'cpu_relax()' declaration ... commit f5039935ac685b3b9b8c13fbc33cac8643dee32e Author: Vikram Narayanan Date: Mon May 23 12:01:25 2011 -0700 Documentation: update GregKH links Fixed the broken links in the SubmittingPatches file. [ The old links turn out to not be broken after all, but the new links are certainly more readable - Linus ] Signed-off-by: Vikram Narayanan Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit f14d8d3a1618438c08eb74114c06b3307fac6436 Author: Nicolas Kaiser Date: Mon May 23 11:59:56 2011 -0700 Documentation: fix vgaarbiter.txt typos etc. Fixed typos. v2: Incorporated changes by Randy Dunlap. Signed-off-by: Nicolas Kaiser Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 8208266060664726e9f998a9c57c2780549e460c Author: Harry Wei Date: Mon May 23 11:58:39 2011 -0700 Documentation: update LXR web link Update LXR (Linux cross reference) web link. Signed-off-by: Harry Wei Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 52307a9e1d8910e205f6be2c4dd35900f7b11282 Author: Lucian Adrian Grijincu Date: Mon May 23 11:57:33 2011 -0700 Documentation: update epoll sysctl text max_user_instances was removed in this commit: commit 9df04e1f25effde823a600e755b51475d438f56b Author: Davide Libenzi Date: Thu Jan 29 14:25:26 2009 -0800 epoll: drop max_user_instances and rely only on max_user_watches but the documentation entry was not removed. Cc: Davide Libenzi Signed-off-by: Lucian Adrian Grijincu Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 56dab6c20808f0405fee66ddc3dd092fd115d911 Author: Randy Dunlap Date: Mon May 23 11:55:42 2011 -0700 Documentation: update dontdiff file v2, updated based on comments from Joe and Paul. Update to Documentation/dontdiff, based on many updates to various .gitignore patches over the last 2 years. Initially begun by Michael Prokop , with lots of changes by Randy Dunlap. Signed-off-by: Randy Dunlap Cc: Michael Prokop Cc: Joe Perches Cc: Paul Mundt Signed-off-by: Linus Torvalds commit 6c4a5cb219520c7bc937ee186ca53f03733bd09f Author: Joe Perches Date: Sat May 21 07:48:40 2011 +0000 net: filter: Use WARN_RATELIMIT A mis-configured filter can spam the logs with lots of stack traces. Rate-limit the warnings and add printout of the bogus filter information. Original-patch-by: Ben Greear Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit b3eec79b0776e5340a3db75b34953977c7e5086e Author: Joe Perches Date: Sat May 21 07:48:39 2011 +0000 bug.h: Add WARN_RATELIMIT Add a generic mechanism to ratelimit WARN(foo, fmt, ...) messages using a hidden per call site static struct ratelimit_state. Also add an __WARN_RATELIMIT variant to be able to use a specific struct ratelimit_state. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 8efa885406359af300d46910642b50ca82c0fe47 Author: Eric Dumazet Date: Mon May 23 11:02:42 2011 +0000 sch_sfq: avoid giving spurious NET_XMIT_CN signals While chasing a possible net_sched bug, I found that IP fragments have litle chance to pass a congestioned SFQ qdisc : - Say SFQ qdisc is full because one flow is non responsive. - ip_fragment() wants to send two fragments belonging to an idle flow. - sfq_enqueue() queues first packet, but see queue limit reached : - sfq_enqueue() drops one packet from 'big consumer', and returns NET_XMIT_CN. - ip_fragment() cancel remaining fragments. This patch restores fairness, making sure we return NET_XMIT_CN only if we dropped a packet from the same flow. Signed-off-by: Eric Dumazet CC: Patrick McHardy CC: Jarek Poplawski CC: Jamal Hadi Salim CC: Stephen Hemminger Signed-off-by: David S. Miller commit a4910b744486254cfa61995954c118fb2283c4fd Author: Breno Leitao Date: Mon May 23 03:36:35 2011 +0000 ehea: Fix multicast registration on semi-promiscuous mode Ehea will not register multicast groups in phyp if the physical interface is in promiscuous mode. But it should register if the logical port is in promiscuous mode, but the physical port is not. Ehea physical promiscuous mode is defined by ehea_port->promisc, while logical port is defined by IFF_PROMISC. So currently, if the user set the interface in promiscuous mode, IGMP will not be registred in PHYP, and PHYP will never pass the multicast packet to the logical port, which is bad So, this patch just fixes it, assuring that we register in phyp if the physical port is not on promiscuous mode. Signed-off-by: Breno Leitao Signed-off-by: David S. Miller commit 86ff9baadf16c8a1b452d72f5585be63457d9b15 Author: John Stultz Date: Mon May 23 13:32:11 2011 -0700 ptp: Fix dp83640 build warning when building statically If the dp83640 driver is not built as a module, the MODULE_DEVICE_TABLE reference to dp83640_tbl nops out. Since the table isn't referenced elsewhere, it it causes the following warning: drivers/net/phy/dp83640.c:1095: warning: ‘dp83640_tbl’ defined but not used This apparently is common with mdio_device_id table structures, and is avoided by using __maybe_unused annotation. Signed-off-by: John Stultz commit 418f275ed5b03c48e0e6c3401466660dfe894f76 Author: Eric Dumazet Date: Sun May 22 22:41:48 2011 +0000 snap: remove one synchronize_net() No need to wait for a rcu grace period after list insertion. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 19a76fa9593bad778dabeeec1f6c2df6effe9ca3 Author: Eric Dumazet Date: Sun May 22 22:23:00 2011 +0000 net: ping: cleanups ping_v4_unhash() net/ipv4/ping.c: In function ‘ping_v4_unhash’: net/ipv4/ping.c:140:28: warning: variable ‘hslot’ set but not used Signed-off-by: Eric Dumazet CC: Vasiliy Kulikov Acked-by: Vasiliy Kulikov Signed-off-by: David S. Miller commit cb646e2b02b27a33a1d1eabd016749606254071c Author: Richard Cochran Date: Fri Apr 22 12:04:55 2011 +0200 ptp: Added a clock driver for the National Semiconductor PHYTER. This patch adds support for the PTP clock found on the DP83640. The basic clock operations and one external time stamp have been implemented. Signed-off-by: Richard Cochran Signed-off-by: John Stultz commit 32bd93e8f924c23b8cc2e2a12fef0d8cc9cda0c5 Author: Richard Cochran Date: Fri Apr 22 12:04:31 2011 +0200 ptp: Added a clock driver for the IXP46x. This patch adds a driver for the hardware time stamping unit found on the IXP465. The basic clock operations and an external trigger are implemented. Signed-off-by: Richard Cochran Acked-by: Arnd Bergmann Acked-by: David S. Miller Acked-by: John Stultz Acked-by: Krzysztof Halasa Signed-off-by: John Stultz commit c78275f366c687b5b3ead3d99fc96d1f02d38a8e Author: Richard Cochran Date: Fri Apr 22 12:03:54 2011 +0200 ptp: Added a clock that uses the eTSEC found on the MPC85xx. The eTSEC includes a PTP clock with quite a few features. This patch adds support for the basic clock adjustment functions, plus two external time stamps, one alarm, and the PPS callback. Signed-off-by: Richard Cochran Acked-by: David S. Miller Acked-by: John Stultz Signed-off-by: John Stultz commit d94ba80ebbea17f036cecb104398fbcd788aa742 Author: Richard Cochran Date: Fri Apr 22 12:03:08 2011 +0200 ptp: Added a brand new class driver for ptp clocks. This patch adds an infrastructure for hardware clocks that implement IEEE 1588, the Precision Time Protocol (PTP). A class driver offers a registration method to particular hardware clock drivers. Each clock is presented as a standard POSIX clock. The ancillary clock features are exposed in two different ways, via the sysfs and by a character device. Signed-off-by: Richard Cochran Acked-by: Arnd Bergmann Acked-by: David S. Miller Signed-off-by: John Stultz commit ea2b50ef4c9e030749ae473e95258f477c3a68ca Merge: 15a3d11 b18bf09 Author: Linus Torvalds Date: Mon May 23 12:54:15 2011 -0700 Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, apic: Include module.h header in apic_flat_64.c x86, apic: Make apic drivers static x86, apic: Clean up bigsmp apic selection code x86, apic: Use .apicdrivers section for the apic drivers list x86, apic: Introduce .apicdrivers section to find the list of apic drivers x86, x2apic: Move the common bits to x2apic.h x86, x2apic: Minimize IPI register writes using cluster groups x86, x2apic: Track the x2apic cluster sibling map x86, x2apic: Remove duplicate code for IPI mask routines x86, apic: Use probe routines to simplify apic selection x86, ioapic: Consolidate mp_ioapic_routing[] into 'struct ioapic' x86, ioapic: Consolidate gsi routing info into 'struct ioapic' x86, ioapic: Consolidate mp_ioapics[] into 'struct ioapic' x86, ioapic: Consolidate ioapic_saved_data[] into 'struct ioapic' x86, ioapic: Add struct ioapic x86, ioapic: Remove duplicate code for saving/restoring RTEs x86, ioapic: Use ioapic_saved_data while enabling intr-remapping x86, ioapic: Allocate ioapic_saved_data early x86, ioapic: Fix potential resume deadlock commit 15a3d11b0f2ebdfb3591e411e268aa81998d4723 Merge: 1f3a8e0 c8b2811 Author: Linus Torvalds Date: Mon May 23 12:53:48 2011 -0700 Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Increase SCHED_LOAD_SCALE resolution sched: Introduce SCHED_POWER_SCALE to scale cpu_power calculations sched: Cleanup set_load_weight() commit 1f3a8e093f470ef193b0ca6011d90180331c8b53 Merge: c44dead 1a4b6f6 Author: Linus Torvalds Date: Mon May 23 12:49:28 2011 -0700 Merge branch 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6 * 'staging-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6: (970 commits) staging: usbip: replace usbip_u{dbg,err,info} and printk with dev_ and pr_ staging:iio: Trivial kconfig reorganization and uniformity improvements. staging:iio:documenation partial update. staging:iio: use pollfunc allocation helpers in remaining drivers. staging:iio:max1363 misc cleanups and use of for_each_bit_set to simplify event code spitting out. staging:iio: implement an iio_info structure to take some of the constant elements out of iio_dev. staging:iio:meter:ade7758: Use private data space from iio_allocate_device staging:iio:accel:lis3l02dq make write_reg_8 take value not a pointer to value. staging:iio: ring core cleanups + check if read_last available in lis3l02dq staging:iio:core cleanup: squash tiny wrappers and use dev_set_name to handle creation of event interface name. staging:iio: poll func allocation clean up. staging:iio:ad7780 trivial unused header cleanup. staging:iio:adc: AD7780: Use private data space from iio_allocate_device + trivial fixes staging:iio:adc:AD7780: Convert to new channel registration method staging:iio:adc: AD7606: Drop dev_data in favour of iio_priv() staging:iio:adc: AD7606: Consitently use indio_dev staging:iio: Rip out helper for software rings. staging:iio:adc:AD7298: Use private data space from iio_allocate_device staging:iio: rationalization of different buffer implementation hooks. staging:iio:imu:adis16400 avoid allocating rx, tx, and state separately from iio_dev. ... Fix up trivial conflicts in - drivers/staging/intel_sst/intelmid.c: patches applied in both branches - drivers/staging/rt2860/common/cmm_data_{pci,usb}.c: removed vs spelling - drivers/staging/usbip/vhci_sysfs.c: trivial header file inclusion commit c44dead70a841d90ddc01968012f323c33217c9e Merge: 99dff58 d5f6db9e Author: Linus Torvalds Date: Mon May 23 12:33:02 2011 -0700 Merge branch 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6 * 'usb-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (205 commits) USB: EHCI: Remove SPARC_LEON {read,write}_be definitions from ehci.h USB: UHCI: Support big endian GRUSBHC HC sparc: add {read,write}*_be routines USB: UHCI: Add support for big endian descriptors USB: UHCI: Use ACCESS_ONCE rather than using a full compiler barrier USB: UHCI: Add support for big endian mmio usb-storage: Correct adjust_quirks to include latest flags usb/isp1760: Fix possible unlink problems usb/isp1760: Move function isp1760_endpoint_disable() within file. USB: remove remaining usages of hcd->state from usbcore and fix regression usb: musb: ux500: add configuration and build options for ux500 dma usb: musb: ux500: add dma glue layer for ux500 usb: musb: ux500: add dma name for ux500 usb: musb: ux500: add ux500 specific code for gadget side usb: musb: fix compile error usb-storage: fix up the unusual_realtek device list USB: gadget: f_audio: Fix invalid dereference of initdata EHCI: don't rescan interrupt QHs needlessly OHCI: fix regression caused by nVidia shutdown workaround USB: OTG: msm: Free VCCCX regulator even if we can't set the voltage ... commit b18bf0948e1037e7ed33378c80f1ecb8c77c30e9 Author: Randy Dunlap Date: Mon May 23 10:43:00 2011 -0700 x86, apic: Include module.h header in apic_flat_64.c apic_flat_64.c needs to include module.h because it uses EXPORT_SYMBOL_GPL(). This fixes these warnings on some !SMP randconfigs: arch/x86/kernel/apic/apic_flat_64.c:31: warning: data definition has no type or storage class arch/x86/kernel/apic/apic_flat_64.c:31: warning: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' arch/x86/kernel/apic/apic_flat_64.c:31: warning: parameter names (without types) in function declaration Signed-off-by: Randy Dunlap Cc: Stephen Rothwell Link: http://lkml.kernel.org/r/20110523104300.dd532a99.randy.dunlap@oracle.com Signed-off-by: Ingo Molnar commit 99dff5856220a02b8711f2e8746413ea6e53ccf6 Merge: bb74e8c d9a0fbf Author: Linus Torvalds Date: Mon May 23 12:23:20 2011 -0700 Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6 * 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (48 commits) serial: 8250_pci: add support for Cronyx Omega PCI multiserial board. tty/serial: Fix break handling for PORT_TEGRA tty/serial: Add explicit PORT_TEGRA type n_tracerouter and n_tracesink ldisc additions. Intel PTI implementaiton of MIPI 1149.7. Kernel documentation for the PTI feature. export kernel call get_task_comm(). tty: Remove to support serial for S5P6442 pch_phub: Support new device ML7223 8250_pci: Add support for the Digi/IBM PCIe 2-port Adapter ASoC: Update cx20442 for TTY API change pch_uart: Support new device ML7223 IOH parport: Use request_muxed_region for IT87 probe and lock tty/serial: add support for Xilinx PS UART n_gsm: Use print_hex_dump_bytes drivers/tty/moxa.c: Put correct tty value TTY: tty_io, annotate locking functions TTY: serial_core, remove superfluous set_task_state TTY: serial_core, remove invalid test Char: moxa, fix locking in moxa_write ... Fix up trivial conflicts in drivers/bluetooth/hci_ldisc.c and drivers/tty/serial/Makefile. I did the hci_ldisc thing as an evil merge, cleaning things up. commit 072bd7ea74d4b60149a33967d29666bbd84e7709 Author: Theodore Ts'o Date: Mon May 23 15:13:02 2011 -0400 ext4: use truncate_setsize() unconditionally In commit c8d46e41 (ext4: Add flag to files with blocks intentionally past EOF), if the EOFBLOCKS_FL flag is set, we call ext4_truncate() before calling vmtruncate(). This caused any allocated but unwritten blocks created by calling fallocate() with the FALLOC_FL_KEEP_SIZE flag to be dropped. This was done to make to make sure that EOFBLOCKS_FL would not be cleared while still leaving blocks past i_size allocated. This was not necessary, since ext4_truncate() guarantees that blocks past i_size will be dropped, even in the case where truncate() has increased i_size before calling ext4_truncate(). So fix this by removing the EOFBLOCKS_FL special case treatment in ext4_setattr(). In addition, use truncate_setsize() followed by a call to ext4_truncate() instead of using vmtruncate(). This is more efficient since it skips the call to inode_newsize_ok(), which has been checked already by inode_change_ok(). This is also in a win in the case where EOFBLOCKS_FL is set since it avoids calling ext4_truncate() twice. Signed-off-by: "Theodore Ts'o" commit 37bb04e5a091a5330faef0cc09930326672b7061 Author: Pavel Shilovsky Date: Thu May 5 09:55:11 2011 +0000 CIFS: Simplify connection structure search calls Use separate functions for comparison between existing structure and what we are requesting for to make server, session and tcon search code easier to use on next superblock match call. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit bb74e8ca352eecefdc5c1a9ebab01f18aa2f6f3c Author: Guenter Roeck Date: Mon May 23 12:06:41 2011 -0700 hwmon: (coretemp) Fix compile error if CONFIG_SMP is not defined cpu_sibling_mask() is not defined unless CONFIG_SMP is defined, so it must not be used directly in the code without ifdef protection. To solve the problem and avoid ifdefs in the code, define for_each_sibling() and use it instead. Signed-off-by: Guenter Roeck Cc: Fenghua Yu Cc: Durgadoss R Signed-off-by: Linus Torvalds commit d6c0cb379c5198487e4ac124728cbb2346d63b1f Merge: 8e531cd 1f78160 Author: Chris Mason Date: Mon May 23 14:37:47 2011 -0400 Merge branch 'cleanups_and_fixes' into inode_numbers Conflicts: fs/btrfs/tree-log.c fs/btrfs/volumes.c Signed-off-by: Chris Mason commit 30cb6d5f2eb24d15d20139d5ceefaccc68734bd7 Merge: 4867faa 68fa61c Author: Linus Torvalds Date: Mon May 23 11:30:28 2011 -0700 Merge branch 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: hrtimers: Reorder clock bases hrtimers: Avoid touching inactive timer bases hrtimers: Make struct hrtimer_cpu_base layout less stupid timerfd: Manage cancelable timers in timerfd clockevents: Move C3 stop test outside lock alarmtimer: Drop device refcount after rtc_open() alarmtimer: Check return value of class_find_device() timerfd: Allow timers to be cancelled when clock was set hrtimers: Prepare for cancel on clock was set timers commit 737b94eb41cb99250ccce9148ca411b55d4dc96a Author: Roland Dreier Date: Mon May 23 11:30:04 2011 -0700 IB/srp: Fix integer -> pointer cast warnings Fix drivers/infiniband/ulp/srp/ib_srp.c: In function 'srp_handle_recv': drivers/infiniband/ulp/srp/ib_srp.c:1150: warning: cast to pointer from integer of different size drivers/infiniband/ulp/srp/ib_srp.c: In function 'srp_send_completion': drivers/infiniband/ulp/srp/ib_srp.c:1234: warning: cast to pointer from integer of different size by adding an intermediate cast to uintptr_t. Signed-off-by: Roland Dreier Acked-by: David Dillow commit 9a55d9752d8abfc62f1ab05ccc790d22a0c8e7c0 Merge: ec19628 dc7ad3b Author: Russell King Date: Mon May 23 19:28:04 2011 +0100 Merge branch 'devel-stable' into for-linus Conflicts: arch/arm/Kconfig arch/arm/mach-ns9xxx/include/mach/uncompress.h commit ec19628d72cff8f80220b7cedba089074ac6a599 Merge: 4b60e5f b0ec5cf 603605a 8373dc3 399bc48 16dc062 f1f6ac1 Author: Russell King Date: Mon May 23 19:27:40 2011 +0100 Merge branches 'consolidate', 'ep93xx', 'fixes', 'misc', 'mmci', 'remove' and 'spear' into for-linus commit 313d2c065253a7549f5e7f43409f1da455329acd Author: Takashi Iwai Date: Mon May 23 20:27:02 2011 +0200 ALSA: hda - Fix initial capture-source with auto-mic for Cxt auto-parser Fix the initialization of capture-source route when auto-mic is enabled for Conexant auto-parser. Signed-off-by: Takashi Iwai commit c3af0980ce01dfb8e946990c3ae4c3727b1e9f26 Author: Roland Dreier Date: Mon May 23 11:21:47 2011 -0700 IB: Add devnode methods to cm_class and umad_class We want the ucmX, umadX and issmX device nodes to show up under /dev/infiniband, and additionally ucmX should have mode 0666. Add appropriate devnode methods to their class structs for this. Signed-off-by: Roland Dreier commit c8367c4cd9de512d296fc557f121be62a43987f3 Author: Ira Weiny Date: Thu May 19 18:19:28 2011 -0700 IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required We had a script which was looping through the devices returned from ibstat and attempted to register a SMI agent on an ethernet device. This caused a kernel panic for IBoE devices that don't have QP0. Fix this by checking if the QP exists before using it. Signed-off-by: Ira Weiny Acked-by: Sean Hefty Signed-off-by: Roland Dreier commit 71c29bd5c23559c9cabcca3bfb3152ecc5efcd75 Author: Roland Dreier Date: Mon May 23 11:10:05 2011 -0700 IB/uverbs: Add devnode method to set path/mode We want udev to create a device node under /dev/infiniband with permission 0666 for uverbsX devices, so add a devnode method to set the appropriate info. Signed-off-by: Roland Dreier commit c02324a6ae6bd3e83533c59525111ffe03b7e791 Author: Christoph Hellwig Date: Sun May 22 07:04:51 2011 -0400 cifs: remove unused SMB2 config and mount options There's no SMB2 support in the CIFS filesystem driver, so there's no need to have a config and mount option for it. Signed-off-by: Christoph Hellwig Signed-off-by: Steve French commit 506a4196d44218eca20db529c84410dc1095e457 Author: Takashi Iwai Date: Mon May 23 20:07:15 2011 +0200 ALSA: hda - Fix auto-mic detection in Conexant codec-parser Fix the auto-mic detection for Cxt auto-parser due to off-by-one missing initialization. Signed-off-by: Takashi Iwai commit 825cdcb1a5aaaefd884f302b4a3a9efb672c89c1 Author: Namhyung Kim Date: Mon May 23 19:58:53 2011 +0200 splice: add wakeup_pipe_readers() Add and use wakeup_pipe_readers() to consolidate duplicated codes. Signed-off-by: Namhyung Kim Cc: Jens Axboe Signed-off-by: Jens Axboe commit 04ea2f81973f55db715bfdac7dd258f8a8485a6d Author: Roland Dreier Date: Mon May 23 10:48:43 2011 -0700 RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node We want udev to create a device node under /dev/infiniband with permission 0666 for rdma_cm, so add that info to our struct miscdevice. Signed-off-by: Roland Dreier Acked-by: Sean Hefty commit 4cbadbd16e2fb727f6926597e0a580829e6222f1 Author: Vivek Goyal Date: Mon May 23 19:35:04 2011 +0200 blk-cgroup: Initialize ioc->cgroup_changed at ioc creation time If we don't explicitly initialize it to zero, CFQ might think that cgroup of ioc has changed and it generates lots of unnecessary calls to call_for_each_cic(changed_cgroup). Fix it. cfq_get_io_context() cfq_ioc_set_cgroup() call_for_each_cic(ioc, changed_cgroup) Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 1f78160ce1b1b8e657e2248118c4d91f881763f0 Author: Xiao Guangrong Date: Wed Apr 20 10:09:16 2011 +0000 Btrfs: using rcu lock in the reader side of devices list fs_devices->devices is only updated on remove and add device paths, so we can use rcu to protect it in the reader side Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit 46224705656633466ca7dc71d81b3c0abc76cae4 Author: Xiao Guangrong Date: Wed Apr 20 10:08:47 2011 +0000 Btrfs: drop unnecessary device lock Drop device_list_mutex for the reader side on clone_fs_devices and btrfs_rm_device pathes since the fs_info->volume_mutex can ensure the device list is not updated btrfs_close_extra_devices is the initialized path, we can not add or remove device at this time, so we can simply drop the mutex safely, like other initialized function does(add_missing_dev, __find_device, __btrfs_open_devices ...). Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit 0c1daee085cff1395d1eba4ad6faff7810a594d8 Author: Xiao Guangrong Date: Wed Apr 20 10:08:16 2011 +0000 Btrfs: fix the race between remove dev and alloc chunk On remove device path, it updates device->dev_alloc_list but does not hold chunk lock Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit c9513edb0079f97749c2ac00c887a22c4ba44792 Author: Xiao Guangrong Date: Wed Apr 20 10:07:30 2011 +0000 Btrfs: fix the race between reading and updating devices On btrfs_congested_fn and __unplug_io_fn paths, we should hold device_list_mutex to avoid remove/add device path to update fs_devices->devices On __btrfs_close_devices and btrfs_prepare_sprout paths, the devices in fs_devices->devices or fs_devices->devices is updated, so we should hold the mutex to avoid the reader side to reach them Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit 4f6c9328c6c0d8558907f16579a9d47815abef80 Author: Xiao Guangrong Date: Wed Apr 20 10:06:40 2011 +0000 Btrfs: fix bh leak on __btrfs_open_devices path 'bh' is forgot to release if no error is detected Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit c7f895a2b2d1a002810d52e7b6653c9dc2fd0b0b Author: Xiao Guangrong Date: Wed Apr 20 06:45:49 2011 +0000 Btrfs: fix unsafe usage of merge_state merge_state can free the current state if it can be merged with the next node, but in set_extent_bit(), after merge_state, we still use the current extent to get the next node and cache it into cached_state Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit 8233767a227ac5843f1023b88c7272a7b5058f5f Author: Xiao Guangrong Date: Wed Apr 20 06:44:57 2011 +0000 Btrfs: allocate extent state and check the result properly It doesn't allocate extent_state and check the result properly: - in set_extent_bit, it doesn't allocate extent_state if the path is not allowed wait - in clear_extent_bit, it doesn't check the result after atomic-ly allocate, we trigger BUG_ON() if it's fail - if allocate fail, we trigger BUG_ON instead of returning -ENOMEM since the return value of clear_extent_bit() is ignored by many callers Signed-off-by: Xiao Guangrong Signed-off-by: Chris Mason commit b083916638eee513be501f53b42a4be0b9851db0 Author: Julia Lawall Date: Sat May 14 07:10:51 2011 +0000 fs/btrfs: Add missing btrfs_free_path Btrfs_alloc_path should be matched with btrfs_free_path in error-handling code. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ local idexpression struct btrfs_path * x; expression ra,rb; position p1,p2; @@ x = btrfs_alloc_path@p1(...) ... when != btrfs_free_path(x,...) when != if (...) { ... btrfs_free_path(x,...) ...} when != x = ra if(...) { ... when != x = rb when forall when != btrfs_free_path(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("alloc",p1) cocci.print_secs("return",p2) // Signed-off-by: Julia Lawall Signed-off-by: Chris Mason commit 37daa4f968e9470ae9f30e246a5781717c598271 Author: Tsutomu Itoh Date: Thu Apr 28 09:18:21 2011 +0000 Btrfs: check return value of btrfs_inc_extent_ref() If return value of btrfs_inc_extent_ref() is not 0, BUG() is called. Signed-off-by: Tsutomu Itoh Signed-off-by: Chris Mason commit c00e9493f1412621c8665a707d63e32b0768f572 Author: Tsutomu Itoh Date: Thu Apr 28 09:10:23 2011 +0000 Btrfs: return error to caller if read_one_inode() fails When read_one_inode() fails, error code is returned to caller instead of BUG_ON(). Signed-off-by: Tsutomu Itoh Signed-off-by: Chris Mason commit 1cd307990d6e2b4965620e339a92e0d7ae853e13 Author: Tsutomu Itoh Date: Thu May 19 05:19:08 2011 +0000 Btrfs: BUG_ON is deleted from the caller of btrfs_truncate_item & btrfs_extend_item Currently, btrfs_truncate_item and btrfs_extend_item returns only 0. So, the check by BUG_ON in the caller is unnecessary. Signed-off-by: Tsutomu Itoh Signed-off-by: Chris Mason commit 65a246c5ffe3b487a001de025816326939e63362 Author: Tsutomu Itoh Date: Thu May 19 04:37:44 2011 +0000 Btrfs: return error code to caller when btrfs_del_item fails The error code is returned instead of calling BUG_ON when btrfs_del_item returns the error. Signed-off-by: Tsutomu Itoh Signed-off-by: Chris Mason commit b0b802d7e34b0b4a78f911c3a8aad88aa91fd7ab Author: Tsutomu Itoh Date: Thu May 19 07:03:42 2011 +0000 Btrfs: return error code to caller when btrfs_previous_item fails The error code is returned instead of calling BUG_ON when btrfs_previous_item returns the error. Signed-off-by: Tsutomu Itoh Signed-off-by: Chris Mason commit 27160b6b5a1744b6eaa8416e2b901ec937b1eee0 Author: Sergei Trofimovich Date: Fri May 20 20:20:32 2011 +0000 btrfs: fix typo 'testeing' -> 'testing' Signed-off-by: Sergei Trofimovich Signed-off-by: Chris Mason commit 9694b3fcbb0f5dd498fdf53c82f22fcc37989152 Author: Sergei Trofimovich Date: Fri May 20 20:20:31 2011 +0000 btrfs: typo: 'btrfS' -> 'btrfs' Signed-off-by: Sergei Trofimovich Signed-off-by: Chris Mason commit c4f675cd40d955d539180506c09515c90169b15b Author: Sergei Trofimovich Date: Fri May 20 20:20:30 2011 +0000 btrfs: don't spin in shrink_delalloc if there is nothing to free Observed as a large delay when --mixed filesystem is filled up. Test example: 1. create tiny --mixed FS: $ dd if=/dev/zero of=2G.img seek=$((2048 * 1024 * 1024 - 1)) count=1 bs=1 $ mkfs.btrfs --mixed 2G.img $ mount -oloop 2G.img /mnt/ut/ 2. Try to fill it up: $ dd if=/dev/urandom of=10M.file bs=10240 count=1024 $ seq 1 256 | while read file_no; do echo $file_no; time cp 10M.file ${file_no}.copy; done Up to '200.copy' it goes fast, but when disk fills-up each -ENOSPC message takes 3 seconds to pop-up _every_ ENOSPC (and in usermode linux it's even more: 30-60 seconds!). (Maybe, time depends on kernel's timer resolution). No IO, no CPU load, just rescheduling. Some debugging revealed busy spinning in shrink_delalloc. Signed-off-by: Sergei Trofimovich Reviewed-by: Josef Bacik Signed-off-by: Chris Mason commit 4867faab1e3eb8cc3f74e390357615d9b8e8cda6 Merge: 6fad2b5 bfb91fb Author: Linus Torvalds Date: Mon May 23 10:10:44 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6: slub: Deal with hyperthetical case of PAGE_SIZE > 2M slub: Remove node check in slab_free slub: avoid label inside conditional slub: Make CONFIG_DEBUG_PAGE_ALLOC work with new fastpath slub: Avoid warning for !CONFIG_SLUB_DEBUG slub: Remove CONFIG_CMPXCHG_LOCAL ifdeffery slub: Move debug handlign in __slab_free slub: Move node determination out of hotpath slub: Eliminate repeated use of c->page through a new page variable slub: get_map() function to establish map of free objects in a slab slub: Use NUMA_NO_NODE in get_partial slub: Fix a typo in config name commit 0f3b708c11914b684d17fed975eed19db902a8de Author: Jamey Sharp Date: Thu May 5 19:03:46 2011 +0000 btrfs: Delete unused version.sh script. In 2008, commit b4f6c45dfbf84f47c21f73f6370ad1292b0627fd dropped the use of fs/btrfs/version.sh, but left the script behind. Kill it. Commit by Jamey Sharp and Josh Triplett. Signed-off-by: Jamey Sharp Signed-off-by: Josh Triplett Cc: Chris Mason Signed-off-by: Chris Mason commit e2156867159ae7b3bc38ef1c26ea0ee30a895ef8 Author: Hugo Mills Date: Sat May 14 17:43:41 2011 +0000 btrfs: Ensure the tree search ioctl returns the right number of records Btrfs's tree search ioctl has a field to indicate that no more than a given number of records should be returned. The ioctl doesn't honour this, as the tested value is not incremented until the end of the copy_to_sk function. This patch removes an unnecessary local variable, and updates the num_found counter as each key is found in the tree. Signed-off-by: Hugo Mills Signed-off-by: Chris Mason commit 0956c798ef8dbe0fc215870eb68bd2d8e789f86a Author: Andi Kleen Date: Wed May 18 00:11:22 2011 +0000 BTRFS: Remove unused node_lock 240f62c8756 replaced the node_lock with rcu_read_lock, but forgot to remove the actual lock in the data structure. Remove it here. Signed-off-by: Andi Kleen Signed-off-by: Chris Mason commit 4b60e5f90dec4ae251386f20464336369e962e9c Merge: e8765af 667f390 a35d4e5 4d5336d 041f10d be20902 Author: Russell King Date: Mon May 23 18:05:10 2011 +0100 Merge branches 'consolidate-clksrc', 'consolidate-flash', 'consolidate-generic', 'consolidate-smp', 'consolidate-stmp' and 'consolidate-zones' into consolidate commit e8765afe54b72b85ffe2b60683710ff450a92912 Author: Russell King Date: Thu May 12 15:51:29 2011 +0100 ARM: bcmring: convert to use sp804 clockevents bcmring has a set of four sp804 timers incorporated, yet it has its own copy of the sp804 code. Convert its clockevent implementation to the standard sp804 support code. Cc: Jiandong Zheng Cc: Scott Branden Signed-off-by: Russell King commit 82d63734ea0c7f656b8bf3a885f3626b04eb4180 Author: Russell King Date: Thu May 12 13:43:39 2011 +0100 ARM: bcmring: convert to sp804 clocksource bcmring has a set of four sp804 timers incorporated, yet it has its own copy of the sp804 code. Convert its clocksource implementation to the standard sp804 support code. Cc: Jiandong Zheng Cc: Scott Branden Signed-off-by: Russell King commit ede2e23456c1a4b9ce038bb4ed095ed442b1b07e Author: Jiandong Zheng Date: Thu May 19 00:36:57 2011 +0100 ARM: 6912/1: bcmring: Add clkdev table in init_early Move adding clkdev table to init_early to make sure the common sp804 clockevents can be initialized properly. Signed-off-by: Jiandong Zheng Signed-off-by: Russell King commit 23828a7a976eb8dbe3b5f4e83584c3fe814b295b Author: Russell King Date: Thu May 12 15:45:16 2011 +0100 clockevents: ARM sp804: obtain sp804 timer rate via clks This allows platforms to specify the rate of the SP804 clockevent via the clk subsystem. While ARM boards clock these at 1MHz, BCMRing also has SP804 timers but are clocked at different rates. Acked-by: Catalin Marinas Signed-off-by: Russell King commit 57cc4f7de2b896ca79185e337eaf7ff9906c4656 Author: Russell King Date: Thu May 12 15:31:13 2011 +0100 clockevents: ARM sp804: allow clockevent name to be specified This allows platforms to specify the clcokevent name upon registration. Acked-by: Catalin Marinas Signed-off-by: Russell King commit 7ff550de99141cbd3be0129d563cc4554fdde9f6 Author: Russell King Date: Thu May 12 13:31:48 2011 +0100 clocksource: ARM sp804: obtain sp804 timer rate via clks This allows platforms to specify the rate of the SP804 clocksource via the clk subsystem. While ARM boards clock these at 1MHz, BCMRing also has SP804 timers but are clocked at different rates. Acked-by: Catalin Marinas Signed-off-by: Russell King commit fb593cf38fc426331275d761fefe13096070f56a Author: Russell King Date: Thu May 12 12:08:23 2011 +0100 clocksource: ARM sp804: allow clocksource name to be specified This allows platforms to specify the clocksource name upon registration, which is necessary should they wish to register more than one sp804 clocksource. Acked-by: Catalin Marinas Signed-off-by: Russell King commit 933e54a53ccb68543ffb7ea32168ea086c93d09a Author: Russell King Date: Mon May 9 09:51:03 2011 +0100 clocksource: convert OMAP1 to 32-bit down counting clocksource Convert the OMAP1 32-bit down counting clocksource to the generic clocksource infrastructure. Tested-by: Tony Lindgren Cc: linux-omap@vger.kernel.org Signed-off-by: Russell King commit 5c61ddcfaf98fae4a0ac8077b06a07fb2ba6864a Author: Russell King Date: Sun May 8 17:21:49 2011 +0100 clocksource: convert MXS timrotv2 to 32-bit down counting clocksource Convert the MXS timrotv2 32-bit down counting clocksource to the generic clocksource infrastructure. Cc: Sascha Hauer Acked-by: Shawn Guo Signed-off-by: Russell King commit d6e15d78537d2483bff05f0ee5b5cec6c4678fd5 Author: Russell King Date: Sun May 8 17:10:14 2011 +0100 clocksource: convert SPEAr platforms 16-bit up counting clocksource Convert SPEAr platforms 16-bit up counting clocksource, which requires a 16-bit register access read rather than 32-bit. Acked-by: Viresh Kumar Signed-off-by: Russell King commit c5039f52329ff796d7fea9024e5615abee02dbfb Author: Russell King Date: Sun May 8 15:35:22 2011 +0100 clocksource: convert Integrator/AP 16-bit down counting clocksource Convert the Integrator/AP 16-bit down-counting clocksource to the generic clocksource infrastructure. Signed-off-by: Russell King commit 6fa5d5f764469daf3c4d21f94cbc1839b3857bbd Author: Russell King Date: Sun May 8 15:34:39 2011 +0100 clocksource: convert W90x900 24-bit down counting clocksource Convert the W90x900 24-bit down-counting clocksource to the generic mmio clocksource infrastructure Acked-by: Wan ZongShun Signed-off-by: Russell King commit bfe45e0be88d8a2e408226d473bff60da4a97d1f Author: Russell King Date: Sun May 8 15:33:30 2011 +0100 clocksource: convert ARM 32-bit down counting clocksources Convert SP804, MXC, Nomadik and Orion 32-bit down-counting clocksources to generic mmio clocksource infrastructure. Acked-by: Catalin Marinas Cc: Sascha Hauer Cc: Alessandro Rubini Acked-by: Linus Walleij Cc: Lennert Buytenhek Acked-by: Nicolas Pitre Signed-off-by: Russell King commit 234b6ceddb4fc2a4bc5b9a7670f070f6e69e0868 Author: Russell King Date: Sun May 8 14:09:47 2011 +0100 clocksource: convert ARM 32-bit up counting clocksources Convert ixp4xx, lpc32xx, mxc, netx, pxa, sa1100, tcc8k, tegra and u300 to use the generic mmio clocksource recently introduced. Cc: Imre Kaloz Cc: Krzysztof Halasa Acked-by: Eric Miao Acked-by: "Hans J. Koch" Acked-by: Colin Cross Cc: Erik Gilling Cc: Olof Johansson Acked-by: Linus Walleij Acked-by: Sascha Hauer Signed-off-by: Russell King commit 442c8176d2efa468577738e3a99a6e051f6e8e55 Author: Russell King Date: Sun May 8 14:06:52 2011 +0100 clocksource: add common mmio clocksource Add a generic mmio clocksource, covering both 32-bit and 16-bit register access sizes, for up or down counters. This can be used to easily create clocksources for simple counter-based implementations. Cc: Alessandro Rubini Cc: Colin Cross Cc: Eric Miao Cc: Erik Gilling Acked-by: "Hans J. Koch" Cc: Imre Kaloz Cc: Krzysztof Halasa Cc: Kukjin Kim Cc: Lennert Buytenhek Cc: Linus Walleij Cc: linux-omap@vger.kernel.org Acked-by: Nicolas Pitre Cc: Olof Johansson Tested-by: Sascha Hauer Reviewed-by: Thomas Gleixner Tested-by: Tony Lindgren Reviewed-by: Viresh Kumar Cc: Wan ZongShun Signed-off-by: Russell King commit 1ba4c3cb171d9899a3eaa2e45fa171e0704c1377 Author: Russell King Date: Sun May 8 16:14:40 2011 +0100 ARM: update sa1100 to reflect PXA updates Update sa1100 clockevents code to reflect what its later derivative does with clockevents_calc_mult_shift(). Use OSSR_M* constants too. Signed-off-by: Russell King commit 111c7751e3f86bdfe7256741281709afe22bba71 Author: Russell King Date: Mon May 9 09:45:45 2011 +0100 ARM: omap1: convert to using readl/writel instead of volatile struct Tested-by: Tony Lindgren Cc: linux-omap@vger.kernel.org Signed-off-by: Russell King commit 29d668d260a5a022eaad1cc91fea08d02deb45b1 Author: Russell King Date: Mon May 9 08:57:10 2011 +0100 ARM: omap1: delete useless interrupt handler The OMAP1 clocksource interrupt handler just increments a variable which otherwise isn't used, so this seems to be unnecessary. Tony Lindgren confirms, so lets remove it. Acked-by: Kevin Hilman Acked-by: Tony Lindgren Cc: linux-omap@vger.kernel.org Signed-off-by: Russell King commit df4c144f7514071a54a46eaa5a9e16299c056e29 Author: Russell King Date: Sun May 8 15:43:07 2011 +0100 ARM: s5p: consolidate selection of timer register s5p duplicates the runtime selection of the timer register three times. Move this out into a separate function. FIXME: It is unclear whether this code needs to support true runtime selection of the timer register, or whether it can be selected once at init time. Acked-by: Kukjin Kim Signed-off-by: Russell King commit d90c732122a1f6d0efe388a8a204f67f144b2eb3 Author: Josef Bacik Date: Tue May 17 09:50:54 2011 -0400 Btrfs: leave spinning on lookup and map the leaf On lookup we only want to read the inode item, so leave the path spinning. Also we're just wholesale reading the leaf off, so map the leaf so we don't do a bunch of kmap/kunmaps. Thanks, Signed-off-by: Josef Bacik commit 207dde8289d9b005b665cb9d8d2bb9464256101d Author: Josef Bacik Date: Fri May 13 14:49:23 2011 -0400 Btrfs: check for duplicate entries in the free space cache If there are duplicate entries in the free space cache, discard the entire cache and load it the old fashioned way. Thanks, Signed-off-by: Josef Bacik commit cca1c81f43e26ab60c0d1090fb90992358d69bdf Author: Josef Bacik Date: Fri May 13 11:07:12 2011 -0400 Btrfs: don't try to allocate from a block group that doesn't have enough space If we have a very large filesystem, we can spend a lot of time in find_free_extent just trying to allocate from empty block groups. So instead check to see if the block group even has enough space for the allocation, and if not go on to the next block group. Signed-off-by: Josef Bacik commit 026fd317828500524cdc7e5ff9e8e7923abb2868 Author: Josef Bacik Date: Fri May 13 10:32:11 2011 -0400 Btrfs: don't always do readahead Our readahead is sort of sloppy, and really isn't always needed. For example if ls is doing a stating ls (which is the default) it's going to stat in non-disk order, so if say you have a directory with a stupid amount of files, readahead is going to do nothing but waste time in the case of doing the stat. Taking the unconditional readahead out made my test go from 57 minutes to 36 minutes. This means that everywhere we do loop through the tree we want to make sure we do set path->reada properly, so I went through and found all of the places where we loop through the path and set reada to 1. Thanks, Signed-off-by: Josef Bacik commit 589d8ade83f07c0f11c8191c0ca309f34d7a2c14 Author: Josef Bacik Date: Wed May 11 17:30:53 2011 -0400 Btrfs: try not to sleep as much when doing slow caching When the fs is super full and we unmount the fs, we could get stuck in this thing where unmount is waiting for the caching kthread to make progress and the caching kthread keeps scheduling because we're in the middle of a commit. So instead just let the caching kthread keep going and only yeild if need_resched(). This makes my horrible umount case go from taking up to 10 minutes to taking less than 20 seconds. Thanks, Signed-off-by: Josef Bacik commit d82a6f1d7e8b61ed5996334d0db66651bb43641d Author: Josef Bacik Date: Wed May 11 15:26:06 2011 -0400 Btrfs: kill BTRFS_I(inode)->block_group Originally this was going to be used as a way to give hints to the allocator, but frankly we can get much better hints elsewhere and it's not even used at all for anything usefull. In addition to be completely useless, when we initialize an inode we try and find a freeish block group to set as the inodes block group, and with a completely full 40gb fs this takes _forever_, so I imagine with say 1tb fs this is just unbearable. So just axe the thing altoghether, we don't need it and it saves us 8 bytes in the inode and saves us 500 microseconds per inode lookup in my testcase. Thanks, Signed-off-by: Josef Bacik commit 7e2355ba1a11649f0b212a29fdb9f47476f1248e Author: Josef Bacik Date: Wed May 11 12:25:37 2011 -0400 Btrfs: don't look at the extent buffer level 3 times in a row We have a bit of debugging in btrfs_search_slot to make sure the level of the cow block is the same as the original block we were cow'ing. I don't think I've ever seen this tripped, so kill it. This saves us 2 kmap's per level in our search. Thanks, Signed-off-by: Josef Bacik commit cb25c2ea6a79702ab7895b873c6c43e0d3bc3c72 Author: Josef Bacik Date: Wed May 11 12:17:34 2011 -0400 Btrfs: map the node block when looking for readahead targets If we have particularly full nodes, we could call btrfs_node_blockptr up to 32 times, which is 32 pairs of kmap/kunmap, which _sucks_. So go ahead and map the extent buffer while we look for readahead targets. Thanks, Signed-off-by: Josef Bacik commit af60bed24eb0e3b6d93eaa6bb395a5721e6c09a8 Author: Josef Bacik Date: Wed May 4 11:11:17 2011 -0400 Btrfs: set range_start to the right start in count_range_bits In count_range_bits we are adjusting total_bytes based on the range we are searching for, but we don't adjust the range start according to the range we are searching for, which makes for weird results. For example, if the range [0-8192] is set DELALLOC, but I search for 4096-8192, I will get back 4096 for the number of bytes found, but the range_start will be 0, which makes it look like the range is [0-4096]. So instead set range_start = max(cur_start, state->start). This makes everything come out right. Thanks, Signed-off-by: Josef Bacik commit fcb80c2affd63237cff5b34cba5756be7c976a5a Author: Josef Bacik Date: Tue May 3 10:40:22 2011 -0400 Btrfs: fix how we do space reservation for truncate The ceph guys keep running into problems where we have space reserved in our orphan block rsv when freeing it up. This is because they tend to do snapshots alot, so their truncates tend to use a bunch of space, so when we go to do things like update the inode we have to steal reservation space in order to make the reservation happen. This happens because truncate can use as much space as it freaking feels like, but we still have to hold space for removing the orphan item and updating the inode, which will definitely always happen. So in order to fix this we need to split all of the reservation stuf up. So with this patch we have 1) The orphan block reserve which only holds the space for deleting our orphan item when everything is over. 2) The truncate block reserve which gets allocated and used specifically for the space that the truncate will use on a per truncate basis. 3) The transaction will always have 1 item's worth of data reserved so we can update the inode normally. Hopefully this will make the ceph problem go away. Thanks, Signed-off-by: Josef Bacik commit a4abeea41adfa3c143c289045f4625dfaeba2212 Author: Josef Bacik Date: Mon Apr 11 17:25:13 2011 -0400 Btrfs: kill trans_mutex We use trans_mutex for lots of things, here's a basic list 1) To serialize trans_handles joining the currently running transaction 2) To make sure that no new trans handles are started while we are committing 3) To protect the dead_roots list and the transaction lists Really the serializing trans_handles joining is not too hard, and can really get bogged down in acquiring a reference to the transaction. So replace the trans_mutex with a trans_lock spinlock and use it to do the following 1) Protect fs_info->running_transaction. All trans handles have to do is check this, and then take a reference of the transaction and keep on going. 2) Protect the fs_info->trans_list. This doesn't get used too much, basically it just holds the current transactions, which will usually just be the currently committing transaction and the currently running transaction at most. 3) Protect the dead roots list. This is only ever processed by splicing the list so this is relatively simple. 4) Protect the fs_info->reloc_ctl stuff. This is very lightweight and was using the trans_mutex before, so this is a pretty straightforward change. 5) Protect fs_info->no_trans_join. Because we don't hold the trans_lock over the entirety of the commit we need to have a way to block new people from creating a new transaction while we're doing our work. So we set no_trans_join and in join_transaction we test to see if that is set, and if it is we do a wait_on_commit. 6) Make the transaction use count atomic so we don't need to take locks to modify it when we're dropping references. 7) Add a commit_lock to the transaction to make sure multiple people trying to commit the same transaction don't race and commit at the same time. 8) Make open_ioctl_trans an atomic so we don't have to take any locks for ioctl trans. I have tested this with xfstests, but obviously it is a pretty hairy change so lots of testing is greatly appreciated. Thanks, Signed-off-by: Josef Bacik commit 2a1eb4614d984d5cd4c928784e9afcf5c07f93be Author: Josef Bacik Date: Wed Apr 13 15:15:59 2011 -0400 Btrfs: if we've already started a trans handle, use that one We currently track trans handles in current->journal_info, but we don't actually use it. This patch fixes it. This will cover the case where we have multiple people starting transactions down the call chain. This keeps us from having to allocate a new handle and all of that, we just increase the use count of the current handle, save the old block_rsv, and return. I tested this with xfstests and it worked out fine. Thanks, Signed-off-by: Josef Bacik commit 7a7eaa40a39bde4eefc91aadeb1ce3dc4e6a1252 Author: Josef Bacik Date: Wed Apr 13 12:54:33 2011 -0400 Btrfs: take away the num_items argument from btrfs_join_transaction I keep forgetting that btrfs_join_transaction() just ignores the num_items argument, which leads me to sending pointless patches and looking stupid :). So just kill the num_items argument from btrfs_join_transaction and btrfs_start_ioctl_transaction, since neither of them use it. Thanks, Signed-off-by: Josef Bacik commit 74b2107543da4ed9607ec484f63c42362dc9fca6 Author: Josef Bacik Date: Wed Apr 13 12:02:53 2011 -0400 Btrfs: make sure to use the delalloc reserve when filling delalloc In the prealloc filling code and compressed code we don't set trans->block_rsv to the delalloc block reserve properly, which is going to make us use metadata from the wrong pool, this patch fixes that. Thanks, Signed-off-by: Josef Bacik commit bfb91fb650e988c3c347e50fc75fedb7d4f0c018 Merge: caebc16 3e0c2ab Author: Pekka Enberg Date: Mon May 23 19:50:39 2011 +0300 Merge branch 'slab/next' into for-linus Conflicts: mm/slub.c commit 1a717c00501f02200fa003755e54f9fcbd2f865b Author: Manjunath Hadli Date: Mon May 23 21:05:48 2011 +0530 davinci: move DM64XX_VDD3P3V_PWDN to devices.c Move the definition of DM64XX_VDD3P3V_PWDN from hardware.h to devices.c since it is used only there. This also helps rid hardware.h of platform private stuff. Signed-off-by: Manjunath Hadli Signed-off-by: Sekhar Nori commit 6fad2b5b649fa1fa6ee7293222815f5b62499889 Merge: 1950482 4cc4527 Author: Linus Torvalds Date: Mon May 23 09:26:20 2011 -0700 Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging: hwmon: (coretemp) Fix checkpatch errors hwmon: Remove pkgtemp driver hwmon: (coretemp) Merge pkgtemp with coretemp hwmon: (pmbus) Add support for Analog Devices ADM1275 hwmon: (pmbus) Support for TI UCD90xxx series Sequencer and System Health Controllers hwmon: (pmbus) Add support for TI UCD9200 series of PWM System Controllers hwmon: (pmbus) Use device specific function to read fan configuration hwmon: (pmbus) Expand scope of device specific get_status function hwmon: (pmbus) Introduce infrastructure to detect sensors and limit registers hwmon: Driver for MAX16065 System Manager and compatibles hwmon: (sht15) add support for CRC validation hwmon: (sht15) add support for the status register hwmon: (sht15) clean-up the probe function hwmon: (sht15) general code clean-up hwmon: Add support for MAX6642 commit 19504828b4bee5e471bcd35e214bc6fd0d380692 Merge: 57d19e8 3cb6d15 Author: Linus Torvalds Date: Mon May 23 09:25:52 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: perf tools: Fix sample size bit operations perf tools: Fix ommitted mmap data update on remap watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh watchdog: Disable watchdog when thresh is zero watchdog: Only disable/enable watchdog if neccessary watchdog: Fix rounding bug in get_sample_period() perf tools: Propagate event parse error handling perf tools: Robustify dynamic sample content fetch perf tools: Pre-check sample size before parsing perf tools: Move evlist sample helpers to evlist area perf tools: Remove junk code in mmap size handling perf tools: Check we are able to read the event size on mmap commit 603605abae9ee731bdafb2af83a487d98a568815 Author: Marc Zyngier Date: Mon May 23 17:16:59 2011 +0100 ARM: 6939/1: fix missing 'cpu_relax()' declaration ARM build fails with the following symptom: CC arch/arm/kernel/asm-offsets.s In file included from include/linux/seqlock.h:29, from include/linux/time.h:8, from include/linux/timex.h:56, from include/linux/sched.h:57, from arch/arm/kernel/asm-offsets.c:13: include/linux/spinlock.h: In function 'spin_unlock_wait': include/linux/spinlock.h:360: error: implicit declaration of function 'cpu_relax' make[1]: *** [arch/arm/kernel/asm-offsets.s] Error 1 Fix it by including . Signed-off-by: Marc Zyngier Signed-off-by: Russell King commit 57d19e80f459dd845fb3cfeba8e6df8471bac142 Merge: ee9ec4f e64851f Author: Linus Torvalds Date: Mon May 23 09:12:26 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (39 commits) b43: fix comment typo reqest -> request Haavard Skinnemoen has left Atmel cris: typo in mach-fs Makefile Kconfig: fix copy/paste-ism for dell-wmi-aio driver doc: timers-howto: fix a typo ("unsgined") perf: Only include annotate.h once in tools/perf/util/ui/browsers/annotate.c md, raid5: Fix spelling error in comment ('Ofcourse' --> 'Of course'). treewide: fix a few typos in comments regulator: change debug statement be consistent with the style of the rest Revert "arm: mach-u300/gpio: Fix mem_region resource size miscalculations" audit: acquire creds selectively to reduce atomic op overhead rtlwifi: don't touch with treewide double semicolon removal treewide: cleanup continuations and remove logging message whitespace ath9k_hw: don't touch with treewide double semicolon removal include/linux/leds-regulator.h: fix syntax in example code tty: fix typo in descripton of tty_termios_encode_baud_rate xtensa: remove obsolete BKL kernel option from defconfig m68k: fix comment typo 'occcured' arch:Kconfig.locks Remove unused config option. treewide: remove extra semicolons ... commit ee9ec4f82049c678373a611ce20ac67fe9ad836e Merge: e0c6b8a 366a238 Author: Linus Torvalds Date: Mon May 23 09:10:03 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (36 commits) HID: hid-multitouch: cosmetic changes, sort classes and devices HID: hid-multitouch: class MT_CLS_STANTUM is redundant with MT_CLS_CONFIDENCE HID: hid-multitouch: add support for Unitec panels HID: hid-multitouch: add support for Touch International panels HID: hid-multitouch: add support for GoodTouch panels HID: hid-multitouch: add support for CVTouch panels HID: hid-multitouch: add support for ActionStar panels HID: hiddev: fix race between hiddev_disconnect and hiddev_release HID: magicmouse: ignore 'ivalid report id' while switching modes HID: fix a crash in hid_report_raw_event() function. HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus HID: assorted usage updates from hut 1.12 HID: roccat: fix actual/startup profile sysfs attribute in koneplus HID: hid-multitouch: Add support for Lumio panels HID: 'name' and 'phys' in 'struct hid_device' can never be NULL HID: hid-multitouch: add support for Ilitek dual-touch panel HID: picolcd: Avoid compile warning/error triggered by copy_from_user() HID: add support for Logitech G27 wheel HID: hiddev: fix error path in hiddev_read when interrupted HID: add support for Sony Navigation Controller ... commit e0c6b8a17fb3d4a740386b380ea72aa8388fbf2f Merge: 710421cc fda5fe1 Author: Linus Torvalds Date: Mon May 23 09:08:19 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/apm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/apm: apm-emulation: apm_mutex breaks ACK; remove it APM: take over maintainership commit 4d5336d50a7b4992c90729c27dae027a3426c48c Author: Linus Walleij Date: Fri May 6 12:56:27 2011 +0100 ARM: 6895/1: mach-ux500: fix SMP secondary startup regression Commit e2a083dc0da9aa6437e14811198379b18cdfa7f8 "ARM: consolidate SMP cross call implementation" broke the ux500 compilation since the smp.h header declared a function called from headsmp.S. This fixes it up by declaring it locally instead. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 0f7b332f9777819a39a3b325690379a7efef89d1 Author: Russell King Date: Sun Apr 3 13:01:30 2011 +0100 ARM: consolidate SMP cross call implementation Rather than having each platform class provide a mach/smp.h header for smp_cross_call(), arrange for them to register the function with the core ARM SMP code instead. Signed-off-by: Russell King commit 710421cc7d295cc59eb2676fe2ba3bc3252c124e Merge: d7ef64a f686c74 Author: Linus Torvalds Date: Mon May 23 08:52:38 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (346 commits) ASoC: core: Don't set "(null)" as a driver name ALSA: hda - Use LPIB for ATI/AMD chipsets as default Revert "ALSA: hda - Use position_fix=3 as default for AMD chipsets" ASoC: Tegra: Fix compile when debugfs not enabled ASoC: spdif-dit: Add missing MODULE_* SOUND: OSS: Remove Au1550 driver. ALSA: hda - add Intel Panther Point HDMI codec id ALSA: emu10k1 - Add dB range to Bass and Treble for SB Live! ALSA: hda - Remove PCM mixer elements from Virtual Master of realtek ALSA: hda - Fix input-src parse in patch_analog.c ASoC: davinci-mcasp: enable ping-pong SRAM buffers ASoC: add iPAQ hx4700 machine driver ASoC: Asahi Kasei AK4641 codec driver ALSA: hda - Enable Realtek ALC269 codec input layer beep ALSA: intel8x0m: enable AMD8111 modem ALSA: HDA: Add jack detection for HDMI ALSA: sound, core, pcm_lib: fix xrun_log ASoC: Max98095: Move existing NULL check before pointer dereference. ALSA: sound, core, pcm_lib: xrun_log: log also in_interrupt ALSA: usb-audio - Add support for USB X-Fi S51 Pro ... commit d7ef64a9f9987b29e3d911369a9d40122d5be2dd Merge: ff2a994 6ec5ff4 Author: Linus Torvalds Date: Mon May 23 08:51:55 2011 -0700 Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Eliminate various 'set but not used' warnings x86, SMEP: Fix section mismatch warnings x86, amd: Use _safe() msr access for GartTlbWlk disable code commit ff2a9941ca27ab18169d17b3803aca68b154951c Author: Tejun Heo Date: Mon May 23 13:24:54 2011 +0200 block: move bd_set_size() above rescan_partitions() in __blkdev_get() 02e352287a4 (block: rescan partitions on invalidated devices on -ENOMEDIA too) relocated partition rescan above explicit bd_set_size() to simplify condition check. As rescan_partitions() does its own bdev size setting, this doesn't break anything; however, rescan_partitions() prints out the following messages when adjusting bdev size, which can be confusing. sda: detected capacity change from 0 to 146815737856 sdb: detected capacity change from 0 to 146815737856 This patch restores the original order and remove the warning messages. stable: Please apply together with 02e352287a4 (block: rescan partitions on invalidated devices on -ENOMEDIA too). Signed-off-by: Tejun Heo Reported-by: Tony Luck Tested-by: Tony Luck Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit dc7ad3b3d5f1cd0a0d16c05dd3ad3898979d261e Author: Russell King Date: Sun May 22 10:01:21 2011 +0100 ARM: Fix generic irq chip As a result of c42321c (genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP), we now need those platforms using this in my tree to select this symbol. Acked-by: Thomas Gleixner Acked-by: Nicolas Pitre Acked-by: Sekhar Nori Acked-by: Kevin Hilman Signed-off-by: Russell King commit 901025d2f3194b4868980c8ba80df4cc0aa1282c Author: David Teigland Date: Wed Mar 2 14:20:04 2011 -0600 dlm: make plock operation killable Allow processes blocked on plock requests to be interrupted when they are killed. This leaves the problem of cleaning up the lock state in userspace. This has three parts: 1. Add a flag to unlock operations sent to userspace indicating the file is being closed. Userspace will then look for and clear any waiting plock operations that were abandoned by an interrupted process. 2. Queue an unlock-close operation (like in 1) to clean up userspace from an interrupted plock request. This is needed because the vfs will not send a cleanup-unlock if it sees no locks on the file, which it won't if the interrupted operation was the only one. 3. Do not use replies from userspace for unlock-close operations because they are unnecessary (they are just cleaning up for the process which did not make an unlock call). This also simplifies the new unlock-close generated from point 2. Signed-off-by: David Teigland commit f4b10bc60a310916bab5413f821b99ef845cac17 Merge: 53ee756 c8cfbb5 Author: Linus Torvalds Date: Mon May 23 08:42:08 2011 -0700 Merge branch 'kvm-updates/2.6.40' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/2.6.40' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (131 commits) KVM: MMU: Use ptep_user for cmpxchg_gpte() KVM: Fix kvm mmu_notifier initialization order KVM: Add documentation for KVM_CAP_NR_VCPUS KVM: make guest mode entry to be rcu quiescent state KVM: x86 emulator: Make jmp far emulation into a separate function KVM: x86 emulator: Rename emulate_grpX() to em_grpX() KVM: x86 emulator: Remove unused arg from emulate_pop() KVM: x86 emulator: Remove unused arg from writeback() KVM: x86 emulator: Remove unused arg from read_descriptor() KVM: x86 emulator: Remove unused arg from seg_override() KVM: Validate userspace_addr of memslot when registered KVM: MMU: Clean up gpte reading with copy_from_user() KVM: PPC: booke: add sregs support KVM: PPC: booke: save/restore VRSAVE (a.k.a. USPRG0) KVM: PPC: use ticks, not usecs, for exit timing KVM: PPC: fix exit accounting for SPRs, tlbwe, tlbsx KVM: PPC: e500: emulate SVR KVM: VMX: Cache vmcs segment fields KVM: x86 emulator: consolidate segment accessors KVM: VMX: Avoid reading %rip unnecessarily when handling exceptions ... commit 53ee7569ce8beb3fd3fc0817116c29298d72353f Merge: 4d9dec4 1b6e2ce Author: Linus Torvalds Date: Mon May 23 08:39:24 2011 -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: (27 commits) bnx2x: allow device properly initialize after hotplug bnx2x: fix DMAE timeout according to hw specifications bnx2x: properly handle CFC DEL in cnic flow bnx2x: call dev_kfree_skb_any instead of dev_kfree_skb net: filter: move forward declarations to avoid compile warnings pktgen: refactor pg_init() code pktgen: use vzalloc_node() instead of vmalloc_node() + memset() net: skb_trim explicitely check the linearity instead of data_len ipv4: Give backtrace in ip_rt_bug(). net: avoid synchronize_rcu() in dev_deactivate_many net: remove synchronize_net() from netdev_set_master() rtnetlink: ignore NETDEV_RELEASE and NETDEV_JOIN event net: rename NETDEV_BONDING_DESLAVE to NETDEV_RELEASE bridge: call NETDEV_JOIN notifiers when add a slave netpoll: disable netpoll when enslave a device macvlan: Forward unicast frames in bridge mode to lowerdev net: Remove linux/prefetch.h include from linux/skbuff.h ipv4: Include linux/prefetch.h in fib_trie.c netlabel: Remove prefetches from list handlers. drivers/net: add prefetch header for prefetch users ... Fixed up prefetch parts: removed a few duplicate prefetch.h includes, fixed the location of the igb prefetch.h, took my version of the skbuff.h code without the extra parentheses etc. commit ede338f4ce2fb5ee99d18751df32fbd3b10df268 Author: Grant Likely Date: Thu Apr 28 14:27:23 2011 -0600 dt: add documentation of ARM dt boot interface v6: typo fixes v5: clarified that dtb should be aligned on a 64 bit boundary in RAM. v3: added details to Documentation/arm/Booting Acked-by: Tony Lindgren Acked-by: Nicolas Pitre Acked-by: Russell King Signed-off-by: Grant Likely commit 93c02ab40ae6e06cb24d14845d9f008fdd24f43d Author: Grant Likely Date: Thu Apr 28 14:27:21 2011 -0600 arm/dt: probe for platforms via the device tree If a dtb is passed to the kernel then the kernel needs to iterate through compiled-in mdescs looking for one that matches and move the dtb data to a safe location before it gets accidentally overwritten by the kernel. This patch creates a new function, setup_machine_fdt() which is analogous to the setup_machine_atags() created in the previous patch. It does all the early setup needed to use a device tree machine description. v5: - Print warning with neither dtb nor atags are passed to the kernel - Fix bug in setting of __machine_arch_type to the selected machine, not just the last machine in the list. Reported-by: Tixy - Copy command line directly into boot_command_line instead of cmd_line v4: - Dump some output when a matching machine_desc cannot be found v3: - Added processing of reserved list. - Backed out the v2 change that copied instead of reserved the dtb. dtb is reserved again and the real problem was fixed by using alloc_bootmem_align() for early allocation of RAM for unflattening the tree. - Moved cmd_line and initrd changes to earlier patch to make series bisectable. v2: Changed to save the dtb by copying into an allocated buffer. - Since the dtb will very likely be passed in the first 16k of ram where the interrupt vectors live, memblock_reserve() is insufficient to protect the dtb data. [based on work originally written by Jeremy Kerr ] Tested-by: Tony Lindgren Acked-by: Nicolas Pitre Acked-by: Russell King Signed-off-by: Grant Likely commit 6291319d4864848efc7b5d81389e2404fb478cb9 Author: Grant Likely Date: Thu Apr 28 14:27:21 2011 -0600 arm/dt: consolidate atags setup into setup_machine_atags In preparation for adding device tree support, this patch consolidates all of the atag-specific setup into a single function. v5: - drop double printk("Machine; %s\n", ...); call. - leave copying boot_command_line in setup_arch() since it isn't atags specific. v4: - adapt to the removal of lookup_machine_type() - break out dump of machine_desc table into dump_machine_table() because the device tree probe code will use it. - Add for_each_machine_desc() macro Tested-by: Tony Lindgren Acked-by: Nicolas Pitre Acked-by: Russell King Signed-off-by: Grant Likely commit 4d9dec4db2efbd7edb549bd02373995b67496983 Merge: 34b0645 ae6b585 Author: Linus Torvalds Date: Mon May 23 08:28:34 2011 -0700 Merge branch 'exec_rm_compat' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc * 'exec_rm_compat' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: exec: document acct_arg_size() exec: unify do_execve/compat_do_execve code exec: introduce struct user_arg_ptr exec: introduce get_user_arg_ptr() helper commit 34b064569eba3bec65bf98efe057b0578fe13297 Merge: 2e77def 26b06a6 Author: Linus Torvalds Date: Mon May 23 08:24:09 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes: GFS2: Wait properly when flushing the ail list GFS2: Wipe directory hash table metadata when deallocating a directory commit 2e77defc5da779888f3cf65e66cd3d47ae2d690f Merge: caebc16 2a62512 Author: Linus Torvalds Date: Mon May 23 08:20:44 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-ktest: ktest: Allow options to be used by other options ktest: Create variables for the ktest config files ktest: Reboot after each patchcheck run ktest: Reboot to good kernel after every bisect run ktest: If test failed due to timeout, print that ktest: Fix post install command commit 8ce26169555cf5634263d39d3665e45300218a5e Merge: 3cb6d15 559fa6e Author: Ingo Molnar Date: Mon May 23 16:15:43 2011 +0200 Merge commit '559fa6e76b27' into perf/urgent Merge reason: this commit was queued up quite some time ago but was forgotten about. Signed-off-by: Ingo Molnar commit 8e531cdfeb75269c6c5aae33651cca39707848da Author: liubo Date: Fri May 6 10:36:09 2011 +0800 Btrfs: do not flush csum items of unchanged file data during treelog The current code relogs the entire inode every time during fsync log, and it is much better suited to small files rather than large ones. During my performance test, the fsync performace of large files sucks, and we can ascribe this to the tremendous amount of csum infos of the large ones, cause we have to flush all of these csum infos into log trees even when there are only _one_ change in the whole file data. Apparently, to optimize fsync, we need to create a filter to skip the unnecessary csum ones, that is, the corresponding file data remains unchanged before this fsync. Here I have some test results to show, I use sysbench to do "random write + fsync". === sysbench --test=fileio --num-threads=1 --file-num=2 --file-block-size=4K --file-total-size=8G --file-test-mode=rndwr --file-io-mode=sync --file-extra-flags= [prepare, run] === Sysbench args: - Number of threads: 1 - Extra file open flags: 0 - 2 files, 4Gb each - Block size 4Kb - Number of random requests for random IO: 10000 - Read/Write ratio for combined random IO test: 1.50 - Periodic FSYNC enabled, calling fsync() each 100 requests. - Calling fsync() at the end of test, Enabled. - Using synchronous I/O mode - Doing random write test Sysbench results: === Operations performed: 0 Read, 10000 Write, 200 Other = 10200 Total Read 0b Written 39.062Mb Total transferred 39.062Mb === a) without patch: (*SPEED* : 451.01Kb/sec) 112.75 Requests/sec executed b) with patch: (*SPEED* : 4.7533Mb/sec) 1216.84 Requests/sec executed PS: I've made a _sub transid_ stuff patch, but it does not perform as effectively as this patch, and I'm wanderring where the problem is and trying to improve it more. Signed-off-by: Liu Bo Signed-off-by: Chris Mason commit 68fa61c026057a39d6ccb850aa8785043afbee02 Author: Thomas Gleixner Date: Fri May 20 23:14:04 2011 +0200 hrtimers: Reorder clock bases The ordering of the clock bases is historical due to the CLOCK_REALTIME and CLOCK_MONOTONIC constants. Now the hrtimer bases have their own enumeration due to the gap between CLOCK_MONOTONIC and CLOCK_BOOTTIME. So we can be more clever as most timers end up on the CLOCK_MONOTONIC base due to the virtue of POSIX declaring that relative CLOCK_REALTIME timers are not affected by time changes. In desktop environments this is slowly changing as applications switch to absolute timers, but I've observed empty CLOCK_REALTIME bases often enough. There is no performance penalty or overhead when CLOCK_REALTIME timers are active, but in case they are not we don't skip over a full cache line. Signed-off-by: Thomas Gleixner Reviewed-by: Peter Zijlstra commit ab8177bc53e8ae3a3ba6d200ce2c2dae263f7ee5 Author: Thomas Gleixner Date: Fri May 20 13:05:15 2011 +0200 hrtimers: Avoid touching inactive timer bases Instead of iterating over all possible timer bases avoid it by marking the active bases in the cpu base. Signed-off-by: Thomas Gleixner Reviewed-by: Peter Zijlstra commit f24444b01bf6c51c300fd3ffc73423383d747882 Author: Thomas Gleixner Date: Fri May 20 13:02:58 2011 +0200 hrtimers: Make struct hrtimer_cpu_base layout less stupid In the HIGHRES=y case we access the members at the end of struct hrtimer_cpu_base first and then the one at the beginning. Move the hrtimer data to front, so we have linear progressing access. Signed-off-by: Thomas Gleixner Reviewed-by: Peter Zijlstra commit 9ec2690758a5467f24beb301cca5098078073bba Author: Thomas Gleixner Date: Fri May 20 16:18:50 2011 +0200 timerfd: Manage cancelable timers in timerfd Peter is concerned about the extra scan of CLOCK_REALTIME_COS in the timer interrupt. Yes, I did not think about it, because the solution was so elegant. I didn't like the extra list in timerfd when it was proposed some time ago, but with a rcu based list the list walk it's less horrible than the original global lock, which was held over the list iteration. Requested-by: Peter Zijlstra Signed-off-by: Thomas Gleixner Reviewed-by: Peter Zijlstra commit 3cb6d1540880e767d911b79eb49578de2190f428 Author: Frederic Weisbecker Date: Mon May 23 13:06:27 2011 +0200 perf tools: Fix sample size bit operations What we want is to count the number of bits in the mask, not some other random operation written in the middle of the night. Signed-off-by: Frederic Weisbecker Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1306148788-6179-2-git-send-email-fweisbec@gmail.com [ Fixed perf_event__names[] alignment which was nearby and hurting my eyes ... ] Signed-off-by: Ingo Molnar commit 7e69723fef8771a9d57bd27d36281d756130b4b5 Author: Tejun Heo Date: Mon May 23 13:26:07 2011 +0200 block: move bd_set_size() above rescan_partitions() in __blkdev_get() 02e352287a4 (block: rescan partitions on invalidated devices on -ENOMEDIA too) relocated partition rescan above explicit bd_set_size() to simplify condition check. As rescan_partitions() does its own bdev size setting, this doesn't break anything; however, rescan_partitions() prints out the following messages when adjusting bdev size, which can be confusing. sda: detected capacity change from 0 to 146815737856 sdb: detected capacity change from 0 to 146815737856 This patch restores the original order and remove the warning messages. stable: Please apply together with 02e352287a4 (block: rescan partitions on invalidated devices on -ENOMEDIA too). Signed-off-by: Tejun Heo Reported-by: Tony Luck Tested-by: Tony Luck Cc: stable@kernel.org Stable note: 2.6.39 only. Signed-off-by: Jens Axboe commit 998bedc8c56c6869de457c845cbd328592e5e82e Author: Frederic Weisbecker Date: Mon May 23 13:06:28 2011 +0200 perf tools: Fix ommitted mmap data update on remap Commit eac9eacee16 "perf tools: Check we are able to read the event size on mmap" brought a check to ensure we can read the size of the event before dereferencing it, and do a remap otherwise to move the buffer forward. However that remap was ommitting all the necessary work to update the new page offset, head, and to unmap previous pages, etc... To fix this, gather all the code that fetches the event in a seperate helper which does all the necessary checks about the header/event size and tells us anytime a remap is needed. Signed-off-by: Frederic Weisbecker Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Link: http://lkml.kernel.org/r/1306148788-6179-3-git-send-email-fweisbec@gmail.com Signed-off-by: Ingo Molnar commit fda5fe19725edd6805f2fd742235d1a0d0ba93f5 Author: Paul Parsons Date: Fri May 13 02:46:03 2011 +0100 apm-emulation: apm_mutex breaks ACK; remove it apm_mutex is locked by a process (e.g. apm -s) at the start of apm_ioctl() and remains locked while pm_suspend() is called. Any subsequent process trying to ACK the suspend (e.g. apmd) is then blocked at the start of apm_ioctl(), causing the suspend to be delayed for 5 seconds in apm_suspend_notifier() while the ACK times out. In short, ACKs don't work. The driver's data structures are sufficiently protected by assorted locks. And pm_suspend() has its own mutex to prevent reentrancy. Consequently there is no obvious requirement for apm_mutex, which evolved from earlier BKL calls. So let's remove it. Signed-off-by: Paul Parsons Acked-by: Rafael J. Wysocki Signed-off-by: Jiri Kosina commit 366a2382c68d01638350efcf23d46a47d661c595 Merge: d431b2e 2240828 6cb4b04 23746a6 Author: Jiri Kosina Date: Mon May 23 12:49:25 2011 +0200 Merge branches 'doc', 'multitouch', 'upstream' and 'upstream-fixes' into for-linus commit 712673339a0d085358fd1cd3a6477cc7979bb69f Merge: aa2dfb3 8628764 Author: Chris Mason Date: Mon May 23 06:30:52 2011 -0400 Merge branch 'for-chris' of git://git.kernel.org/pub/scm/linux/kernel/git/arne/btrfs-unstable-arne into inode_numbers Conflicts: fs/btrfs/Makefile fs/btrfs/ctree.h fs/btrfs/volumes.h Signed-off-by: Chris Mason commit 4eec42f392043063d0f019640b4ccc2a45570002 Author: Mandeep Singh Baines Date: Sun May 22 22:10:23 2011 -0700 watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh Before the conversion of the NMI watchdog to perf event, the watchdog timeout was 5 seconds. Now it is 60 seconds. For my particular application, netbooks, 5 seconds was a better timeout. With a short timeout, we catch faults earlier and are able to send back a panic. With a 60 second timeout, the user is unlikely to wait and will instead hit the power button, causing us to lose the panic info. This change configures the NMI period to watchdog_thresh and sets the softlockup_thresh to watchdog_thresh * 2. In addition, watchdog_thresh was reduced to 10 seconds as suggested by Ingo Molnar. Signed-off-by: Mandeep Singh Baines Cc: Marcin Slusarz Cc: Don Zickus Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1306127423-3347-4-git-send-email-msb@chromium.org Signed-off-by: Ingo Molnar LKML-Reference: <20110517071642.GF22305@elte.hu> commit 586692a5a5fc5740c8a46abc0f2365495c2d7c5f Author: Mandeep Singh Baines Date: Sun May 22 22:10:22 2011 -0700 watchdog: Disable watchdog when thresh is zero This restores the previous behavior of softlock_thresh. Currently, setting watchdog_thresh to zero causes the watchdog kthreads to consume a lot of CPU. In addition, the logic of proc_dowatchdog_thresh and proc_dowatchdog_enabled has been factored into proc_dowatchdog. Signed-off-by: Mandeep Singh Baines Cc: Marcin Slusarz Cc: Don Zickus Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1306127423-3347-3-git-send-email-msb@chromium.org Signed-off-by: Ingo Molnar LKML-Reference: <20110517071018.GE22305@elte.hu> commit e04ab2bc41b35c0cb6cdb07c8443f91aa738cf78 Author: Mandeep Singh Baines Date: Sun May 22 22:10:21 2011 -0700 watchdog: Only disable/enable watchdog if neccessary Don't take any action on an unsuccessful write to /proc. Signed-off-by: Mandeep Singh Baines Cc: Marcin Slusarz Cc: Don Zickus Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1306127423-3347-2-git-send-email-msb@chromium.org Signed-off-by: Ingo Molnar commit 824c6b7f6294101f30e141117def224a56c203e6 Author: Mandeep Singh Baines Date: Sun May 22 22:10:20 2011 -0700 watchdog: Fix rounding bug in get_sample_period() In get_sample_period(), softlockup_thresh is integer divided by 5 before the multiplication by NSEC_PER_SEC. This results in softlockup_thresh being rounded down to the nearest integer multiple of 5. For example, a softlockup_thresh of 4 rounds down to 0. Signed-off-by: Mandeep Singh Baines Cc: Marcin Slusarz Cc: Don Zickus Cc: Peter Zijlstra Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1306127423-3347-1-git-send-email-msb@chromium.org Signed-off-by: Ingo Molnar commit 9fb352b18b11124ed1ddebc0d74ebbd7ba8defd7 Author: Jarkko Nikula Date: Fri May 20 16:52:38 2011 +0300 ASoC: tlv320aic3x: Do soft reset to codec when going to bias off state TLV320AIC33, TLV320AIC34 and I believe others too in this family have some hw bugs that cause that analogue and digital VDD supplies remain leaking up to a few mA of current after certain use cases even the hw blocks inside codec are driven to off. Highest leakages occur after using the bypass paths inside codec but it is possible to get smaller leakages just by toggling mute switches in unused audio paths (i.e. no DAPM changes) while codec is on due another active audio path. While some cases are able to workaroud by making sure that e.g. output mixer switches are muted before powering down the output stage this doesn't help all the cases. Therefore use the software reset command to clear possible leakage currents since that works in every cases and affects only this codec instance. Only drawback is that now cache sync is required everytime when codec bias comes out from bias off state, not only when supply regulators were off. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 508b76864c18f34f8d6ba08d192f5817f8dc8ead Author: Jarkko Nikula Date: Fri May 20 16:52:37 2011 +0300 ASoC: tlv320aic3x: Don't sync first two registers from register cache There is no need to sync first two registers from cache to hw after a reset. First one is used to select page for register access and this driver is normally accessing page 0 only. Second one does a software reset which is obviously unneeded after hardware or previous software reset command. Signed-off-by: Jarkko Nikula Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit e64851f5a0ad6ec991f74ebb3108c35aa0323d5f Author: Jim Cromie Date: Sat May 21 11:51:50 2011 -0600 b43: fix comment typo reqest -> request Recent trivial fix corrected 'occured', but left 'reqest'. codespell needs another dictionary entry. cc: Lucas De Marchi Signed-off-by: Jim Cromie Signed-off-by: Jiri Kosina commit 22408283bca57780bdd53da5a6e4474b71b94430 Author: Benjamin Tissoires Date: Fri May 20 15:59:34 2011 +0200 HID: hid-multitouch: cosmetic changes, sort classes and devices This patch sorts the defs for the MT_CLS. I choose to split generic classes and device specific ones to be able to add more generic classes in the future. It also put eGalax devices at their right place (alphabetically) in mt_devices. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 5bd418784a2764a8d9de177a5462bfc008fd334a Author: Heiko Carstens Date: Mon May 23 10:24:50 2011 +0200 [S390] cpu hotplug: fix external interrupt subclass mask handling When disabling a cpu all external interrupt subclass masks in control register 0 get cleared. However instead of the service signal subclass mask bit an unused bit got cleared. Accidently (or luckily) the service subclass mask gets cleared with the pfault_fini() call that happens just before the rest of the subclass mask bits get cleared. Signed-off-by: Heiko Carstens commit 5f420c5bd15c948302aafd3341903bc06895f1bb Author: Heiko Carstens Date: Mon May 23 10:24:49 2011 +0200 [S390] oprofile: dont access lowcore The external interrupt parameter is passed as function call parameter. No need to access lowcore. Signed-off-by: Heiko Carstens commit fcdd65b0e7bbbd6aef9be2f20e7c238759cf0b41 Author: Heiko Carstens Date: Mon May 23 10:24:48 2011 +0200 [S390] oprofile: add missing irq stats counter Count CPU measurement external interrupts as well. Signed-off-by: Heiko Carstens commit bfac1d2d34990bf6ce0abf947fd5043cf412256b Author: Heiko Carstens Date: Mon May 23 10:24:47 2011 +0200 [S390] Ignore sendmmsg system call note wired up warning sendmmsg is reachable via the socket system call. We don't enable a second way on s390 to reach the same system call. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 43a679d6c9f59d7aa20443d43d8041ea9d9aa363 Author: Jan Glauber Date: Mon May 23 10:24:46 2011 +0200 [S390] s390,oprofile: fix compile error for !CONFIG_SMP Use ctl_set_bit instead of the smp_ctl_set_bit (likewise for clear bit) to prevent the following build error for !CONFIG_SMP: CC arch/s390/oprofile/hwsampler.o arch/s390/oprofile/hwsampler.c: In function ‘hwsampler_deallocate’: arch/s390/oprofile/hwsampler.c:1012: error: implicit declaration of function ‘smp_ctl_clear_bit’ arch/s390/oprofile/hwsampler.c: In function ‘hwsampler_start_all’: arch/s390/oprofile/hwsampler.c:1201: error: implicit declaration of function ‘smp_ctl_set_bit’ CC kernel/seccomp.o make[1]: *** [arch/s390/oprofile/hwsampler.o] Error 1 make: *** [arch/s390/oprofile] Error 2 Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 9529cdc51f36ca0c87ce0246627c5951c40cbc01 Author: Jan Glauber Date: Mon May 23 10:24:45 2011 +0200 [S390] s390,oprofile: fix alert counter increment The counter for requested interrupts should be incremented if the program-request-alert bit is set and not the invalid-address-entry bit. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 3af6fb687b06393c00390d8d779c5d97ced00cde Author: Jan Glauber Date: Mon May 23 10:24:44 2011 +0200 [S390] Remove unused includes in process.c Remove unsused includes from arch/s390/kernel/process.c. Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 7eb9d5bec552eff896ebf079386dc47e9dc2fc89 Author: Martin Schwidefsky Date: Mon May 23 10:24:43 2011 +0200 [S390] get CPC image name Provide sysfs attributes that contain the CPC name and the HMC network name of the machine the operating system is running on. This information is retrieved with the operation communication parameters (OCF) sclp interface. Signed-off-by: Martin Schwidefsky commit 30c2df51173ea4e4755ad52be7f2914f01e32404 Author: Martin Schwidefsky Date: Mon May 23 10:24:42 2011 +0200 [S390] sclp: event buffer dissection Move gds vector/subvector find functions to the sclp header file. Simplify event buffer dissection in sclp tty code. Signed-off-by: Martin Schwidefsky commit fca894edd7566f5c548598c8fad7f329278c23b4 Author: Sebastian Ott Date: Mon May 23 10:24:41 2011 +0200 [S390] chsc: process channel-path-availability information Update affected channel path descriptors when receiving channel path availability information. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit b2fa47e6bf5148aa6dbf22ec79f18141b421eeba Author: Martin Schwidefsky Date: Mon May 23 10:24:40 2011 +0200 [S390] refactor page table functions for better pgste support Rework the architecture page table functions to access the bits in the page table extension array (pgste). There are a number of changes: 1) Fix missing pgste update if the attach_count for the mm is <= 1. 2) For every operation that affects the invalid bit in the pte or the rcp byte in the pgste the pcl lock needs to be acquired. The function pgste_get_lock gets the pcl lock and returns the current pgste value for a pte pointer. The function pgste_set_unlock stores the pgste and releases the lock. Between these two calls the bits in the pgste can be shuffled. 3) Define two software bits in the pte _PAGE_SWR and _PAGE_SWC to avoid calling SetPageDirty and SetPageReferenced from pgtable.h. If the host reference backup bit or the host change backup bit has been set the dirty/referenced state is transfered to the pte. The common code will pick up the state from the pte. 4) Add ptep_modify_prot_start and ptep_modify_prot_commit for mprotect. 5) Remove pgd_populate_kernel, pud_populate_kernel, pmd_populate_kernel pgd_clear_kernel, pud_clear_kernel, pmd_clear_kernel and ptep_invalidate. 6) Rename kvm_s390_test_and_clear_page_dirty to ptep_test_and_clear_user_dirty and add ptep_test_and_clear_user_young. 7) Define mm_exclusive() and mm_has_pgste() helper to improve readability. Signed-off-by: Martin Schwidefsky commit 2d42552d1c1659b014851cf449ad2fe458509128 Author: Martin Schwidefsky Date: Mon May 23 10:24:39 2011 +0200 [S390] merge page_test_dirty and page_clear_dirty The page_clear_dirty primitive always sets the default storage key which resets the access control bits and the fetch protection bit. That will surprise a KVM guest that sets non-zero access control bits or the fetch protection bit. Merge page_test_dirty and page_clear_dirty back to a single function and only clear the dirty bit from the storage key. In addition move the function page_test_and_clear_dirty and page_test_and_clear_young to page.h where they belong. This requires to change the parameter from a struct page * to a page frame number. Signed-off-by: Martin Schwidefsky commit c26001d4e9133fe45e47eee18cfd826219e71fb9 Author: Jan Glauber Date: Mon May 23 10:24:38 2011 +0200 [S390] qdio: prevent compile warning Prevent the following compile warning for !CONFIG_64BIT: CC drivers/s390/cio/qdio_main.o drivers/s390/cio/qdio_main.c: In function ‘handle_outbound’: drivers/s390/cio/qdio_main.c:1449: warning: ‘state’ may be used uninitialized in this function Signed-off-by: Jan Glauber Signed-off-by: Martin Schwidefsky commit 1b60f68f6674ecc5c86f7dfe7e87941bc4236b9b Author: Heiko Carstens Date: Mon May 23 10:24:37 2011 +0200 [S390] sclp: remove unnecessary sendmask check The sendmask check is not needed. Remove it. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 0f1959f50646612b247d624bdbf8b0c8816f2a93 Author: KOSAKI Motohiro Date: Mon May 23 10:24:36 2011 +0200 [S390] convert old cpumask API into new one Adapt new API. Signed-off-by: KOSAKI Motohiro Signed-off-by: Martin Schwidefsky commit 7dd8fe1f910f9644167ef91ddab44107d0d668c5 Author: Heiko Carstens Date: Mon May 23 10:24:35 2011 +0200 [S390] pfault: cleanup code Small code cleanup. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit f2db2e6cb3f5f766cbb3788af44705685ff2445a Author: Heiko Carstens Date: Mon May 23 10:24:34 2011 +0200 [S390] pfault: cpu hotplug vs missing completion interrupts On cpu hot remove a PFAULT CANCEL command is sent to the hypervisor which in turn will cancel all outstanding pfault requests that have been issued on that cpu (the same happens with a SIGP cpu reset). The result is that we end up with uninterruptible processes where the interrupt that would wake up these processes never arrives. In order to solve this all processes which wait for a pfault completion interrupt get woken up after a cpu hot remove. The worst case that could happen is that they fault again and in turn need to wait again. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit b456d94a9757db54eca4677c1b3a13e7170c9bb3 Author: Heiko Carstens Date: Mon May 23 10:24:33 2011 +0200 [S390] smp: add __noreturn attribute to cpu_die() Add missing __noreturn attribute to cpu_die(): arch/s390/kernel/smp.c:691:6: error: symbol 'cpu_die' redeclared with different type Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 4c2241fd42298007d7c3a92318806a4a9490a93c Author: Heiko Carstens Date: Mon May 23 10:24:32 2011 +0200 [S390] percpu: implement arch specific irqsafe_cpu_ops Implement arch specific irqsafe_cpu ops. The arch specific ops do not disable/enable interrupts since that is an expensive operation. Instead we disable preemption and perform a compare and swap loop. Since on server distros (the ones we care about) preemption is disabled the preempt_disable()/preempt_enable() pair is a nop. In the end this code should be faster than the generic one. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit add7490c273650c3aa8012f3e082aa64af86f17c Author: Peter Oberparleiter Date: Mon May 23 10:24:31 2011 +0200 [S390] vdso: disable gcov profiling The concepts of VDSO and gcov-based profiling don't mix: the former includes kernel-provided code running in userspace, the latter adds instructions that modify counters in kernel data segments. On s390 this has not been a problem so far due to VDSO code being written in all-assembler which is exempt from gcov-based profiling. This could change in the future, so disable profiling excplicitly for VDSO code. Signed-off-by: Peter Oberparleiter Signed-off-by: Martin Schwidefsky commit cf2d007bd43bc254d5254fe9d30af3e73ed5b98a Author: Holger Dengler Date: Mon May 23 10:24:30 2011 +0200 [S390] ap: skip device registration on type probe failure The registration of an ap device will be skipped, if the device type probing fails. Add names of current crypto adapters to the Kconfig help. Signed-off-by: Holger Dengler Signed-off-by: Martin Schwidefsky commit 89db4df160948d005b5efce82ef10f25ab5aac8b Author: Heiko Carstens Date: Mon May 23 10:24:29 2011 +0200 [S390] extmem: get rid of compile warning Get rid of these: arch/s390/mm/extmem.c: In function 'segment_modify_shared': arch/s390/mm/extmem.c:622:3: warning: 'end_addr' may be used uninitialized in this function [-Wuninitialized] arch/s390/mm/extmem.c:627:18: warning: 'start_addr' may be used uninitialized in this function [-Wuninitialized] arch/s390/mm/extmem.c: In function 'segment_load': arch/s390/mm/extmem.c:481:11: warning: 'end_addr' may be used uninitialized in this function [-Wuninitialized] arch/s390/mm/extmem.c:480:18: warning: 'start_addr' may be used uninitialized in this function [-Wuninitialized] Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 160fbf2e92cccbc1dccb4f837f5174808b2636d2 Author: Heiko Carstens Date: Mon May 23 10:24:28 2011 +0200 [S390] tape: remove unused/not handled return codes Return codes are on purpose not handled or used. So remove them. Acked-by: Michael Holzheu Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 37fa9975b28a2d86a5b47ec17e6d845dbd899c60 Author: Heiko Carstens Date: Mon May 23 10:24:27 2011 +0200 [S390] monwriter: fix return code handling Fix return code handling within monwrite_new_hdr(). Return code handling is everwhere implemented, the return code of the diagnose function was just not passed. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 364c18d817a6beb3303e6b8f28ea37d9c06ff382 Author: Heiko Carstens Date: Mon May 23 10:24:26 2011 +0200 [S390] dasd: fix return code handling Check return value of itcw_add_dcw() for error code and return it. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 7712f83aa904fef0d7d6e5ba7684c3272bddbb19 Author: Heiko Carstens Date: Mon May 23 10:24:25 2011 +0200 [S390] get rid of unused variables Remove trivially unused variables as detected with -Wunused-but-set-variable. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 66ceed5ad1318863c21710f316942bcefff8081c Author: Heiko Carstens Date: Mon May 23 10:24:24 2011 +0200 [S390] Remove tape block device driver. Remove the tape block device driver. It's not of real use but has already created some confusion when users wanted to access tape devices and used the block device nodes instead of the character device nodes. Also remove the whole tape documentation since it's completely outdated and we have the device drivers book which is the place where everything is properly documented. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 043d07084b5347a26eab0a07aa13a4a929ad9e71 Author: Martin Schwidefsky Date: Mon May 23 10:24:23 2011 +0200 [S390] Remove data execution protection The noexec support on s390 does not rely on a bit in the page table entry but utilizes the secondary space mode to distinguish between memory accesses for instructions vs. data. The noexec code relies on the assumption that the cpu will always use the secondary space page table for data accesses while it is running in the secondary space mode. Up to the z9-109 class machines this has been the case. Unfortunately this is not true anymore with z10 and later machines. The load-relative-long instructions lrl, lgrl and lgfrl access the memory operand using the same addressing-space mode that has been used to fetch the instruction. This breaks the noexec mode for all user space binaries compiled with march=z10 or later. The only option is to remove the current noexec support. Signed-off-by: Martin Schwidefsky commit 9bf05098ce34e68a9e15f09ad6cdfea4ed64057a Author: Sebastian Ott Date: Mon May 23 10:23:32 2011 +0200 [S390] cio: fix unreg race in set_online path In ccw_device_set_online we basically start path verification and wait for the device to reach a final state. If it turns out that the device has no useable path we schedule the deregistration of the device (which is still in an non-final state) and wake up the waiting process. The deregistration process will set a final state, but if the wake up happens to be prior to this, the device will hang forever in ccw_device_set_online. To fix this just set the final NOT_OPER state prior to the scheduled deregistration of the device. Signed-off-by: Sebastian Ott Signed-off-by: Martin Schwidefsky commit 78207ffd0e00d39238f0a8a455a31a12659b30b3 Author: Paul Mundt Date: Mon May 23 17:09:30 2011 +0900 sh: Ignore R_SH_NONE module relocations. Some modules may end up with R_SH_NONE relocs with the right combination of compiler/kernel config (specifically dwarf unwinder), so simply trap and ignore them instead of letting them get down to the error path. Reported-by: Carmelo AMOROSO Signed-off-by: Paul Mundt commit 95cf3dd9dbe6883a0328724e2110e3fc6465630b Author: Vivek Goyal Date: Mon May 23 10:02:19 2011 +0200 block: call elv_bio_merged() when merged Commit 73c101011926 ("block: initial patch for on-stack per-task plugging") removed calls to elv_bio_merged() when @bio merged with @req. Re-add them. This in turn will update merged stats in associated group. That should be safe as long as request has got reference to the blkio_group. Signed-off-by: Namhyung Kim Cc: Divyesh Shah Signed-off-by: Jens Axboe commit 317389a7739675aa990b7e0d750a7c435f1d25d7 Author: Vivek Goyal Date: Mon May 23 10:02:19 2011 +0200 cfq-iosched: Make IO merge related stats per cpu Make BLKIO_STAT_MERGED per cpu hence gettring rid of need of taking blkg->stats_lock. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 2abae55f5a41d29f21b5b259c33d218c950d5c90 Author: Vivek Goyal Date: Mon May 23 10:02:19 2011 +0200 cfq-iosched: Fix a memory leak of per cpu stats for root group We allocated per cpu stats struct for root group but did not free it. Fix it. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit bca606a646a2b1f4fa1ae2b22a0ac707505d7297 Author: Damian Date: Wed May 18 11:10:06 2011 +0000 sh_mobile: Add MSTP clock for MERAM Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit 3fedd2ac7662a10ab2973d3b6f11cdce87b7171a Author: Damian Date: Wed May 18 11:10:08 2011 +0000 sh_mobile_meram: Add support for NV24 framebuffers Since the NV24 framebuffer has a CbCr plane that is twice as wide as the Y plane, it needs to be handled as a special case. Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit 7caa4342ca5b37d2d178b464c16badd4228b3b7b Author: Damian Date: Wed May 18 11:10:07 2011 +0000 sh_mobile_meram: MERAM framework for LCDC Based on the patch by Takanari Hayama Adds support framework necessary to use Media RAM (MERAM) caching functionality with the LCDC. The MERAM is accessed through up to 4 Interconnect Buffers (ICBs). ICB numbers and MERAM address ranges to use are specified in by filling in the .meram_cfg member of the LCDC platform data Signed-off-by: Damian Hobson-Garcia Signed-off-by: Paul Mundt commit d2859fd49200f1f3efd8acdb54b6d51d3ab82302 Author: David Henningsson Date: Mon May 23 08:26:16 2011 +0200 ALSA: HDA: Add quirk for Lenovo U350 Add model=asus quirk for Lenovo Ideapad U350 to make internal mic work correctly. Cc: stable@kernel.org (2.6.38+) BugLink: http://bugs.launchpad.net/bugs/751681 Reported-by: Kent Baxley Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit 116ceec20069f5bab507eab817e56a4b60480845 Author: Ralf Baechle Date: Fri May 13 12:17:46 2011 +0000 SH: SE7751: Fix pcibios_map_platform_irq prototype. Signed-off-by: Ralf Baechle Signed-off-by: Paul Mundt commit caebc160ce3f76761cc62ad96ef6d6f30f54e3dd Merge: d798f7f 5fc7b14 Author: Linus Torvalds Date: Sun May 22 22:43:01 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ryusuke/nilfs2: nilfs2: use mark_buffer_dirty to mark btnode or meta data dirty nilfs2: always set back pointer to host inode in mapping->host nilfs2: get rid of NILFS_I_NILFS nilfs2: use list_first_entry nilfs2: use empty_aops for gc-inodes nilfs2: implement resize ioctl nilfs2: add truncation routine of segment usage file nilfs2: add routine to move secondary super block nilfs2: add ioctl which limits range of segment to be allocated nilfs2: zero fill unused portion of super root block nilfs2: super root size should change depending on inode size nilfs2: get rid of private page allocator nilfs2: merge list_del()/list_add_tail() to list_move_tail() commit d39e17c7f8f8fb4012618d25ddc4436407b174a6 Author: Richard Weinberger Date: Thu May 12 13:11:11 2011 +0000 sh: remove warning and warning_symbol from struct stacktrace_ops Both warning and warning_symbol are nowhere used. Let's get rid of them. Signed-off-by: Richard Weinberger Signed-off-by: Paul Mundt commit c7434dbf29b4803d1caa0d1267fb6a455494d0d7 Author: Paul Mundt Date: Mon May 23 14:41:32 2011 +0900 sh: wire up sys_sendmmsg. Signed-off-by: Paul Mundt commit 1b842e91fea9447eff5eb687e28ad61c02f5033e Author: Magnus Damm Date: Mon Apr 25 22:40:26 2011 +0900 clocksource: sh_tmu: Runtime PM support Add Runtime PM support to the TMU driver. The hardware device is enabled as long as the clocksource or the clockevent portion of the driver is used. Signed-off-by: Magnus Damm Acked-by: John Stultz Signed-off-by: Paul Mundt commit 0aeac458d9ebea5f0dc483e2d3f2c06bfa520c02 Author: Magnus Damm Date: Mon Apr 25 22:38:37 2011 +0900 clocksource: sh_tmu: __clocksource_updatefreq_hz() update This patch updates the clocksource part of the TMU driver to make use of the __clocksource_updatefreq_hz() function. Without this patch the old code uses clocksource_register() together with a hack that assumes a never changing clock rate (see clk_enable(), clk_get_rate() and clk_disable()). The patch uses clocksource_register_hz() with 1 Hz as initial value, then lets the ->enable() callback update the value with __clocksource_updatefreq_hz() once the struct clk has been enabled and the frequency is stable. Signed-off-by: Magnus Damm Acked-by: John Stultz Signed-off-by: Paul Mundt commit 01fa68b58492a5d6708a91c1f474b6a099a9509e Author: Magnus Damm Date: Mon Apr 25 22:36:10 2011 +0900 clocksource: sh_cmt: Runtime PM support Add Runtime PM support to the CMT driver. The hardware device is enabled as long as the clocksource or the clockevent portion of the driver is used. Signed-off-by: Magnus Damm Acked-by: John Stultz Signed-off-by: Paul Mundt commit 3593f5fe40a13badf6921ccbc3378b02fbf6a532 Author: Magnus Damm Date: Mon Apr 25 22:32:11 2011 +0900 clocksource: sh_cmt: __clocksource_updatefreq_hz() update This patch updates the clocksource part of the CMT driver to make use of the __clocksource_updatefreq_hz() function. Without this patch the old code uses clocksource_register() together with a hack that assumes a never changing clock rate (see clk_enable(), clk_get_rate() and clk_disable()). The patch uses clocksource_register_hz() with 1 Hz as initial value, then lets the ->enable() callback update the value with __clocksource_updatefreq_hz() once the struct clk has been enabled and the frequency is stable. Signed-off-by: Magnus Damm Acked-by: John Stultz Signed-off-by: Paul Mundt commit 0d66cbb53eca4ab3db85d9189d5a85c9fac49b84 Author: Amber Jain Date: Thu May 19 19:47:54 2011 +0530 OMAP: DSS2: Add support for NV12 format Add the support for NV12 color format. Configure base address for UV component of NV12 color format. Change the way chroma scaling is handled for YUV formats on OMAP4 by enabling chroma-resampling for video pipeline and hence using FIR2 register set for scaling UV. Changes to _dispc_set_scaling(), because of the reason above, are: - call _dispc_set_scaling_common() to handle scaling for all color formats except for OMAP4 where it only handles scaling for RGB or Y-component - call _dispc_set_scaling_uv() for special handling required for UV component on OMAP4. - dispc_set_scaling_uv() also resets chroma-resampling bit for RGB color modes. Contains chroma scaling (_dispc_set_scaling_uv) design and implemented by Lajos Molnar Signed-off-by: Amber Jain Signed-off-by: Tomi Valkeinen commit ab5ca071e231e6d6da5f6aa9484a2cd233f7c746 Author: Amber Jain Date: Thu May 19 19:47:53 2011 +0530 OMAP: DSS2: Add new registers for NV12 support Add new registers specific to UV color component that are introduced in OMAP4. Add simple helper functions to configure the newly added registers. These new registers are mainly: - UV base address registers used specifically for NV12 color-format - FIR registers used for UV-color-component scaling on OMAP4 - Accumulator registers used for UV-color-component scaling Add these new registers to save/restore and DUMPREG functions. Also add two new features for OMAP4: - FEAT_HANDLE_UV_SEPARATE - this is used on OMAP4 as UV color-component requires separate handling. - FEAT_ATTR2 - this is used on OMAP4 to configure new ATTRIBUTES2 register. Signed-off-by: Amber Jain Signed-off-by: Tomi Valkeinen commit 5719d35cce5b8f7c09cbf6860a37e9762b3bda72 Author: Amber Jain Date: Thu May 19 19:47:52 2011 +0530 OMAP: DSS2: Use for loop where ever possible in SR(), RR() Use for loop instead of individual entries for OVL_FIR_COEF_H, OVL_FIR_COEF_HV, OVL_FIR_COEF_V and OVL_CONV_COEF in SR() and RR(). Signed-off-by: Amber Jain Signed-off-by: Tomi Valkeinen commit ed14a3ce9878185ea8348cc2f2e9b53129f84dc7 Author: Amber Jain Date: Thu May 19 19:47:51 2011 +0530 OMAP: DSS2: Ensure non-zero FIR values are configured FIR values can never be zero as per TRM, and the current code writes zero when scaling is not used. It was not causing any problem as scaling was disabled when zero was written. Its still safer to not write zero to it in any case. Now we configure correct FIR values even when scaling is not used (i.e. set FIR to 1024 when scaling is not used), but the scaling enable bits are still kept off if the scaling is not needed. Signed-off-by: Amber Jain Signed-off-by: Tomi Valkeinen commit f20e42205ab172cfd449c10e5183e2e371a629d6 Author: Amber Jain Date: Thu May 19 19:47:50 2011 +0530 OMAP: DSS2: Add new color formats for OMAP4 Add new color formats supported by OMAP4: NV12, RGBA16, RGBX16, ARGB16_1555, XRGB16_1555. NV12 color format is defined here, its support in DSS will be added separately. Signed-off-by: Amber Jain Signed-off-by: Tomi Valkeinen commit 56e46742e846e4de167dde0e1e1071ace1c882a5 Author: Artem Bityutskiy Date: Tue May 17 15:15:30 2011 +0300 UBIFS: switch to dynamic printks Switch to debugging using dynamic printk (pr_debug()). There is no good reason to carry custom debugging prints if there is so cool and powerful generic dynamic printk infrastructure, see Documentation/dynamic-debug-howto.txt. With dynamic printks we can switch on/of individual prints, per-file, per-function and per format messages. This means that instead of doing old-fashioned echo 1 > /sys/module/ubifs/parameters/debug_msgs to enable general messages, we can do: echo 'format "UBIFS DBG gen" +ptlf' > control to enable general messages and additionally ask the dynamic printk infrastructure to print process ID, line number and function name. So there is no reason to keep UBIFS-specific crud if there is more powerful generic thing. Signed-off-by: Artem Bityutskiy commit d798f7f080805ad7e15fc37a43d8c6f91edb6dda Merge: e98bae7 db210f8 Author: Linus Torvalds Date: Sun May 22 22:08:32 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6: ide/ide-scan-pci.c: Use for_each_pci_dev(). ide: Use linux/mutex.h IDE: ide-floppy, remove unnecessary NULL check drivers/ide/pmac.c: Remove unnecessary casts of pci_get_drvdata ide: fix use after free in ide-acpi commit e98bae7592a44bdce2e49ccd64f3c7ffe244a0f6 Merge: 4b382d0 f400bdb Author: Linus Torvalds Date: Sun May 22 22:06:24 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (28 commits) sparc32: fix build, fix missing cpu_relax declaration SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI sparc32,leon: Remove unnecessary page_address calls in LEON DMA API. sparc: convert old cpumask API into new one sparc32, sun4d: Implemented SMP IPIs support for SUN4D machines sparc32, sun4m: Implemented SMP IPIs support for SUN4M machines sparc32,leon: Implemented SMP IPIs for LEON CPU sparc32: implement SMP IPIs using the generic functions sparc32,leon: SMP power down implementation sparc32,leon: added some SMP comments sparc: add {read,write}*_be routines sparc32,leon: don't rely on bootloader to mask IRQs sparc32,leon: operate on boot-cpu IRQ controller registers sparc32: always define boot_cpu_id sparc32: removed unused code, implemented by generic code sparc32: avoid build warning at mm/percpu.c:1647 sparc32: always register a PROM based early console sparc32: probe for cpu info only during startup sparc: consolidate show_cpuinfo in cpu.c sparc32,leon: implement genirq CPU affinity ... commit 4b382d0643603819e8b48da58efc254cabc22574 Merge: bdfbe80 b098636 Author: Linus Torvalds Date: Sun May 22 22:03:03 2011 -0700 Merge branch 'for-linus' of git://neil.brown.name/md * 'for-linus' of git://neil.brown.name/md: md: allow resync_start to be set while an array is active. md/raid10: reformat some loops with less indenting. md/raid10: remove unused variable. md/raid10: make more use of 'slot' in raid10d. md/raid10: some tidying up in fix_read_error md/raid1: improve handling of pages allocated for write-behind. md/raid1: try fix_sync_read_error before process_checks. md/raid1: tidy up new functions: process_checks and fix_sync_read_error. md/raid1: split out two sub-functions from sync_request_write md: make error_handler functions more uniform and correct. md/multipath: discard ->working_disks in favour of ->degraded md/raid1: clean up read_balance. md: simplify raid10 read_balance md/bitmap: fix saving of events_cleared and other state. md: reject a re-add request that cannot be honoured. md: Fix race when creating a new md device. commit bdfbe804c2303cb4b178bb4b5c3e855892472033 Author: Randy Dunlap Date: Sun May 22 17:22:45 2011 -0700 wireless: fix fatal kernel-doc error + warning in mac80211.h Fix new kernel-doc Error and Warning in : Error(linux-2.6.39-git5/include/net/mac80211.h:550): cannot understand prototype: 'struct ieee80211_sched_scan_ies ' Warning(linux-2.6.39-git5/include/net/mac80211.h:2289): No description found for parameter 'sta' Signed-off-by: Randy Dunlap Signed-off-by: Linus Torvalds commit 82da65dab5f438ac7df28eeb43e2f5b742aa00ef Author: Linus Torvalds Date: Sun May 22 21:37:01 2011 -0700 x86: setup_smep needs to be __cpuinit The setup_smep function gets calle at resume time too, and is thus not a pure __init function. When marked as __init, it gets thrown out after the kernel has initialized, and when the kernel is suspended and resumed, the code will no longer be around, and we'll get a nice "kernel tried to execute NX-protected page" oops because the page is no longer marked executable. Reported-and-tested-by: Parag Warudkar Cc: Fenghua Yu Cc: "H. Peter Anvin" Cc: Ingo Molnar Signed-off-by: Linus Torvalds commit a1e4891fd48d298870b704c6eb48cba0da5ed6b1 Author: Linus Torvalds Date: Sun May 22 16:51:43 2011 -0700 Remove prefetch() from and "netlabel_addrlist.h" Commit e66eed651fd1 ("list: remove prefetching from regular list iterators") removed the include of prefetch.h from list.h. The skbuff list traversal still had them. Quoth David Miller: "Please just remove the prefetches. Those are modelled after list.h as I intend to eventually convert SKB list handling to "struct list_head" but we're not there yet. Therefore if we kill prefetches from list.h we should kill it from these things in skbuff.h too." Requested-by: David Miller Signed-off-by: Linus Torvalds commit 70c71606190e9115e5f8363bfcd164c582eb314a Author: Paul Gortmaker Date: Sun May 22 16:47:17 2011 -0400 Add appropriate include for prefetch users After discovering that wide use of prefetch on modern CPUs could be a net loss instead of a win, net drivers which were relying on the implicit inclusion of prefetch.h via the list headers showed up in the resulting cleanup fallout. Give them an explicit include via the following $0.02 script. ========================================= #!/bin/bash MANUAL="" for i in `git grep -l 'prefetch(.*)' .` ; do grep -q '' $i if [ $? = 0 ] ; then continue fi ( echo '?^#include ' echo . echo w echo q ) | ed -s $i > /dev/null 2>&1 if [ $? != 0 ]; then echo $i needs manual fixup MANUAL="$i $MANUAL" fi done echo ------------------- 8\<---------------------- echo vi $MANUAL ========================================= Signed-off-by: Paul [ Fixed up some incorrect #include placements, and added some non-network drivers and the fib_trie.c case - Linus ] Signed-off-by: Linus Torvalds commit f400bdb1d6de4344980cf39041497b288090dd33 Author: Sam Ravnborg Date: Sat May 21 22:55:17 2011 +0200 sparc32: fix build, fix missing cpu_relax declaration Fix following sparc (32 bit) build error: CC arch/sparc/kernel/asm-offsets.s In file included from include/linux/seqlock.h:29:0, from include/linux/time.h:8, from include/linux/timex.h:56, from include/linux/sched.h:57, from arch/sparc/kernel/asm-offsets.c:13: include/linux/spinlock.h: In function 'spin_unlock_wait': include/linux/spinlock.h:360:2: error: implicit declaration of function 'cpu_relax' Most likely caused by commit e66eed651fd1 ("list: remove prefetching from regular list iterators") due to include changes. Signed-off-by: Sam Ravnborg Cc: Stephen Rothwell Signed-off-by: David S. Miller commit 31705e21f9b5a0628c043f88ff4d20488b47b8ab Author: Guennadi Liakhovetski Date: Mon May 2 07:59:02 2011 +0000 dmaengine: shdma: synchronize RCU before freeing, simplify spinlock List elements, deleted using list_del_rcu(), cannot be freed without synchronising RCU. Further, the spinlock, used to protect the RCU writer, is called in process context, so, we don't have to save flags. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 467017b83b5bc445be5d275cf727b4f7ba3d2b2d Author: Guennadi Liakhovetski Date: Fri Apr 29 17:09:25 2011 +0000 dmaengine: shdma: add runtime- and system-level power management This patch extends and fixes runtime power management in the shdma driver to support powering down the DMA controller and adds support for system-level suspend and resume. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 2dc666673b5a39d005579a0ef63ae69b5094e686 Author: Guennadi Liakhovetski Date: Fri Apr 29 17:09:21 2011 +0000 dmaengine: shdma: fix locking Close multiple theoretical races, especially the one in .device_free_chan_resources(). Signed-off-by: Guennadi Liakhovetski Signed-off-by: Paul Mundt commit 5b02c51af48d6bd78e53c1e95196ce3a3572fad9 Author: Magnus Damm Date: Thu Apr 28 03:10:35 2011 +0000 sh: sh-sci: sh7377 and sh73a0 build fixes Fix sh7377 and sh73a0 build failure: drivers/tty/serial/sh-sci.c: In function 'scif_txfill': drivers/tty/serial/sh-sci.c:338: error: implicit declaration of function 'sci_SCTFDR_in' drivers/tty/serial/sh-sci.c: In function 'scif_rxfill': drivers/tty/serial/sh-sci.c:351: error: implicit declaration of function 'sci_SCRFDR_in' make[3]: *** [drivers/tty/serial/sh-sci.o] Error 1 make[2]: *** [drivers/tty/serial] Error 2 make[1]: *** [drivers/tty] Error 2 make: *** [drivers] Error 2 Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 3e4cd0737d2e9c3dd52153a23aef1753e3a99fc4 Author: Guennadi Liakhovetski Date: Fri Apr 15 18:05:27 2011 +0000 sh: cosmetic improvement: use an existing pointer Use an existing local variable, instead of calculating the pointer multiple times explicitly. Signed-off-by: Guennadi Liakhovetski Cc: Simon Horman Cc: Magnus Damm Reviewed-by: Simon Horman Signed-off-by: Paul Mundt commit 54aa89ea29d7dd7fd414297d4bdc8f6eff905784 Author: Magnus Damm Date: Thu Apr 21 13:08:46 2011 +0000 serial: sh-sci: suspend/resume wakeup support V2 This patch adds wakeup support to the sh-sci driver. The serial core deals with all details but defaults to wakeup disabled. So to make use of this feature enable wakeup in sysfs: echo enabled > /sys/class/tty/ttySC0/power/wakeup Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 5e50d2d622c745d4439fc9a33d932cc3add2318f Author: Magnus Damm Date: Tue Apr 19 10:38:25 2011 +0000 serial: sh-sci: Runtime PM support Add support for Runtime PM in the sh-sci driver. Signed-off-by: Magnus Damm Signed-off-by: Paul Mundt commit 59ffd84141472c45a1729a739e4730f974d26e63 Author: Jeff Layton Date: Thu May 19 16:22:55 2011 -0400 cifs: add ignore_pend flag to cifs_call_async The current code always ignores the max_pending limit. Have it instead only optionally ignore the pending limit. For CIFSSMBEcho, we need to ignore it to make sure they always can go out. For async reads, writes and potentially other calls, we need to respect it. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit fcc31cb6f1ae6c4e64a463b124d3c2e9cbd7dd70 Author: Jeff Layton Date: Thu May 19 16:22:53 2011 -0400 cifs: make cifs_send_async take a kvec array We'll need this for async writes, so convert the call to take a kvec array. CIFSSMBEcho is changed to put a kvec on the stack and pass in the SMB buffer using that. Reviewed-by: Pavel Shilovsky Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 2c8f981d93f830c167c811f046b5107cc24b6e1b Author: Jeff Layton Date: Thu May 19 16:22:52 2011 -0400 cifs: consolidate SendReceive response checks Further consolidate the SendReceive code by moving the checks run over the packet into a separate function that all the SendReceive variants can call. We can also eliminate the check for a receive_len that's too big or too small. cifs_demultiplex_thread already checks that and disconnects the socket if that occurs, while setting the midStatus to MALFORMED. It'll never call this code if that's the case. Finally do a little cleanup. Use "goto out" on errors so that the flow of code in the normal case is more evident. Also switch the logErr variable in map_smb_to_linux_error to a bool. Reviewed-by: Pavel Shilovsky Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 972b1943becc2dd4335c1b9d8ecd07c5ad44dd88 Merge: 8ace5c4 ed17092 Author: Paul Mundt Date: Mon May 23 11:36:14 2011 +0900 Merge branch 'sh/genirq-threading' into sh-latest commit 8ace5c4698ec8da53e69095596718d5a936433de Merge: a375b15 71a8638 Author: Paul Mundt Date: Mon May 23 11:35:33 2011 +0900 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into sh-latest commit 28e35e42fb255cbaeee8b9f89643f26fe376374d Author: Tao Ma Date: Sun May 22 21:45:26 2011 -0400 jbd2: Fix the wrong calculation of t_max_wait in update_t_max_wait t_max_wait is added in commit 8e85fb3f to indicate how long we were waiting for new transaction to start. In commit 6d0bf005, it is moved to another function named update_t_max_wait to avoid a build warning. But the wrong thing is that the original 'ts' is initialized in the start of function start_this_handle and we can calculate t_max_wait in the right way. while with this change, ts is initialized within the function and t_max_wait can never be calculated right. This patch moves the initialization of ts to the original beginning of start_this_handle and pass it to function update_t_max_wait so that it can be calculated right and the build warning is avoided also. Cc: Jan Kara Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" Reviewed-by: Eric Sandeen commit f6d2f6b327ceef5c689581529a852dc6ec3b74a6 Author: Eric Gouriou Date: Sun May 22 21:33:00 2011 -0400 ext4: fix unbalanced up_write() in ext4_ext_truncate() error path ext4_ext_truncate() should not invoke up_write(&EXT4_I(inode)->i_data_sem) when ext4_orphan_add() returns an error, as it hasn't performed a down_write() yet. This trivial patch fixes this by moving the up_write() invocation above the out_stop label. Signed-off-by: Eric Gouriou Signed-off-by: "Theodore Ts'o" commit 77f4135f2a219a2127be6cc1208c42e6175b11dd Author: Vivek Haldar Date: Sun May 22 21:24:16 2011 -0400 ext4: count hits/misses of extent cache and expose in sysfs The number of hits and misses for each filesystem is exposed in /sys/fs/ext4//extent_cache_{hits, misses}. Tested: fsstress, manual checks. Signed-off-by: Vivek Haldar Signed-off-by: "Theodore Ts'o" commit 1b6e2ceb4745b5838cb94463131d19dbea6cf0e3 Author: Dmitry Kravkov Date: Sun May 22 10:11:26 2011 +0000 bnx2x: allow device properly initialize after hotplug Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 5e374b5aeb9a030c1859b3054e3b36dea3b29cfc Author: Dmitry Kravkov Date: Sun May 22 10:09:19 2011 +0000 bnx2x: fix DMAE timeout according to hw specifications Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit c3a8ce6145cfcfce192513187000cd723313d94f Author: Vladislav Zolotarov Date: Sun May 22 10:08:09 2011 +0000 bnx2x: properly handle CFC DEL in cnic flow Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 40955532bc9d865999dfc58b7896605d58650655 Author: Vladislav Zolotarov Date: Sun May 22 10:06:58 2011 +0000 bnx2x: call dev_kfree_skb_any instead of dev_kfree_skb replace function calls when possible call in both irq/non-irq contexts Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 792d4b5cb16b684958c2590f77688667ddec1f61 Author: Heiko Carstens Date: Sun May 22 07:08:11 2011 +0000 net: filter: move forward declarations to avoid compile warnings Get rid of this compile warning: In file included from arch/s390/kernel/compat_linux.c:37:0: include/linux/filter.h:139:23: warning: 'struct sk_buff' declared inside parameter list Signed-off-by: Heiko Carstens Signed-off-by: David S. Miller commit ce14f8946a294ffa741ec29558a1c7e455cecd3b Author: WANG Cong Date: Sun May 22 00:52:08 2011 +0000 pktgen: refactor pg_init() code This also shrinks the object size a little. text data bss dec hex filename 28834 186 8 29028 7164 net/core/pktgen.o 28816 186 8 29010 7152 net/core/pktgen.o.AFTER Signed-off-by: WANG Cong Cc: "David Miller" , Signed-off-by: David S. Miller commit 68d5ac2ed6180567407e4187e206df3ba6466373 Author: WANG Cong Date: Sun May 22 00:17:11 2011 +0000 pktgen: use vzalloc_node() instead of vmalloc_node() + memset() Signed-off-by: WANG Cong Cc: "David S. Miller" Signed-off-by: David S. Miller commit c4264f27e83968ddfe3f0cfe7a33adfb320e1e42 Author: Emmanuel Grumbach Date: Sat May 21 19:46:09 2011 +0000 net: skb_trim explicitely check the linearity instead of data_len The purpose of the check on data_len is to check linearity, so use the inline helper for this. No overhead and more explicit. Signed-off-by: Emmanuel Grumbach Signed-off-by: David S. Miller commit c378a9c019cf5e017d1ed24954b54fae7bebd2bc Author: Dave Jones Date: Sat May 21 07:16:42 2011 +0000 ipv4: Give backtrace in ip_rt_bug(). Add a stack backtrace to the ip_rt_bug path for debugging Signed-off-by: Dave Jones Signed-off-by: David S. Miller commit 3137663dfb43bb3e3174e9da81db0c05f395fc1b Author: Eric Dumazet Date: Thu May 19 23:42:09 2011 +0000 net: avoid synchronize_rcu() in dev_deactivate_many dev_deactivate_many() issues one synchronize_rcu() call after qdiscs set to noop_qdisc. This call is here to make sure they are no outstanding qdisc-less dev_queue_xmit calls before returning to caller. But in dismantle phase, we dont have to wait, because we wont activate again the device, and we are going to wait one rcu grace period later in rollback_registered_many(). After this patch, device dismantle uses one synchronize_net() and one rcu_barrier() call only, so we have a ~30% speedup and a smaller RTNL latency. Signed-off-by: Eric Dumazet CC: Patrick McHardy , CC: Ben Greear Signed-off-by: David S. Miller commit 6df427fe8c481d3be437cbe8bd366bdac82b73c4 Author: Eric Dumazet Date: Thu May 19 19:37:40 2011 +0000 net: remove synchronize_net() from netdev_set_master() In the old days, we used to access dev->master in __netif_receive_skb() in a rcu_read_lock section. So one synchronize_net() call was needed in netdev_set_master() to make sure another cpu could not use old master while/after we release it. We now use netdev_rx_handler infrastructure and added one synchronize_net() call in bond_release()/bond_release_all() Remove the obsolete synchronize_net() from netdev_set_master() and add one in bridge del_nbp() after its netdev_rx_handler_unregister() call. This makes enslave -d a bit faster. Signed-off-by: Eric Dumazet CC: Jiri Pirko CC: Stephen Hemminger Signed-off-by: David S. Miller commit ac3d3f81516fcbf80416e84682fd4bdaf3080611 Author: Amerigo Wang Date: Thu May 19 23:06:32 2011 +0000 rtnetlink: ignore NETDEV_RELEASE and NETDEV_JOIN event These two events are not expected to be caught by userspace. Signed-off-by: WANG Cong Signed-off-by: David S. Miller commit daf9209bb2c8b07ca025eac82e3d175534086c77 Author: Amerigo Wang Date: Thu May 19 21:39:12 2011 +0000 net: rename NETDEV_BONDING_DESLAVE to NETDEV_RELEASE s/NETDEV_BONDING_DESLAVE/NETDEV_RELEASE/ as Andy suggested. Signed-off-by: WANG Cong Cc: Andy Gospodarek Cc: Neil Horman Signed-off-by: David S. Miller commit bb8ed6302b0613339c1a5f0a2cb0b3807c0af611 Author: Amerigo Wang Date: Thu May 19 21:39:11 2011 +0000 bridge: call NETDEV_JOIN notifiers when add a slave In the previous patch I added NETDEV_JOIN, now we can notify netconsole when adding a device to a bridge too. Signed-off-by: WANG Cong Cc: Neil Horman Signed-off-by: David S. Miller commit 8d8fc29d02a33e4bd5f4fa47823c1fd386346093 Author: Amerigo Wang Date: Thu May 19 21:39:10 2011 +0000 netpoll: disable netpoll when enslave a device V3: rename NETDEV_ENSLAVE to NETDEV_JOIN Currently we do nothing when we enslave a net device which is running netconsole. Neil pointed out that we may get weird results in such case, so let's disable netpoll on the device being enslaved. I think it is too harsh to prevent the device being ensalved if it is running netconsole. By the way, this patch also removes the NETDEV_GOING_DOWN from netconsole netdev notifier, because netpoll will check if the device is running or not and we don't handle NETDEV_PRE_UP neither. This patch is based on net-next-2.6. Signed-off-by: WANG Cong Cc: Neil Horman Signed-off-by: David S. Miller commit a37dd3332319260cce81ac91ce25fcc3a31de997 Author: David Ward Date: Thu May 19 02:53:20 2011 +0000 macvlan: Forward unicast frames in bridge mode to lowerdev Unicast frames between macvlan interfaces in bridge mode are not otherwise sent to network taps on the lowerdev (as all other macvlan frames are), so forward the frames to the receive queue of the lowerdev first. Signed-off-by: David Ward Signed-off-by: David S. Miller commit 67f11f4deda0818640decb19a28c537dbe5d429e Author: David S. Miller Date: Sun May 22 20:54:11 2011 -0400 net: Remove linux/prefetch.h include from linux/skbuff.h No longer needed. Signed-off-by: David S. Miller commit 120a3d5c7c1f37752e7956d296a4f031f38cb217 Author: David S. Miller Date: Sun May 22 20:53:43 2011 -0400 ipv4: Include linux/prefetch.h in fib_trie.c Signed-off-by: David S. Miller commit 93917411be8db5d21abf15c781dfa43c5cc6edf2 Author: Yongqiang Yang Date: Sun May 22 20:49:12 2011 -0400 ext4: make ext4_split_extent() handle error correctly Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" Reviewed-by: Mingming Cao commit 474b4c4ff007c992ea7dc88ba2605aa124f8bafb Author: David S. Miller Date: Sun May 22 20:42:10 2011 -0400 netlabel: Remove prefetches from list handlers. Signed-off-by: David S. Miller commit c0cba59e77b5640912a331566bbfa66ae5029f37 Author: Paul Gortmaker Date: Sun May 22 11:02:08 2011 +0000 drivers/net: add prefetch header for prefetch users After discovering that wide use of prefetch on modern CPUs could be a net loss instead of a win, net drivers which were relying on the implicit inclusion of prefetch.h via the list headers showed up in the resulting cleanup fallout. Give them an explicit include via the following $0.02 script. ========================================= #!/bin/bash MANUAL="" for i in `git grep -l 'prefetch(.*)' .` ; do grep -q '' $i if [ $? = 0 ] ; then continue fi ( echo '?^#include ' echo . echo w echo q ) | ed -s $i > /dev/null 2>&1 if [ $? != 0 ]; then echo $i needs manual fixup MANUAL="$i $MANUAL" fi done echo ------------------- 8\<---------------------- echo vi $MANUAL ========================================= Signed-off-by: Paul Signed-off-by: David S. Miller commit 8df8a47538ac2e26f07efabc8793c06e96a35226 Author: David S. Miller Date: Sun May 22 20:35:54 2011 -0400 rionet: Remove pointless printk of skb pointer. Casting to u32 warns anyways. Signed-off-by: David S. Miller commit 0fcbe742eaac14bd5032b369c09e9d94be9058ad Author: David S. Miller Date: Sun May 22 20:35:29 2011 -0400 net: Remove prefetches from SKB list handlers. Noticed by Linus. Signed-off-by: David S. Miller commit 69c867c90c7fe0773d9aa4e8bbf777f574be13d2 Author: sjur.brandeland@stericsson.com Date: Sun May 22 11:18:54 2011 +0000 caif: Plug memory leak for checksum error In case of checksum error, the framing layer returns -EILSEQ, but does not free the packet. Plug this hole by freeing the packet if -EILSEQ is returned. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 138eded8ba1227261a297b32b7940664c14d193e Author: sjur.brandeland@stericsson.com Date: Sun May 22 11:18:53 2011 +0000 caif: Update documentation of CAIF transmit and receive functions. Trivial patch updating documentation in header files only. Error handling of CAIF transmit errors was changed by commit: caif: Don't resend if dev_queue_xmit fails. This patch updates the documentation accordingly. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 96796ea8b6b1221c7cacf68ce056d77eff0a793d Author: sjur.brandeland@stericsson.com Date: Sun May 22 11:18:52 2011 +0000 caif: Fix freezes when running CAIF loopback device Fix spinlock bugs when running out of link-ids in loopback tests and avoid allocating link-id when error is set in link-setup-response. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 54e90fb5ca8050156d3e748ddc690ed6ea9d71ac Author: sjur.brandeland@stericsson.com Date: Sun May 22 11:18:51 2011 +0000 caif: Fixes freeze on Link layer removal. CAIF Socket layer - caif_socket.c: - Plug mem-leak at reconnect. - Always call disconnect to cleanup CAIF stack. - Disconnect will always report success. CAIF configuration layer - cfcnfg.c - Disconnect must dismantle the caif stack correctly - Protect against faulty removals (check on id zero) CAIF mux layer - cfmuxl.c - When inserting new service layer in the MUX remove any old entries with the same ID. - When removing CAIF Link layer, remove the associated service layers before notifying service layers. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 0e5a117441ce245b87949cc7713627a293f37227 Author: sjur.brandeland@stericsson.com Date: Sun May 22 11:18:50 2011 +0000 caif: Bugfix add check NULL pointer before calling functions. Add check on layer->dn != NULL before calling functions in layer below. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 281dc5c5ec0fb299514567cbc358562649c1af95 Author: Linus Torvalds Date: Sun May 22 14:30:36 2011 -0700 Give up on pushing CC_OPTIMIZE_FOR_SIZE I still happen to believe that I$ miss costs are a major thing, but sadly, -Os doesn't seem to be the solution. With or without it, gcc will miss some obvious code size improvements, and with it enabled gcc will sometimes make choices that aren't good even with high I$ miss ratios. For example, with -Os, gcc on x86 will turn a 20-byte constant memcpy into a "rep movsl". While I sincerely hope that x86 CPU's will some day do a good job at that, they certainly don't do it yet, and the cost is higher than a L1 I$ miss would be. Some day I hope we can re-enable this. Signed-off-by: Linus Torvalds commit 373cd5c53d5ea6622c319ecd84e29e2737d488bd Author: Theodore Ts'o Date: Sun May 22 16:12:35 2011 -0400 ext4: don't show mount options in /proc/mounts if there is no journal After creating an ext4 file system without a journal: # mke2fs -t ext4 -O ^has_journal /dev/sda # mount -t ext4 /dev/sda /test the /proc/mounts will show: "/dev/sda /test ext4 rw,relatime,user_xattr,acl,barrier=1,data=writeback 0 0" which can fool users into thinking that the fs is using writeback mode. So don't set the writeback option when the journal has not been enabled; we don't depend on the writeback option being set, since ext4_should_writeback_data() in ext4_jbd2.h tests to see if the journal is not present before returning true. Reported-by: Robin Dong Signed-off-by: "Theodore Ts'o" commit 71a8638480eb8fb6cfabe2ee9ca3fbc6e3453a14 Merge: 1723800 8aa4d96 Author: Linus Torvalds Date: Sun May 22 12:39:58 2011 -0700 Merge branch 'viafb-next' of git://github.com/schandinat/linux-2.6 * 'viafb-next' of git://github.com/schandinat/linux-2.6: (24 commits) viafb: Automatic OLPC XO-1.5 configuration viafb: remove unused CEA mode viafb: try to map less memory in case of failure viafb: use write combining for video ram viafb: add X server compatibility mode viafb: reduce OLPC refresh a bit viafb: fix OLPC XO 1.5 device connection viafb: fix OLPC DCON refresh rate viafb: delete clock and PLL initialization viafb: replace custom return values viafb: some small cleanup for global variables viafb: gather common good, old VGA initialization in one place viafb: add engine clock support viafb: add VIA slapping capability viafb: split clock and PLL code to an extra file viafb: add primary/secondary clock on/off switches viafb: add clock source selection and PLL power management support viafb: prepare for PLL separation viafb: call viafb_get_clk_value only in viafb_set_vclock viafb: remove unused max_hres/vres ... commit 17238005f377888b9d4583835205c77e3d781bb8 Merge: 34ea646 7fe2ac6 Author: Linus Torvalds Date: Sun May 22 12:38:40 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6: [PARISC] wire up syncfs syscall [PARISC] wire up the fhandle syscalls [PARISC] wire up clock_adjtime syscall [PARISC] wire up fanotify syscalls [PARISC] prevent speculative re-read on cache flush [PARISC] only make executable areas executable [PARISC] fix pacache .size with new binutils commit 9ce6e0be0626a5de2aca8b769a4aa57086257156 Author: Heiko Carstens Date: Sun May 22 18:54:21 2011 +0200 fs: add missing prefetch.h include Fixes this build error on s390 and probably other archs as well: fs/inode.c: In function 'new_inode': fs/inode.c:894:2: error: implicit declaration of function 'spin_lock_prefetch' Signed-off-by: Heiko Carstens [ Happens on architectures that don't define their own prefetch functions in , and instead rely on the default ones in - Linus] Signed-off-by: Linus Torvalds commit 34ea646c9f8c18fd2e4332ff3b2b509f878c56f1 Author: Heiko Carstens Date: Sun May 22 18:55:10 2011 +0200 net: add missing prefetch.h include Fixes build errors on s390 and probably other archs as well: In file included from net/ipv4/ip_forward.c:32:0: include/net/udp.h: In function 'udp_csum_outgoing': include/net/udp.h:141:2: error: implicit declaration of function 'prefetch' Signed-off-by: Heiko Carstens Signed-off-by: Linus Torvalds commit aa2dfb372a2a647beedac163ce6f8b0fcbefac29 Merge: 945d896 73c5de0 Author: Chris Mason Date: Sun May 22 12:36:34 2011 -0400 Merge branch 'allocator' of git://git.kernel.org/pub/scm/linux/kernel/git/arne/btrfs-unstable-arne into inode_numbers Signed-off-by: Chris Mason commit 945d8962ceee6bb273365d0bdf42f763225b290f Merge: 0d0ca30 4ea0288 Author: Chris Mason Date: Sun May 22 12:33:42 2011 -0400 Merge branch 'cleanups' of git://repo.or.cz/linux-2.6/btrfs-unstable into inode_numbers Conflicts: fs/btrfs/extent-tree.c fs/btrfs/free-space-cache.c fs/btrfs/inode.c fs/btrfs/tree-log.c Signed-off-by: Chris Mason commit c8cfbb555eb3632bf3dcbe1a591c1f4d0c28681c Author: Takuya Yoshikawa Date: Sun May 1 14:33:07 2011 +0900 KVM: MMU: Use ptep_user for cmpxchg_gpte() The address of the gpte was already calculated and stored in ptep_user before entering cmpxchg_gpte(). This patch makes cmpxchg_gpte() to use that to make it clear that we are using the same address during walk_addr_generic(). Note that the unlikely annotations are used to show that the conditions are something unusual rather than for performance. Signed-off-by: Takuya Yoshikawa Signed-off-by: Marcelo Tosatti commit 85722cda308c0ad7390dc910139b2ce58c11b9c4 Author: OGAWA Hirofumi Date: Wed May 11 09:28:28 2011 +0900 KVM: Fix kvm mmu_notifier initialization order Like the following, mmu_notifier can be called after registering immediately. So, kvm have to initialize kvm->mmu_lock before it. BUG: spinlock bad magic on CPU#0, kswapd0/342 lock: ffff8800af8c4000, .magic: 00000000, .owner: /-1, .owner_cpu: 0 Pid: 342, comm: kswapd0 Not tainted 2.6.39-rc5+ #1 Call Trace: [] spin_bug+0x9c/0xa3 [] do_raw_spin_lock+0x29/0x13c [] ? flush_tlb_others_ipi+0xaf/0xfd [] _raw_spin_lock+0x9/0xb [] kvm_mmu_notifier_clear_flush_young+0x2c/0x66 [kvm] [] __mmu_notifier_clear_flush_young+0x2b/0x57 [] page_referenced_one+0x88/0xea [] page_referenced+0x1fc/0x256 [] shrink_page_list+0x187/0x53a [] shrink_inactive_list+0x1e0/0x33d [] ? determine_dirtyable_memory+0x15/0x27 [] ? call_function_single_interrupt+0xe/0x20 [] shrink_zone+0x322/0x3de [] ? zone_watermark_ok_safe+0xe2/0xf1 [] kswapd+0x516/0x818 [] ? shrink_zone+0x3de/0x3de [] kthread+0x7d/0x85 [] kernel_thread_helper+0x4/0x10 [] ? __init_kthread_worker+0x37/0x37 [] ? gs_change+0xb/0xb Signed-off-by: OGAWA Hirofumi Signed-off-by: Avi Kivity commit 76d25402dfc972a135a656613736fe3602045a95 Author: Pekka Enberg Date: Mon May 9 22:48:54 2011 +0300 KVM: Add documentation for KVM_CAP_NR_VCPUS Document KVM_CAP_NR_VCPUS that can be used by the userspace to determine maximum number of VCPUs it can create with the KVM_CREATE_VCPU ioctl. Cc: Avi Kivity Cc: Marcelo Tosatti Cc: Jan Kiszka Signed-off-by: Pekka Enberg Signed-off-by: Avi Kivity commit 8fa2206821953a50a3a02ea33fcfb3ced2fd9997 Author: Gleb Natapov Date: Wed May 4 16:31:04 2011 +0300 KVM: make guest mode entry to be rcu quiescent state KVM does not hold any references to rcu protected data when it switches CPU into a guest mode. In fact switching to a guest mode is very similar to exiting to userspase from rcu point of view. In addition CPU may stay in a guest mode for quite a long time (up to one time slice). Lets treat guest mode as quiescent state, just like we do with user-mode execution. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit e3aa52d665ec1a962d1cf025a2e5ee84b3b33406 Merge: d2f6276 29ce831 Author: Avi Kivity Date: Wed May 11 05:56:53 2011 -0400 Merge commit '29ce831000081dd757d3116bf774aafffc4b6b20' into next * commit '29ce831000081dd757d3116bf774aafffc4b6b20': (34 commits) rcu: provide rcu_virt_note_context_switch() function. rcu: get rid of signed overflow in check_cpu_stall() rcu: optimize rcutiny rcu: prevent call_rcu() from diving into rcu core if irqs disabled rcu: further lower priority in rcu_yield() rcu: introduce kfree_rcu() rcu: fix spelling rcu: call __rcu_read_unlock() in exit_rcu for tree RCU rcu: Converge TINY_RCU expedited and normal boosting rcu: remove useless ->boosted_this_gp field rcu: code cleanups in TINY_RCU priority boosting. rcu: Switch to this_cpu() primitives rcu: Use WARN_ON_ONCE for DEBUG_OBJECTS_RCU_HEAD warnings rcu: mark rcutorture boosting callback as being on-stack rcu: add DEBUG_OBJECTS_RCU_HEAD check for alignment rcu: Enable DEBUG_OBJECTS_RCU_HEAD from !PREEMPT rcu: Add forward-progress diagnostic for per-CPU kthreads rcu: add grace-period age and more kthread state to tracing rcu: fix tracing bug thinko on boost-balk attribution rcu: update tracing documentation for new rcutorture and rcuboost ... Pulling in rcu_virt_note_context_switch(). Signed-off-by: Avi Kivity * commit '29ce831000081dd757d3116bf774aafffc4b6b20': (34 commits) rcu: provide rcu_virt_note_context_switch() function. rcu: get rid of signed overflow in check_cpu_stall() rcu: optimize rcutiny rcu: prevent call_rcu() from diving into rcu core if irqs disabled rcu: further lower priority in rcu_yield() rcu: introduce kfree_rcu() rcu: fix spelling rcu: call __rcu_read_unlock() in exit_rcu for tree RCU rcu: Converge TINY_RCU expedited and normal boosting rcu: remove useless ->boosted_this_gp field rcu: code cleanups in TINY_RCU priority boosting. rcu: Switch to this_cpu() primitives rcu: Use WARN_ON_ONCE for DEBUG_OBJECTS_RCU_HEAD warnings rcu: mark rcutorture boosting callback as being on-stack rcu: add DEBUG_OBJECTS_RCU_HEAD check for alignment rcu: Enable DEBUG_OBJECTS_RCU_HEAD from !PREEMPT rcu: Add forward-progress diagnostic for per-CPU kthreads rcu: add grace-period age and more kthread state to tracing rcu: fix tracing bug thinko on boost-balk attribution rcu: update tracing documentation for new rcutorture and rcuboost ... commit d2f62766d5778bbaf80d4feb90a23c7edc371a54 Author: Takuya Yoshikawa Date: Mon May 2 02:30:48 2011 +0900 KVM: x86 emulator: Make jmp far emulation into a separate function We introduce em_jmp_far(). We also call this from em_grp45() to stop treating modrm_reg == 5 case separately in the group 5 emulation. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 51187683cb11b959535d32eb91b673c6a9a03e88 Author: Takuya Yoshikawa Date: Mon May 2 02:29:17 2011 +0900 KVM: x86 emulator: Rename emulate_grpX() to em_grpX() The prototypes are changed appropriately. We also replaces "goto grp45;" with simple em_grp45() call. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 3b9be3bf2e4d45828f84ba615283a53d11ebf470 Author: Takuya Yoshikawa Date: Mon May 2 02:27:55 2011 +0900 KVM: x86 emulator: Remove unused arg from emulate_pop() The opt of emulate_grp1a() is also removed. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit adddcecf9222aa32938480cc1d03de629fab2a86 Author: Takuya Yoshikawa Date: Mon May 2 02:26:23 2011 +0900 KVM: x86 emulator: Remove unused arg from writeback() Remove inline at this chance. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 509cf9fe11dad85f96944095ed63b2caa85cdfc9 Author: Takuya Yoshikawa Date: Mon May 2 02:25:07 2011 +0900 KVM: x86 emulator: Remove unused arg from read_descriptor() Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit c1ed6dea8113597cfa00911faa814d9dbb586932 Author: Takuya Yoshikawa Date: Mon May 2 02:23:13 2011 +0900 KVM: x86 emulator: Remove unused arg from seg_override() In addition, one comma at the end of a statement is replaced with a semicolon. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit fa3d315a4ce2c0891cdde262562e710d95fba19e Author: Takuya Yoshikawa Date: Sat May 7 16:35:38 2011 +0900 KVM: Validate userspace_addr of memslot when registered This way, we can avoid checking the user space address many times when we read the guest memory. Although we can do the same for write if we check which slots are writable, we do not care write now: reading the guest memory happens more often than writing. [avi: change VERIFY_READ to VERIFY_WRITE] Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 12cb814f3bb35736420cc6bfc9fed7b6a9d3a828 Author: Takuya Yoshikawa Date: Sat May 7 16:31:36 2011 +0900 KVM: MMU: Clean up gpte reading with copy_from_user() When we optimized walk_addr_generic() by not using the generic guest memory reader, we replaced copy_from_user() with get_user(): commit e30d2a170506830d5eef5e9d7990c5aedf1b0a51 KVM: MMU: Optimize guest page table walk commit 15e2ac9a43d4d7d08088e404fddf2533a8e7d52e KVM: MMU: Fix 64-bit paging breakage on x86_32 But as Andi pointed out later, copy_from_user() does the same as get_user() as long as we give a constant size to it. So we use copy_from_user() to clean up the code. The only, noticeable, regression introduced by this is 64-bit gpte reading on x86_32 hosts needed for PAE guests. But this can be mitigated by implementing 8-byte get_user() for x86_32, if needed. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 5ce941ee4258b836cf818d2ac159d8cf3ebad648 Author: Scott Wood Date: Wed Apr 27 17:24:21 2011 -0500 KVM: PPC: booke: add sregs support Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit eab176722f4628b2d9cf76221a43dd3a0e37e632 Author: Scott Wood Date: Wed Apr 27 17:24:10 2011 -0500 KVM: PPC: booke: save/restore VRSAVE (a.k.a. USPRG0) Linux doesn't use USPRG0 (now renamed VRSAVE in the architecture, even when Altivec isn't involved), but a guest might. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 1a040b26c5c915b317103b87ae7006d40443f197 Author: Stuart Yoder Date: Mon Mar 28 15:01:56 2011 -0500 KVM: PPC: use ticks, not usecs, for exit timing Convert to microseconds when displaying (with fix from Bharat Bhushan ). This reduces rounding error with large quantities of short exits. Signed-off-by: Stuart Yoder Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 49ea06957bf637b28aa338fba26432d5bafdeb99 Author: Scott Wood Date: Mon Mar 28 15:01:24 2011 -0500 KVM: PPC: fix exit accounting for SPRs, tlbwe, tlbsx The exit type setting for mfspr/mtspr is moved from 44x to toplevel SPR emulation. This enables it on e500, and makes sure that all SPRs are covered. Exit accounting for tlbwe and tlbsx is added to e500. Signed-off-by: Stuart Yoder Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 90d34b0e45df3bfe522e9e9d604c4c1a0253699d Author: Scott Wood Date: Tue Mar 29 16:49:10 2011 -0500 KVM: PPC: e500: emulate SVR Return the actual host SVR for now, as we already do for PVR. Eventually we may support Qemu overriding PVR/SVR if the situation is appropriate, once we implement KVM_SET_SREGS on e500. Signed-off-by: Scott Wood Signed-off-by: Alexander Graf commit 2fb92db1ec08f3235c500e7f460eeb78092d844e Author: Avi Kivity Date: Wed Apr 27 19:42:18 2011 +0300 KVM: VMX: Cache vmcs segment fields Since the emulator now checks segment limits and access rights, it generates a lot more accesses to the vmcs segment fields. Undo some of the performance hit by cacheing those fields in a read-only cache (the entire cache is invalidated on any write, or on guest exit). Signed-off-by: Avi Kivity commit 1aa366163b8b69f660cf94fd5062fa44859e4318 Author: Avi Kivity Date: Wed Apr 27 13:20:30 2011 +0300 KVM: x86 emulator: consolidate segment accessors Instead of separate accessors for the segment selector and cached descriptor, use one accessor for both. This simplifies the code somewhat. Signed-off-by: Avi Kivity commit 0a434bb2bf094f463ca3ca71ac42cea9e423048f Author: Avi Kivity Date: Thu Apr 28 15:59:33 2011 +0300 KVM: VMX: Avoid reading %rip unnecessarily when handling exceptions Avoids a VMREAD. Signed-off-by: Avi Kivity commit ae8cc059550b2c2ec7a5e9650bb1be7b988a1208 Author: Joe Perches Date: Sun Apr 24 22:00:50 2011 -0700 KVM: SVM: Make dump_vmcb static, reduce text dump_vmcb isn't used outside this module, make it static. Shrink text and object by ~1% by standardizing formats. $ size arch/x86/kvm/svm.o* text data bss dec hex filename 52910 580 10072 63562 f84a arch/x86/kvm/svm.o.new 53563 580 10072 64215 fad7 arch/x86/kvm/svm.o.old Signed-off-by: Joe Perches Acked-by: Joerg Roedel Signed-off-by: Avi Kivity commit 8f74d8e16812d63639871b4e56409b08bdcb66fc Author: Takuya Yoshikawa Date: Thu Apr 28 07:08:36 2011 +0900 KVM: MMU: Fix 64-bit paging breakage on x86_32 Fix regression introduced by commit e30d2a170506830d5eef5e9d7990c5aedf1b0a51 KVM: MMU: Optimize guest page table walk On x86_32, get_user() does not support 64-bit values and we fail to build KVM at the point of 64-bit paging. This patch fixes this by using get_user() twice for that condition. Signed-off-by: Takuya Yoshikawa Reported-by: Jan Kiszka Signed-off-by: Avi Kivity commit b74323dc2b7b5690d18bc7934b98e4665e778a7b Author: Jeff Mahoney Date: Wed Apr 27 14:06:07 2011 -0400 KVM: ia64: fix sparse warnings This patch fixes some sparse warning about "dubious one-bit signed bitfield." Signed-off-by: Jeff Mahoney Originally-by: Jan Blunck Signed-off-by: Jan Blunck Acked-by: Xiantao Zhang Signed-off-by: Avi Kivity commit 4429d5dc1197aaf8188e4febcde54d26a51baf6c Author: BrillyWu@viatech.com.cn Date: Mon Apr 25 13:55:15 2011 +0800 KVM: Add CPUID support for VIA CPU The CPUIDs for Centaur are added, and then the features of PadLock hardware engine on VIA CPU, such as "ace", "ace_en" and so on, can be passed into the kvm guest. Signed-off-by: Brilly Wu Signed-off-by: Kary Jin Signed-off-by: Avi Kivity commit 2aab2c5b2bac6510b3bd143ca83babee382f4302 Author: Gleb Natapov Date: Tue Apr 12 12:36:25 2011 +0300 KVM: call cache_all_regs() only once during instruction emulation Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 0004c7c25757f103ddb3a9e4bcfd533aad41f9a0 Author: Gleb Natapov Date: Tue Apr 12 12:36:24 2011 +0300 KVM: Fix compound mmio mmio_index should be taken into account when copying data from userspace. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 4947e7cd0ee36e1aa37dfec4f7fa71cc64a2f0fd Author: Gleb Natapov Date: Tue Apr 12 12:36:23 2011 +0300 KVM: emulator: Propagate fault in far jump emulation Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 8d7d810255982bfcc355cdb8972d72843acb0cf8 Author: Gleb Natapov Date: Tue Apr 12 12:36:21 2011 +0300 KVM: mmio_fault_cr2 is not used Remove unused variable mmio_fault_cr2. Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 46561646ce409ad96c22645362c113de04f60bfb Author: Avi Kivity Date: Sun Apr 24 14:09:59 2011 +0300 KVM: x86 emulator: consolidate group handling Move all groups into a single field and handle them in a single place. This saves bits when we add more group types (3 bits -> 7 groups types). Signed-off-by: Avi Kivity commit 781e0743af3c5ba356d55bc60df59f2dded1e938 Author: Avi Kivity Date: Sun Apr 24 12:25:50 2011 +0300 KVM: MMU: Add unlikely() annotations to walk_addr_generic() walk_addr_generic() is a hot path and is also hard for the cpu to predict - some of the parameters (fetch_fault in particular) vary wildly from invocation to invocation. Add unlikely() annotations where appropriate; all walk failures are considered unlikely, as are cases where we have to mark the accessed or dirty bit, as they are slow paths both in kvm and on real processors. Signed-off-by: Avi Kivity commit 62aaa2f05abd59598f132e6ebad86318291b5be0 Author: Takuya Yoshikawa Date: Sat Apr 23 18:52:56 2011 +0900 KVM: x86 emulator: Use opcode::execute for PUSHF/POPF (9C/9D) For this, em_pushf/popf() are introduced. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit b96a7fad020b42eb4a564f8a2fb41827a83c4375 Author: Takuya Yoshikawa Date: Sat Apr 23 18:51:07 2011 +0900 KVM: x86 emulator: Use opcode::execute for PUSHA/POPA (60/61) For this, emulate_pusha/popa() are converted to em_pusha/popa(). Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit c54fe504693204fa672b10a57c3d82a8c41e0b4e Author: Takuya Yoshikawa Date: Sat Apr 23 18:49:40 2011 +0900 KVM: x86 emulator: Use opcode::execute for POP reg (58-5F) In addition, the RET emulation is changed to call em_pop() to remove the pop_instruction label. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit d67fc27ae2bdc2d2fb6c8ec4238a12b502b95cc7 Author: Takuya Yoshikawa Date: Sat Apr 23 18:48:02 2011 +0900 KVM: x86 emulator: Use opcode::execute for Group 1, CMPS and SCAS The following instructions are changed to use opcode::execute. Group 1 (80-83) ADD (00-05), OR (08-0D), ADC (10-15), SBB (18-1D), AND (20-25), SUB (28-2D), XOR (30-35), CMP (38-3D) CMPS (A6-A7), SCAS (AE-AF) The last two do the same as CMP in the emulator, so em_cmp() is used. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 6e2ca7d1802bf8ed9908435e34daa116662e7790 Author: Takuya Yoshikawa Date: Fri Apr 22 00:34:44 2011 +0900 KVM: MMU: Optimize guest page table walk This patch optimizes the guest page table walk by using get_user() instead of copy_from_user(). With this patch applied, paging64_walk_addr_generic() has become about 0.5us to 1.0us faster on my Phenom II machine with NPT on. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 40e19b519caeb93def89c45082d776fccfb96dbb Author: Avi Kivity Date: Thu Apr 21 12:35:41 2011 +0300 KVM: SVM: Get rid of x86_intercept_map::valid By reserving 0 as an invalid x86_intercept_stage, we no longer need to store a valid flag in x86_intercept_map. Signed-off-by: Avi Kivity commit 5ef39c71d8398115245a5974b488f8703ba3a6b0 Author: Avi Kivity Date: Thu Apr 21 12:21:50 2011 +0300 KVM: x86 emulator: Use opcode::execute for 0F 01 opcode Signed-off-by: Avi Kivity commit 68152d88122b24fad0f5910f74efcd19120a19a8 Author: Avi Kivity Date: Thu Apr 21 12:17:13 2011 +0300 KVM: x86 emulator: Don't force #UD for 0F 01 /5 While it isn't defined, no need to force a #UD. If it becomes defined in the future this can cause wierd problems for the guest. Signed-off-by: Avi Kivity commit 26d05cc7403dfffbc5afd66a1292adfb7566e3ff Author: Avi Kivity Date: Thu Apr 21 12:07:59 2011 +0300 KVM: x86 emulator: move 0F 01 sub-opcodes into their own functions Signed-off-by: Avi Kivity commit d42244499f171a499aa6748bc52304bb40e68ecc Author: Randy Dunlap Date: Thu Apr 21 09:09:22 2011 -0700 KVM: x86 emulator: fix const value warning on i386 in svm insn RAX check arch/x86/kvm/emulate.c:2598: warning: integer constant is too large for 'long' type Signed-off-by: Randy Dunlap Signed-off-by: Avi Kivity commit cfb223753c3750b28103136ad4d51d1a3ae4d64b Author: Clemens Noss Date: Thu Apr 21 21:16:05 2011 +0200 KVM: x86 emulator: avoid calling wbinvd() macro Commit 0b56652e33c72092956c651ab6ceb9f0ad081153 fails to build: CC [M] arch/x86/kvm/emulate.o arch/x86/kvm/emulate.c: In function 'x86_emulate_insn': arch/x86/kvm/emulate.c:4095:25: error: macro "wbinvd" passed 1 arguments, but takes just 0 arch/x86/kvm/emulate.c:4095:3: warning: statement with no effect make[2]: *** [arch/x86/kvm/emulate.o] Error 1 make[1]: *** [arch/x86/kvm] Error 2 make: *** [arch/x86] Error 2 Work around this for now. Signed-off-by: Clemens Noss Signed-off-by: Avi Kivity commit a38f84ca8c6991925cb8bb6371ade8df9d3cc1e6 Author: Liu Yuan Date: Thu Apr 21 14:53:57 2011 +0800 KVM: ioapic: Fix an error field reference Function ioapic_debug() in the ioapic_deliver() misnames one filed by reference. This patch correct it. Signed-off-by: Liu Yuan Signed-off-by: Avi Kivity commit a78484c60e35555d6e0e5b1eb83d4913621c59fb Author: Roedel, Joerg Date: Wed Apr 20 15:33:16 2011 +0200 KVM: MMU: Make cmpxchg_gpte aware of nesting too This patch makes the cmpxchg_gpte() function aware of the difference between l1-gfns and l2-gfns when nested virtualization is in use. This fixes a potential data-corruption problem in the l1-guest and makes the code work correct (at least as correct as the hardware which is emulated in this code) again. Cc: stable@kernel.org Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 13db70eca62c5bbb2cbbf6b23dadb94065d363d1 Author: Avi Kivity Date: Wed Apr 20 15:56:20 2011 +0300 KVM: x86 emulator: drop x86_emulate_ctxt::vcpu No longer used. Signed-off-by: Avi Kivity commit 5197b808a7f459f9c7436573c7785ff3c1324c08 Author: Avi Kivity Date: Wed Apr 20 15:55:40 2011 +0300 KVM: Avoid using x86_emulate_ctxt.vcpu We can use container_of() instead. Signed-off-by: Avi Kivity commit bcaf5cc543bdb8f61fc3ce09944e0ecde2966595 Author: Avi Kivity Date: Wed Apr 20 15:53:23 2011 +0300 KVM: x86 emulator: add new ->wbinvd() callback Instead of calling kvm_emulate_wbinvd() directly. Signed-off-by: Avi Kivity commit d6aa10003b0cded5a538af0d198460e89dc2d6d2 Author: Avi Kivity Date: Wed Apr 20 15:47:13 2011 +0300 KVM: x86 emulator: add ->fix_hypercall() callback Artificial, but needed to remove direct calls to KVM. Signed-off-by: Avi Kivity commit 6c3287f7c5050076b554145f11bdba058de287d1 Author: Avi Kivity Date: Wed Apr 20 15:43:05 2011 +0300 KVM: x86 emulator: add new ->halt() callback Instead of reaching into vcpu internals. Signed-off-by: Avi Kivity commit 3cb16fe78ce91991a876c74fc5dc99419b737b7a Author: Avi Kivity Date: Wed Apr 20 15:38:44 2011 +0300 KVM: x86 emulator: make emulate_invlpg() an emulator callback Removing direct calls to KVM. Signed-off-by: Avi Kivity commit 2d04a05bd7e93c13f13a82ac40de4065a99d069b Author: Avi Kivity Date: Wed Apr 20 15:32:49 2011 +0300 KVM: x86 emulator: emulate CLTS internally Avoid using ctxt->vcpu; we can do everything with ->get_cr() and ->set_cr(). A side effect is that we no longer activate the fpu on emulated CLTS; but that should be very rare. Signed-off-by: Avi Kivity commit fd72c4192220d0086fb24356ac6ff9c3b1e067d9 Author: Avi Kivity Date: Wed Apr 20 15:24:32 2011 +0300 KVM: x86 emulator: Replace calls to is_pae() and is_paging with ->get_cr() Avoid use of ctxt->vcpu. Signed-off-by: Avi Kivity commit c2ad2bb3ef870067ecfc9ccdcf465feb51f2b6a5 Author: Avi Kivity Date: Wed Apr 20 15:21:35 2011 +0300 KVM: x86 emulator: drop use of is_long_mode() Requires ctxt->vcpu, which is to be abolished. Replace with open calls to get_msr(). Signed-off-by: Avi Kivity commit 1ac9d0cfb07e8ac3b5007d8279c5bd56e124250c Author: Avi Kivity Date: Wed Apr 20 15:12:00 2011 +0300 KVM: x86 emulator: add and use new callbacks set_idt(), set_gdt() Replacing direct calls to realmode_lgdt(), realmode_lidt(). Signed-off-by: Avi Kivity commit fe870ab9ce1c3e64c6d6b6ee3fe53d0d029f1044 Author: Avi Kivity Date: Wed Apr 20 15:01:23 2011 +0300 KVM: x86 emulator: avoid using ctxt->vcpu in check_perm() callbacks Unneeded for register access. Signed-off-by: Avi Kivity commit 2953538ebbd95b145bd3629126fe5af61b88be11 Author: Avi Kivity Date: Wed Apr 20 13:37:53 2011 +0300 KVM: x86 emulator: drop vcpu argument from intercept callback Making the emulator caller agnostic. Signed-off-by: Avi Kivity commit 717746e382e58f075642403eaac26bce0640b2c5 Author: Avi Kivity Date: Wed Apr 20 13:37:53 2011 +0300 KVM: x86 emulator: drop vcpu argument from cr/dr/cpl/msr callbacks Making the emulator caller agnostic. Signed-off-by: Avi Kivity commit 4bff1e86ad286d4b3a54902540abeeaf95e64db3 Author: Avi Kivity Date: Wed Apr 20 13:37:53 2011 +0300 KVM: x86 emulator: drop vcpu argument from segment/gdt/idt callbacks Making the emulator caller agnostic. [Takuya Yoshikawa: fix typo leading to LDT failures] Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 0d0ca30f180906224be6279788f2b202cfd959d8 Author: Chris Mason Date: Sun May 22 07:11:22 2011 -0400 Btrfs: update the delayed inode code to use the btrfs_ino helper. Signed-off-by: Chris Mason commit dcc6d073225b6b732a52477c91bd4edc9b4d5502 Merge: 0965537 16cdcec Author: Chris Mason Date: Sun May 22 07:07:01 2011 -0400 Merge branch 'delayed_inode' into inode_numbers Conflicts: fs/btrfs/inode.c fs/btrfs/ioctl.c fs/btrfs/transaction.c Signed-off-by: Chris Mason commit cde5083b051e9c66c99a8764aefbc13349e7730d Author: Dave Airlie Date: Thu May 19 14:14:41 2011 +1000 drm/radeon/kms: fix tile_config value reported to userspace on cayman. cayman is reporting the wrong tile config value to userspace, this causes piglit mipmap generation tests to fail. Reviewed-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit c289cff10a265ec4afe4396425297ff979a840b5 Author: Dave Airlie Date: Thu May 19 14:14:40 2011 +1000 drm/radeon/kms: fix incorrect comparison in cayman setup code. This was leading to a bogus value being programmed to the backend routing register. Reviewed-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit 97bfd0acd32e9639c9136e03955d574655d5cc2b Author: Dave Airlie Date: Thu May 19 14:14:43 2011 +1000 drm/radeon/kms: add wait idle ioctl for eg->cayman None of the latest GPUs had this hooked up, this is necessary for correct operation in a lot of cases, however we should test this on a few GPUs in these families as we've had problems in this area before. Reviewed-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit 0b65f83f9d2fab47b9b6040fe75fc2cfc73032d4 Author: Dave Airlie Date: Thu May 19 14:14:42 2011 +1000 drm/radeon/cayman: setup hdp to invalidate and flush when asked On cayman we need to set the bit to cause HDP flushes to invalidate the HDP cache also. Reviewed-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit f25a5c63bfa017498c9adecb24d649ae96ba5c68 Author: Alex Deucher Date: Thu May 19 11:07:57 2011 -0400 drm/radeon/evergreen/btc/fusion: setup hdp to invalidate and flush when asked This needs to be explicitly set on btc. It's set by default on evergreen/fusion, so it fine to just unconditionally enable it for all chips. Signed-off-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit 5613beb46d54da6ef7f1c4589e9f2e60eeb10721 Author: Michel Dänzer Date: Thu May 19 16:08:39 2011 +0200 agp/uninorth: Fix lockups with radeon KMS and >1x. This was based on a description by Ben Herrenschmidt: > I've removed that SBA reset from the normal TLB invalidation path and > left it only once after turning AGP on. About six months ago, he said: > I did it a bit differently, but yeah, you get the idea. I'm doing a > patch series so don't bother pushing things too hard yet. But I haven't seen anything from him about this since then, and people are regularly hitting these lockups, so here we are... Signed-off-by: Michel Dänzer Acked-by: Benjamin Herrenschmidt Signed-off-by: Dave Airlie commit 2307790f0c8dea7d8052805a8209fbd67e815e72 Author: Alex Deucher Date: Fri May 20 12:36:11 2011 -0400 drm/radeon/kms: the SS_Id field in the LCD table if for LVDS only For DP/eDP, always use the standard DP SS indices. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 6f15c506e0cec601fad9fabb7ded0d1811b8002f Author: Alex Deucher Date: Fri May 20 12:36:12 2011 -0400 drm/radeon/kms: properly set the CLK_REF bit for DCE3 devices If the ss clock is external, the CLK_REF bit needs to be set in the SetPixelClock parameters. This should fix DP failures in the channel equalization loop. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 1a8880a14270814dae0d226a2ad065d30587e60a Author: Suresh Siddha Date: Fri May 20 17:51:20 2011 -0700 x86, apic: Make apic drivers static Apic probe now looks at the apic drivers listed in the .apicdrivers section. Remove apic_probe[] and make each apic driver static. Signed-off-by: Suresh Siddha Tested-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: gorcunov@openvz.org Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110521005526.341718626@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 69c252ffce77f4e38347d536ee4eab4aa162dc67 Author: Suresh Siddha Date: Fri May 20 17:51:19 2011 -0700 x86, apic: Clean up bigsmp apic selection code Make generic_bigsmp_probe() return struct apic *. This will avoid exporting apic_bigsmp, which will be consistent with others. Signed-off-by: Suresh Siddha Tested-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: gorcunov@openvz.org Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110521005526.252703851@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 8b37e88061e229e78959fe3257649fd5ce05f8af Author: Suresh Siddha Date: Fri May 20 17:51:18 2011 -0700 x86, apic: Use .apicdrivers section for the apic drivers list This will eliminate the need for apic_probe[], as the probing now will happen based on the apic drivers order in the .apcidrivers section. Signed-off-by: Suresh Siddha Tested-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: gorcunov@openvz.org Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110521005526.164277071@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 107e0e0cd85beeee05af7ea374fda14d037ee500 Author: Suresh Siddha Date: Fri May 20 17:51:17 2011 -0700 x86, apic: Introduce .apicdrivers section to find the list of apic drivers This will pave the way for each apic driver to be self-contained and eliminate the need for apic_probe[]. Order in which apic drivers are listed in the .apicdrivers section is important, as this determines the apic probe order. And this is enforced by the ordering of apic driver files in the Makefile and the macros apic_driver()/apic_drivers(). Signed-off-by: Suresh Siddha Tested-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: gorcunov@openvz.org Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110521005526.068775085@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 3ac1bbcf13c56a19927df670f429eb0c3c11f8e5 Merge: a2d063a 5538bec Author: Ingo Molnar Date: Sun May 22 10:07:37 2011 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/urgent Conflicts: tools/perf/builtin-top.c Semantic conflict: util/include/linux/list.h # fix prefetch.h removal fallout Signed-off-by: Ingo Molnar commit f686c74cc3e78349d16d46fc72807354574b1516 Merge: 7ec298d 50e3bbf Author: Takashi Iwai Date: Sun May 22 10:01:35 2011 +0200 Merge branch 'topic/hda' into for-linus commit 7ec298dfef00e2c8effe8658011e03d86911b0bf Merge: 02e5fbf de0853c Author: Takashi Iwai Date: Sun May 22 10:01:33 2011 +0200 Merge branch 'topic/asoc' into for-linus commit 02e5fbf622aabf68bdc02282a17a3aeed054237a Merge: b759b3a bfe9fc8 Author: Takashi Iwai Date: Sun May 22 10:01:29 2011 +0200 Merge branch 'topic/misc' into for-linus commit b759b3ac9aee3afb01c21b603970ebb200c8048e Merge: e28fb9c f428c94 Author: Takashi Iwai Date: Sun May 22 10:01:22 2011 +0200 Merge branch 'topic/lola' into for-linus commit 7fe2ac6882f74e8bd5b3891f63c09cb10aee9d03 Merge: 2e7bad5 b7d4581 Author: James Bottomley Date: Sun May 22 11:04:55 2011 +0400 Merge branch 'flushing' into for-linus commit de0853c000aa3b5c9983d066c137e5dc9c8355a0 Merge: 2b39535 4a787a3 Author: Mark Brown Date: Sun May 22 10:31:51 2011 +0800 Merge branch 'topic/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.40 commit 2b39535b9e54888649923beaab443af212b6c0fd Author: Jarkko Nikula Date: Fri May 20 15:47:40 2011 +0300 ASoC: core: Don't set "(null)" as a driver name Commit 22de71b ("ASoC: core - allow ASoC more flexible machine name") writes "(null)" to driver name string in struct snd_card if card->driver_name is NULL. This causes segmentation faults with some user space ALSA utilities like aplay and arecord. Fix this by using the card->name if no driver name is specified. Signed-off-by: Jarkko Nikula Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 5538becaec9ca2ff21e7826372941dc46f498487 Author: Frederic Weisbecker Date: Sun May 22 02:17:22 2011 +0200 perf tools: Propagate event parse error handling Better handle event parsing error by propagating the details in upper layers or by dumping some failure message. So that the user knows he has some crazy events in the batch. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit 98e1da905cbe64bb023a165c7c01eef5e800609e Author: Frederic Weisbecker Date: Sat May 21 20:08:15 2011 +0200 perf tools: Robustify dynamic sample content fetch Ensure the size of the dynamic fields such as callchains or raw events don't overlap the whole event boundaries. This prevents from dereferencing junk if the given size of the callchain goes too eager. Reported-by: Linus Torvalds Reported-by: Ingo Molnar Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit a285412479b6d5af3e48273a92ec2f1987df8cd1 Author: Frederic Weisbecker Date: Sat May 21 19:33:04 2011 +0200 perf tools: Pre-check sample size before parsing Check that the total size of the sample fields having a fixed size do not exceed the one of the whole event. This robustifies the sample parsing. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit 74429964d8e29c0107fa6e9cdf35b8f33f57405d Author: Frederic Weisbecker Date: Sat May 21 17:49:00 2011 +0200 perf tools: Move evlist sample helpers to evlist area These APIs should belong to evlist.c as they may not be exclusively tied to the headers. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian Date: Sat May 21 17:07:24 2011 +0200 perf tools: Remove junk code in mmap size handling size is overriden later and used only then. Those lines are only junk, probably a leftover. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit eac9eacee1602710dda47c517ad0b61ac6f429bf Author: Frederic Weisbecker Date: Sat May 21 17:07:24 2011 +0200 perf tools: Check we are able to read the event size on mmap Check we have enough mmaped space to read the current event size from its headers, otherwise we may dereference some hell there. Signed-off-by: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Stephane Eranian commit dcb4a1f0e0367efb813907e5083998bbb98b0456 Merge: c21fd1a 105e53f Author: Linus Torvalds Date: Sat May 21 12:25:07 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: sbp2: parallelize login, reconnect, logout firewire: sbp2: octlet AT payloads can be stack-allocated firewire: sbp2: omit Scsi_Host lock from queuecommand firewire: core: use non-reentrant workqueue with rescuer firewire: optimize iso queueing by setting wake only after the last packet firewire: octlet AT payloads can be stack-allocated firewire: ohci: optimize find_branch_descriptor() firewire: ohci: avoid separate DMA mapping for small AT payloads firewire: ohci: do not start DMA contexts before link is enabled commit 9251bac97d47fdaea406ea0595c2d0aa50022f12 Author: Jean Delvare Date: Sun May 15 18:13:46 2011 +0200 PCI: Don't use dmi_name_in_vendors in quirk Don't use the costly dmi_name_in_vendors() when we know the string we are looking for can only be in the DMI board name field. This is more robust and, more importantly, much faster. Signed-off-by: Jean Delvare Signed-off-by: Jesse Barnes commit cbfddd20937ed890ce7027fa08a7c84e977128cf Author: Chen Gong Date: Fri May 20 13:36:01 2011 +0800 PCI: remove unused AER functions In the commit 28eb5f2, aer_osc_setup is removed but corresponding definiton information in the aerdrv.h is missed. Acked-by: Rafael J. Wysocki Signed-off-by: Chen Gong Signed-off-by: Jesse Barnes commit dc2c2c9dd513dec6c17df04e8abff795e20a5271 Author: Yinghai Lu Date: Thu May 12 17:11:40 2011 -0700 PCI/sysfs: move bus cpuaffinity to class dev_attrs Requested by Greg KH to fix a race condition in the creating of PCI bus cpuaffinity files. Acked-by: Greg Kroah-Hartman Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit b9d320fcb6259baffaeaf93a5fce252cd09333d6 Author: Yinghai Lu Date: Thu May 12 17:11:39 2011 -0700 PCI: add rescan to /sys/.../pci_bus/.../ After remove the device from /sys, we have to rescan all or find out the bridge and access /sys../device/rescan there. this patch add /sys/.../pci_bus/.../rescan. So user can rescan more easy. that is more clean and easy to understand. like after remove 0000:c4:00.0, you can rescan 0000:c4 directly. -v2: According to Jesse, use function instead of exposing attr, so could hide #ifdef in header file. also add code to remove rescan file in remove path. -v3: GregKH pointed out that we should use dev_attrs to avoid racing. So add pcibus_attrs and make it to be member of pcibus_attrs. -v4: Change name to pcibus_dev_attrs according to GregKH Acked-by: Greg Kroah-Hartman Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit da7822e5ad71ec9b745b412639f1e5e0ba795a20 Author: Yinghai Lu Date: Thu May 12 17:11:37 2011 -0700 PCI: update bridge resources to get more big ranges when allocating space (again) With Ram's fixes, this should be safe to do again. So let's give it another try. BIOS separates IO ranges between several IOHs, and on some slots, BIOS assigns resources to a bridge, but stops assigning resources to the device under that bridge, because the device needs a big resource. So: 1. allocate resources and record the failed device resources 2. clear the BIOS assigned resources of the parent bridge of failing device 3. go back and call pci assign unassigned 4. if it still fails, go up the tree, clear more bridges. and try again Now Ram's allocate requested resource already got into mainline. could put this one again. Reviewed-by: Ram Pai Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit f8fcfd775523347afe460dc3a0f45d0479e784a2 Author: Alex Williamson Date: Tue May 10 10:02:39 2011 -0600 KVM: Use pci_store/load_saved_state() around VM device usage Store the device saved state so that we can reload the device back to the original state when it's unassigned. This has the benefit that the state survives across pci_reset_function() calls via the PCI sysfs reset interface while the VM is using the device. Signed-off-by: Alex Williamson Acked-by: Avi Kivity Signed-off-by: Jesse Barnes commit ffbdd3f7931fb7cb7e36d00d16303ec433be5145 Author: Alex Williamson Date: Tue May 10 10:02:27 2011 -0600 PCI: Add interfaces to store and load the device saved state For KVM device assignment, we'd like to save off the state of a device prior to passing it to the guest and restore it later. We also want to allow pci_reset_funciton() to be called while the device is owned by the guest. This however overwrites and invalidates the struct pci_dev buffers, so we can't just manually call save and restore. Add generic interfaces for the saved state to be stored and reloaded back into struct pci_dev at a later time. Signed-off-by: Alex Williamson Signed-off-by: Jesse Barnes commit 24a4742f0be6226eb0106fbb17caf4d711d1ad43 Author: Alex Williamson Date: Tue May 10 10:02:11 2011 -0600 PCI: Track the size of each saved capability data area This will allow us to store and load it later. Signed-off-by: Alex Williamson Signed-off-by: Jesse Barnes commit 9f728f53dd70396f3183d2f0861022259471824b Author: Yinghai Lu Date: Thu May 12 17:11:47 2011 -0700 PCI/e1000e: Add and use pci_disable_link_state_locked() Need to use it in _e1000e_disable_aspm. This routine is used for error recovery, where the pci_bus_sem is already held, and we don't want pci_disable_link_state to try to take it again. So add a locked variant for use in cases like this. Found lock up: [ 2374.654557] kworker/32:1 D ffff881027f6b0f0 0 6075 2 0x00000000 [ 2374.654816] ffff88503f099a68 0000000000000046 ffff88503f098000 0000000000004000 [ 2374.654837] 00000000001d1ec0 ffff88503f099fd8 00000000001d1ec0 ffff88503f099fd8 [ 2374.654860] 0000000000004000 00000000001d1ec0 ffff88503dcc8000 ffff88503f090000 [ 2374.654880] Call Trace: [ 2374.654898] [] ? __lock_acquired+0x3a/0x224 [ 2374.654914] [] ? _raw_spin_unlock_irq+0x30/0x36 [ 2374.654925] [] ? trace_hardirqs_on_caller+0x1f/0x178 [ 2374.654936] [] rwsem_down_failed_common+0xd3/0x103 [ 2374.654945] [] ? __lock_contended+0x3a/0x2a2 [ 2374.654955] [] rwsem_down_read_failed+0x12/0x14 [ 2374.654967] [] call_rwsem_down_read_failed+0x14/0x30 [ 2374.654981] [] ? pci_disable_link_state+0x5f/0xf5 [ 2374.654990] [] ? down_read+0x7e/0x91 [ 2374.654999] [] ? pci_disable_link_state+0x5f/0xf5 [ 2374.655008] [] pci_disable_link_state+0x5f/0xf5 [ 2374.655024] [] e1000e_disable_aspm+0x55/0x5a [ 2374.655037] [] e1000_io_slot_reset+0x59/0xea [ 2374.655048] [] ? report_mmio_enabled+0x5d/0x5d [ 2374.655057] [] report_slot_reset+0x2e/0x5d [ 2374.655072] [] pci_walk_bus+0x8a/0xb7 [ 2374.655081] [] ? report_mmio_enabled+0x5d/0x5d [ 2374.655091] [] broadcast_error_message+0xa4/0xb2 [ 2374.655101] [] ? pci_bus_read_config_dword+0x72/0x80 [ 2374.655110] [] do_recovery+0x9e/0xf9 [ 2374.655120] [] handle_error_source+0x4c/0x51 [ 2374.655129] [] aer_isr_one_error+0x1e9/0x21a [ 2374.655138] [] aer_isr+0xc7/0xcc [ 2374.655147] [] ? aer_isr_one_error+0x21a/0x21a [ 2374.655159] [] process_one_work+0x237/0x3ec [ 2374.655168] [] ? process_one_work+0x1a8/0x3ec [ 2374.655178] [] worker_thread+0x17c/0x240 [ 2374.655186] [] ? trace_hardirqs_on+0xd/0xf [ 2374.655196] [] ? manage_workers+0xab/0xab [ 2374.655209] [] kthread+0xa0/0xa8 [ 2374.655223] [] kernel_thread_helper+0x4/0x10 [ 2374.655232] [] ? retint_restore_args+0xe/0xe [ 2374.655243] [] ? __init_kthread_worker+0x5b/0x5b [ 2374.655252] [] ? gs_change+0xb/0xb when aer happens, pci_walk_bus already have down_read(&pci_bus_sem)... then report_slot_reset ==> e1000_io_slot_reset ==> e1000e_disable_aspm ==> pci_disable_link_state... We can not use pci_disable_link_state, and it will try to hold pci_bus_sem again. Try to have __pci_disable_link_state that will not need to hold pci_bus_sem. -v2: change name to pci_disable_link_state_locked() according to Jesse. [jbarnes: make sure new function is exported for modules] Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit 26b06a6958df0f12f1a654db8598433eb89cc024 Author: Steven Whitehouse Date: Sat May 21 19:21:07 2011 +0100 GFS2: Wait properly when flushing the ail list The ail flush code has always relied upon log flushing to prevent it from spinning needlessly. This fixes it to wait on the last I/O request submitted (we don't need to wait for all of it) instead of either spinning with io_schedule or sleeping. As a result cpu usage of gfs2_logd is much reduced with certain workloads. Reported-by: Abhijith Das Tested-by: Abhijith Das Signed-off-by: Steven Whitehouse commit 6ec5ff4bc3a90b7716eadc4c8a686e904131f03a Author: Gustavo F. Padovan Date: Fri May 20 16:13:00 2011 -0300 x86: Eliminate various 'set but not used' warnings Signed-off-by: Gustavo F. Padovan Cc: Joerg Roedel (supporter:AMD IOMMU (AMD-VI)) Cc: iommu@lists.linux-foundation.org (open list:AMD IOMMU (AMD-VI)) Link: http://lkml.kernel.org/r/1305918786-7239-3-git-send-email-padovan@profusion.mobi Signed-off-by: Ingo Molnar commit a3170c1f924ce2565c4e160b9b095e65c03b2dc6 Author: Jan Beulich Date: Wed Feb 23 10:08:10 2011 +0000 x86/PCI: derive pcibios_last_bus from ACPI MCFG On various newer Intel systems the PCI bus(ses) the non-core devices live on aren't getting announced by ACPI except through the bus range covered by mmconfig. At least the i7core-edac driver depends on these devices getting detected. Mauro, could you check whether with this change the Xeon 55xx hack in that driver can go away altogether, and with it the bogus exporting of pcibios_scan_specific_bus()? Signed-off-by: Jan Beulich Cc: Mauro Carvalho Chehab Cc: Aristeu Sergio Signed-off-by: Jesse Barnes commit 4cc452758fd250bb5968c583d825bb0e68d65db0 Author: Guenter Roeck Date: Thu May 19 14:45:48 2011 -0700 hwmon: (coretemp) Fix checkpatch errors Fix remaining checkpatch errors in the coretemp driver. Signed-off-by: Guenter Roeck Cc: Fenghua Yu Cc: Durgadoss R Acked-by: Jean Delvare commit 5e99c2f1e0c86d27ed2a5261442126cd0935bc69 Author: Guenter Roeck Date: Fri May 20 07:28:06 2011 -0700 hwmon: Remove pkgtemp driver After the merge of pkgtemp functionality into the coretemp driver, the pkgtemp driver is no longer necessary. Remove it. Signed-off-by: Guenter Roeck Cc: Fenghua Yu Acked-by: Jean Delvare commit 16cdcec736cd214350cdb591bf1091f8beedefa0 Author: Miao Xie Date: Fri Apr 22 18:12:22 2011 +0800 btrfs: implement delayed inode items operation Changelog V5 -> V6: - Fix oom when the memory load is high, by storing the delayed nodes into the root's radix tree, and letting btrfs inodes go. Changelog V4 -> V5: - Fix the race on adding the delayed node to the inode, which is spotted by Chris Mason. - Merge Chris Mason's incremental patch into this patch. - Fix deadlock between readdir() and memory fault, which is reported by Itaru Kitayama. Changelog V3 -> V4: - Fix nested lock, which is reported by Itaru Kitayama, by updating space cache inode in time. Changelog V2 -> V3: - Fix the race between the delayed worker and the task which does delayed items balance, which is reported by Tsutomu Itoh. - Modify the patch address David Sterba's comment. - Fix the bug of the cpu recursion spinlock, reported by Chris Mason Changelog V1 -> V2: - break up the global rb-tree, use a list to manage the delayed nodes, which is created for every directory and file, and used to manage the delayed directory name index items and the delayed inode item. - introduce a worker to deal with the delayed nodes. Compare with Ext3/4, the performance of file creation and deletion on btrfs is very poor. the reason is that btrfs must do a lot of b+ tree insertions, such as inode item, directory name item, directory name index and so on. If we can do some delayed b+ tree insertion or deletion, we can improve the performance, so we made this patch which implemented delayed directory name index insertion/deletion and delayed inode update. Implementation: - introduce a delayed root object into the filesystem, that use two lists to manage the delayed nodes which are created for every file/directory. One is used to manage all the delayed nodes that have delayed items. And the other is used to manage the delayed nodes which is waiting to be dealt with by the work thread. - Every delayed node has two rb-tree, one is used to manage the directory name index which is going to be inserted into b+ tree, and the other is used to manage the directory name index which is going to be deleted from b+ tree. - introduce a worker to deal with the delayed operation. This worker is used to deal with the works of the delayed directory name index items insertion and deletion and the delayed inode update. When the delayed items is beyond the lower limit, we create works for some delayed nodes and insert them into the work queue of the worker, and then go back. When the delayed items is beyond the upper bound, we create works for all the delayed nodes that haven't been dealt with, and insert them into the work queue of the worker, and then wait for that the untreated items is below some threshold value. - When we want to insert a directory name index into b+ tree, we just add the information into the delayed inserting rb-tree. And then we check the number of the delayed items and do delayed items balance. (The balance policy is above.) - When we want to delete a directory name index from the b+ tree, we search it in the inserting rb-tree at first. If we look it up, just drop it. If not, add the key of it into the delayed deleting rb-tree. Similar to the delayed inserting rb-tree, we also check the number of the delayed items and do delayed items balance. (The same to inserting manipulation) - When we want to update the metadata of some inode, we cached the data of the inode into the delayed node. the worker will flush it into the b+ tree after dealing with the delayed insertion and deletion. - We will move the delayed node to the tail of the list after we access the delayed node, By this way, we can cache more delayed items and merge more inode updates. - If we want to commit transaction, we will deal with all the delayed node. - the delayed node will be freed when we free the btrfs inode. - Before we log the inode items, we commit all the directory name index items and the delayed inode update. I did a quick test by the benchmark tool[1] and found we can improve the performance of file creation by ~15%, and file deletion by ~20%. Before applying this patch: Create files: Total files: 50000 Total time: 1.096108 Average time: 0.000022 Delete files: Total files: 50000 Total time: 1.510403 Average time: 0.000030 After applying this patch: Create files: Total files: 50000 Total time: 0.932899 Average time: 0.000019 Delete files: Total files: 50000 Total time: 1.215732 Average time: 0.000024 [1] http://marc.info/?l=linux-btrfs&m=128212635122920&q=p3 Many thanks for Kitayama-san's help! Signed-off-by: Miao Xie Reviewed-by: David Sterba Tested-by: Tsutomu Itoh Tested-by: Itaru Kitayama Signed-off-by: Chris Mason commit 0965537308ac3b267ea16e731bd73870a51c53b8 Merge: 61c4f2c 82d5902 Author: Chris Mason Date: Sat May 21 09:27:38 2011 -0400 Merge branch 'ino-alloc' of git://repo.or.cz/linux-btrfs-devel into inode_numbers Conflicts: fs/btrfs/free-space-cache.c Signed-off-by: Chris Mason commit 6d3117b41295150d4ac70622055dd8f5529d86b2 Author: Steven Whitehouse Date: Sat May 21 14:05:58 2011 +0100 GFS2: Wipe directory hash table metadata when deallocating a directory The deallocation code for directories in GFS2 is largely divided into two parts. The first part deallocates any directory leaf blocks and marks the directory as being a regular file when that is complete. The second stage was identical to deallocating regular files. Regular files have their data blocks in a different address space to directories, and thus what would have been normal data blocks in a regular file (the hash table in a GFS2 directory) were deallocated correctly. However, a reference to these blocks was left in the journal (assuming of course that some previous activity had resulted in those blocks being in the journal or ail list). This patch uses the i_depth as a test of whether the inode is an exhash directory (we cannot test the inode type as that has already been changed to a regular file at this stage in deallocation) The original issue was reported by Chris Hertel as an issue he encountered running bonnie++ Reported-by: Christopher R. Hertel Cc: Abhijith Das Signed-off-by: Steven Whitehouse commit cf25220677b3f10468a74278130fe224f73632a6 Author: Jean-François Moine Date: Tue May 17 05:32:39 2011 -0300 [media] gspca - sunplus: Fix some warnings and simplify code This patch removes warnings due to GSPCA_DEBUG unsetting. It implied a simplification of the code. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit bd62bbcd31f36db2ffb08a9f32743b2595d12613 Author: Jean-François Moine Date: Tue May 17 05:08:59 2011 -0300 [media] gspca: Fix some warnings tied to 'no debug' This patch fixes the warnings raised by unsetting the option GSPCA_DEBUG. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit cf221766f58cf12cbaffccddfa48e906604f8545 Author: Jean-François Moine Date: Tue May 17 04:37:05 2011 -0300 [media] gspca: Unset debug by default The output of possible hardware or software errors does not depend on the option GSPCA_DEBUG. This one is useful only when working on the main driver or on a subdriver (bug fix, enhancement, new webcam/bridge/sensor or bug fix). It is enabled in the gspca test version which is available from my web site. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 707ff3fbd265bea59035fbd17de5893569d17400 Author: Jean-François Moine Date: Tue May 17 04:15:15 2011 -0300 [media] gspca - cpia1: Remove a bad conditional compilation instruction This patch fixes a compilation error when GSPCA_DEBUG is not set. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit f8e5677f9ebadea9b60980c1bda75c6e6345fd44 Author: Jean-François Moine Date: Tue May 17 04:10:32 2011 -0300 [media] gspca - main: Remove USB traces The USB traces are better done by usbmon which is enabled in most Linux/GNU distributions and which permits easier comparison with the USB exchanges of other drivers. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 5943ba139182f6a3f27492efecb29b0a514b787f Author: Jean-François Moine Date: Tue May 17 04:03:51 2011 -0300 [media] gspca - main: Version change to 2.13 Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit bff6069dc16c84862a915d1d5564789928c173bf Author: Jean-François Moine Date: Tue May 17 03:58:57 2011 -0300 [media] gspca - stk014 / t613: Accept the index 0 in querymenu This patch fixes the kernel bug #15122. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit f7242d30034da3f2937fbe9eb3d17355bbff58d1 Author: Jean-François Moine Date: Tue May 17 03:56:09 2011 -0300 [media] gspca - kinect: Remove __devinitdata __devinit* must not be used in USB drivers. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit cc90b15eb27696a5fa237897deb2fc83a1e003f1 Author: Jean-François Moine Date: Tue May 17 03:54:11 2011 -0300 [media] gspca - cpia1: Fix some warnings Some variables were set but not used. Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 81f2030a935734ff404c86ad85f1eab777eb2324 Author: Mauro Carvalho Chehab Date: Sat May 21 09:12:30 2011 -0300 [media] video/Kconfig: Fix mis-classified devices The helper chips are classified by their function. Unfortunaltely, with time, developers added their stuff into the wrong places. Fix it by moving itens to be at the right place. Also add a new category for sensors and for misc devices that are found only on a certain specific board. While here, fix two bad whitespaces at Kconfig. Signed-off-by: Mauro Carvalho Chehab commit 2aba76f014a7b56ab4fe75845c5fd57b5590acc2 Author: Michael Williamson Date: Fri May 20 10:26:06 2011 -0400 audio: tlv320aic26: fix PLL register configuration The current PLL configuration code for the tlc320aic26 codec appears to assume a hardcoded system clock of 12 MHz. Use the clock value provided by the DAI_OPS API for the calculation. Tested using a MityDSP-L138 platform providing a 24.576 MHz clock. Signed-off-by: Michael Williamson Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 1d487624fcc17a40aa67acaa9e8f3815fb7cd0f0 Author: Fenghua Yu Date: Fri May 20 15:33:17 2011 -0700 x86, SMEP: Fix section mismatch warnings Fix these kernel compilation warnings: WARNING: arch/x86/built-in.o(.cpuinit.text+0x1e07): Section mismatch ... WARNING: arch/x86/built-in.o(.cpuinit.text+0x1b10): Section mismatch ... introduced by: de5397ad5b9a: x86, cpu: Enable/disable Supervisor Mode Execution Protection Change disable_smep from __initdata to __cpuinitdata. Change setup_smep() from __init to __cpuinit. Reported-by: Yinghai Lu Signed-off-by: Fenghua Yu Cc: Asit K Mallick Cc: Linus Torvalds Link: http://lkml.kernel.org/r/1305930797-11409-1-git-send-email-fenghua.yu@intel.com Signed-off-by: Ingo Molnar commit d1402307c23cfeafce2313d936a4a990eb8783f7 Author: Stéphane Elmaleh Date: Sat May 21 07:33:38 2011 -0300 [media] support for medion dvb stick 1660:1921 [mchehab@redhat.com: The same patch were sent by Alf and by Randoslaw. I've applied the oldest version, just fixing the entry index] Cc: Patrick Boettcher Tested-by: James Huk Tested-by: Alf Fahland Signed-off-by: Radoslaw Warowny Signed-off-by: Mauro Carvalho Chehab commit 423c79e3fed751c244aceb39031920669e1d039a Author: Stefan Ringel Date: Sat May 21 03:05:38 2011 -0300 [media] tm6000: fix uninitialized field, change prink to dprintk fix uninitialized field, change prink to dprintk Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 3e0c2ab67e48f77c2da0a5c826aac397792a214e Author: Christoph Lameter Date: Fri May 20 09:42:48 2011 -0500 slub: Deal with hyperthetical case of PAGE_SIZE > 2M kmalloc_index() currently returns -1 if the PAGE_SIZE is larger than 2M which seems to cause some concern since the callers do not check for -1. Insert a BUG() and add a comment to the -1 explaining that the code cannot be reached. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 442b06bcea23a01934d3da7ec5898fa154a6cafb Author: Christoph Lameter Date: Tue May 17 16:29:31 2011 -0500 slub: Remove node check in slab_free We can set the page pointing in the percpu structure to NULL to have the same effect as setting c->node to NUMA_NO_NODE. Gets rid of one check in slab_free() that was only used for forcing the slab_free to the slowpath for debugging. We still need to set c->node to NUMA_NO_NODE to force the slab_alloc() fastpath to the slowpath in case of debugging. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit c21fd1a8c68ce3f49b00caf10337169262cfb8ad Merge: 1a4022f 5d41452 Author: Linus Torvalds Date: Sat May 21 00:13:03 2011 -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: sctp: Fix build failure. garp: use kfree_rcu() ipv6: copy prefsrc setting when copying route entry commit 1a4022f88d40e1255920b017556092ab926d7f66 Author: Erez Zadok Date: Sat May 21 01:19:59 2011 -0400 VFS: move BUG_ON test for symlink nd->depth after current->link_count test This solves a serious VFS-level bug in nested_symlink (which was rewritten from do_follow_link), and follows the order of depth tests that existed before. The bug triggers a BUG_ON in fs/namei.c:1381, when running racer with symlink and rename ops. Signed-off-by: Erez Zadok Acked-by: Miklos Szeredi Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 5d414521663295ce25c90164f4d41a07ac846468 Author: David S. Miller Date: Sat May 21 02:10:23 2011 -0400 sctp: Fix build failure. Commit c182f90bc1f22ce5039b8722e45621d5f96862c2 ("SCTP: fix race between sctp_bind_addr_free() and sctp_bind_addr_conflict()") and commit 1231f0baa547a541a7481119323b7f964dda4788 ("net,rcu: convert call_rcu(sctp_local_addr_free) to kfree_rcu()"), happening in different trees, introduced a build failure. Simply make the SCTP race fix use kfree_rcu() too. Signed-off-by: David S. Miller commit 0a384b226f61b310586701669b573b49cfcbf436 Author: Eric Dumazet Date: Fri May 20 18:31:30 2011 +0000 garp: use kfree_rcu() Use kfree_rcu() instead of call_rcu(), remove garp_cleanup_module() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 0f6c6392dca9c4825c98322a1bf74991e4f0f54d Author: Florian Westphal Date: Fri May 20 11:27:24 2011 +0000 ipv6: copy prefsrc setting when copying route entry commit c3968a857a6b6c3d2ef4ead35776b055fb664d74 ('ipv6: RTA_PREFSRC support for ipv6 route source address selection') added support for ipv6 prefsrc as an alternative to ipv6 addrlabels, but it did not work because the prefsrc entry was not copied. Cc: Daniel Walter Signed-off-by: Florian Westphal Signed-off-by: David S. Miller commit 2a7b6a404b4c6a9184b60b89607d5f883c43fa62 Author: Igor Novgorodov Date: Tue May 17 13:46:36 2011 -0300 [media] cx231xx: Add support for Iconbit U100 This patch adds support for the "Iconbit Analog Stick U100 FM". Only composite & s-video inputs, no tuner support now. Signed-off-by: Igor Novgorodov Signed-off-by: Mauro Carvalho Chehab commit 052497553e5dedc04c43800820c1d5788201cc71 Merge: cae13fe 4427b1b Author: Linus Torvalds Date: Fri May 20 17:24:14 2011 -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: (45 commits) crypto: caam - add support for sha512 variants of existing AEAD algorithms crypto: caam - remove unused authkeylen from caam_ctx crypto: caam - fix decryption shared vs. non-shared key setting crypto: caam - platform_bus_type migration crypto: aesni-intel - fix aesni build on i386 crypto: aesni-intel - Merge with fpu.ko crypto: mv_cesa - make count_sgs() null-pointer proof crypto: mv_cesa - copy remaining bytes to SRAM only when needed crypto: mv_cesa - move digest state initialisation to a better place crypto: mv_cesa - fill inner/outer IV fields only in HMAC case crypto: mv_cesa - refactor copy_src_to_buf() crypto: mv_cesa - no need to save digest state after the last chunk crypto: mv_cesa - print a warning when registration of AES algos fail crypto: mv_cesa - drop this call to mv_hash_final from mv_hash_finup crypto: mv_cesa - the descriptor pointer register needs to be set just once crypto: mv_cesa - use ablkcipher_request_cast instead of the manual container_of crypto: caam - fix printk recursion for long error texts crypto: caam - remove unused keylen from session context hwrng: amd - enable AMD hw rnd driver for Maple PPC boards hwrng: amd - manage resource allocation ... commit 5418f9fcb76b458c4e5ca574663c3c9b3a96dc6d Author: Dmitri Belimov Date: Tue May 17 01:21:34 2011 -0300 [media] saa7134 add new TV cards Add new TV cards of Beholder Company. Just for autodetect. Signed-off-by: Beholder Intl. Ltd. Dmitry Belimov Signed-off-by: Mauro Carvalho Chehab commit cae13fe4cc3f24820ffb990c09110626837e85d4 Author: Timo Warns Date: Thu May 19 09:24:17 2011 +0200 Fix for buffer overflow in ldm_frag_add not sufficient As Ben Hutchings discovered [1], the patch for CVE-2011-1017 (buffer overflow in ldm_frag_add) is not sufficient. The original patch in commit c340b1d64000 ("fs/partitions/ldm.c: fix oops caused by corrupted partition table") does not consider that, for subsequent fragments, previously allocated memory is used. [1] http://lkml.org/lkml/2011/5/6/407 Reported-by: Ben Hutchings Signed-off-by: Timo Warns Signed-off-by: Linus Torvalds commit 4bf0ff24e371ce71521ccb21513203facfd8491f Author: Jeremy Fitzhardinge Date: Fri May 20 16:34:44 2011 -0700 xen: fix compile without CONFIG_XEN_DEBUG_FS Signed-off-by: Jeremy Fitzhardinge commit ca540c8b66874aaf704c64d43d33e39369c428fb Author: Mauro Carvalho Chehab Date: Wed May 11 22:36:47 2011 -0300 [media] Use a more consistent value for RC repeat period The default REP_PERIOD is 33 ms. This doesn't make sense for IR's, as, in general, an IR repeat scancode is provided at every 110/115ms, depending on the RC protocol. So, increase its default, to do a better job avoiding ghost repeat events. Signed-off-by: Mauro Carvalho Chehab Acked-by: Jarod Wilson commit e6c9366b2adb52cba64b359b3050200743c7568c Author: Hugh Dickins Date: Fri May 20 15:47:33 2011 -0700 tmpfs: fix highmem swapoff crash regression Commit 778dd893ae78 ("tmpfs: fix race between umount and swapoff") forgot the new rules for strict atomic kmap nesting, causing WARNING: at arch/x86/mm/highmem_32.c:81 from __kunmap_atomic(), then BUG: unable to handle kernel paging request at fffb9000 from shmem_swp_set() when shmem_unuse_inode() is handling swapoff with highmem in use. My disgrace again. See https://bugzilla.kernel.org/show_bug.cgi?id=35352 Reported-by: Witold Baryluk Signed-off-by: Hugh Dickins Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit 6de06f313a65d0ecabf055e708d082002b568866 Author: Josh Boyer Date: Fri May 20 16:22:25 2011 -0400 powerpc: Fix 32-bit SMP build Commit 69e3cea8d5fd526 ("powerpc/smp: Make start_secondary_resume available to all CPU variants") introduced start_secondary_resume to misc_32.S, however it uses a 64-bit instruction which is not valid on 32-bit platforms. Use 'stw' instead. Reported-by: Richard Cochran Tested-by: Richard Cochran Signed-off-by: Josh Boyer Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Linus Torvalds commit 612031c0771def54dd202cef76bb9bd654e47b5b Author: Simon Farnsworth Date: Tue May 10 10:49:50 2011 -0300 [media] cx18: Move spinlock and vb_type initialisation into stream_init The initialisation of vb_type in serialized_open was preventing REQBUFS from working reliably. Remove it, and move the spinlock into stream_init for good measure - it's only used when we have a stream that supports videobuf anyway. Signed-off-by: Simon Farnsworth Signed-off-by: Mauro Carvalho Chehab commit d9c417b5a462d9d0392d91bb73d9a1a16bb2959a Author: Stefan Ringel Date: Mon May 9 16:54:04 2011 -0300 [media] tm6000: remove tm6010 sif audio start and stop remove tm6010 sif audio start and stop Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit aeeebe9b67a63edd7bca36a0b7cb0d14215839f5 Author: Stefan Ringel Date: Mon May 9 16:54:03 2011 -0300 [media] tm6000: remove unused exports Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 2f349daa0187abf5fd5af4827de023dc609e5909 Author: Stefan Ringel Date: Mon May 9 16:54:02 2011 -0300 [media] tm6000: add pts logging Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 1f385717c923bf5ca0a60de22c892e466d4edf0f Author: Stefan Ringel Date: Mon May 9 16:54:01 2011 -0300 [media] tm6000: change from ioctl to unlocked_ioctl Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 7ecff8c93e14226e0c39d930b633d5ade78526cc Author: Stefan Ringel Date: Mon May 9 16:54:00 2011 -0300 [media] tm6000: all audio packets must swab Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit f2e18dc179ce031eb60712d375c5baf785ccbcf9 Author: Stefan Ringel Date: Mon May 9 16:53:59 2011 -0300 [media] tm6000: remove input select Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit f010dca2e52d8dcc0445d695192df19241afacdb Author: Stefan Ringel Date: Mon May 9 16:53:58 2011 -0300 [media] tm6000: move from tm6000_set_reg to tm6000_set_reg_mask move from tm6000_set_reg to tm6000_set_reg_mask Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit e872bb9a7ddfc025ed727cc922b0aa32a7582004 Author: Stefan Ringel Date: Mon May 9 16:53:57 2011 -0300 [media] tm6000: remove duplicated init Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 3d6baf5ffa7ed97f878492adc204453927e12690 Author: Stefan Ringel Date: Mon May 9 16:53:56 2011 -0300 [media] tm6000: remove old tuner params Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 7231f49a67d28c93505627c7ee6485a75bd517b5 Author: Stefan Ringel Date: Mon May 9 16:53:55 2011 -0300 [media] tm6000: remove unused capabilities Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 2fbc947ce157dbed5e036a2115cf5360c24aea0e Author: Stefan Ringel Date: Mon May 9 16:53:54 2011 -0300 [media] tm6000: add eeprom Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 0f6040e8929731d4294f1cffdbcb9be1523d60f0 Author: Stefan Ringel Date: Mon May 9 16:53:53 2011 -0300 [media] tm6000: change input control change input control Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit b8f7bd8769f61705fd9acc1bc64539d74dfd0265 Author: Stefan Ringel Date: Mon May 9 16:53:52 2011 -0300 [media] tm6000: vitual input enums vitual input enums Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit fb7ef9831a432a6ae82587d1477103c18f99be73 Author: Stefan Ringel Date: Mon May 9 16:53:51 2011 -0300 [media] tm6000: change to virtual inputs change to virtual inputs Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 886a3c0b58f4c3d11a8cf723b8f5ee167708ebf5 Author: Stefan Ringel Date: Mon May 9 16:53:50 2011 -0300 [media] tm6000: add tm6010 audio mode setup add tm6010 audio mode setup Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit 1416910743e63e751a95de14c0477e41d54076b7 Author: Stefan Ringel Date: Mon May 9 16:53:49 2011 -0300 [media] tm6000: add radio capabilities add radio capabilities Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit cecc2471ea719a359b253449781a584e319d8909 Author: Huzaifa Sidhpurwala Date: Mon May 9 07:32:24 2011 -0300 [media] Prevent null pointer derefernce of pdev Make sure pdev is not dereferenced when it is null Signed-off-by: Huzaifa Sidhpurwala Signed-off-by: Mauro Carvalho Chehab commit bbe880b4a7c66ba14b67ee7acfbaaaa1c7be2d03 Author: Andreas Oberritter Date: Sun May 8 20:03:41 2011 -0300 [media] DVB: allow to read back of detected parameters through S2API Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit a5959dbea37973a2440eeba39fba32c79d862ec2 Author: Andreas Oberritter Date: Sun May 8 20:03:40 2011 -0300 [media] DVB: dvb_frontend: add parameters_out - Holds the parameters detected by the demod. - Updated on every call to get_frontend, either through ioctl or when a frontend event occurs. - Reset to input parameters after every call to set_frontend, tune or search/track. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 507277193253cd4ea44d0a55ade37bdef20f3a44 Author: Andreas Oberritter Date: Sun May 8 20:03:39 2011 -0300 [media] DVB: dvb_frontend: use shortcut to access fe->dtv_property_cache Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 68bdee041317116bccaf830a9ff8f46f9aa857bd Author: Andreas Oberritter Date: Sun May 8 20:03:38 2011 -0300 [media] DVB: dvb_frontend: remove unused assignments Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 61cb27af660168e3ad9a8922508c44a7d7453927 Author: Andreas Oberritter Date: Sun May 8 20:03:37 2011 -0300 [media] DVB: dvb_frontend: rename parameters to parameters_in - Preparation to distinguish input parameters from output parameters. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit e23d9ae343f9d196382ab213612d76126f9c99af Author: Andreas Oberritter Date: Sun May 8 20:03:36 2011 -0300 [media] DVB: call get_property at the end of dtv_property_process_get - Drivers should be able to override properties returned to the user. - The default values get prefilled from the cache. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 15cc2bb385ced95be35d13895a67bfe52066778c Author: Andreas Oberritter Date: Sun May 8 20:03:35 2011 -0300 [media] DVB: dtv_property_cache_submit shouldn't modifiy the cache - Use const pointers and remove assignments. - delivery_system already gets assigned by DTV_DELIVERY_SYSTEM and dtv_property_cache_sync. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 7285d4cc2cd4199a5b831a451511ccd6595806fd Author: Steve Kerrison Date: Sun May 8 16:17:19 2011 -0300 [media] cxd2820r: Update frontend capabilities to advertise QAM-256 This is supported in DVB-T2 mode, so added to the T/T2 frontend. Signed-off-by: Steve Kerrison Acked-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit cf75f9badabe399d496be76835993c6a916c726f Author: Steve Kerrison Date: Sun May 8 16:17:20 2011 -0300 [media] DocBook/dvb: Update to include DVB-T2 additions A few new capabilities added to frontend.h for DVB-T2. Added these to the documentation plus some notes explaining that they are used by the T2 delivery system. Signed-off-by: Steve Kerrison Signed-off-by: Mauro Carvalho Chehab commit 15ed9d01b6d4f0df6ca282da0f840b7abfd7549d Author: Andreas Oberritter Date: Fri Apr 8 13:37:57 2011 -0300 [media] DVB: mxl5005s: handle new bandwidths by returning -EINVAL drivers/media/common/tuners/mxl5005s.c: In function ‘mxl5005s_set_params’: drivers/media/common/tuners/mxl5005s.c:4016: warning: enumeration value ‘BANDWIDTH_5_MHZ’ not handled in switch drivers/media/common/tuners/mxl5005s.c:4016: warning: enumeration value ‘BANDWIDTH_10_MHZ’ not handled in switch drivers/media/common/tuners/mxl5005s.c:4016: warning: enumeration value ‘BANDWIDTH_1_712_MHZ’ not handled in switch Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 63952e8c4ae7f3272cd37321a71428f3637f650f Author: Andreas Oberritter Date: Fri May 20 18:56:23 2011 -0300 [media] DVB: drxd_hard: handle new bandwidths by returning -EINVAL drivers/media/dvb/frontends/drxd_hard.c: In function ‘DRX_Start’: drivers/media/dvb/frontends/drxd_hard.c:2327: warning: enumeration value ‘BANDWIDTH_5_MHZ’ not handled in switch drivers/media/dvb/frontends/drxd_hard.c:2327: warning: enumeration value ‘BANDWIDTH_10_MHZ’ not handled in switch drivers/media/dvb/frontends/drxd_hard.c:2327: warning: enumeration value ‘BANDWIDTH_1_712_MHZ’ not handled in switch [mchehab@redhat.com: removed the status = status assignment after the switch] Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 94d56ffa0a9bf11dfb602dae9223089e09a8e050 Author: Andreas Oberritter Date: Thu May 12 18:11:06 2011 -0300 [media] DVB: Add basic API support for DVB-T2 and bump minor version [steve@stevekerrison.com: Remove private definitions from cxd2820r that existed before API was defined] Signed-off-by: Andreas Oberritter Signed-off-by: Steve Kerrison Signed-off-by: Mauro Carvalho Chehab commit 878ccdc10b14e4dd028649307f99da1052768edf Author: Mark Brown Date: Thu May 19 23:10:13 2011 +0100 ARM: 6915/1: SAMSUNG: Depend on IRQ_GENERIC_CHIP The generic chip infrastructure has had a Kconfig symbol added so we need to select that for the kernel to link now we're using the generic IRQ chip infrastructure. Signed-off-by: Mark Brown Signed-off-by: Russell King commit 57ce9bb39b476accf8fba6e16aea67ed76ea523d Author: Mark Rutland Date: Tue May 17 09:15:38 2011 +0100 ARM: 6902/1: perf: Remove erroneous check on active_events When initialising a PMU, there is a check to protect against races with other CPUs filling all of the available event slots. Since armpmu_add checks that an event can be scheduled, we do not need to do this at initialisation time. Furthermore the current code is broken because it assumes that atomic_inc_not_zero will unconditionally increment active_counts and then tries to decrement it again on failure. This patch removes the broken, redundant code. Signed-off-by: Mark Rutland Acked-by: Will Deacon Cc: Jamie Iles Signed-off-by: Russell King commit 31bee4cf0e74e9c962d481a68452debaf45ed4ac Author: saeed bishara Date: Mon May 16 11:25:21 2011 +0100 ARM: 6899/1: fix the note about dcache lazy flushing for SMP systems Acked-by: Catalin Marinas Signed-off-by: Saeed Bishara Signed-off-by: Russell King commit f1f6ac111d6b1c55a604afbbff966e284b392050 Author: viresh kumar Date: Fri May 20 08:34:27 2011 +0100 ARM: 6933/1: SPEAR6xx: Rename spear600_defconfig as spear6xx_defconfig Reviewed-by: Stanley Miao Signed-off-by: Viresh Kumar Signed-off-by: Rajeev Kumar Signed-off-by: Russell King commit 202fae9b082b326ce9771f4daac65d22a7421d09 Author: viresh kumar Date: Fri May 20 08:34:26 2011 +0100 ARM: 6934/1: SPEAr6xx: Rework Kconfig for single image solution Reviewed-by: Stanley Miao Signed-off-by: Viresh Kumar Signed-off-by: Rajeev Kumar Signed-off-by: Russell King commit 7d354e40b6f6b5bd0ce2e7d039f541f3e88e1278 Author: Ryan Mallon Date: Fri May 20 08:34:25 2011 +0100 ARM: 6932/1: SPEAr3xx: Replace defconfigs with single unified defconfig We only need one defconfig for SPEAr3xx now since we can build all three boards into one kernel. Reviewed-by: Stanley Miao Signed-off-by: Ryan Mallon Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 558d774a4aa74e47849f356ede1ab51e3a03dd4d Author: Ryan Mallon Date: Fri May 20 08:34:24 2011 +0100 ARM: 6931/1: SPEAr3xx: Rework KConfig to allow all boards to be compiled in Now that all three SPEAr3xx platforms can be built into one kernel, rework KConfig to allow this. Move everything into one KConfig file while we are here. Reviewed-by: Stanley Miao Signed-off-by: Ryan Mallon Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 1d23d2fcfa3f2e7ee90bd2779a842ee737d15365 Author: viresh kumar Date: Fri May 20 08:34:23 2011 +0100 ARM: 6929/1: SPEAr3xx: Append spear3** with global device structures Reviewed-by: Stanley Miao Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 6618c3ada039116ca0392ce955df081adc5f015c Author: Ryan Mallon Date: Fri May 20 08:34:22 2011 +0100 ARM: 6930/1: SPEAr3xx: Rework pmx_dev code to remove conflicts Prefix the pmx_devs to remove naming conflicts between the three SPEAr3xx platforms. Also make pmx_driver static to each platform and rework the init code to pass the devices rather than export the pmx_driver structure. Reviewed-by: Stanley Miao Signed-off-by: Ryan Mallon Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 61e72bca04be2dc11a637185f2bbe6dba32ecaf3 Author: Ryan Mallon Date: Fri May 20 08:34:21 2011 +0100 ARM: 6935/1: SPEAR3xx: Rename register/irq defines to remove naming conflicts Prefix register and irq defintions to remove naming conflicts between the three SPEAr3xx platforms. Reviewed-by: Stanley Miao Signed-off-by: Ryan Mallon Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit f6558bf92aed978a81514131e408326f25046137 Author: Ryan Mallon Date: Fri May 20 08:34:20 2011 +0100 ARM: 6928/1: SPEAr3xx: Make local shirq structures static Several structures in arch/arm/mach-spear3xx are not marked static like they should be. Fix this. Reviewed-by: Stanley Miao Signed-off-by: Ryan Mallon Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 66b848e487ab8655815437993951ee26cc3c593f Author: viresh kumar Date: Fri May 20 08:34:19 2011 +0100 ARM: 6927/1: SPEAr Clock: Update for single image solution This patch creates different clk_lookup arrays for individual machines. These lookup arrays will be registered only if that specific machine is current machine. Reviewed-by: Stanley Miao Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit b997f6e2cba28e5361aaa6ac008f052eccd994e6 Author: viresh kumar Date: Fri May 20 08:34:18 2011 +0100 ARM: 6926/1: SPEAr clock: Define common clk_init routine in plat/clock.c Define common clk_init routine in plat/clock.c for calling recalc_root_clocks. This routine will be used for any common code across all machine families. Whereas family specific spear*xx_clk_init routines will be used for family specific code. Signed-off-by: Viresh Kumar Signed-off-by: Russell King commit 557eed603159b4e007c57d97fad1333ecebd3c2e Merge: be84bfc 8a745f1 Author: Linus Torvalds Date: Fri May 20 14:31:27 2011 -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: Power off empty ports libata-pmp: add support for Thermaltake BlackX Duet esata drive dock ATA: Don't powerdown Compaq Triflex IDE device on suspend libata: Use Maximum Write Same Length to report discard size limit drivers/ata/acard-ahci.c: fix enum warning pata_at91: SMC settings calculation bugfixes, support for t6z and IORDY libata-sff: prevent irq descriptions for dummy ports pata_cm64x: fix boot crash on parisc commit 667f390bee987d45351402e42008c52cdfb77d76 Author: Marc Zyngier Date: Wed May 18 10:51:55 2011 +0100 ARM: 6910/1: MTD: physmap: let set_vpp() pass a platform_device instead of a map_info The set_vpp() method provided by physmap passes a map_info back to the platform code, which has little relevance as far as the platform is concerned (this parameter is completely unused). Instead, pass the platform_device, which can be used in the pismo driver to retrieve some important information in a nicer way, instead of the hack that was in place. The empty set_vpp function in board-at572d940hf_ek.c is left untouched, as the board/SoC is scheduled for removal. Cc: Andrew Victor Cc: Nicolas Ferre Acked-by: Jean-Christophe PLAGNIOL-VILLARD Cc: Philipp Zabel Cc: Eric Miao Cc: Ben Dooks Acked-by: Artem Bityutskiy Acked-by: David Woodhouse Signed-off-by: Marc Zyngier Signed-off-by: Russell King commit adf0040096e4b45b9d1c12f59f9045951178ca00 Author: Marc Zyngier Date: Wed May 18 10:51:54 2011 +0100 ARM: 6906/1: MTD: Remove integrator-flash As there is now no in-tree user of integrator-flash, remove it completely. Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: Artem Bityutskiy Acked-by: David Woodhouse Signed-off-by: Russell King commit 046dfa0abd29ef2315c154754a22f4546d9d1e9c Author: Marc Zyngier Date: Wed May 18 10:51:53 2011 +0100 ARM: 6905/1: Integrator/CP: Use physmap driver instead of integrator-flash Tested with an ARM-1136 core tile. Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: David Woodhouse Signed-off-by: Russell King commit f07e762e4f18d484645f2c18d24c5d3b7e3a377a Author: Marc Zyngier Date: Wed May 18 10:51:52 2011 +0100 ARM: 6908/1: Integrator/AP: Use physmap driver instead of integrator-flash Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: David Woodhouse Signed-off-by: Russell King commit 0f71fd492d99a005db7d0050a5ce8a733ffc2a1e Author: Marc Zyngier Date: Wed May 18 10:51:51 2011 +0100 ARM: 6909/1: VExpress: Use physmap driver instead of integrator-flash Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: David Woodhouse Signed-off-by: Russell King commit 68c0e38cafa0f24866ec8605431f7f666cae1304 Author: Marc Zyngier Date: Wed May 18 10:51:50 2011 +0100 ARM: 6907/1: Versatile: Use physmap driver instead of integrator-flash Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: David Woodhouse Signed-off-by: Russell King commit b8b87aefef435e0f802d78d56804002cc439792b Author: Marc Zyngier Date: Wed May 18 10:51:49 2011 +0100 ARM: 6903/1: Realview: Use physmap driver instead of integrator-flash Tested on a PB11-MPCore. Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: David Woodhouse Signed-off-by: Russell King commit b7281ca2a4b00044c60c25059f467d05772cdbe3 Author: Marc Zyngier Date: Wed May 18 10:51:48 2011 +0100 ARM: 6904/1: MTD: Add integrator-flash feature to physmap In the process of moving platforms away from integrator-flash (aka armflash), add to physmap the few features that make armflash unique: - optionnal probing for the AFS partition type - init() and exit() methods, used by Integrator to control write access to the various onboard programmable components Signed-off-by: Marc Zyngier Acked-by: Catalin Marinas Acked-by: Artem Bityutskiy Acked-by: David Woodhouse Signed-off-by: Russell King commit 2a001f6482643239b8a069df5c2bdb2082c98be4 Author: Jeremy Fitzhardinge Date: Wed Apr 6 16:43:33 2011 -0700 Use arbitrary_virt_to_machine() to deal with ioremapped pud updates. Signed-off-by: Jeremy Fitzhardinge commit f05608d278633988db39058a8649fe90e30e6194 Author: Jeremy Fitzhardinge Date: Thu Mar 24 14:26:51 2011 +0000 Use arbitrary_virt_to_machine() to deal with ioremapped pmd updates. Signed-off-by: Jeremy Fitzhardinge commit c86d8077b3ec048e42e26372b02dae26b38b0d6b Author: Jeremy Fitzhardinge Date: Thu Dec 16 15:50:17 2010 -0800 xen/mmu: remove all ad-hoc stats stuff To make way for tracing. Signed-off-by: Jeremy Fitzhardinge commit d5108316b894a172f891795dbad4975ab7ed7a41 Author: Jeremy Fitzhardinge Date: Wed Dec 22 13:09:40 2010 -0800 xen: use normal virt_to_machine for ptes We no longer support HIGHPTE allocations, so ptes should always be within the kernel's direct map, and don't need pagetable walks to convert to machine addresses. Signed-off-by: Jeremy Fitzhardinge commit 4c13629f816b1aeff92971a40819b4c25b0622f5 Author: Jeremy Fitzhardinge Date: Wed Dec 1 22:57:39 2010 -0800 xen: make a pile of mmu pvop functions static Signed-off-by: Jeremy Fitzhardinge commit ef691947d8a3d479e67652312783aedcf629320a Author: Jeremy Fitzhardinge Date: Wed Dec 1 15:45:48 2010 -0800 vmalloc: remove vmalloc_sync_all() from alloc_vm_area() There's no need for it: it will get faulted into the current pagetable as needed. Signed-off-by: Jeremy Fitzhardinge commit 4a35c13cb808c63dd151bdd507b749e97231ef91 Author: Jeremy Fitzhardinge Date: Wed Dec 1 15:30:41 2010 -0800 xen: condense everything onto xen_set_pte xen_set_pte_at and xen_clear_pte are essentially identical to xen_set_pte, so just make them all common. When batched set_pte and pte_clear are the same, but the unbatch operation must be different: they need to update the two halves of the pte in different order. Signed-off-by: Jeremy Fitzhardinge commit a99ac5e8619c27dbb8e7fb5a4e0ca8c8aa214909 Author: Jeremy Fitzhardinge Date: Wed Dec 1 15:13:34 2010 -0800 xen: use mmu_update for xen_set_pte_at() In principle update_va_mapping is a good match for set_pte_at, since it gets the address being mapped, which allows Xen to use its linear pagetable mapping. However that assumes that the pmd for the address is attached to the current pagetable, which may not be true for a given user address space because the kernel pmd is not shared (at least on 32-bit guests). Normally the kernel will automatically sync a missing part of the pagetable with the init_mm pagetable transparently via faults, but that fails when a missing address is passed to Xen. And while the linear pagetable mapping is very useful for 32-bit Xen (as it avoids an explicit domain mapping), 32-bit Xen is deprecated. 64-bit Xen has all memory mapped all the time, so it makes no real difference. The upshot is that we should use mmu_update, since it can operate on non-current pagetables or detached pagetables. Signed-off-by: Jeremy Fitzhardinge commit 331468b11b94428a9eb2ed8b3240c17612533a99 Author: Jeremy Fitzhardinge Date: Wed Dec 1 15:23:31 2010 -0800 xen: drop all the special iomap pte paths. Xen can work out when we're doing IO mappings for itself, so we don't need to do anything special, and the extra tests just clog things up. Signed-off-by: Jeremy Fitzhardinge commit be84bfcc3ed8f824751ab79349779e50cc98aa01 Author: Kevin Cernekee Date: Tue May 17 10:39:58 2011 -0700 ipc: Add missing sys_ni entries for ipc/compat.c functions When building with: CONFIG_64BIT=y CONFIG_MIPS32_COMPAT=y CONFIG_COMPAT=y CONFIG_MIPS32_O32=y CONFIG_MIPS32_N32=y CONFIG_SYSVIPC is not set (and implicitly: CONFIG_SYSVIPC_COMPAT is not set) the final link fails with unresolved symbols for: compat_sys_semctl, compat_sys_msgsnd, compat_sys_msgrcv, compat_sys_shmctl, compat_sys_msgctl, compat_sys_semtimedop The fix is to add cond_syscall declarations for all syscalls in ipc/compat.c Signed-off-by: Kevin Cernekee Acked-by: Ralf Baechle Acked-by: Arnd Bergmann Cc: Andrew Morton Cc: Al Viro Cc: Stephen Rothwell Signed-off-by: Linus Torvalds commit 06f4e926d256d902dd9a53dcb400fd74974ce087 Merge: 8e7bfcb d935156 Author: Linus Torvalds Date: Fri May 20 13:43:21 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits) macvlan: fix panic if lowerdev in a bond tg3: Add braces around 5906 workaround. tg3: Fix NETIF_F_LOOPBACK error macvlan: remove one synchronize_rcu() call networking: NET_CLS_ROUTE4 depends on INET irda: Fix error propagation in ircomm_lmp_connect_response() irda: Kill set but unused variable 'bytes' in irlan_check_command_param() irda: Kill set but unused variable 'clen' in ircomm_connect_indication() rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport() be2net: Kill set but unused variable 'req' in lancer_fw_download() irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication() atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined. rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer(). rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler() rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection() rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window() pkt_sched: Kill set but unused variable 'protocol' in tc_classify() isdn: capi: Use pr_debug() instead of ifdefs. tg3: Update version to 3.119 tg3: Apply rx_discards fix to 5719/5720 ... Fix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c as per Davem. commit 8e7bfcbab3825d1b404d615cb1b54f44ff81f981 Merge: 102dc1b 30f7276 Author: Linus Torvalds Date: Fri May 20 13:39:00 2011 -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] define "_sdata" symbol pstore: Fix Kconfig dependencies for apei->pstore pstore: fix potential logic issue in pstore read interface pstore: fix pstore filesystem mount/remount issue pstore: fix one type of return value in pstore [IA64] fix build warning in arch/ia64/oprofile/backtrace.c commit 102dc1bae12a20214c9ee2d33a7402dc5175e30d Merge: 91444f4 bbe7b8b Author: Linus Torvalds Date: Fri May 20 13:38:28 2011 -0700 Merge branch 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: MAINTAINERS: Add drivers/clocksource to TIMEKEEPING clockevents/source: Use u64 to make 32bit happy commit 91444f47b2a0e50a15849f49db8c15382cd8de1b Merge: bc091c9 156ecb2 Author: Linus Torvalds Date: Fri May 20 13:37:49 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6: (32 commits) [CIFS] Fix to problem with getattr caused by invalidate simplification patch [CIFS] Remove sparse warning [CIFS] Update cifs to version 1.72 cifs: Change key name to cifs.idmap, misc. clean-up cifs: Unconditionally copy mount options to superblock info cifs: Use kstrndup for cifs_sb->mountdata cifs: Simplify handling of submount options in cifs_mount. cifs: cifs_parse_mount_options: do not tokenize mount options in-place cifs: Add support for mounting Windows 2008 DFS shares cifs: Extract DFS referral expansion logic to separate function cifs: turn BCC into a static inlined function cifs: keep BCC in little-endian format cifs: fix some unused variable warnings in id_rb_search CIFS: Simplify invalidate part (try #5) CIFS: directio read/write cleanups consistently use smb_buf_length as be32 for cifs (try 3) cifs: Invoke id mapping functions (try #17 repost) cifs: Add idmap key and related data structures and functions (try #17 repost) CIFS: Add launder_page operation (try #3) Introduce smb2 mounts as vers=2 ... commit bc091c93a0f60717aa99e25c406892cd8c0187dc Merge: 3ed4c05 a2d063a Author: Linus Torvalds Date: Fri May 20 13:37:22 2011 -0700 Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: extable, core_kernel_data(): Make sure all archs define _sdata core_kernel_data(): Fix architectures that do not define _sdata commit 3ed4c0583daa34dedb568b26ff99e5a7b58db612 Merge: ad94717 bd715d9 Author: Linus Torvalds Date: Fri May 20 13:33:21 2011 -0700 Merge branch 'ptrace' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc * 'ptrace' of git://git.kernel.org/pub/scm/linux/kernel/git/oleg/misc: (41 commits) signal: trivial, fix the "timespec declared inside parameter list" warning job control: reorganize wait_task_stopped() ptrace: fix signal->wait_chldexit usage in task_clear_group_stop_trapping() signal: sys_sigprocmask() needs retarget_shared_pending() signal: cleanup sys_sigprocmask() signal: rename signandsets() to sigandnsets() signal: do_sigtimedwait() needs retarget_shared_pending() signal: introduce do_sigtimedwait() to factor out compat/native code signal: sys_rt_sigtimedwait: simplify the timeout logic signal: cleanup sys_rt_sigprocmask() x86: signal: sys_rt_sigreturn() should use set_current_blocked() x86: signal: handle_signal() should use set_current_blocked() signal: sigprocmask() should do retarget_shared_pending() signal: sigprocmask: narrow the scope of ->siglock signal: retarget_shared_pending: optimize while_each_thread() loop signal: retarget_shared_pending: consider shared/unblocked signals only signal: introduce retarget_shared_pending() ptrace: ptrace_check_attach() should not do s/STOPPED/TRACED/ signal: Turn SIGNAL_STOP_DEQUEUED into GROUP_STOP_DEQUEUED signal: do_signal_stop: Remove the unneeded task_clear_group_stop_pending() ... commit ad9471752ebae25daa133b4e5d9299809c35e155 Merge: 6c1b8d9 6ad11ea Author: Linus Torvalds Date: Fri May 20 13:29:52 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (110 commits) [SCSI] qla2xxx: Refactor call to qla2xxx_read_sfp for thermal temperature. [SCSI] qla2xxx: Unify the read/write sfp mailbox command routines. [SCSI] qla2xxx: Clear complete initialization control block. [SCSI] qla2xxx: Allow an override of the registered maximum LUN. [SCSI] qla2xxx: Add host number in reset and quiescent message logs. [SCSI] qla2xxx: Correctly read sfp single byte mailbox register. [SCSI] qla2xxx: Add qla82xx_rom_unlock() function. [SCSI] qla2xxx: Log if qla82xx firmware fails to load from flash. [SCSI] qla2xxx: Use passed in host to initialize local scsi_qla_host in queuecommand function [SCSI] qla2xxx: Correct buffer start in edc sysfs debug print. [SCSI] qla2xxx: Update firmware version after flash update for ISP82xx. [SCSI] qla2xxx: Fix hang during driver unload when vport is active. [SCSI] qla2xxx: Properly set the dsd_list_len for dsd_chaining in cmd type 6. [SCSI] qla2xxx: Fix virtual port failing to login after chip reset. [SCSI] qla2xxx: Fix vport delete hang when logins are outstanding. [SCSI] hpsa: Change memset using sizeof(ptr) to sizeof(*ptr) [SCSI] ipr: Rate limit DMA mapping errors [SCSI] hpsa: add P2000 to list of shared SAS devices [SCSI] hpsa: do not attempt PCI power management reset method if we know it won't work. [SCSI] hpsa: remove superfluous sleeps around reset code ... commit 6c1b8d94bcc1882e451d0e7a28a4a5253f4970ab Merge: 82aff10 f2741d9 Author: Linus Torvalds Date: Fri May 20 13:28:45 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw * git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (32 commits) GFS2: Move all locking inside the inode creation function GFS2: Clean up symlink creation GFS2: Clean up mkdir GFS2: Use UUID field in generic superblock GFS2: Rename ops_inode.c to inode.c GFS2: Inode.c is empty now, remove it GFS2: Move final part of inode.c into super.c GFS2: Move most of the remaining inode.c into ops_inode.c GFS2: Move gfs2_refresh_inode() and friends into glops.c GFS2: Remove gfs2_dinode_print() function GFS2: When adding a new dir entry, inc link count if it is a subdir GFS2: Make gfs2_dir_del update link count when required GFS2: Don't use gfs2_change_nlink in link syscall GFS2: Don't use a try lock when promoting to a higher mode GFS2: Double check link count under glock GFS2: Improve bug trap code in ->releasepage() GFS2: Fix ail list traversal GFS2: make sure fallocate bytes is a multiple of blksize GFS2: Add an AIL writeback tracepoint GFS2: Make writeback more responsive to system conditions ... commit 82aff107f8c9194586f68e86412246629d05670a Merge: d974d90 208b3a4 Author: Linus Torvalds Date: Fri May 20 13:28:01 2011 -0700 Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (152 commits) powerpc: Fix hard CPU IDs detection powerpc/pmac: Update via-pmu to new syscore_ops powerpc/kvm: Fix the build for 32-bit Book 3S (classic) processors powerpc/kvm: Fix kvmppc_core_pending_dec powerpc: Remove last piece of GEMINI powerpc: Fix for Pegasos keyboard and mouse powerpc: Make early memory scan more resilient to out of order nodes powerpc/pseries/iommu: Cleanup ddw naming powerpc/pseries/iommu: Find windows after kexec during boot powerpc/pseries/iommu: Remove ddw property when destroying window powerpc/pseries/iommu: Add additional checks when changing iommu mask powerpc/pseries/iommu: Use correct return type in dupe_ddw_if_already_created powerpc: Remove unused/obsolete CONFIG_XICS misc: Add CARMA DATA-FPGA Programmer support misc: Add CARMA DATA-FPGA Access Driver powerpc: Make IRQ_NOREQUEST last to clear, first to set powerpc: Integrated Flash controller device tree bindings powerpc/85xx: Create dts of each core in CAMP mode for P1020RDB powerpc/85xx: Fix PCIe IDSEL for Px020RDB powerpc/85xx: P2020 DTS: re-organize dts files ... commit 17d9f311eca13a42bf950198a358be1420d19c5f Author: Daniel Hellstrom Date: Fri May 20 04:01:10 2011 +0000 SCHED_TTWU_QUEUE is not longer needed since sparc32 now implements IPI Signed-off-by: Daniel Hellstrom Reported-by: Peter Zijlstra Acked-by: Peter Zijlstra Signed-off-by: David S. Miller commit 90d3ac15e5c637d45849e83c828ed78c62886737 Merge: 9fafbd8 317f394 Author: David S. Miller Date: Fri May 20 13:10:22 2011 -0700 Merge commit '317f394160e9beb97d19a84c39b7e5eb3d7815a8' Conflicts: arch/sparc/kernel/smp_32.c With merge conflict help from Daniel Hellstrom. Signed-off-by: David S. Miller commit 9fafbd806198eb690c9a9f9fe35a879db93a1b8d Merge: d81f087 21dccdd Author: David S. Miller Date: Fri May 20 12:59:54 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 commit d974d905cbfc1039a73ba0c7eea3f4d4e13c0624 Author: Stephen Rothwell Date: Fri May 20 15:48:17 2011 +1000 spinlock_up.h: include asm/processor.h in for cpu_relax Commit e66eed651fd1 ("list: remove prefetching from regular list iterators") removed the include of prefetch.h from list.h and this was a path to including asm/processor.h. We need to include it excplicitly now. Fixes this build error on sparc32 (at least): In file included from include/linux/seqlock.h:29, from include/linux/time.h:8, from include/linux/timex.h:56, from include/linux/sched.h:57, from arch/sparc/kernel/asm-offsets.c:13: include/linux/spinlock.h: In function 'spin_unlock_wait': include/linux/spinlock.h:360: error: implicit declaration of function 'cpu_relax Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 268bb0ce3e87872cb9290c322b0d35bce230d88f Author: Linus Torvalds Date: Fri May 20 12:50:29 2011 -0700 sanitize usage Commit e66eed651fd1 ("list: remove prefetching from regular list iterators") removed the include of prefetch.h from list.h, which uncovered several cases that had apparently relied on that rather obscure header file dependency. So this fixes things up a bit, using grep -L linux/prefetch.h $(git grep -l '[^a-z_]prefetchw*(' -- '*.[ch]') grep -L 'prefetchw*(' $(git grep -l 'linux/prefetch.h' -- '*.[ch]') to guide us in finding files that either need inclusion, or have it despite not needing it. There are more of them around (mostly network drivers), but this gets many core ones. Reported-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit 2a62512bceb44ad45f78aa7ca0e9cfaee9eae46f Author: Steven Rostedt Date: Fri May 20 15:48:59 2011 -0400 ktest: Allow options to be used by other options There are cases where one ktest option may be used within another ktest option. Allow them to be reused just like config variables but there are evaluated at time of test not config processing time. Thus having something like: MAKE_CMD = make ARCH=${ARCH} TEST_START ARCH = powerpc TEST_START ARCH = arm Will have the arch defined for each test iteration. Signed-off-by: Steven Rostedt commit aeb35ebc5f54bcdd7163f5282a3f39bc48c75cae Author: Julia Lawall Date: Fri May 20 15:31:59 2011 -0300 [media] imon: Correct call to input_free_device ictx->touch is intialied in imon_init_intf1, to the result of calling the function that contains this code. Thus, in this code, input_free_device should be called on touch itself. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @r exists@ local idexpression struct input_dev * x; expression ra,rr; position p1,p2; @@ x = input_allocate_device@p1(...) ... when != x = rr when != input_free_device(x,...) when != if (...) { ... input_free_device(x,...) ...} if(...) { ... when != x = ra when forall when != input_free_device(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("input_allocate_device",p1) cocci.print_secs("input_free_device",p2) // Signed-off-by: Julia Lawall Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit da4b7b2011ecbdc0377b0c0263e85c2d474e3d5a Author: Devin Heitmueller Date: Fri May 20 15:28:24 2011 -0300 [media] saa7134: enable IR support for Hauppauge HVR-1150/1120 Enable the IR support for the Hauppauge HVR-1150 and HVR-1120. Thanks to Fernando Laudares Camargos for testing the patch. Signed-off-by: Devin Heitmueller Cc: Fernando Laudares Camargos Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 77d942ceacbad02d8498ac72ed8d634634057aec Author: Steven Rostedt Date: Fri May 20 13:36:58 2011 -0400 ktest: Create variables for the ktest config files I found that I constantly reuse information for each test case. It would be nice to just define a variable to reuse. For example I may have: TEST_START [...] TEST = ssh root@mybox /path/to/my/script TEST_START [...] TEST = ssh root@mybox /path/to/my/script [etc] The issue is, I may wont to change that script or one of the other fields. Then I need to update each line individually. With the addition of config variables (variables only used during parsing the config) we can simplify the config files. These variables can also be defined multiple times and each time the new value will overwrite the old value. The convention to use a config variable over a ktest option is to use := instead of =. Now we could do: USER := root TARGET := mybox TEST_SCRIPT := /path/to/my/script TEST_CASE := ${USER}@${TARGET} ${TEST_SCRIPT} TEST_START [...] TEST = ${TEST_CASE} TEST_START [...] TEST = ${TEST_CASE} [etc] Now we just need to update the variables at the top. Signed-off-by: Steven Rostedt commit 2154be651b90ab0e6b5e9b9cf127a75429f9e90c Author: Jarod Wilson Date: Wed May 4 14:02:42 2011 -0300 [media] redrat3: new rc-core IR transceiver device driver This is a new rc-core device driver for the IR transceivers made by RedRat Ltd. (http://redrat.co.uk/). It started out life as an out-of-lirc-tree lirc driver, maintained in its own repo on sourceforge, by Stephen Cox. He started porting it to what was then ir-core, and I finally picked it up about two week ago and did a fairly large overhaul on it, and its now into a state where I'm fairly comfortable submitting it here for review and inclusion in the kernel. I'm claiming authorship of this driver, since while it started out as Stephen's work, its definitely a derivative work now, at 876 lines added and 1698 lines removed since grabbing it from sourceforge. Stephen's name is retained as secondary author though, and credited in the headers. Those interested in seeing how the changes evolved can (at least for now) look at this branch in my git tree: http://git.kernel.org/?p=linux/kernel/git/jarod/linux-2.6-ir.git;a=shortlog;h=refs/heads/redrat3 That won't be around forever though, and I'm doing this as a single commit to go into mainline. Anyway... I've successfully tested in-kernel decode of rc5, rc6 and nec remotes, as well as lirc userspace decode of rc5 and rc6. There are still some quirks here to sort out with rc5 lirc userspace decode, but I'm working with the RedRat folks themselves to figure out what's going on there (rc5 lirc decode works, but you only get an event on key release -- in-kernel rc5 decode behaves perfectly fine). Note that lirc decode of rc6 is working perfectly. Transmit is also working, tested by pointing the redrat3 at an mceusb transceiver, which happily picked up the transmitted signals and properly decoded them. There's no default remote for this hardware, so its somewhat arbitrarily set to use the Hauppauge RC5 keymap by default. Easily changed out by way of ir-keytable and irrelevant if you're using lircd for decode. CC: Chris Dodge CC: Andrew Vincer CC: Stephen Cox Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 345227d705f2318e9bc088e79fe71a38bb5fe82b Author: Gustavo F. Padovan Date: Fri May 20 21:23:37 2011 +0200 backing-dev: Kill set but not used var in bdi_debug_stats_show() Signed-off-by: Gustavo F. Padovan Signed-off-by: Jens Axboe commit 08aeb7c9a42ab7aa8b53c8f7779ec58f860a565c Author: Jarod Wilson Date: Wed May 11 15:14:31 2011 -0300 [media] rc: add locking to fix register/show race When device_add is called in rc_register_device, the rc sysfs nodes show up, and there's a window in which ir-keytable can be launched via udev and trigger a show_protocols call, which runs without various rc_dev fields filled in yet. Add some locking around registration and store/show_protocols to prevent that from happening. The problem manifests thusly: [64692.957872] BUG: unable to handle kernel NULL pointer dereference at 0000000000000090 [64692.957878] IP: [] show_protocols+0x47/0xf1 [rc_core] [64692.957890] PGD 19cfc7067 PUD 19cfc6067 PMD 0 [64692.957894] Oops: 0000 [#1] SMP [64692.957897] last sysfs file: /sys/devices/pci0000:00/0000:00:03.1/usb3/3-1/3-1:1.0/rc/rc2/protocols [64692.957902] CPU 3 [64692.957903] Modules linked in: redrat3(+) ir_lirc_codec lirc_dev ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder rc_hauppauge ir_nec _decoder rc_core ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables snd_emu10k1_synth snd_emux_synth snd_seq_virmidi snd_seq_mi di_event snd_seq_midi_emul snd_emu10k1 snd_rawmidi snd_ac97_codec ac97_bus snd_seq snd_pcm snd_seq_device snd_timer snd_page_alloc snd_util_mem pcsp kr tg3 snd_hwdep emu10k1_gp snd amd64_edac_mod gameport edac_core soundcore edac_mce_amd k8temp shpchp i2c_piix4 lm63 e100 mii uinput ipv6 raid0 rai d1 ata_generic firewire_ohci pata_acpi firewire_core crc_itu_t sata_svw pata_serverworks floppy radeon ttm drm_kms_helper drm i2c_algo_bit i2c_core [last unloaded: redrat3] [64692.957949] [64692.957952] Pid: 12265, comm: ir-keytable Tainted: G M W 2.6.39-rc6+ #2 empty empty/TYAN Thunder K8HM S3892 [64692.957957] RIP: 0010:[] [] show_protocols+0x47/0xf1 [rc_core] [64692.957962] RSP: 0018:ffff880194509e38 EFLAGS: 00010202 [64692.957964] RAX: 0000000000000000 RBX: ffffffffa036d1e0 RCX: ffffffffa036a47a [64692.957966] RDX: ffff88019a84d000 RSI: ffffffffa036d1e0 RDI: ffff88019cf2f3f0 [64692.957969] RBP: ffff880194509e68 R08: 0000000000000002 R09: 0000000000000000 [64692.957971] R10: 0000000000000002 R11: 0000000000001617 R12: ffff88019a84d000 [64692.957973] R13: 0000000000001000 R14: ffff8801944d2e38 R15: ffff88019ce5f190 [64692.957976] FS: 00007f0a30c9a720(0000) GS:ffff88019fc00000(0000) knlGS:0000000000000000 [64692.957979] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [64692.957981] CR2: 0000000000000090 CR3: 000000019a8e0000 CR4: 00000000000006e0 [64692.957983] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [64692.957986] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [64692.957989] Process ir-keytable (pid: 12265, threadinfo ffff880194508000, task ffff88019a9fc720) [64692.957991] Stack: [64692.957992] 0000000000000002 ffffffffa036d1e0 ffff880194509f58 0000000000001000 [64692.957997] ffff8801944d2e38 ffff88019ce5f190 ffff880194509e98 ffffffff8131484b [64692.958001] ffffffff8118e923 ffffffff810e9b2f ffff880194509e98 ffff8801944d2e18 [64692.958005] Call Trace: [64692.958014] [] dev_attr_show+0x27/0x4e [64692.958014] [] ? sysfs_read_file+0x94/0x172 [64692.958014] [] ? __get_free_pages+0x16/0x52 [64692.958014] [] sysfs_read_file+0xbd/0x172 [64692.958014] [] vfs_read+0xac/0xf3 [64692.958014] [] ? fget_light+0x3a/0xa1 [64692.958014] [] sys_read+0x4d/0x74 [64692.958014] [] system_call_fastpath+0x16/0x1b Its a bit difficult to reproduce, but I'm fairly confident this has fixed the problem. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit d93515611bbc70c2fe4db232e5feb448ed8e4cc9 Author: Eric Dumazet Date: Fri May 20 14:59:23 2011 -0400 macvlan: fix panic if lowerdev in a bond commit a35e2c1b6d905 (macvlan: use rx_handler_data pointer to store macvlan_port pointer V2) added a bug in macvlan_port_create() Steps to reproduce the bug: # ifenslave bond0 eth0 eth1 # ip link add link eth0 up name eth0#1 type macvlan ->error EBUSY # ip link add link eth0 up name eth0#1 type macvlan ->panic Fix: Dont set IFF_MACVLAN_PORT in error case. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 51ea62927e5bbb577360dd92c3f282edbf4cd3f8 Author: Jarod Wilson Date: Tue May 10 14:09:59 2011 -0300 [media] mceusb: passing ep to request_packet is redundant Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 35e5ed7fe2326b7ea559ae91a4ee54cc0d8305d0 Author: Jarod Wilson Date: Tue May 10 11:59:46 2011 -0300 [media] rc-winfast: fix inverted left/right key mappings Reported-by: Douglas Clowes Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit c812045488afbe3830843fc6686ae84bfc928a5f Author: Jarod Wilson Date: Mon May 9 16:53:17 2011 -0300 [media] ite-cir: finish tx before suspending Continuing with IR transmit after resuming from suspend seems fairly useless, given that the only place we can actually end up suspending is after IR has been send and we're simply mdelay'ing. Lets simplify the resume path by just waiting on tx to complete in the suspend path, then we know we can't be transmitting on resume, and reinitialization of the hardware registers becomes more straight-forward. CC: Juan Jesús García de Soria Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit f0c1629dca6ffd8b1b07654704ac56c5a63270e3 Author: Jarod Wilson Date: Mon May 9 12:01:35 2011 -0300 [media] ite-cir: clean up odd spacing in ite8709 bits There was some rather odd spacing in a few of the ite8709-specific functions that made it hard to read those sections of code. This is just a simple reformatting. CC: Juan Jesús García de Soria Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit ae7b4d4bb5d6769ba64cdfca9d8e77dd4e671f6d Author: Jarod Wilson Date: Mon May 9 11:48:33 2011 -0300 [media] ite-cir: make IR receive work after resume Just recently acquired an Asus Eee Box PC with an onboard IR receiver driven by ite-cir (ITE8713 sub-variant). Works out of the box with the ite-cir driver in 2.6.39, but stops working after a suspend/resume cycle. Its fixed by simply reinitializing registers after resume, similar to what's done in the nuvoton-cir driver. I've not tested with any other ITE variant, but code inspection suggests this should be safe on all variants. Reported-by: Stephan Raue CC: Juan Jesús García de Soria Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 76a2d21d96fba4d0e94cf191eb3716ea7c4916e8 Author: Jarod Wilson Date: Thu Apr 28 18:20:58 2011 -0300 [media] imon: clean up disconnect routine - Eliminate a possible circular locking lockdep warning - Make sure we don't try to unregister a vfd on a device w/a vga screen - Always free imon context after devices are removed (display_close can just error out w/no context) Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 46872d27dadb9d7401d8edc20393e443c573526f Author: Jarod Wilson Date: Thu Apr 21 15:21:47 2011 -0300 [media] nuvoton-cir: minor tweaks to rc dev init - Set a default timeout (matching mceusb.c) and use ir_raw_event_store_with_filter, which leads to better behavior when using lirc userspace decoding with this hardware - Fill in rx_resolution with the value we're using here (50us) - Wire up input phys and device parent pointer - Use device_init_wakeup() instead of device_set_wakeup_*() Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 771949d03b4f5295f648f09141325fd478f6c7ce Author: Jens Axboe Date: Fri May 20 20:52:16 2011 +0200 block: get rid of on-stack plugging debug checks We don't need them anymore, so kill: - REQ_ON_PLUG checks in various places - !rq_mergeable() check in plug merging Signed-off-by: Jens Axboe commit b2cbae2c248776d81cc265ff7d48405b6a4cc463 Author: Roland Dreier Date: Fri May 20 11:46:11 2011 -0700 RDMA: Add netlink infrastructure Add basic RDMA netlink infrastructure that allows for registration of RDMA clients for which data is to be exported and supplies message construction callbacks. Signed-off-by: Nir Muchtar [ Reorganize a few things, add CONFIG_NET dependency. - Roland ] Signed-off-by: Roland Dreier commit fd75c789abf7948e16fe50917a6acb809927719a Author: Nir Muchtar Date: Fri May 20 11:46:10 2011 -0700 RDMA: Add error handling to ib_core_init() Fail RDMA midlayer initialization if sysfs setup fails. Signed-off-by: Nir Muchtar Signed-off-by: Roland Dreier commit 0eb8e885726a3a93206510092bbc7e39e272f6ef Merge: af75cd3 0a58e07 Author: Jens Axboe Date: Fri May 20 20:36:16 2011 +0200 Merge branch 'for-linus' into for-2.6.40/core This patch merges in a fix that missed 2.6.39 final. Conflicts: block/blk.h commit af75cd3c67845ebe31d2df9a780889a5ebecef11 Author: Vivek Goyal Date: Thu May 19 15:38:31 2011 -0400 blk-throttle: Make no throttling rule group processing lockless Currently we take a queue lock on each bio to check if there are any throttling rules associated with the group and also update the stats. Now access the group under rcu and update the stats without taking the queue lock. Queue lock is taken only if there are throttling rules associated with the group. So the common case of root group when there are no rules, save unnecessary pounding of request queue lock. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit f0bdc8cdd9a2bcc2c84ae2a1fdbff4188b354d8d Author: Vivek Goyal Date: Thu May 19 15:38:30 2011 -0400 blk-cgroup: Make cgroup stat reset path blkg->lock free for dispatch stats Now dispatch stats update is lock free. But reset of these stats still takes blkg->stats_lock and is dependent on that. As stats are per cpu, we should be able to just reset the stats on each cpu without any locks. (Atleast for 64bit arch). On 32bit arch there is a small race where 64bit updates are not atomic. The result of this race can be that in the presence of other writers, one might not get 0 value after reset of a stat and might see something intermediate One can write more complicated code to cover this race like sending IPI to other cpus to reset stats and for offline cpus, reset these directly. Right not I am not taking that path because reset_update is more of a debug feature and it can happen only on 32bit arch and possibility of it happening is small. Will fix it if it becomes a real problem. For the time being going for code simplicity. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 575969a0dd3fe65c6556bcb8f87c42303326ea55 Author: Vivek Goyal Date: Thu May 19 15:38:29 2011 -0400 blk-cgroup: Make 64bit per cpu stats safe on 32bit arch Some of the stats are 64bit and updation will be non atomic on 32bit architecture. Use sequence counters on 32bit arch to make reading of stats safe. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 5624a4e445e2ec27582984b068d7bf7f127cee10 Author: Vivek Goyal Date: Thu May 19 15:38:28 2011 -0400 blk-throttle: Make dispatch stats per cpu Currently we take blkg_stat lock for even updating the stats. So even if a group has no throttling rules (common case for root group), we end up taking blkg_lock, for updating the stats. Make dispatch stats per cpu so that these can be updated without taking blkg lock. If cpu goes offline, these stats simply disappear. No protection has been provided for that yet. Do we really need anything for that? Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 4843c69d496a8d2e4caab6182fe016b9a79136e0 Author: Vivek Goyal Date: Thu May 19 15:38:27 2011 -0400 blk-throttle: Free up a group only after one rcu grace period Soon we will allow accessing a throtl_grp under rcu_read_lock(). Hence start freeing up throtl_grp after one rcu grace period. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 5617cbef7723952cbdff28c7a10ff8a254945f4f Author: Vivek Goyal Date: Thu May 19 15:38:26 2011 -0400 blk-throttle: Use helper function to add root throtl group to lists Use same helper function for root group as we use with dynamically allocated groups to add it to various lists. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 269f541555d8f5da322d592fb3e13e23ed62d80c Author: Vivek Goyal Date: Thu May 19 15:38:25 2011 -0400 blk-throttle: Introduce a helper function to fill in device details A helper function for the code which is used at 2-3 places. Makes reading code little easier. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 29b125892f3317ada86b662e0b6ebc0f79be9037 Author: Vivek Goyal Date: Thu May 19 15:38:24 2011 -0400 blk-throttle: Dynamically allocate root group Currently, we allocate root throtl_grp statically. But as we will be introducing per cpu stat pointers and that will be allocated dynamically even for root group, we might as well make whole root throtl_grp allocation dynamic and treat it in same manner as other groups. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit f469a7b4d5b1d1d053200a9015fd25d59c057f49 Author: Vivek Goyal Date: Thu May 19 15:38:23 2011 -0400 blk-cgroup: Allow sleeping while dynamically allocating a group Currently, all the cfq_group or throtl_group allocations happen while we are holding ->queue_lock and sleeping is not allowed. Soon, we will move to per cpu stats and also need to allocate the per group stats. As one can not call alloc_percpu() from atomic context as it can sleep, we need to drop ->queue_lock, allocate the group, retake the lock and continue processing. In throttling code, I check the queue DEAD flag again to make sure that driver did not call blk_cleanup_queue() in the mean time. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 56edf7d75db5b14d628b46623c414ffbeed68d7f Author: Vivek Goyal Date: Thu May 19 15:38:22 2011 -0400 cfq-iosched: Fix a possible race with cfq cgroup removal code blkg->key = cfqd is an rcu protected pointer and hence we used to do call_rcu(cfqd->rcu_head) to free up cfqd after one rcu grace period. The problem here is that even though cfqd is around, there are no gurantees that associated request queue (td->queue) or q->queue_lock is still around. A driver might have called blk_cleanup_queue() and release the lock. It might happen that after freeing up the lock we call blkg->key->queue->queue_ock and crash. This is possible in following path. blkiocg_destroy() blkio_unlink_group_fn() cfq_unlink_blkio_group() Hence, wait for an rcu peirod if there are groups which have not been unlinked from blkcg->blkg_list. That way, if there are any groups which are taking cfq_unlink_blkio_group() path, can safely take queue lock. This is how we have taken care of race in throttling logic also. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 3e59cf9d66a87763fef6c232a4a8dc664461ca50 Author: Vivek Goyal Date: Thu May 19 15:38:21 2011 -0400 cfq-iosched: Get rid of redundant function parameter "create" Nobody seems to be using cfq_find_alloc_cfqg() function parameter "create". Get rid of that. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit a23e68695593d00b35a6cddf8e9c9ec03505ecb9 Author: Vivek Goyal Date: Thu May 19 15:38:20 2011 -0400 blk-cgroup: move some fields of unaccounted_time file under right config option cgroup unaccounted_time file is created only if CONFIG_DEBUG_BLK_CGROUP=y. there are some fields which are out side this config option. Fix that. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit a29a171e7c46c60842b85729280e2f5690372683 Author: Vivek Goyal Date: Thu May 19 15:38:19 2011 -0400 blk-throttle: Do the new group initialization with the help of a function Group initialization code seems to be at two places. root group initialization in blk_throtl_init() and dynamically allocated group in throtl_find_alloc_tg(). Create a common function and use at both the places. Signed-off-by: Vivek Goyal Signed-off-by: Jens Axboe commit 698567f3fa790fea37509a54dea855302dd88331 Merge: d70d071 61c4f2c Author: Jens Axboe Date: Fri May 20 20:33:15 2011 +0200 Merge commit 'v2.6.39' into for-2.6.40/core Since for-2.6.40/core was forked off the 2.6.39 devel tree, we've had churn in the core area that makes it difficult to handle patches for eg cfq or blk-throttle. Instead of requiring that they be based in older versions with bugs that have been fixed later in the rc cycle, merge in 2.6.39 final. Also fixes up conflicts in the below files. Conflicts: drivers/block/paride/pcd.c drivers/cdrom/viocd.c drivers/ide/ide-cd.c Signed-off-by: Jens Axboe commit 250f972d85effad5b6e10da4bbd877e6a4b503b6 Merge: 7372b0b bbe7b8b Author: Thomas Gleixner Date: Fri May 20 20:06:24 2011 +0200 Merge branch 'timers/urgent' into timers/core Reason: Get upstream fixes and kfree_rcu which is necessary for a follow up patch. Signed-off-by: Thomas Gleixner commit 1bb933fb1fa8e4cb337a0d5dfd2ff4c0dc2073e8 Author: Lukas Czerner Date: Fri May 20 13:55:29 2011 -0400 ext4: fix possible use-after-free in ext4_remove_li_request() We need to take reference to the s_li_request after we take a mutex, because it might be freed since then, hence result in accessing old already freed memory. Also we should protect the whole ext4_remove_li_request() because ext4_li_info might be in the process of being freed in ext4_lazyinit_thread(). Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" Reviewed-by: Eric Sandeen commit 51ce65115642b77040f5582b8d2fc8815ac450f9 Author: Lukas Czerner Date: Fri May 20 13:55:16 2011 -0400 ext4: fix the mount option "init_itable=n" to work as expected for n=0 For some reason, when we set the mount option "init_itable=0" it behaves as we would set init_itable=20 which is not right at all. Basically when we set it to zero we are saying to lazyinit thread not to wait between zeroing the inode table (except of cond_resched()) so this commit fixes that and removes the unnecessary condition. The 'n' should be also properly used on remount. When the n is not set at all, it means that the default miltiplier EXT4_DEF_LI_WAIT_MULT is set instead. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" Reported-by: Eric Sandeen commit e1290b3e62c496ade19939ce036f35bb69306820 Author: Lukas Czerner Date: Fri May 20 13:49:51 2011 -0400 ext4: Remove unnecessary wait_event ext4_run_lazyinit_thread() For some reason we have been waiting for lazyinit thread to start in the ext4_run_lazyinit_thread() but it is not needed since it was jus unnecessary complexity, so get rid of it. We can also remove li_task and li_wait_task since it is not used anymore. Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" Reviewed-by: Eric Sandeen commit 4ed5c033c11b33149d993734a6a8de1016e8f03f Author: Lukas Czerner Date: Fri May 20 13:49:04 2011 -0400 ext4: Use schedule_timeout_interruptible() for waiting in lazyinit thread In order to make lazyinit eat approx. 10% of io bandwidth at max, we are sleeping between zeroing each single inode table. For that purpose we are using timer which wakes up thread when it expires. It is set via add_timer() and this may cause troubles in the case that thread has been woken up earlier and in next iteration we call add_timer() on still running timer hence hitting BUG_ON in add_timer(). We could fix that by using mod_timer() instead however we can use schedule_timeout_interruptible() for waiting and hence simplifying things a lot. This commit exchange the old "waiting mechanism" with simple schedule_timeout_interruptible(), setting the time to sleep. Hence we do not longer need li_wait_daemon waiting queue and others, so get rid of it. Addresses-Red-Hat-Bugzilla: #699708 Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" Reviewed-by: Eric Sandeen commit 30f7276cb35a22743d709a460ae3639aad50366a Author: Tony Luck Date: Fri May 20 10:38:53 2011 -0700 [IA64] define "_sdata" symbol core_kernel_data() wants to know if an address looks like kernel data. IA64 has had _edata forever, but never needed _sdata until now. Signed-off-by: Tony Luck commit 5e4de22bec1d78c009409200162da6a54631e9e4 Merge: 3935bb9 ff00c2a Author: Tony Luck Date: Fri May 20 10:35:03 2011 -0700 Pull misc-2.6.40 into release branch commit 3935bb949f360b5c8fbf7da268deb81d225d7b93 Merge: 61c4f2c 5d2a834 Author: Tony Luck Date: Fri May 20 10:34:50 2011 -0700 Pull pstore into release branch commit 5d2a8342f64e93c217fcbf3206ec9ae770b1413d Author: Luck, Tony Date: Wed Apr 13 10:48:12 2011 -0700 pstore: Fix Kconfig dependencies for apei->pstore Geert Uytterhoeven ran a dependency checker which kicked out this warning: + warning: (ACPI_APEI) selects PSTORE which has unmet direct dependencies (MISC_FILESYSTEMS): => N/A Randy confirmed that the fix was to "select MISC_FILESYSTEMS" too. Tested-by: Randy Dunlap Signed-off-by: Tony Luck commit 156ecb2d8b06589098f6ce3012e6a10fef07c416 Author: Steve French Date: Fri May 20 17:00:01 2011 +0000 [CIFS] Fix to problem with getattr caused by invalidate simplification patch Fix to earlier "Simplify invalidate part (try #6)" patch That patch caused problems with connectathon test 5. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 2f3e4af471e38e0658e701973238ae4b5e50fcd6 Merge: 6151658 d410fa4 Author: Randy Dunlap Date: Fri May 20 09:10:04 2011 -0700 Merge branch 'docs-security' into docs-move commit 906649de0eacde7a643b5a0750de6207441ad54f Author: Marek Vasut Date: Mon Apr 11 01:40:13 2011 +0200 PXA: Use dev_pm_ops in z2_battery Signed-off-by: Marek Vasut Signed-off-by: Anton Vorontsov commit 9c6f8740d0c8d2b4de78511257f38384f4cbb292 Author: Paul Parsons Date: Mon Apr 25 13:45:40 2011 +0000 ds2760_battery: Fix rated capacity of the hx4700 1800mAh battery Fix rated capacity of the HP iPAQ hx4700 3.7V 1800mAh (359113-001) battery. For this battery the value of the rated capacity EEPROM register at 0x32 is 7; thus rated_capacities[7] = 1800. Signed-off-by: Paul Parsons Signed-off-by: Anton Vorontsov commit 3af98a8f39dee8ffb93a93e4145276d58e66e48f Author: Paul Parsons Date: Mon Apr 25 14:43:30 2011 +0000 ds2760_battery: Fix indexing of the 4 active full EEPROM registers Fix indexing of the 4 active full EEPROM registers. The indexing was out by 1, accessing the EEPROM registers at 0x23 to 0x26 instead of 0x22 to 0x25. Signed-off-by: Paul Parsons Signed-off-by: Anton Vorontsov commit f17ef9b2dade4d7afb605465ef1a926fdfc1a4cc Author: John Stultz Date: Mon Apr 25 20:25:24 2011 -0700 power: Make test_power driver more dynamic. In 2008 Masashi YOKOTA created the virtual battery driver found here: http://downloads.pylone.jp/src/virtual_battery/virtual_battery-0.0.1.tar.bz2 It found use out of tree, but was never merged upstream. Since then the test_power driver has been merged, which provides very similar functionality. This patch extends the test_power driver to be more dynamic at runtime, by merging portions of the Virtual Battery Driver by Masashi YOKOTA. With this patch, I can tweak the values in: /sys/module/test_power/parameters/* and watch the behavior of the gnome power managment daemon or other battery UI software. CC: Anton Vorontsov CC: Akihiro MAEDA CC: Masashi YOKOTA Signed-off-by: John Stultz Signed-off-by: Anton Vorontsov commit 73c244a8a5541e3a1a1997be671b019a220a66e8 Author: Pali Rohár Date: Sat Apr 30 23:59:35 2011 +0200 bq27x00_battery: Name of cycle count property This patch fix using correct property POWER_SUPPLY_PROP_CYCLE_COUNT for cycle count instead POWER_SUPPLY_PROP_CHARGE_COUNTER Signed-off-by: Pali Rohár Tested-by: Pali Rohár Signed-off-by: Anton Vorontsov commit 7225a1dcc38f28fcc6178258b2072d12742f68d9 Author: Hans de Goede Date: Wed May 11 09:56:20 2011 -0300 [media] uvcvideo: Add M420 format support The M420 format is used by the Microsoft LifeCam Studio HD. Signed-off-by: Hans de Goede [laurent.pinchart@ideasonboard.com: split into v4l/uvcvideo patches] Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 0e59fd0592430cee4595c600427899a3404861e7 Author: Hans de Goede Date: Wed May 11 09:56:20 2011 -0300 [media] v4l: Add M420 format definition M420 is a hybrid YUV 4:2:0 packet/planar format. Two Y lines are followed by an interleaved U/V line. Signed-off-by: Hans de Goede [laurent.pinchart@ideasonboard.com: split into v4l/uvcvideo patches] [laurent.pinchart@ideasonboard.com: add documentation] Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 7296944759c41001122fc95110468a1a572352cd Author: Bob Liu Date: Fri Apr 29 07:11:35 2011 -0300 [media] uvcvideo: Add support for NOMMU arch Add support to uvc driver for NOMMU arch including add function uvc_queue_get_unmapped_area() and make some changes in uvc_queue_mmap(). So that uvc camera can be used on nommu arch like blackfin. Signed-off-by: Bob Liu Signed-off-by: Mauro Carvalho Chehab commit 99aa18278e867574d72201b806f82ace07d4804b Author: Sanjeev Premi Date: Wed May 18 14:44:40 2011 +0530 OMAP3: PM: Boot message is not an error, and not helpful, remove it It shows up on the console despite using "silent" in the bootargs, and it's really just noise in the boot log since PM init is always called. Signed-off-by: Sanjeev Premi Cc: jhnikula@gmail.com [khilman@ti.com: minor changelog edits] Signed-off-by: Kevin Hilman commit 04908918191f7926ec7af99890fb4ddb3b769c13 Author: Jean Pihet Date: Mon May 9 12:02:16 2011 +0200 OMAP3: cpuidle: change the power domains modes determination logic The achievable power modes of the power domains in cpuidle depends on the system wide 'enable_off_mode' knob in debugfs. Upon changing enable_off_mode, do not change the C-states 'valid' field but instead dynamically restrict the power modes when entering idle. The C-states 'valid' field is just used to enable/disable some C-states at init and shall not be changed later on. Signed-off-by: Jean Pihet Signed-off-by: Kevin Hilman commit c6cd91de1cb4694f2dfcc7df831e276fffdffffc Author: Jean Pihet Date: Mon May 9 12:02:15 2011 +0200 OMAP3: cpuidle: code rework for improved readability - fix single and multi-lines comments format - removed the omap3_idle_bm_check function and replaced the test in omap3_enter_idle_bm by the equivalent code - re-organize omap3_enter_idle_bm code path, assign local variables only when needed - reword some comments Signed-off-by: Jean Pihet Signed-off-by: Kevin Hilman commit badc303a862ba6c5fd3d324f5332db07877f8159 Author: Jean Pihet Date: Mon May 9 12:02:14 2011 +0200 OMAP3: cpuidle: re-organize the C-states data The current implementation defines an internal structure and a C-states array. Using those structures is redundant to the structs used by the cpuidle framework. This patch provides a clean-up of the internal struct, removes the internal C-states array, stores the data using the existing cpuidle per C-state struct and registers the mach specific data to cpuidle C-state driver_data (accessed using cpuidle_[gs]et_statedata). Also removes unused macros, fields and code and compacts the repeating code using an inline helper function. The result is more compact and more readable code as well as reduced data RAM usage. Also retain C1 as the only always valid C-state and system safe state. Signed-off-by: Jean Pihet Signed-off-by: Kevin Hilman commit 866ba0ef967c693dae952afafcb1582a390a82a0 Author: Jean Pihet Date: Mon May 9 12:02:13 2011 +0200 OMAP3: clean-up mach specific cpuidle data structures - sleep_latency and wake_latency are not used, replace them by exit_latency which is used by cpuidle. exit_latency simply is the sum of sleep_latency and wake_latency, - replace threshold by target_residency, - changed the OMAP3 specific cpuidle code accordingly, - changed the OMAP3 board code accordingly. Signed-off-by: Jean Pihet Signed-off-by: Kevin Hilman commit 90d231f7673e20acc4f8b5c3effb5c12098179a7 Author: Jean Pihet Date: Fri Apr 29 11:26:22 2011 +0200 OMAP3 cpuidle: remove useless SDP specific timings The cpuidle states settings can be overriden by some board- specific settings, by calling omap3_pm_init_cpuidle. Remove the 3430SDP specific states settings registration since the figures are identical to the default ones (in cpuidle34xx.c). Signed-off-by: Jean Pihet Signed-off-by: Kevin Hilman commit ecc6517d947e91f02eb5a3a055f524122846f84e Author: Bob Liu Date: Fri May 6 05:20:09 2011 -0300 [media] Revert "V4L/DVB: v4l2-dev: remove get_unmapped_area" This reverts commit c29fcff3daafbf46d64a543c1950bbd206ad8c1c. Signed-off-by: Bob Liu Signed-off-by: Mauro Carvalho Chehab commit 3d2606f42984613d324ad3047cf503bcddc3880a Author: Robert Richter Date: Fri May 20 09:46:54 2011 +0200 oprofile, x86: Enable preemption during pci device setup in IBS init IBS initialization is a mix of per-core register access and per-node pci device setup. Register access should be pinned to the cpu, but pci setup must run with preemption enabled. This patch better separates the code into non-/preemptible sections and fixes sleeping with preemption disabled. See bug message below. Fixes also freeing the eilvt entry by introducing put_eilvt(). BUG: sleeping function called from invalid context at mm/slub.c:824 in_atomic(): 1, irqs_disabled(): 0, pid: 32357, name: modprobe INFO: lockdep is turned off. Pid: 32357, comm: modprobe Not tainted 2.6.39-rc7+ #14 Call Trace: [] __might_sleep+0x112/0x117 [] kmem_cache_alloc_trace+0x4b/0xe7 [] kzalloc.constprop.0+0x29/0x2b [] pci_get_subsys+0x36/0x78 [] ? setup_APIC_eilvt+0xfb/0x139 [] pci_get_device+0x16/0x18 [] op_amd_init+0xd3/0x211 [oprofile] [] ? 0xffffffffa064cfff [] op_nmi_init+0x21e/0x26a [oprofile] [] oprofile_arch_init+0xe/0x26 [oprofile] [] oprofile_init+0x10/0x42 [oprofile] [] do_one_initcall+0x7f/0x13a [] sys_init_module+0x132/0x281 [] system_call_fastpath+0x16/0x1b Reported-by: Dave Jones Cc: [2.6.37.x] Signed-off-by: Robert Richter commit 4bc90dea7be181cd876500b1d766faaa77c3d493 Author: Teresa Gámez Date: Wed May 18 10:41:45 2011 -0300 [media] V4L: mt9m111: fix pixel clock This camera driver supports only rising edge, which is the default setting of the device. The function mt9m111_setup_pixfmt() overwrites this setting. So the driver actually uses falling edge. This patch corrects that. Signed-off-by: Teresa Gámez [g.liakhovetski@gmx.de: removed superfluous register write] Signed-off-by: Guennadi Liakhovetski Tested-by: Teresa Gámez Signed-off-by: Mauro Carvalho Chehab commit a1de7a00ae6169973f188a2e6690e34d84613853 Author: Teresa Gámez Date: Thu Apr 14 11:39:57 2011 -0300 [media] V4L: mt9v022: fix pixel clock The setup of the pixel clock is done wrong in the mt9v022 driver. The 'Invert Pixel Clock' bit has to be set to 1 for falling edge and not for rising. This is not clearly described in the data sheet. Tested on pcm037 and pcm027/pcm990. Signed-off-by: Teresa Gámez Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit d2dcad49bc346054b49bd40fd96f397fec695a0f Author: Guennadi Liakhovetski Date: Wed May 18 06:49:54 2011 -0300 [media] V4L: soc-camera: a missing mediabus code -> fourcc translation is not critical soc_mbus_get_fmtdesc() returning NULL means only, that no standard mediabus code -> fourcc conversion is known, this shouldn't be treated as an error by drivers. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit e23b961dd1206aceaad28233212f3d506595432f Author: Guennadi Liakhovetski Date: Tue May 17 10:44:03 2011 -0300 [media] V4L: soc-camera: add more format look-up entries Add new look-up entries for all mediabus codes, for which respective fourcc codes exist. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit cc552b620fa3a184ba3d4064223ca1d59325b166 Author: Guennadi Liakhovetski Date: Fri May 20 04:25:09 2011 -0300 [media] V4L: soc-camera: add a new packing for YUV 4:2:0 type formats 12-bit formats, similar to YUV 4:2:0 occupy 3 bytes for each two pixels and cannot be described by any of the existing SOC_MBUS_PACKING_* macros. This patch adds a new one SOC_MBUS_PACKING_1_5X8 to describe such formats and extends soc_mbus_samples_per_pixel() to support it. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit e9ceeced6feb6f072d59b87fe5a47c37e2b50d51 Author: Guennadi Liakhovetski Date: Fri May 13 13:11:38 2011 -0300 [media] V4L: omap1-camera: fix huge lookup array Since V4L2_MBUS_FMT_* codes have become large and sparse, they cannot be used as array indices anymore. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 93f116d595e9aa7dca5f6507376d6995f217d420 Author: Guennadi Liakhovetski Date: Fri May 13 13:21:36 2011 -0300 [media] V4L: soc-camera: avoid huge arrays, caused by changed format codes Recently mediabus pixel format codes have become a part of the user- space API, at which time their values also have been changed from contiguous numbers, running from 0 to sparse numbers with values around 0x1000, 0x2000, 0x3000... This made them unsuitable for the use as array indices. This patch switches soc-camera internal format look-ups to not depend on values of those macros. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit ee1b6f4bf3aa827b0daf65d7441e75212604b1c9 Author: Kassey Li Date: Thu Apr 7 14:01:29 2011 -0300 [media] V4L: soc-camera: add MIPI bus flags Signed-off-by: Kassey Lee Signed-off-by: Qing Xu Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 64149deb6a9ec35cc8a3ac3e7b5bc19d4a79ff44 Author: Kassey Li Date: Fri May 20 04:08:39 2011 -0300 [media] V4L: soc-camera: add JPEG support Signed-off-by: Qing Xu Signed-off-by: Kassey Lee [g.liakhovetski@gmx.de: fixed compiler warning] Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 3dac322db63473901ba9484690ee6864bb1292d0 Author: Guennadi Liakhovetski Date: Mon Mar 28 13:39:16 2011 -0300 [media] V4L: sh_mobile_ceu_camera: implement live cropping PRELIMINARY: break out spinlock changes; consider multiple completing feames, causing multiple complete() calles. Add live crop support to the sh_mobile_ceu driver. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit aee5c2f1fc9c7cd2502ff14f818fcedef666f038 Author: Guennadi Liakhovetski Date: Mon Mar 28 13:28:28 2011 -0300 [media] V4L: soc-camera: add a livecrop host operation Add an soc-camera host livecrop operation to implement live zoom. If a host driver implements it, it should take care to preserve output frame format, then live crop doesn't break streaming. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 08a31b960598adef6aa9430c2cab4b5ef4db1ab8 Author: Guennadi Liakhovetski Date: Fri Mar 25 05:24:01 2011 -0300 [media] V4L: mx3_camera: implement .stop_streaming() The .stop_streaming() videobuf2 operation has to be implemented to guarantee, that video buffers are not written to after a STREAMOFF. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit 066f7867207b8e13d2062069e0ba7cb3a5bf04b2 Author: Guennadi Liakhovetski Date: Thu Mar 24 12:51:07 2011 -0300 [media] V4L: sh_mobile_ceu_camera: implement .stop_streaming() The .stop_streaming() videobuf2 operation has to be implemented to guarantee, that video buffers are not written to after a STREAMOFF. Signed-off-by: Guennadi Liakhovetski Signed-off-by: Mauro Carvalho Chehab commit c68956c14b6accaf6371c8db26deb23fe8e3a3f3 Author: Sylwester Nawrocki Date: Wed May 18 12:06:40 2011 -0300 [media] s5p-csis: Do not use uninitialized variables in s5pcsis_suspend Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab commit b5f1220d587df8d62372c11e05d44af14056295f Author: Sylwester Nawrocki Date: Mon Apr 4 09:44:19 2011 -0300 [media] v4l: Add v4l2 subdev driver for S5P/EXYNOS4 MIPI-CSI receivers Add the subdev driver for the MIPI CSIS units available in S5P and Exynos4 SoC series. This driver supports both CSIS0 and CSIS1 MIPI-CSI2 receivers. The driver requires Runtime PM to be enabled for proper operation. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 8b4aa4f25c4ffac9e6a024ff9a7c6df16c32b451 Author: Sylwester Nawrocki Date: Mon Apr 4 09:21:57 2011 -0300 [media] v4l: Move s5p-fimc driver into Video capture devices s5p-fimc now also implements a camera capture video node so move it under the "Video capture devices" Kconfig menu. Also update the entry to reflect the driver's coverage of EXYNOS4 SoCs and separate the Makefile entry from the soc-camera drivers set. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 50e3bbf9898840eead86f90a43b3625a2b2f4112 Author: Takashi Iwai Date: Fri May 20 16:29:09 2011 +0200 ALSA: hda - Use LPIB for ATI/AMD chipsets as default ATI and AMD chipsets seem not providing the proper position-buffer information, and it also doesn't provide FIFO register required by VIACOMBO fix. It's better to use LPIB for these. Reported-by: David Henningsson Cc: Signed-off-by: Takashi Iwai commit 16846524afc200e795aaae659356001780fa91db Author: Sylwester Nawrocki Date: Fri Mar 25 12:09:43 2011 -0300 [media] v4l: Add V4L2_MBUS_FMT_JPEG_1X8 media bus format Add V4L2_MBUS_FMT_JPEG_1X8 format and the corresponding Docbook documentation. Signed-off-by: Sylwester Nawrocki Signed-off-by: Kyungmin Park Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 314c3ff47643c7c1f11317f81a80902af80795e3 Author: Takashi Iwai Date: Fri May 20 16:27:02 2011 +0200 Revert "ALSA: hda - Use position_fix=3 as default for AMD chipsets" This reverts commit 447ee6a7cbbfb5ae7ab8f9b8b058b4a04fe398bf. The workaround introduced by this commit seems bogus. The AMD chipsets don't provide proper position-buffer nor FIFO value required by VIACOMBO fix. Signed-off-by: Takashi Iwai commit 199e0de7f5df31a4fc485d4aaaf8a07718252ace Author: Durgadoss R Date: Fri May 20 01:29:35 2011 +0530 hwmon: (coretemp) Merge pkgtemp with coretemp This patch merges the pkgtemp with coretemp driver. The sysfs interfaces for all cores in the same pkg are shown under one directory, in hwmon. It also supports CONFIG_HOTPLUG_CPU. So, the sysfs interfaces are created when each core comes online and are removed when it goes offline. Signed-off-by: Durgadoss R Cc: Fenghua Yu [guenter.roeck@ericsson.com: Fixed section reference errors] Signed-off-by: Guenter Roeck commit 6ff31453161e8614e8ba3b360f8d883a27230e0c Author: Shaohui Xie Date: Thu Nov 18 14:57:53 2010 +0800 powerpc/fsl_rio: Error interrupt handler for sRIO on MPC85xx The sRIO controller reports errors to the core with one signal, it uses register EPWISR to provides the core quick access to where the error occurred. The EPWISR indicates that there are 4 interrupts sources, port1, port2, message unit and port write receive, but the sRIO driver does not support port2 for now, still the handler takes care of port2. Currently the handler only clear error status without any recovery. Signed-off-by: Shaohui Xie Cc: Li Yang Cc: Kumar Gala Cc: Roy Zang Cc: Alexandre Bounine Signed-off-by: Kumar Gala commit cce1f106c64dc1d19d5e9406320fde18dfc662df Author: Shaohui Xie Date: Thu Nov 18 14:57:32 2010 +0800 powerpc/fsl_rio: move machine_check handler Add support for machine_check support into machine_check_e500 and machine_check_e500mc. Signed-off-by: Shaohui Xie Cc: Li Yang Cc: Roy Zang Cc: Alexandre Bounine Signed-off-by: Kumar Gala commit d08e44570ed611c527a1062eb4f8c6ac61832e6e Author: Shengzhou Liu Date: Thu May 19 18:48:01 2011 +0800 powerpc/fsl_lbc: Add workaround for ELBC-A001 erratum Simultaneous FCM and GPCM or UPM operation may erroneously trigger bus monitor timeout. Set the local bus monitor timeout value to the maximum by setting LBCR[BMT] = 0 and LBCR[BMTPS] = 0xF. Signed-off-by: Shengzhou Liu Signed-off-by: Kumar Gala commit 27d934b28752b860cba6c0d77ea4598861d80998 Author: Steven Rostedt Date: Fri May 20 09:18:18 2011 -0400 ktest: Reboot after each patchcheck run The patches being checked may not leave the kernel in a state that the next run will allow the new kernel to be copied to the machine. Reboot to a known good kernel before continuing to the next kernel to test. Added option PATCHCHECK_SLEEP_TIME for the max time to sleep between patchcheck reboots. Signed-off-by: Steven Rostedt commit 4025bc62dd045d326d8a26a50fc86fd163aec89f Author: Steven Rostedt Date: Fri May 20 09:16:29 2011 -0400 ktest: Reboot to good kernel after every bisect run Reboot after each bisect run regardless if the bisect passed or failed. The test may just be to boot the kernel and that kernel may not have a way to copy the next kerne to it. Reboot to a known good kernel after each bisect run. Signed-off-by: Steven Rostedt commit 4d62bf51ac3408de85ebc1b677058482069b2e1c Author: Steven Rostedt Date: Fri May 20 09:14:35 2011 -0400 ktest: If test failed due to timeout, print that If the test failed due to timeout for boot, print a message saying so. Otherwise the user will be confused to why their test just failed. Signed-off-by: Steven Rostedt commit ca6a21f874301d0eb133819a60731c0f39967311 Author: Steven Rostedt Date: Fri Mar 25 22:42:53 2011 -0400 ktest: Fix post install command The command to run post install (for those that want initrds) was broken. Instead of doing a substitution for the $KERNEL_VERSION variable. It was replacing the entire command with nothing. Signed-off-by: Steven Rostedt commit f1703aa6abfc884b144cdd374633efdca5028bf7 Author: Antonio Ospite Date: Thu Apr 21 06:51:36 2011 -0300 [media] gspca - kinect: fix comments referring to color camera Use the expression "video stream" instead of "color camera" which is more correct as the driver supports the RGB and IR image on the same endpoint. Signed-off-by: Antonio Ospite Signed-off-by: Mauro Carvalho Chehab commit 3fabe8f49e091dc3d8de507e674adbc0e749376a Author: Drew Fisher Date: Thu Apr 21 06:51:35 2011 -0300 [media] gspca - kinect: fix a typo s/steram/stream/ Signed-off-by: Drew Fisher Signed-off-by: Antonio Ospite Signed-off-by: Mauro Carvalho Chehab commit bb066467aa1af2d45ffbfcbba32c0bde201c8eb4 Author: Drew Fisher Date: Thu Apr 21 06:51:34 2011 -0300 [media] gspca - kinect: move communications buffers out of stack Move large communications buffers out of stack and into device structure. This prevents the frame size from being >1kB and fixes a compiler warning when CONFIG_FRAME_WARN=1024: drivers/media/video/gspca/kinect.c: In function ‘send_cmd.clone.0’: drivers/media/video/gspca/kinect.c:202: warning: the frame size of 1548 bytes is larger than 1024 bytes Reported-by: Mauro Carvalho Chehab Signed-off-by: Drew Fisher Signed-off-by: Antonio Ospite Signed-off-by: Mauro Carvalho Chehab commit aff8ab5cc11c2c14b7ae3bb38cbe012c43b7dcef Author: Andreas Oberritter Date: Mon May 9 00:03:34 2011 +0100 [media] DVB: return meaningful error codes in dvb_frontend - Return values should not be ORed. Abort early instead. - Return -EINVAL instead of -1. Signed-off-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 35d451b9990cf3386c515d371aafff5a0df46fd7 Author: Oliver Endriss Date: Fri May 6 15:43:27 2011 -0300 [media] Kconfig: Fix indention of ---help--- for timerdale driver Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 0ed08b496c1be29e1b709ee853038f749f550072 Author: Mauro Carvalho Chehab Date: Fri May 6 12:32:03 2011 -0300 DocBook/dvb: Improve description of the DVB API v5 Signed-off-by: Mauro Carvalho Chehab commit 5a0deeed5741117ee8625d6305d0034e219f102c Author: Olivier Grenie Date: Tue May 3 12:27:33 2011 -0300 [media] DiBxxxx: get rid of DMA buffer on stack This patch removes the remaining on-stack buffer for USB DMA transfer. This patch also reduces the stack memory usage. Cc: stable@kernel.org Cc: Florian Mickler Signed-off-by: Olivier Grenie Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 027e99abbfdcca2ed46dfe4ea27c7cc253648cef Author: Daniel Drake Date: Fri Apr 29 18:45:01 2011 -0300 [media] via-camera: add MODULE_ALIAS This fixes autoloading of the module. Signed-off-by: Daniel Drake Acked-by: Jonathan Corbet Signed-off-by: Mauro Carvalho Chehab commit bea3c54f52ba84ddd8bfc9228255ff501e9b5c21 Author: Simon Farnsworth Date: Thu May 5 09:42:36 2011 -0300 [media] cx18: Fix warnings introduced during cleanup I misused the ktime API, and failed to remove some traces of the in-kernel format conversion. Fix these, so the the driver builds without warnings. Signed-off-by: Simon Farnsworth Signed-off-by: Mauro Carvalho Chehab commit 5f7088127e800df2cd5ff08140bdca087ab0fbac Author: Laurent Pinchart Date: Sun Nov 21 17:15:44 2010 -0300 [media] uvcvideo: Make the API public Move the public API definitions to include/linux/uvcvideo.h and bump the version number to 1.1.0. Compatibility with the old API is kept, application can still be compiled against the private header and will not break. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit f411f103822379bab356345430f097bdae3440e5 Author: Laurent Pinchart Date: Sat Apr 30 09:46:11 2011 -0300 [media] uvcvideo: Return -ERANGE when userspace sets an unsupported menu entry Instead of passing the value down to the device and getting an error back (or worse, crashing the firmware), return -ERANGE when the requested menu entry is not supported. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit fc2d573fb4e65393688d32bc128c70ddd8ecccc6 Author: Laurent Pinchart Date: Sat Apr 30 09:46:11 2011 -0300 [media] uvcvideo: Don't report unsupported menu entries Supported menu entries are reported by the device in response to the GET_RES query. Use the information to return -EINVAL to userspace for unsupported values when enumerating menu entries. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit e01a234407af60c4b9854d069a7217d75fcdfa29 Author: Laurent Pinchart Date: Fri Jun 25 04:58:43 2010 -0300 [media] uvcvideo: Override wrong bandwidth value for Hercules Classic Silver Set the FIX_BANDWIDTH quirk for the device. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit d1787b1f8d0a2ac0a77c0e04f9fcbc494eb3fee2 Author: Laurent Pinchart Date: Fri Jun 25 04:58:43 2010 -0300 [media] uvcvideo: Add support for JMicron USB2.0 XGA WebCam The camera requires the PROBE_MINMAX quirk. Add a corresponding entry in the device IDs list Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 507910799160e85eac5e7729e0d2f1ba26f6a8cf Author: Laurent Pinchart Date: Sun Mar 6 08:32:04 2011 -0300 [media] uvcvideo: Add support for V4L2_PIX_FMT_RGB565 The TomTom navigation system used in the Sony XNV 660BT and 770BT reports an RGB565 (RGBP) format, support it in the driver. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit fb08a5cd57bfd6daf90a850c8081d6805a8b9900 Author: Martin Rubli Date: Wed Sep 1 04:11:22 2010 -0300 [media] uvcvideo: Add driver documentation This adds detailed documentation about the driver's extension unit control features. Part of it has been adopted from the dynctrl.txt that used to be available in the driver's previous Subversion repository. The documentation has been rewritten to match the current implementation, in particular to capture the new XU control support including UVCIOC_CTRL_QUERY. Signed-off-by: Martin Rubli Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 9eb30d2fa9a2018fbc7d12232d4646c52782d3a9 Author: Laurent Pinchart Date: Sun Nov 21 17:08:16 2010 -0300 [media] uvcvideo: Rename UVC_CONTROL_* flags to UVC_CTRL_FLAG_* This makes the public driver API more uniform, in preparation of moving uvcvideo.h to include/linux. Keep the old names for backward compatibility with existing applications. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 1dc8ddfd5a27706e54f16812c4197bb8be8ab9c1 Author: Laurent Pinchart Date: Tue Oct 12 12:11:30 2010 -0300 [media] uvcvideo: Deprecate UVCIOC_CTRL_{ADD,MAP_OLD,GET,SET} Those ioctls are deprecated, list them in the features removal schedule for 2.6.42. Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit fe78d187fe792fac5d190b19a2806c23df28891e Author: Martin Rubli Date: Sat Oct 2 19:10:16 2010 -0300 [media] uvcvideo: Add UVCIOC_CTRL_QUERY ioctl This ioctl extends UVCIOC_CTRL_GET/SET by not only allowing to get/set XU controls but to also send arbitrary UVC commands to XU controls, namely GET_CUR, SET_CUR, GET_MIN, GET_MAX, GET_RES, GET_LEN, GET_INFO and GET_DEF. This is required for applications to work with XU controls, so that they can properly query the size and allocate the necessary buffers. Signed-off-by: Martin Rubli Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 837d50b5648347b1a011f42e474eeb5f671cc259 Author: Simon Farnsworth Date: Wed May 4 08:39:07 2011 -0300 [media] cx18: Bump driver version to 1.5.0 To simplify maintainer support of this driver, bump the version to 1.5.0 - this will be the first version that is expected to support mmap() for raw video frames. Signed-off-by: Simon Farnsworth Acked-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 1bf5842fe3b61d2dbbced96dbd27ad26fe93444a Author: Simon Farnsworth Date: Tue May 3 08:57:40 2011 -0300 [media] cx18: Clean up mmap() support for raw YUV The initial version of this patch (commit d5976931639176bb6777755d96b9f8d959f79e9e) had some issues: * It didn't correctly calculate the size of the YUV buffer for 4:2:2, resulting in capture sometimes being offset by 1/3rd of a picture. * There were a lot of variables duplicating information the driver already knew, which have been removed. * There was an in-kernel format conversion - libv4l can do this one, and is the right place to do format conversions anyway. * Some magic numbers weren't properly explained. Fix all these issues, leaving just the move from videobuf to videobuf2 to do. Signed-off-by: Simon Farnsworth Acked-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 81dfea886c73ea36439672b90626a354354dadd2 Author: Mariusz Kozlowski Date: Sat Mar 26 15:20:24 2011 -0300 [media] cpia2: fix typo in variable initialisation Currently 'fh' initialises to whatever happens to be on stack. This looks like a typo and this patch fixes that. Signed-off-by: Mariusz Kozlowski Acked-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit e47b78f036bf1c30a5263ccdf1f638d1612b0586 Author: Antti Palosaari Date: Tue May 3 20:31:36 2011 -0300 [media] cxd2820r: switch automatically between DVB-T and DVB-T2 Remove old DVB-T2 freq module param and detect DVB-T/T2 automatically. Implementation is trial and error, if DVB-T does not lock try DVB-T2 and vice versa. That's done by replacing normal DVBFE_ALGO_SW with DVBFE_ALGO_CUSTOM which gives better control for tuning process. DVB-C still uses normal software ZigZag, DVBFE_ALGO_SW. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 2e1ea06e9cc7aacdd6e77939e51743405299c9c2 Author: Antti Palosaari Date: Tue May 3 20:21:59 2011 -0300 [media] cxd2820r: whitespace fix Make checkpatch.pl happy by fixing whitespaces introduced by commit 79e8b8e3b8cbf67130247a3f6d25732373fe2f34 Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 2892bd0d95f8b0312db6f630e3a79eefb6981fcb Author: Steve Kerrison Date: Mon May 2 18:19:14 2011 -0300 [media] em28xx: Disable audio for EM28174 Signed-off-by: Steve Kerrison Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 9ac51c5e53d6b16c9a3fa541117cf96dedd6b3dd Author: Steve Kerrison Date: Mon May 2 18:19:13 2011 -0300 [media] cxd2820r: make C, T, T2 and core components as linked objects Signed-off-by: Steve Kerrison Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit d6a5f921fb8cbd418b298e5bbe83e5c8c8e1da16 Author: Antti Palosaari Date: Thu Apr 7 16:34:44 2011 -0300 [media] Add support for PCTV nanoStick T2 290e [2013:024f] Supports DVB-T/T2/C, USB ID: 2013:024f. Empia EM28174, Sony CXD2820R and NXP TDA18271HD/C2. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 27cfc85e3dae187a470f7aa54123689a487970f2 Author: Antti Palosaari Date: Thu Apr 7 16:27:43 2011 -0300 [media] Sony CXD2820R DVB-T/T2/C demodulator driver It is very first DVB-T2 Linux driver! Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit bc022694d7da1c848e395f18eaf856abc9dd0b09 Author: Antti Palosaari Date: Thu Apr 7 16:04:48 2011 -0300 [media] em28xx: add support for EM28174 chip EM28174 is very similar as already supported EM2874. I am not sure what are differences, but it could be analog support. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit f71095be6645aee0828623701e35e7e7d52910d8 Author: Antti Palosaari Date: Thu Apr 7 15:51:52 2011 -0300 [media] em28xx: Multi Frontend (MFE) support Register multiple FEs for same adapter. After that it is possible to register two FEs for same adapter. For example one for DVB-T and one for DVB-C. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit f9d0bc1c08d205008e9414a0853e4aca8b07168a Author: Antti Palosaari Date: Thu Apr 7 15:45:38 2011 -0300 [media] tda18271: add DVB-C support Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit e0bae9b33a406465bce6f38e9aaeef1ebfcfb461 Author: Antti Palosaari Date: Wed May 4 17:23:09 2011 -0300 [media] cx24116: make FW DL split more readable Change firmware download split, which I introduced few patch earlier, a little bit to make it more readable as requested [1]. Anyhow, for some reason this seems to increase compiled binary size 52 bytes, on my AMD64 box, which is rather much for so small change. [1] http://www.spinics.net/lists/linux-media/msg31968.html Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit bedbf3d1451dbecd7a46ffbc6ece28561673b748 Author: Antti Palosaari Date: Fri Apr 29 13:55:02 2011 -0300 [media] anysee: add support for Anysee E7 S2 It is DVB-S/S2 USB box. * DNBU10512IST NIM * STV0903 demod * STV6110 tuner * Intersil ISL6423 LNB controller Signed-off-by: Antti Palosaari Cc: info@anysee.com Signed-off-by: Mauro Carvalho Chehab commit f0a53105edabcf3d91fabeef4fbdb574d05ab551 Author: Antti Palosaari Date: Wed Apr 27 21:11:59 2011 -0300 [media] anysee: add support for Anysee E30 S2 Plus It is USB DVB-S/S2 box. Conexant cx24116/cx24118 demod tuner combo Intersil ISL6423 LNB controller Signed-off-by: Antti Palosaari Cc: info@anysee.com Signed-off-by: Mauro Carvalho Chehab commit 107d7b181ddeaeea92d1aa25f2e1e5a3acb7da40 Author: Antti Palosaari Date: Wed Apr 27 21:03:07 2011 -0300 [media] cx24116: add config option to split firmware download It is very rare I2C adapter hardware which can provide 32kB I2C write as one write. Add .i2c_wr_max option to set desired max packet size. Split transaction to smaller pieces according to that option. Signed-off-by: Antti Palosaari Cc: Steven Toth Signed-off-by: Mauro Carvalho Chehab commit f3b1af19647f375efb96cbd0589f9279caea7023 Author: Anatolij Gustschin Date: Tue Apr 12 08:15:58 2011 -0300 [media] media: fsl_viu: fix bug in streamon routine Currently video capturing using streaming I/O method doesn't work if capturing to overlay buffer took place before. When enabling the stream we have to check the overlay enable driver flag and reset it so that the interrupt handler won't execute the overlay interrupt path after enabling DMA in streamon routine. Otherwise the capture interrupt won't be handled correctly causing non working VIDIOC_DQBUF ioctl. Signed-off-by: Anatolij Gustschin Signed-off-by: Mauro Carvalho Chehab commit 791ae6991051729697dfe60f277744ad6de42316 Author: Anatolij Gustschin Date: Wed May 4 17:19:28 2011 -0300 [media] fsl_viu: add VIDIOC_OVERLAY ioctl Currently the driver enables overlay when running VIDIOC_S_FMT ioctl with fmt type V4L2_BUF_TYPE_VIDEO_OVERLAY. Actually, this is wrong. Add proper VIDIOC_OVERLAY support instead of using VIDIOC_S_FMT for overlay enable. Signed-off-by: Anatolij Gustschin Signed-off-by: Mauro Carvalho Chehab commit dadefe3b710b706b607b51e901bbe6fb05cc515c Author: Jesper Juhl Date: Thu Jan 13 19:05:47 2011 -0300 [media] gspca/stv06xx_pb0100: Don't potentially deref NULL in pb0100_start() usb_altnum_to_altsetting() may return NULL. If it does we'll dereference a NULL pointer in drivers/media/video/gspca/stv06xx/stv06xx_pb0100.c::pb0100_start(). As far as I can tell there's not really anything more sensible than -ENODEV that we can return in that situation, but I'm not at all intimate with this code so I'd like a bit of review/comments on this before it's applied. Anyway, here's a proposed patch. Signed-off-by: Jesper Juhl Cc: Jean-Francois Moine Cc: Hans de Goede Cc: Erik Andren Signed-off-by: Mauro Carvalho Chehab commit 488ebc4808162245be1f1365ea6854b4af6a1146 Author: David Härdeman Date: Thu Apr 28 12:13:27 2011 -0300 [media] rc-core: use ir_raw_event_store_with_filter in winbond-cir Using ir_raw_event_store_with_filter() saves about 20 lines of code. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 08ffff9fa410916f1847aff831206465cefa924f Author: David Härdeman Date: Thu Apr 28 12:13:32 2011 -0300 [media] rc-core: add trailing silence in rc-loopback tx If an IR command is sent (using the LIRC userspace) to rc-loopback which doesn't include a trailing space, the result is that the message won't be completely decoded. In addition, "leftovers" from a previous transmission can be left until the next one. Fix this by faking a long silence after the end of TX data. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit c829f2672f312f2c19dc021b233a45d3dd850a4f Author: David Härdeman Date: Thu Apr 28 12:13:22 2011 -0300 [media] rc-core: add TX support to the winbond-cir driver This patch adds preliminary IR TX capabilities to the winbond-cir driver. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 67cdd42e0630eff3673808aa57007501353c73b6 Author: David Härdeman Date: Thu Apr 28 12:13:17 2011 -0300 [media] rc-core: int to bool conversion for winbond-cir Using bool instead of an int helps readability a bit. Signed-off-by: David Härdeman Signed-off-by: Mauro Carvalho Chehab commit 0f2ce168c850b4ea4b0d71f59c5603bdee85b6b5 Author: Detlev Casanova Date: Tue Apr 5 09:06:21 2011 -0300 [media] v4l: Add mt9v032 sensor driver The MT9V032 is a parallel wide VGA sensor from Aptina (formerly Micron) controlled through I2C. The driver creates a V4L2 subdevice. It currently supports binning and cropping, and the gain, auto gain, exposure, auto exposure and test pattern controls. Signed-off-by: Detlev Casanova Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 9d8e1b5490a4fd2fa71bf3b39e7f1ce513daebcd Author: Malcolm Priestley Date: Sat Mar 26 22:03:47 2011 -0300 [media] STV0299 Register 02 on Opera1/Bsru6/z0194a/mantis_vp1033 Bits 4 and 5 on register 02 should always be set to 1. Opera1/Bsru6/z0194a/mantis_vp1033 Signed-off-by: Malcolm Priestley Acked-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 24fb06049af849934a30a06da78b7c75fac280df Author: Malcolm Priestley Date: Sat Mar 26 21:57:33 2011 -0300 [media] STV0299 incorrect standby setting issues register 02 (MCR) Issues with Register 02 causing spurious channel locking from standby. Should have always bits 4 & 5 written to 1. Lower nibble not used in any current driver. Usage if necessary can be applied through initab to mcr_reg. stv0299 not out of standby before writing inittab. Signed-off-by: Malcolm Priestley Acked-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 2f9700062cf67b14729b2916ba662e7884d3e0c5 Author: Anatolij Gustschin Date: Sat Feb 19 17:33:18 2011 -0300 [media] fsl-viu: replace .ioctl by .unlocked_ioctl Use the core-assisted locking in fsl-viu driver and switch to .unlocked_ioctl. Signed-off-by: Anatolij Gustschin Signed-off-by: Mauro Carvalho Chehab commit 8d115931622eb19a15f2633cb35dd2c4a66db255 Author: Jonathan Nieder Date: Sun May 1 06:31:40 2011 -0300 [media] cx88: don't use atomic_t for core->users users is always read or written with core->lock held. A plain int is simpler and faster. Tested-by: Andi Huber Tested-by: Marlon de Boer Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit f4bd4be8d113534a28e0c9a86cddbabd47b06159 Author: Jonathan Nieder Date: Sun May 1 06:31:04 2011 -0300 [media] cx88: don't use atomic_t for core->mpeg_users mpeg_users is always read or written with core->lock held except in mpeg_release (where it looks like a bug). A plain int is simpler and faster. Tested-by: Andi Huber Tested-by: Marlon de Boer Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit 579b2b45120fa33f750cd65150d6d8995938750b Author: Jonathan Nieder Date: Sun May 1 06:30:46 2011 -0300 [media] cx88: gracefully reject attempts to use unregistered cx88-blackbird driver It should not be possible to enter mpeg_open and acquire core->lock without the blackbird driver being registered, so just error out if it is not. This makes the code more readable and should prevent the bug fixed by the patch "hold device lock during sub-driver initialization" from resurfacing again. Similarly, if we enter mpeg_release and acquire core->lock then either the blackbird driver is registered (since open files keep it loaded) or the sysadmin forced the driver's removal. In the latter case the state will be inconsistent and this is worth a loud warning. Tested-by: Andi Huber Tested-by: Marlon de Boer Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit 344d6c6ba6ba5c4fede2f07adbd26d53109a2dd8 Author: Jonathan Nieder Date: Sun May 1 06:30:14 2011 -0300 [media] cx88: protect cx8802_devlist with a mutex Add and use a mutex to protect the cx88-mpeg device list. Previously the BKL prevented races. Based on work by Ben Hutchings . Tested-by: Andi Huber Tested-by: Marlon de Boer Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit 1d6213ab995c61f7d1d81cf6cf876acf15d6e714 Author: Jonathan Nieder Date: Sun May 1 06:29:56 2011 -0300 [media] cx88: hold device lock during sub-driver initialization cx8802_blackbird_probe makes a device node for the mpeg sub-device before it has been added to dev->drvlist. If the device is opened during that time, the open succeeds but request_acquire cannot be called, so the reference count remains zero. Later, when the device is closed, the reference count becomes negative --- uh oh. Close the race by holding core->lock during probe and not releasing until the device is in drvlist and initialization finished. Previously the BKL prevented this race. Reported-by: Andreas Huber Tested-by: Andi Huber Tested-by: Marlon de Boer Cc: stable@kernel.org Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit 1fe70e963028f34ba5e32488a7870ff4b410b19b Author: Jonathan Nieder Date: Sun May 1 06:29:37 2011 -0300 [media] cx88: fix locking of sub-driver operations The BKL conversion of this driver seems to have gone wrong. Loading the cx88-blackbird driver deadlocks. The cause: mpeg_ops::open in the cx2388x blackbird driver acquires the device lock and calls the sub-driver's request_acquire, which tries to acquire the lock again. Fix it by clarifying the semantics of request_acquire, request_release, advise_acquire, and advise_release: now all will rely on the caller to acquire the device lock. Based on work by Ben Hutchings . Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=31962 Reported-by: Andi Huber Tested-by: Andi Huber Tested-by: Marlon de Boer Cc: stable@kernel.org Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit 8a317a8760cfffa8185b56ff59fb4b6c58488d79 Author: Jonathan Nieder Date: Sun May 1 06:29:16 2011 -0300 [media] cx88: protect per-device driver list with device lock The BKL conversion of this driver seems to have gone wrong. Various uses of the sub-device and driver lists appear to be subject to race conditions. In particular, some functions access drvlist without a relevant lock held, which will race against removal of drivers. Let's start with that --- clean up by consistently protecting dev->drvlist with dev->core->lock, noting driver functions that require the device lock to be held or not to be held. After this patch, there are still some races --- e.g., cx8802_blackbird_remove can run between the time the blackbird driver is acquired and the time it is used in mpeg_release, and there's a similar race in cx88_dvb_bus_ctrl. Later patches will address the remaining known races and the deadlock noticed by Andi. This patch just makes the semantics clearer in preparation for those later changes. Based on work by Ben Hutchings . Tested-by: Andi Huber Tested-by: Marlon de Boer Cc: stable@kernel.org Signed-off-by: Jonathan Nieder Signed-off-by: Mauro Carvalho Chehab commit cae72c7c63fd4a8f20efc001108f12f34076c17b Author: HIRANO Takahito Date: Sun May 1 02:29:40 2011 -0300 [media] Fix panic on loading earth-pt1 Signed-off-by: HIRANO Takahito Signed-off-by: Mauro Carvalho Chehab commit 59983439c09f0d319cd288d27c0f70cf8764e09a Author: Ondrej Zary Date: Wed Apr 27 17:35:45 2011 -0300 [media] usbvision: remove broken testpattern Enabling force_testpattern module parameter in usbvision causes kernel panic. Things like that does not belong to the kernel anyway so the fix is easy. Signed-off-by: Ondrej Zary Signed-off-by: Mauro Carvalho Chehab commit 240d57bb8238d6998644c7f696c27076956ff653 Author: Ondrej Zary Date: Wed Apr 27 17:36:05 2011 -0300 [media] usbvision: add Nogatech USB MicroCam Add Nogatech USB MicroCam PAL (NV3001P) and NTSC (NV3000N) support to usbvision driver. PAL version is tested, NTSC untested. Data captured using usbsnoop, init_values are listed in the INF file along with image dimensions, offsets and frame rates. Signed-off-by: Ondrej Zary Signed-off-by: Mauro Carvalho Chehab commit 449a0bada34e5e554ef52aca86aeaa81ed35533e Author: Malcolm Priestley Date: Fri Apr 22 06:20:57 2011 -0300 [media] lmedm04: PID filtering changes Improve PID filtering and program register 20 correctly. Make sure stream_on message is sent if streaming is off, otherwise PIDs are not registered. Move mutex outside lme2510_enable_pid. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit a760d63878b21fc16997b79e8ebee531b40c8b26 Author: Malcolm Priestley Date: Fri Apr 22 06:07:40 2011 -0300 [media] lmedm04: don't write to buffer without a mutex usb_buffer not inside mutex lock, waiting caller can alter buffer. Static added to lme2510_exit and lme2510_exit_int. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 853e3b2930001534b88fb36e936c9a734a79046c Author: Malcolm Priestley Date: Fri Apr 22 06:00:22 2011 -0300 [media] IX2505V Keep I2C gate control alive Gate could close after first I2C message. On stv0288 it does. Keep 2nd and 3rd message I2C gate control alive. Remove unnecessary gate closing in this module. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 08921ac9e9d185d6f472238ea9c79a3a70eb7ea7 Author: Jesper Juhl Date: Thu Apr 21 18:11:25 2011 -0300 [media] Media, DVB, Siano, smsusb: Avoid static analysis report about 'use after free' In drivers/media/dvb/siano/smsusb.c we have this code: ... kfree(dev); sms_info("device %p destroyed", dev); ... at least one static analysis tool (Coverity Prevent) complains about this as a use-after-free bug. While it's true that we do use the pointer variable after freeing it, the only use is to print the value of the pointer, so there's not actually any problem here. But still, silencing the complaint is trivial by just moving the kfree() call below the sms_info(), so why not just do it?. It doesn't change the workings of the code in any way, but it makes the tool shut up. The patch below also removes a rather pointless blank line. Signed-off-by: Jesper Juhl Signed-off-by: Mauro Carvalho Chehab commit 792bc09a9896dfbdac575ab4cdcd0f4db96d8ca1 Author: Mauro Carvalho Chehab Date: Wed Apr 20 18:43:24 2011 -0300 [media] tm6000: add detection based on eeprom name On some situations, it is desired to use eeprom data to detect the board type. This patch adds a logic for it and fixes 2 detection issues: 1) 10Moons UT-821 uses a generic Trident ID. Other boards also share the same ID. So, better to use an alternative way for it; 2) Sometimes, HVR-900H is loaded with the default Trident ID. This seems to be some hardware bug or race condition. The new logic will only be enabled if the device is detected as having a generic ID. Signed-off-by: Mauro Carvalho Chehab commit dca6b74bb332f6aa52bd2a6efc464233e542297b Author: Malcolm Priestley Date: Sun Apr 17 16:55:14 2011 -0300 [media] dvb-usb: don't return error if stream stop Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit c8b7ced3460934cb31464463d7f909fef5db9391 Author: Malcolm Priestley Date: Sat Apr 16 13:30:32 2011 -0300 [media] dvb-usb return device errors to demuxer Return device errors to demuxer from on/off streamming and pid filtering. Please test this patch with all dvb-usb devices. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 6f030abf9a77f10213bc5a2da2eff478d4d4e0c3 Author: Alexey Khoroshilov Date: Fri Apr 15 17:40:17 2011 -0300 [media] lmedm04: Do not unlock mutex if mutex_lock_interruptible failed There are a couple of places where mutex_unlock() is called even if mutex_lock_interruptible() failed. The patch fixes the issue. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov Signed-off-by: Mauro Carvalho Chehab commit eeaaf817c7202b71a6e1aab87ebd538d1b5e5a42 Author: Márcio Alves Date: Mon Apr 11 19:57:15 2011 -0300 [media] cx231xx: add support for Kworld [mchehab@redhat.com: avoided board renumberation, removed an unused #define and re-used the existing mb86a20s dvb attach code] Signed-off-by: Márcio A Alves Signed-off-by: Mauro Carvalho Chehab commit 38e009aac9e02d2c30fd9a5e979ab31433e7d578 Author: Marko Ristola Date: Fri Apr 8 12:40:51 2011 -0300 [media] Speed up DVB TS stream delivery from DMA buffer into dvb-core's buffer Avoid unnecessary DVB TS 188 sized packet copying from DMA buffer into stack. Backtrack one 188 sized packet just after some garbage bytes when possible. This obsoletes patch https://patchwork.kernel.org/patch/118147/ Signed-off-by: Marko Ristola Acked-by: Andreas Oberritter Signed-off-by: Mauro Carvalho Chehab commit 3f84a4e1c1b785ff5dd3952cb2d4b3008b68ae45 Author: Jesper Juhl Date: Thu Apr 7 16:23:48 2011 -0300 [media] cx23885: Don't leak firmware in cx23885_card_setup() We leak the memory allocated to 'fw' (the firmware) when the variable goes out of scope. Fix the leak by calling release_firmware(fw) before 'fw' goes out of scope. Signed-off-by: Jesper Juhl Signed-off-by: Mauro Carvalho Chehab commit 451a51b218df9a3a93af9fd71a356cc6043df52a Author: Jesper Juhl Date: Thu Apr 7 16:34:30 2011 -0300 [media] DVB, DiB9000: Fix leak in dib9000_attach() If the second memory allocation in dib9000_attach() fails, we'll leak the memory allocated by the first. Signed-off-by: Jesper Juhl Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b7101de3fff596b35e45cd9fb7007caa07e97c9a Author: Steven Toth Date: Wed Apr 6 08:32:56 2011 -0300 [media] cx18: mmap() support for raw YUV video capture Add support for mmap method streaming of raw YUV video on cx18-based hardware, in addition to the existing support for read() streaming of raw YUV and MPEG-2 encoded video. [simon.farnsworth@onelan.co.uk: I forward-ported this from Steven's original work, done under contract to ONELAN. The original code is at http://www.kernellabs.com/hg/~stoth/cx18-videobuf] Signed-off-by: Steven Toth Signed-off-by: Simon Farnsworth Signed-off-by: Mauro Carvalho Chehab commit 5ed9bd02444a00bb1e8ecc1baa8ecdb633afc126 Author: Stefan Ringel Date: Mon Apr 4 17:18:44 2011 -0300 [media] tm6000: add CARDLIST add CARDLIST Signed-off-by: Stefan Ringel Signed-off-by: Mauro Carvalho Chehab commit e42e28f9d696c6f4e7b16ad2b0f4558269b7d180 Author: Sensoray Linux Development Date: Mon Apr 4 15:23:03 2011 -0300 [media] s2255drv: jpeg enable module parameter Adding jpeg enable module parameter. Signed-off-by: Dean Anderson Signed-off-by: Mauro Carvalho Chehab commit d0ef8540f211ba7cde748ef4f0272cd49bfdb520 Author: Sensoray Linux Development Date: Mon Apr 4 15:16:26 2011 -0300 [media] s2255drv: adding MJPEG format adding MJPEG format Signed-off-by: Dean Anderson Signed-off-by: Mauro Carvalho Chehab commit b01ff50035844bf2abac4a7e27b662a92ebb1d7b Author: Thiago Farina Date: Sun Apr 3 19:50:14 2011 -0300 [media] wl128x: Remove unused NO_OF_ENTRIES_IN_ARRAY macro Signed-off-by: Thiago Farina Signed-off-by: Mauro Carvalho Chehab commit eb02d8571bebf53a9c18a82f9912d0a77ebb83e7 Author: Malcolm Priestley Date: Sat Apr 2 18:59:29 2011 -0300 [media] DM04/QQBOX v1.84 added PID filter A greatly simplified version of the PID Filter now added back to the Driver. The driver allows for the PID filter to be turned off. applied after patch 683781. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit bb19a4210540866443e51635733a83d0970939c8 Author: Malcolm Priestley Date: Sat Apr 2 10:51:53 2011 -0300 [media] STV0288 Register 42 - Incorrect settings Register 42 bits 2,3,6 and 7 should be set to 0. This gives difficult locking on some channels and may be compensated for by other methods. This affects any driver using the stv0288 frontend on the default or earda inittab. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 910c41cac0c5dfcf89ad2c0dc2f8a1aa1cbf3185 Author: Malcolm Priestley Date: Sat Apr 2 10:47:50 2011 -0300 [media] DM04/QQBOX stv0288 register 42 - incorrect setting stv0288 Register 42 bits 6 & 7 should be set to 0. This is causing intermittent lock, the dvb-usb-lmedm04 driver uses register 50 (auto fine mode) to correct for this, this register is now returned to its default setting. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit a1b4c86b2bad37963e675737ec850c851e785d6b Author: Pete Eberlein Date: Fri Apr 1 21:21:26 2011 -0300 [media] s2255drv: atomic submit urb in completion handler An usb_submit_urb should be atomic in a completion handler. This fixes "BUG: scheduling while atomic" messages. Signed-off-by: Pete Eberlein Signed-off-by: Mauro Carvalho Chehab commit 574312d8ceb689af5000fa78d40f7ee38e1ea895 Author: Oliver Endriss Date: Tue Mar 29 17:37:00 2011 -0300 [media] budget-ci: Add support for TT S-1500 with BSBE1-D01A tuner Add support for TT S-1500 with BSBE1-D01A tuner. Signed-off-by: Oliver Endriss Signed-off-by: Mauro Carvalho Chehab commit 53f1fe9465359e0cc080d4a7779cdfcd42b75e82 Author: Hans Petter Selasky Date: Mon Mar 28 14:37:36 2011 -0300 [media] cx24116.c - fix for wrong parameter description Signed-off-by: Mauro Carvalho Chehab commit 6588687a602ee5d97aad92a5910db1be16a4f6df Author: Jean-Francois Moine Date: Sun Mar 27 04:11:48 2011 -0300 [media] pwc: Handle V4L2_CTRL_FLAG_NEXT_CTRL in queryctrl Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit fd206508492caffaccc36cbfc40d3b1f8eeb1f0b Author: Mariusz Kozlowski Date: Sat Mar 26 15:23:56 2011 -0300 [media] dib0700: fix possible NULL pointer dereference Seems like 'adap->fe' test for NULL was meant to be before we dereference that pointer. Signed-off-by: Mariusz Kozlowski Acked-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 92f6ed71cafae8580bd481db66edb81c3d9d958c Author: Dan Carpenter Date: Fri Mar 25 22:54:34 2011 -0300 [media] pvrusb2: delete generic_standards_cnt The generic_standards_cnt define is only used in one place and it's more readable to just call ARRAY_SIZE(generic_standards) directly. Signed-off-by: Dan Carpenter Signed-off-by: Mauro Carvalho Chehab commit 0cff593732fa5bdf07192be741a567b85a9c0cd3 Author: Dan Carpenter Date: Fri Mar 25 22:52:22 2011 -0300 [media] pvrusb2: check for allocation failures This function returns NULL on failure so lets do that if kzalloc() fails. There is a separate problem that the caller for this function doesn't check for errors... Signed-off-by: Dan Carpenter Acked-By: Mike Isely Signed-off-by: Mauro Carvalho Chehab commit ce02704d48767bdd31eb0b804b1d45da5b683a8c Author: Timothy Lee Date: Fri Mar 25 15:00:33 2011 -0300 [media] saa7134: support MagicPro ProHDTV Pro2 Hybrid DMB-TH PCI card This card has a TD18271 silicon tuner, and uses TDA8290 and LGS8G75 to demodulate analog and digital broadcast respectively. GPIO configurations were derived using DScaler regspy. Signed-off-by: Mauro Carvalho Chehab commit 5398b622152767aa70f2ac92d952c4c045aa86b5 Author: Jean Delvare Date: Wed Mar 23 10:35:57 2011 -0300 [media] zoran: Drop unused module parameters encoder and decoder The ability to force the encoder or decoder chip was broken by commit 0ab6e1c38d80ab586e3a1ca9e71844131d9f51dc in February 2009. As nobody complained for over 2 years, I take it that these parameters were no longer used so we can simply drop them. Signed-off-by: Jean Delvare Cc: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab commit 945b876600054081911d31bdb4f47b172c8a48ae Author: Florian Mickler Date: Sun Mar 20 18:50:52 2011 -0300 [media] lmedm04: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Tested-by: Malcolm Priestley Signed-off-by: Florian Mickler Signed-off-by: Mauro Carvalho Chehab commit 2a596f84e2e368a3167947b32c8ea51125f87c58 Author: Florian Mickler Date: Sun Mar 20 18:50:50 2011 -0300 [media] au6610: get rid of on-stack dma buffer usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Signed-off-by: Florian Mickler Acked-by: Antti Palosaari Reviewed-by: Antti Palosaari Tested-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 029461dbea04f4b6943bd24b6ae7906f28593a2f Author: Florian Mickler Date: Sun Mar 20 18:50:49 2011 -0300 [media] ce6230: get rid of on-stack dma buffer usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Signed-off-by: Florian Mickler Acked-by: Antti Palosaari Reviewed-by: Antti Palosaari Tested-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 26b72c6e5a67ceef4c62c279d5952f723515d990 Author: Florian Mickler Date: Sun Mar 20 18:50:48 2011 -0300 [media] ec168: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Signed-off-by: Florian Mickler Acked-by: Antti Palosaari Reviewed-by: Antti Palosaari Tested-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 60f81f12fa63213567b0b40546faa82b8f5d5b0c Author: Florian Mickler Date: Mon Mar 21 07:19:14 2011 -0300 [media] vp702x: use preallocated buffer in the frontend Note: This change is tested to compile only as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit ee52f120b0adc469f5c67815cef79ecdd01cfd14 Author: Florian Mickler Date: Mon Mar 21 07:19:13 2011 -0300 [media] vp702x: use preallocated buffer in vp702x_usb_inout_cmd If we need a bigger buffer, we reallocte a new buffer and free the old one. Note: This change is tested to compile only as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 8ea793aa736137aa2453ce6877bb31a4b15dc28d Author: Florian Mickler Date: Mon Mar 21 07:19:12 2011 -0300 [media] vp702x: use preallocated buffer Note: This change is tested to compile only as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 9a187c4183edb6e705245c0fb2439aa3e8dce1fe Author: Florian Mickler Date: Mon Mar 21 07:19:11 2011 -0300 [media] vp702x: fix locking of usb operations Otherwise it is not obvious that vp702x_usb_in_op or vp702x_usb_out_op will not interfere with any vp702x_usb_inout_op. Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 57873c720caddf19eef2d5fe734575f7175abb48 Author: Florian Mickler Date: Mon Mar 21 07:19:10 2011 -0300 [media] vp702x: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit cf53b82d5d6eae920a1527b564f17c86e8118f0c Author: Florian Mickler Date: Mon Mar 21 07:19:09 2011 -0300 [media] vp702x: remove unused variable struct vp702x_device_state.power_state is nowhere referenced. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 1c6410f317c3e78409f0179283089034c77a6ad5 Author: Florian Mickler Date: Mon Mar 21 07:19:08 2011 -0300 [media] vp702x: preallocate memory on device probe This sets up a buffer and a mutex protecting that buffer in the struct vp702x_device_state. The definition of struct vp702x_device_state is moved into the header in order to use the buffer also in the frontend. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 36f773e8e3f207136a6b903b71754593e0e1819c Author: Florian Mickler Date: Mon Mar 21 07:19:07 2011 -0300 [media] vp702x: rename struct vp702x_state -> vp702x_adapter_state We need a state struct for the dvb_usb_device. In order to reduce confusion we rename the vp702x_state struct. Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit d30615d87e7bfbf610fae1cbee3fa509d1377edc Author: Florian Mickler Date: Mon Mar 21 07:19:06 2011 -0300 [media] vp702x: cleanup: whitespace and indentation Some whitespace, one linebreak and one unneded variable initialization... Signed-off-by: Florian Mickler Cc: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit 12fe2a6193df97b28f5ff9fd3f12d460e96c6a95 Author: Florian Mickler Date: Mon Mar 21 15:33:46 2011 -0300 [media] opera1: get rid of on-stack dma buffer usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Signed-off-by: Mauro Carvalho Chehab commit 513ea35ff9cd332abe650f5da3689bdb41824b43 Author: Florian Mickler Date: Mon Mar 21 15:33:45 2011 -0300 [media] m920x: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit b47b850116369a474f71c8ee1e7d06dfa9bf5468 Author: Florian Mickler Date: Mon Mar 21 15:33:44 2011 -0300 [media] dw2102: get rid of on-stack dma buffer usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Igor M. Liplianin Signed-off-by: Mauro Carvalho Chehab commit 0e4e7208e6b33816c457292ee771da3a5779027b Author: Florian Mickler Date: Mon Mar 21 15:33:43 2011 -0300 [media] friio: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Cc: Akihiro Tsukada Signed-off-by: Mauro Carvalho Chehab commit ab22cbda6651db25d03052aa9ee9452b5eaa3edd Author: Florian Mickler Date: Mon Mar 21 15:33:42 2011 -0300 [media] vp7045: get rid of on-stack dma buffers Signed-off-by: Mauro Carvalho Chehab commit 54f4e11ae3051ff7a921494be5106788db19dcf7 Author: Florian Mickler Date: Mon Mar 21 15:33:41 2011 -0300 [media] a800: get rid of on-stack dma buffers usb_control_msg initiates (and waits for completion of) a dma transfer using the supplied buffer. That buffer thus has to be seperately allocated on the heap. In lib/dma_debug.c the function check_for_stack even warns about it: WARNING: at lib/dma-debug.c:866 check_for_stack Note: This change is tested to compile only, as I don't have the hardware. Signed-off-by: Florian Mickler Signed-off-by: Mauro Carvalho Chehab commit ca73877587abfb8213c8eb21fec4f7d2bca36069 Author: Florian Mickler Date: Sun Apr 3 14:23:43 2011 -0300 [media] dib0700: remove unused variable This variable is never used. Signed-off-by: Florian Mickler Signed-off-by: Mauro Carvalho Chehab commit ffa5899ce8a6d82e42ae0ca23a10cf92d914045e Author: Olivier Grenie Date: Thu Mar 24 09:32:26 2011 -0300 [media] DiB0700: get rid of on-stack dma buffers This patch removes the on-stack buffers for USB DMA transfers. This is an alternative version of the patch discussed by Florian here: http://thread.gmane.org/gmane.linux.kernel/1115695/ Signed-off-by: Olivier Grenie Signed-off-by: Patrick Boettcher Signed-off-by: Mauro Carvalho Chehab commit b9f7b73c8c107d83a4c04c4f29a2ca96f7e73faf Author: Florian Mickler Date: Sun Mar 20 18:50:51 2011 -0300 [media] lmedm04: correct indentation This should not change anything except whitespace. Signed-off-by: Florian Mickler Signed-off-by: Mauro Carvalho Chehab commit bbcede07b44886f4ffe496363c819c5ecebac8b0 Author: Michael Jones Date: Wed Mar 16 11:22:53 2011 -0300 [media] ignore Documentation/DocBook/media/ It only contains generated files Signed-off-by: Michael Jones Acked-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab commit 474fdc0822abd36d38041c0f02513adb5006f6cb Author: Joonyoung Shim Date: Fri Mar 11 03:54:48 2011 -0300 [media] radio-si470x: convert to use request_threaded_irq() Signed-off-by: Joonyoung Shim Signed-off-by: Mauro Carvalho Chehab commit 949cf31cb00c16a1011c73c43f30cd3e2dfb6610 Author: Joonyoung Shim Date: Fri Mar 11 03:54:47 2011 -0300 [media] radio-si470x: convert to dev_pm_ops Signed-off-by: Joonyoung Shim Signed-off-by: Mauro Carvalho Chehab commit 0830be3fe107372b375256c5303cabd85d4be234 Author: Joonyoung Shim Date: Fri Mar 11 03:54:46 2011 -0300 [media] radio-si470x: support seek and tune interrupt enable Currently we use busy waiting to seek and tune, it can replace to interrupt way. SI470X I2C driver supports interrupt way to week and tune via this patch. Signed-off-by: Joonyoung Shim Signed-off-by: Mauro Carvalho Chehab commit cc73b4b57c59141bb8a99f86a1af95f296262558 Author: Jarod Wilson Date: Mon Apr 11 18:49:24 2011 -0300 [media] tm6000: fix vbuf may be used uninitialized In commit 8aff8ba95155df, most of the manipulations to vbuf inside copy_streams were gated on if !dev->radio, but one place that touches vbuf lays outside those gates -- a memcpy of vbuf isn't NULL. If we initialize vbuf to NULL, that memcpy will never happen in the case where we do have dev->radio, and otherwise, in the !dev->radio case, the code behaves exactly like it did prior to 8aff8ba95155df. While we're at it, also fix an incorrectly indented closing brace for one of the sections touching vbuf that is conditional on !dev->radio. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 990528ebe7b7f07f67e29e66700297b10557a706 Author: Jarod Wilson Date: Thu Mar 24 16:43:45 2011 -0300 [media] lirc_sasem: key debug spew off debug modparam Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 68a49a4a3dc9354b6daa24dd87e4e246b6da3c13 Author: Jarod Wilson Date: Thu Mar 24 12:56:16 2011 -0300 [media] ttusb-budget: driver has a debug param, use it Remove DEBUG define, key debug spew off of the module's debug param that already exists. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 2faa0ca82c7180f58a4b3bb3c460e5bdcdcf04c6 Author: Jarod Wilson Date: Tue Apr 19 16:47:34 2011 -0300 [media] mceusb: Formosa e017 device has no tx Per hardware provided to me, the Formosa Industrial Computing eHome Infrared Receiver, 0x147a:0xe017, has no tx capability, it is rx only. Thanks go to Paul Rae for the hardware. Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 39381d4fcd97462f0262bef382b7643f17787587 Author: Jarod Wilson Date: Tue Apr 12 13:38:27 2011 -0300 [media] rc/nuvoton-cir: enable CIR on w83667hg chip variant Thanks to some excellent investigative work by Douglas Clowes, it was uncovered that the older w83667hg Nuvoton chip functions with this driver after actually enabling the CIR function via its multi-function chip config register. The CIR and CIR wide-band sensor enable bits are just in a different place on this hardware, so we only poke register 0x27 on 677 hardware now, and we poke register 0x2c on the 667 now. Reported-by: Douglas Clowes Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 362d3a3a9592598cef1d3e211ad998eb844dc5f3 Author: Jarod Wilson Date: Tue Apr 12 14:00:07 2011 -0300 [media] rc/nuvoton-cir: only warn about unknown chips There are additional chip IDs that report a PNP ID of NTN0530, which we were refusing to load on. Instead, lets just warn if we encounter an unknown chip, as there's a chance it will work just fine. Also, expand the list of known hardware to include both an earlier and a later generation chip that this driver should function with. Douglas has an older w83667hg variant, that with a touch more work, will be supported by this driver, and Lutz has a newer w83677hg variant that works without any further modifications to the driver. Reported-by: Douglas Clowes Reported-by: Lutz Sammer Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 56c0893c4f66a5d249b8981101755bec5890500d Author: Jarod Wilson Date: Tue Apr 5 18:42:30 2011 -0300 [media] rc: further key name standardization Use the newly introduced KEY_IMAGES where appropriate, and standardize on KEY_MEDIA for media center/application launcher button (such as the Windows logo key on the Windows Media Center Ed. remotes). Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit d8ee99e79994f916bc5b81990f861ea923e7f332 Author: Jarod Wilson Date: Thu Mar 24 12:59:10 2011 -0300 [media] mceusb: tivo transceiver should default to tivo keymap Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit d0ff237133bf05c16d5604906cfb8774c5751b81 Author: Jarod Wilson Date: Thu Mar 24 12:58:48 2011 -0300 [media] rc: add tivo/nero liquidtv keymap Signed-off-by: Jarod Wilson Signed-off-by: Mauro Carvalho Chehab commit 6612155a1dce344fb609c9487a879c693150ebb1 Author: Antonio Ospite Date: Thu Apr 7 12:45:52 2011 -0300 [media] gspca - kinect: New subdriver for Microsoft Kinect The Kinect sensor is a device used by Microsoft for its Kinect project, which is a system for controller-less Human-Computer interaction targeted for Xbox 360. In the Kinect device, RGBD data is captured from two distinct sensors: a regular RGB sensor and a monochrome sensor which, with the aid of a IR structured light, captures what is finally exposed as a depth map; so what we have is basically a Structured-light 3D scanner. The Kinect gspca subdriver just supports the video stream for now, exposing the output from the RGB sensor or the unprocessed output from the monochrome sensor; it does not deal with the processed depth stream yet, but it allows using the sensor as a Webcam or as an IR camera (an external source of IR light might be needed for this use). The low level implementation is based on code from the OpenKinect project (http://openkinect.org). Signed-off-by: Antonio Ospite Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 8bb36c2139f7bcea32a78472272f1d0de3b00f7b Author: Antonio Ospite Date: Thu Apr 7 12:45:51 2011 -0300 [media] Add Y10B, a 10 bpp bit-packed greyscale format Add a 10 bits per pixel greyscale format in a bit-packed array representation, naming it Y10B. Such pixel format is supplied for instance by the Kinect sensor device. Signed-off-by: Antonio Ospite Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit da75191b43c9078c4a2b8f656872c10e9b3fbe64 Author: Jean-François Moine Date: Tue Apr 19 14:51:15 2011 -0300 [media] gspca - zc3xx: Adjust the mc501cb exchanges Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 5396e62fa1c637f9993023c82f5a1840ab58a960 Author: Patrice Chotard Date: Mon Apr 18 17:42:06 2011 -0300 [media] gspca - jeilinj: add SPORTSCAM specific controls Signed-off-by: Patrice CHOTARD Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 713b466f0f67de2d9dc9de85741fffd8516b34fb Author: Patrice Chotard Date: Mon Apr 18 17:40:54 2011 -0300 [media] gspca - jeilinj: Add SPORTSCAM_DV15 camera support Signed-off-by: Patrice CHOTARD Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 6f8efcfb3dc88e4c626765278afc40ed4bfc18e2 Author: Patrice Chotard Date: Mon Apr 18 17:39:38 2011 -0300 [media] gspca - jeilinj: add 640*480 resolution support Signed-off-by: Patrice CHOTARD Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit 8715b16eadef74e9cf167f44961354f54b547e2a Author: Patrice Chotard Date: Mon Apr 18 17:38:37 2011 -0300 [media] gspca - jeilinj: use gspca_dev->usb_err to forward error to upper layer Signed-off-by: Patrice CHOTARD Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit c3d8692758dfaaf0049d6112c94c819de9237577 Author: Patrice Chotard Date: Mon Apr 18 17:37:06 2011 -0300 [media] gspca - jeilinj: suppress workqueue Signed-off-by: Patrice CHOTARD Signed-off-by: Jean-François Moine Signed-off-by: Mauro Carvalho Chehab commit ec2a0954350098dccd579c945c8bf5cf969c604b Author: Michael Krufky Date: Thu Feb 17 17:33:28 2011 -0300 [media] tveeprom: update hauppauge tuner list thru 174 Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 47ac84d5b1a680f350bc07d1dc4129eb0095414e Author: Michael Krufky Date: Sat Apr 16 23:02:00 2011 -0300 [media] tveeprom: update hauppauge tuner list thru 169 Signed-off-by: Michael Krufky Signed-off-by: Mauro Carvalho Chehab commit 70fc26fbcd0ac8e6bc1ca1cdc6fe623e7ac37ca1 Author: Antti Palosaari Date: Tue Apr 12 20:17:11 2011 -0300 [media] anysee: add more info about known board configs Add some comments about known GPIO settings of supported board versions. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 882b82caf2cb8210e6829231cb352dea33f83f4c Author: Antti Palosaari Date: Tue Apr 12 19:49:25 2011 -0300 [media] anysee: add support for two byte I2C address After that Anysee I2C adapter is capable of one and two byte long I2C addresses in case of read from I2C bus. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit e82eea79a3518e116f7e337fab2b5ca3072ed99c Author: Antti Palosaari Date: Tue Apr 12 19:43:30 2011 -0300 [media] anysee: enhance demod and tuner attach Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 1fd80701b5bd42fce36f4d32d5c5415354e68d98 Author: Antti Palosaari Date: Tue Apr 12 17:34:08 2011 -0300 [media] anysee: fix E30 Combo Plus TDA18212 DVB-T Use correct I2C address for ZL10353 DVB-T demod. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 59fb41409d21c491671f74c676373118f48e2136 Author: Antti Palosaari Date: Tue Apr 12 10:22:47 2011 -0300 [media] anysee: fix E30 Combo Plus TDA18212 GPIO Looks like it is IF route switch on IOE[0]. Set it correctly to route signal from tuner to demod. Now it works for DVB-C too. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit a43be980b3cf9c72f4bac4c7ce043e52004c6d90 Author: Antti Palosaari Date: Sun Apr 10 20:23:02 2011 -0300 [media] anysee: add support for Anysee E7 TC It is ZL10353, TDA10023 and TDA18212. Tuner is inside of Samsung DNOD44CDH086A tuner module. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 72ffd2b822b4ff589432df0f56e3d2cd60c10447 Author: Antti Palosaari Date: Sun Apr 10 20:14:50 2011 -0300 [media] anysee: add support for TDA18212 based E30 Combo Plus New models have new NXP TDA18212 silicon tuner. Not tested yet due to lack of HW... Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 41f81f686a85af144ad9769a15ef8575b69eee38 Author: Antti Palosaari Date: Sun Apr 10 17:53:52 2011 -0300 [media] anysee: reimplement demod and tuner attach Use board ID as base value when selecting correct hardware configuration. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 592d9e21f5d875e84d09940eff7bc48812245855 Author: Antti Palosaari Date: Sat Apr 9 21:13:33 2011 -0300 [media] anysee: change some messages Print firmware version as two digit long (change from 3 to 2). Windows app have changed that too. First byte was hard coded as 0. Change email list address to report non-working device to current one. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit b3e6a5af2162d114df4fd67353bbadd3d8a22c3e Author: Antti Palosaari Date: Sat Apr 9 21:00:51 2011 -0300 [media] anysee: fix multibyte I2C read It can read more than one byte from I2C bus. Allow that. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 7ea03d211c055cfdef7930a29a11a54d2682f953 Author: Antti Palosaari Date: Sat Apr 9 20:50:07 2011 -0300 [media] anysee: I2C address fix Switch from 8 bit notation to real 7 bit. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 26eb7045f1c9eee3b65f573d27154d53aa9d6cc7 Author: Antti Palosaari Date: Sat Apr 9 20:07:30 2011 -0300 [media] NXP TDA18212HN silicon tuner driver New silicon tuner driver. Signed-off-by: Antti Palosaari Signed-off-by: Mauro Carvalho Chehab commit 437b77552fe24f934836b28074a87a32f6fe485a Author: Andy Walls Date: Sun Mar 27 00:43:30 2011 -0300 [media] cx18: Bump driver version, since a new class of HVR-1600 is properly supported Make a user visible driver version change, for the inevitable user support questions about why newer model HVR-1600's do not work with (older versions of) the cx18 driver. Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 2bfe2fa43eb2122f200e83df7428391f33537ff2 Author: Andy Walls Date: Sun Mar 27 00:20:37 2011 -0300 [media] cx18: Make RF analog TV work for newer HVR-1600 models with silicon tuners A previous changes which added the newer model HVR-1600's and DTV support for them, neglected to add RF analog TV for them. Fix RF analog TV for the newer HVR-1600's which have a worldwide analog tuner assembly with a TDA18271 tuner and TDA8295 demodulator. Thanks go to Jeff Campbell and Mike Bradley for reproting the problem, and also to Mike Bradley for doing a lot of the legwork to figure out the tuner reset GPIO line, the demodulator I2C address, and that the GPIOs have to be reinitialized after a cardtype switch. Reported-by: Jeff Campbell Tested-by: Andy Walls Signed-off-by: Andy Walls Signed-off-by: Mauro Carvalho Chehab commit 834751d4365822f769d8af2fd37dc674997a313c Author: Mauro Carvalho Chehab Date: Fri Mar 25 12:46:05 2011 -0300 [media] drxd: use mutex instead of semaphore Signed-off-by: Mauro Carvalho Chehab commit b15ca3341442e573ef49207200ad42f6abd4f5b4 Author: Mauro Carvalho Chehab Date: Fri Mar 25 12:38:56 2011 -0300 [media] Remove the now obsolete drx397xD This was replaced by Micronas drxd driver Signed-off-by: Mauro Carvalho Chehab commit c8b281161dfa4bb5d5be63fb036ce19347b88c63 Author: Nikhil Rao Date: Wed May 18 14:37:48 2011 -0700 sched: Increase SCHED_LOAD_SCALE resolution Introduce SCHED_LOAD_RESOLUTION, which scales is added to SCHED_LOAD_SHIFT and increases the resolution of SCHED_LOAD_SCALE. This patch sets the value of SCHED_LOAD_RESOLUTION to 10, scaling up the weights for all sched entities by a factor of 1024. With this extra resolution, we can handle deeper cgroup hiearchies and the scheduler can do better shares distribution and load load balancing on larger systems (especially for low weight task groups). This does not change the existing user interface, the scaled weights are only used internally. We do not modify prio_to_weight values or inverses, but use the original weights when calculating the inverse which is used to scale execution time delta in calc_delta_mine(). This ensures we do not lose accuracy when accounting time to the sched entities. Thanks to Nikunj Dadhania for fixing an bug in c_d_m() that broken fairness. Below is some analysis of the performance costs/improvements of this patch. 1. Micro-arch performance costs: Experiment was to run Ingo's pipe_test_100k 200 times with the task pinned to one cpu. I measured instruction, cycles and stalled-cycles for the runs. See: http://thread.gmane.org/gmane.linux.kernel/1129232/focus=1129389 for more info. -tip (baseline): Performance counter stats for '/root/load-scale/pipe-test-100k' (200 runs): 964,991,769 instructions # 0.82 insns per cycle # 0.33 stalled cycles per insn # ( +- 0.05% ) 1,171,186,635 cycles # 0.000 GHz ( +- 0.08% ) 306,373,664 stalled-cycles-backend # 26.16% backend cycles idle ( +- 0.28% ) 314,933,621 stalled-cycles-frontend # 26.89% frontend cycles idle ( +- 0.34% ) 1.122405684 seconds time elapsed ( +- 0.05% ) -tip+patches: Performance counter stats for './load-scale/pipe-test-100k' (200 runs): 963,624,821 instructions # 0.82 insns per cycle # 0.33 stalled cycles per insn # ( +- 0.04% ) 1,175,215,649 cycles # 0.000 GHz ( +- 0.08% ) 315,321,126 stalled-cycles-backend # 26.83% backend cycles idle ( +- 0.28% ) 316,835,873 stalled-cycles-frontend # 26.96% frontend cycles idle ( +- 0.29% ) 1.122238659 seconds time elapsed ( +- 0.06% ) With this patch, instructions decrease by ~0.10% and cycles increase by 0.27%. This doesn't look statistically significant. The number of stalled cycles in the backend increased from 26.16% to 26.83%. This can be attributed to the shifts we do in c_d_m() and other places. The fraction of stalled cycles in the frontend remains about the same, at 26.96% compared to 26.89% in -tip. 2. Balancing low-weight task groups Test setup: run 50 tasks with random sleep/busy times (biased around 100ms) in a low weight container (with cpu.shares = 2). Measure %idle as reported by mpstat over a 10s window. -tip (baseline): 06:47:48 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle intr/s 06:47:49 PM all 94.32 0.00 0.06 0.00 0.00 0.00 0.00 0.00 5.62 15888.00 06:47:50 PM all 94.57 0.00 0.62 0.00 0.00 0.00 0.00 0.00 4.81 16180.00 06:47:51 PM all 94.69 0.00 0.06 0.00 0.00 0.00 0.00 0.00 5.25 15966.00 06:47:52 PM all 95.81 0.00 0.00 0.00 0.00 0.00 0.00 0.00 4.19 16053.00 06:47:53 PM all 94.88 0.06 0.00 0.00 0.00 0.00 0.00 0.00 5.06 15984.00 06:47:54 PM all 93.31 0.00 0.00 0.00 0.00 0.00 0.00 0.00 6.69 15806.00 06:47:55 PM all 94.19 0.00 0.06 0.00 0.00 0.00 0.00 0.00 5.75 15896.00 06:47:56 PM all 92.87 0.00 0.00 0.00 0.00 0.00 0.00 0.00 7.13 15716.00 06:47:57 PM all 94.88 0.00 0.00 0.00 0.00 0.00 0.00 0.00 5.12 15982.00 06:47:58 PM all 95.44 0.00 0.00 0.00 0.00 0.00 0.00 0.00 4.56 16075.00 Average: all 94.49 0.01 0.08 0.00 0.00 0.00 0.00 0.00 5.42 15954.60 -tip+patches: 06:47:03 PM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle intr/s 06:47:04 PM all 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16630.00 06:47:05 PM all 99.69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.31 16580.20 06:47:06 PM all 99.69 0.00 0.06 0.00 0.00 0.00 0.00 0.00 0.25 16596.00 06:47:07 PM all 99.20 0.00 0.74 0.00 0.00 0.06 0.00 0.00 0.00 17838.61 06:47:08 PM all 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16540.00 06:47:09 PM all 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16575.00 06:47:10 PM all 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 16614.00 06:47:11 PM all 99.94 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.06 16588.00 06:47:12 PM all 99.94 0.00 0.06 0.00 0.00 0.00 0.00 0.00 0.00 16593.00 06:47:13 PM all 99.94 0.00 0.06 0.00 0.00 0.00 0.00 0.00 0.00 16551.00 Average: all 99.84 0.00 0.09 0.00 0.00 0.01 0.00 0.00 0.06 16711.58 We see an improvement in idle% on the system (drops from 5.42% on -tip to 0.06% with the patches). We see an improvement in idle% on the system (drops from 5.42% on -tip to 0.06% with the patches). Signed-off-by: Nikhil Rao Acked-by: Peter Zijlstra Cc: Nikunj A. Dadhania Cc: Srivatsa Vaddagiri Cc: Stephan Barwolf Cc: Mike Galbraith Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/1305754668-18792-1-git-send-email-ncrao@google.com Signed-off-by: Ingo Molnar commit 1399fa7807a1a5998bbf147e80668e9950661dfa Author: Nikhil Rao Date: Wed May 18 10:09:39 2011 -0700 sched: Introduce SCHED_POWER_SCALE to scale cpu_power calculations SCHED_LOAD_SCALE is used to increase nice resolution and to scale cpu_power calculations in the scheduler. This patch introduces SCHED_POWER_SCALE and converts all uses of SCHED_LOAD_SCALE for scaling cpu_power to use SCHED_POWER_SCALE instead. This is a preparatory patch for increasing the resolution of SCHED_LOAD_SCALE, and there is no need to increase resolution for cpu_power calculations. Signed-off-by: Nikhil Rao Acked-by: Peter Zijlstra Cc: Nikunj A. Dadhania Cc: Srivatsa Vaddagiri Cc: Stephan Barwolf Cc: Mike Galbraith Link: http://lkml.kernel.org/r/1305738580-9924-3-git-send-email-ncrao@google.com Signed-off-by: Ingo Molnar commit f05998d4b80632f2cc00f108da503066ef5d38d5 Author: Nikhil Rao Date: Wed May 18 10:09:38 2011 -0700 sched: Cleanup set_load_weight() Avoid using long repetitious names; make this simpler and nicer to read. No functional change introduced in this patch. Signed-off-by: Nikhil Rao Acked-by: Peter Zijlstra Cc: Nikunj A. Dadhania Cc: Srivatsa Vaddagiri Cc: Stephan Barwolf Cc: Mike Galbraith Link: http://lkml.kernel.org/r/1305738580-9924-2-git-send-email-ncrao@google.com Signed-off-by: Ingo Molnar commit 79deb8e511bd6fc8e40add4da75b19df085d9453 Author: Cyrill Gorcunov Date: Thu May 19 16:45:50 2011 -0700 x86, x2apic: Move the common bits to x2apic.h To eliminate code duplication. Signed-off-by: Cyrill Gorcunov Signed-off-by: Suresh Siddha Cc: steiner@sgi.com Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110519234637.591426753@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 9d0fa6c5f43f2d9c6966dcab7af96a717682fdec Author: Cyrill Gorcunov Date: Thu May 19 16:45:49 2011 -0700 x86, x2apic: Minimize IPI register writes using cluster groups In the case of x2apic cluster mode we can group IPI register writes based on the cluster group instead of individual per-cpu destination messages. This reduces the apic register writes and reduces the amount of IPI messages (in the best case we can reduce it by a factor of 16). With this change, the cost of flush_tlb_others(), with the flush tlb IPI being sent from a cpu in the socket-1 to all the logical cpus in socket-2 (on a Westmere-EX system that has 20 logical cpus in a socket) is 3x times better now (compared to the former 'send one-by-one' algorithm). Signed-off-by: Cyrill Gorcunov Signed-off-by: Suresh Siddha Cc: steiner@sgi.com Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110519234637.512271057@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit a39d1f3f67f6a3d72b24f0d8bf9a295a27ea448e Author: Cyrill Gorcunov Date: Thu May 19 16:45:48 2011 -0700 x86, x2apic: Track the x2apic cluster sibling map In the case of x2apic cluster mode, we can group IPI register writes based on the cluster group instead of individual per-cpu destination messages. For this purpose, track the cpu's that belong to the same x2apic cluster. Signed-off-by: Cyrill Gorcunov Signed-off-by: Suresh Siddha Cc: steiner@sgi.com Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110519234637.421800999@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit a27d0b5e7d913b38880678ac05690f1dc737c4fd Author: Suresh Siddha Date: Thu May 19 16:45:47 2011 -0700 x86, x2apic: Remove duplicate code for IPI mask routines Signed-off-by: Suresh Siddha Acked-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110519234637.337024125@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 9ebd680bd029a9fc47399ca61c950f8b6730ac40 Author: Suresh Siddha Date: Thu May 19 16:45:46 2011 -0700 x86, apic: Use probe routines to simplify apic selection Use the unused probe routine in the apic driver to finalize the apic model selection. This cleans up the default_setup_apic_routing() and this probe routine in future can also be used for doing any apic model specific initialisation. Signed-off-by: Suresh Siddha Acked-by: Cyrill Gorcunov Cc: steiner@sgi.com Cc: yinghai@kernel.org Link: http://lkml.kernel.org/r/20110519234637.247458931@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 8f18c9711ed31c257d4f00a094b2fdbe72a741da Author: Suresh Siddha Date: Wed May 18 16:31:39 2011 -0700 x86, ioapic: Consolidate mp_ioapic_routing[] into 'struct ioapic' Signed-off-by: Suresh Siddha Cc: daniel.blueman@gmail.com Link: http://lkml.kernel.org/r/20110518233158.089978277@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit c040aaeb86f66e956e147ce5f238d28308e06109 Author: Suresh Siddha Date: Wed May 18 16:31:38 2011 -0700 x86, ioapic: Consolidate gsi routing info into 'struct ioapic' Signed-off-by: Suresh Siddha Cc: daniel.blueman@gmail.com Link: http://lkml.kernel.org/r/20110518233157.994002011@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit d5371430840f3e8d3b8bdbc9c02867808f299449 Author: Suresh Siddha Date: Wed May 18 16:31:37 2011 -0700 x86, ioapic: Consolidate mp_ioapics[] into 'struct ioapic' Signed-off-by: Suresh Siddha Cc: daniel.blueman@gmail.com Link: http://lkml.kernel.org/r/20110518233157.909013179@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 57a6f74023c7fd943160d7635bbc8d9f66e2ab54 Author: Suresh Siddha Date: Wed May 18 16:31:36 2011 -0700 x86, ioapic: Consolidate ioapic_saved_data[] into 'struct ioapic' Signed-off-by: Suresh Siddha Cc: daniel.blueman@gmail.com Link: http://lkml.kernel.org/r/20110518233157.830697056@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit b69c6c3becc102f3eebc4ebba582abfe76be3f45 Author: Suresh Siddha Date: Wed May 18 16:31:35 2011 -0700 x86, ioapic: Add struct ioapic Introduce struct ioapic with nr_registers field. This will pave way for consolidating different MAX_IO_APICS arrays into it. Signed-off-by: Suresh Siddha Cc: daniel.blueman@gmail.com Link: http://lkml.kernel.org/r/20110518233157.744315519@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 15bac20bd8a039e9acb274785be82772e1237eed Author: Suresh Siddha Date: Wed May 18 16:31:34 2011 -0700 x86, ioapic: Remove duplicate code for saving/restoring RTEs Code flow for enabling interrupt-remapping has its own routines for saving and restoring io-apic RTE's. ioapic suspend/resume code flow also has similar routines. Remove the duplicate code. Tested-by: Daniel J Blueman Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/20110518233157.673130611@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 31dce14a3269843f98ce1bc37d0c91b22f1991ee Author: Suresh Siddha Date: Wed May 18 16:31:33 2011 -0700 x86, ioapic: Use ioapic_saved_data while enabling intr-remapping Code flow for enabling interrupt-remapping was allocating/freeing buffers for saving/restoring io-apic RTE's. ioapic suspend/resume code uses boot time allocated ioapic_saved_data that is a perfect match for reuse here. This will remove the unnecessary allocation/free of the temporary buffers during suspend/resume of interrupt-remapping enabled platforms aswell as paving the way for further code consolidation. Tested-by: Daniel J Blueman Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/20110518233157.574469296@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit 4c79185cdb1425fb74241d0be772ff1a9913091a Author: Suresh Siddha Date: Wed May 18 16:31:32 2011 -0700 x86, ioapic: Allocate ioapic_saved_data early This allows re-using this buffer for enabling interrupt-remapping during boot and resume. And thus allow for consolidating the code between ioapic suspend/resume and interrupt-remapping. Tested-by: Daniel J Blueman Signed-off-by: Suresh Siddha Link: http://lkml.kernel.org/r/20110518233157.481404505@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit b64ce24daffb634b5b3133a2e411bd4de50654e8 Author: Daniel J Blueman Date: Wed May 18 16:31:31 2011 -0700 x86, ioapic: Fix potential resume deadlock Fix a potential deadlock when resuming; here the calling function has disabled interrupts, so we cannot sleep. Change the memory allocation flag from GFP_KERNEL to GFP_ATOMIC. TODO: We can do away with this memory allocation during resume by reusing the ioapic suspend/resume code that uses boot time allocated buffers, but we want to keep this -stable patch simple. Signed-off-by: Daniel J Blueman Signed-off-by: Suresh Siddha Cc: # v2.6.38/39 Link: http://lkml.kernel.org/r/20110518233157.385970138@sbsiddha-MOBL3.sc.intel.com Signed-off-by: Ingo Molnar commit bf5af9b5bba2453ff46f241e8f2e139ca79302e7 Author: Benjamin Tissoires Date: Thu May 19 14:18:18 2011 +0200 HID: hid-multitouch: class MT_CLS_STANTUM is redundant with MT_CLS_CONFIDENCE Stantum devices used to work with MT_CLS_STANTUM but MT_CLS_CONFIDENCE is exactly the same. This patch switches them to this generic class, and remove the unused MT_CLS_STANTUM. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 617b64f97708be26a061e6c8178ad46b4c49d031 Author: Benjamin Tissoires Date: Thu May 19 14:18:17 2011 +0200 HID: hid-multitouch: add support for Unitec panels This patch introduce support for Unitec panels. This device has not been optimized in term of kernel processing operations (default class), but it will work. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 5e74e56da03f581482c104628951eeb1455848ea Author: Benjamin Tissoires Date: Thu May 19 14:18:16 2011 +0200 HID: hid-multitouch: add support for Touch International panels This patch introduce support for Touch International panels. This device has not been optimized in term of kernel processing operations (default class), but it will work. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit ee0fbd149182d91e3b9df7b306eb03cd1f1dd4a1 Author: Benjamin Tissoires Date: Thu May 19 14:18:15 2011 +0200 HID: hid-multitouch: add support for GoodTouch panels This patch introduce support for GoodTouch panels. This device has not been optimized in term of kernel processing operations (default class), but it will work. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 79603dc9a8223856cf3194dcabad32b9828c7be9 Author: Benjamin Tissoires Date: Thu May 19 14:18:14 2011 +0200 HID: hid-multitouch: add support for CVTouch panels This patch introduce support for CVTouch panels. This device has not been optimized in term of kernel processing operations (default class), but it will work. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit e6aac3427ef03f61e7478514d0648b58359d05d1 Author: Benjamin Tissoires Date: Thu May 19 14:18:13 2011 +0200 HID: hid-multitouch: add support for ActionStar panels This patch introduce support for ActionStar panels. This device has not been optimized in term of kernel processing operations (default class), but it will work. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit d47cc0db8fd6011de2248df505fc34990b7451bf Author: Roedel, Joerg Date: Thu May 19 11:13:39 2011 +0200 x86, amd: Use _safe() msr access for GartTlbWlk disable code The workaround for Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=33012 introduced a read and a write to the MC4 mask msr. Unfortunatly this MSR is not emulated by the KVM hypervisor so that the kernel will get a #GP and crashes when applying this workaround when running inside KVM. This issue was reported as: https://bugzilla.kernel.org/show_bug.cgi?id=35132 and is fixed with this patch. The change just let the kernel ignore any #GP it gets while accessing this MSR by using the _safe msr access methods. Reported-by: Török Edwin Signed-off-by: Joerg Roedel Cc: Rafael J. Wysocki Cc: Maciej Rutecki Cc: Avi Kivity Cc: Andrew Morton Cc: # .39.x Signed-off-by: Ingo Molnar commit 9999daf446b9fa43b5301af423b6798a600e36bc Author: Mauro Carvalho Chehab Date: Fri Mar 25 12:10:05 2011 -0300 [media] drxd: CodingStyle cleanups There are still lots of 80-columns warnings and a few errors at some tables, but changing them would require more work and with probably not much gain. Signed-off-by: Mauro Carvalho Chehab commit 58d5eaec9f877a9bcfa9b6dca0ea51850975c49f Author: Mauro Carvalho Chehab Date: Fri Mar 25 11:45:29 2011 -0300 [media] drxd: Don't use a macro for CHK_ERROR with a break inside The macro is defined as: #define CHK_ERROR(s) if( (status = s)<0 ) break This sucks, as makes harder to debug if something got wrong and there are more than one level of loops. Also, violates CodingStyle. Fixed by this simple perl script: while (<>) { $f.=$_; }; $f=~ s,\n\#define CHK_ERROR[^\n]+\n,\n,; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s,\n(\t+)CHK_ERROR\((.*)\)\;,\n\1status = \2;\n\1if (status < 0)\n\1\tbreak;,g; print $f; Plus a few manual adjustments Signed-off-by: Mauro Carvalho Chehab commit 7fc7356f4eafa953197e1c4e2d236e199a51db28 Author: Mauro Carvalho Chehab Date: Fri Mar 25 10:54:03 2011 -0300 [media] drxd: Fix some CodingStyle issues Signed-off-by: Mauro Carvalho Chehab commit bccd2d8a39a65b008e5af96404139c2260a42fc7 Author: Mauro Carvalho Chehab Date: Fri Mar 25 10:46:32 2011 -0300 [media] drxd: don't re-define u8/u16/u32 types Signed-off-by: Mauro Carvalho Chehab commit 935c630c2cf402419342d66acd04804da8c0704a Author: Mauro Carvalho Chehab Date: Fri Mar 25 10:21:31 2011 -0300 [media] drxd_map_firm.h: Remove unused lines This file is big. It has 12000+ lines! Most of the defined stuff aren't used anyware inside the driver, so we can just remove most of the lines and still keep everything that have any interest for the driver. If anyone ever need the other devices, it will be stored at git logs, so it is easy to recover. The diff result is impressive: 1 files changed, 1013 insertions(+), 12694 deletions(-) rewrite drivers/media/dvb/frontends/drxd_map_firm.h (90%) As a sideback effect, drxd driver will likely compile faster, and checkpatch.pl can run on this file without taking (literally) hours. The code cleanup was done using this small script: $ for i in `perl -ne 'print "$1\n" if (m/define\s+([^\s+]+)/)' drxd_map_firm.h`; do if [ "`grep $i drivers/media/dvb/frontends/drxd*.[ch]`" != "" ] ; then echo $i; fi; done|sort|uniq >used_symbols $ grep -f used_symbols drxd_map_firm.h >defines And then deleting the old #define lines, replacing by "defines" file content. Signed-off-by: Mauro Carvalho Chehab commit be9297d130835082587ef95cc83825871146e840 Author: Mauro Carvalho Chehab Date: Fri Mar 25 09:42:26 2011 -0300 [media] drxd_map_firm.h: make checkpatch.pl happier s/(define\s+[^\s]+)\s........../\1/ Signed-off-by: Mauro Carvalho Chehab commit 6cacdd46e23826c0591238f5f11b1bfa6490797d Author: Devin Heitmueller Date: Thu Mar 24 13:44:01 2011 -0300 [media] drxd: Run lindent across sources Take a first cleanup pass over the sources to bring them closer to the Linux coding style. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 9b316d6b42572f857161232d82b54e7ab2d33fbe Author: Devin Heitmueller Date: Sun Mar 13 02:18:34 2011 -0300 [media] em28xx: add remote control support for PCTV 330e Add support for the PCTV 330e remote control Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 5c4da36401810da6f881f9531380fdc13edd8f2b Author: Devin Heitmueller Date: Sun Mar 13 02:12:02 2011 -0300 [media] em28xx: remove "not validated" flag for PCTV 330e Remove the flag indicating the 330e board is not validated, based on the half dozen users who have reported today that everything is working. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 8f19f27e3e0e055aed877a07198cfbaf9d784105 Author: Devin Heitmueller Date: Sun Mar 13 02:11:07 2011 -0300 [media] drxd: move firmware to binary blob Abstract out the firmware for the drx-d so that it can be loaded by the request_firmware() interface. The firmware licensing permits free redistribution, and can be found here: http://kernellabs.com/firmware/drxd Signed-off-by: Mauro Carvalho Chehab commit ad9b4bb265cecbfc9b0c495741e331ce199964e0 Author: Devin Heitmueller Date: Sun Mar 13 02:09:59 2011 -0300 [media] em28xx: add digital support for PCTV 330e Add the calls necessary to use the new drx-d driver for the PCTV 330e Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 09bc1942c031686bfcf897746b6baf9d42c92ed5 Author: Devin Heitmueller Date: Sun Mar 13 02:07:54 2011 -0300 [media] em28xx: include model number for PCTV 330e Given how PCTV has multiple products with the same model name, include the model number in the description and #define to make it a little more clear. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 7030f52bbee5edafd408f985696516a0dc735ca7 Author: Devin Heitmueller Date: Sun Mar 13 02:04:53 2011 -0300 [media] em28xx: fix GPIO problem with HVR-900R2 getting out of sync with drx-d The em28xx bridge strobes the reset pin on the drx-d on every ts_ctrl call. This results in the state of the chip getting out of the sync with the state of the driver (and hence all tuning requests after the first one fail). Make sure the drx-d is not being held in reset, but don't actually perform a hardware reset on the chip. The GPIO block has been split out from the other HVR-9x0 variants to reduce the risk of regression, although in theory they would not have any issues since none of those cases have the frontend driver managing any internal state. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 6b142b3c81e6e532dfad7256fcc7e75fded49245 Author: Devin Heitmueller Date: Sun Mar 13 02:02:01 2011 -0300 [media] drxd: provide ability to disable the i2c gate control function If the tuner is not actually behind an i2c gate, using the i2c gate control function can wedge the i2c bus. Provide the ability to control on a per-board basis whether it should be used. Problem was noticed on the HVR-900 R2, where it resulted in the first tuning attempt succeeding, and then all subsequent attempts to access the xc3028 being treated as failures (including the call to sleep the tuner). Signed-off-by: Mauro Carvalho Chehab commit 3e5659067892d94d859f8ae4c1129a84fe4d5244 Author: Mauro Carvalho Chehab Date: Thu Mar 24 14:41:00 2011 -0300 [media] em28xx: auto-select drx-k if CUSTOMISE is not set Signed-off-by: Mauro Carvalho Chehab commit 75e2b8694f0b1f8faea1851a39cb7ba07640aa7d Author: Devin Heitmueller Date: Sun Mar 13 02:01:02 2011 -0300 [media] em28xx: enable support for the drx-d on the HVR-900 R2 Add the required board initialization required for the drx-d to work with the 900R2. Signed-off-by: Mauro Carvalho Chehab commit ba96796544f3bfc53a3269f0cf65651e349f8033 Author: Devin Heitmueller Date: Sun Mar 13 01:54:02 2011 -0300 [media] drxd: provide ability to control rs byte Provide the ability for the board configuration to specify whether to insert the RS byte into the TS interconnect to the bridge, while not required for the ngene in fact is required for the em28xx. Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 949a12e3a87281e38d3520823e7e171bbe45b448 Author: Devin Heitmueller Date: Sun Mar 13 01:53:02 2011 -0300 [media] drxd: add driver to Makefile and Kconfig Add the drxd to the Makefile and Kconfig Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 126f1e61887085aa2c2cfa7644aee8295a94e1f7 Author: Ralph Metzler Date: Sat Mar 12 23:44:33 2011 -0500 drx: add initial drx-d driver These are the original drx-d sources, extracted from Ralph Metzler's GPL'd ngene driver. No modifications/cleanup have yet been made. In fact, no measures have been taken to see if the code even compiles. Signed-off-by Ralph Metzler Signed-off-by: Devin Heitmueller Signed-off-by: Mauro Carvalho Chehab commit 0618ece01fdedcd3e775d9d43acc2c2a661a0c54 Author: Bjørn Mork Date: Tue Mar 22 10:22:17 2011 -0300 [media] mantis: trivial module parameter documentation fix The default for "verbose" is 0. Update description to match. Signed-off-by: Bjørn Mork Acked-by: Manu Abraham Signed-off-by: Mauro Carvalho Chehab commit abd34d8d6b213c792c1a06fd75488595c5fb6d3f Author: Bjørn Mork Date: Mon Mar 21 11:35:56 2011 -0300 [media] use pci_dev->revision pci_setup_device() has saved the PCI revision in the pci_dev struct since Linux 2.6.23. Use it. Cc: Auke Kok Signed-off-by: Bjørn Mork Signed-off-by: Mauro Carvalho Chehab commit ec0c8d555a93aa7e2c5c4f11f12686e5b2245696 Author: Guennadi Liakhovetski Date: Wed Mar 23 04:14:43 2011 -0300 [media] V4L: soc_camera_platform: add helper functions to manage device instances Add helper inline functions to correctly manage dynamic allocation and freeing of platform devices. This avoids the ugly code to nullify device objects. Signed-off-by: Guennadi Liakhovetski Acked-by: Magnus Damm Signed-off-by: Mauro Carvalho Chehab commit e0df5417acf65cff05343b1fb83fb40344e155ea Author: Mauro Carvalho Chehab Date: Mon Mar 28 11:53:30 2011 -0300 [media] xc5000: Improve it to work better with 6MHz-spaced channels Brazil uses 6MHz-spaced channels. So, the nyquist filter for DVB-C should be different, otherwise, inter-channel interference may badly affect the device, and signal may not be properly decoded. On my tests here, without this patch, sometimes channels are seen, but, most of the time, PID filter returns with timeout. Signed-off-by: Mauro Carvalho Chehab commit 30bd3b56db37a2c2eb6d3bb14ce02156807c79ed Author: Malcolm Priestley Date: Sun Feb 13 20:12:15 2011 -0300 [media] DM04/QQBOX Fix issue with firmware release and cold reset Fix issue where firmware does not release on cold reset. Also, default firmware never cold resets in multi tuner environment. Signed-off-by: Malcolm Priestley Signed-off-by: Mauro Carvalho Chehab commit 0dfe8da4921fdae6b9c77e320731e490d4b15a99 Author: Stephen Warren Date: Mon May 16 14:19:27 2011 -0600 ASoC: Tegra: Fix compile when debugfs not enabled The prototype of the inline dummy version of tegra_i2s_debug_add was not consistent with the real version. Reported-by: Rhyland-Klein Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 6ae759e889d9fd1733f4392f5083ac8c899253c5 Author: Stephen Warren Date: Thu May 19 17:44:46 2011 -0600 ASoC: spdif-dit: Add missing MODULE_* MODULE_ALIAS is required so that the module will auto-load based on a platform_device registration in the board file. While we're at it, add some other MODULE_*. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d291767b6056540277497d91baa9120428d7cd1a Author: Alex Deucher Date: Fri May 20 04:34:31 2011 -0400 drm/radeon/kms: fixup eDP connector handling It's more like LVDS then DP in some ways. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7c3ed0fd9b72d489243ff97f3cea2e1d4d07d9fa Author: Alex Deucher Date: Fri May 20 04:34:30 2011 -0400 drm/radeon/kms: bail early for eDP in hotplug callback Don't try and en/disable the port as it may be a hpd event from powering up/down the panel during a modeset or dpms. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 1e85e1d07b9255bd52c557f1a77fb72ccfacaf1c Author: Alex Deucher Date: Fri May 20 04:34:29 2011 -0400 drm/radeon/kms: simplify hotplug handler logic In the hotplug handler, just use the drm dpms functions. If the monitor is plugged in, turn it on, if it's not, turn it off. This also reduces power usage by turning off the encoder and crtc when the monitor is unplugged. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 224d94b1445e2a836cd3790ff29f1866c052de4d Author: Alex Deucher Date: Fri May 20 04:34:28 2011 -0400 drm/radeon/kms: rewrite DP handling - reorganize the functions based on use - clean up function naming - rework link training to better match what we use internally - add initial support for DP 1.2 (no MST yet) Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 558e27db8f6a5e364dc6a88087f886049ac17e70 Author: Alex Deucher Date: Fri May 20 04:34:27 2011 -0400 drm/radeon/kms/atom: add support for setting DP panel mode Required for proper operation with DP bridges. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 39b3bdb62a3955db6467a075e77a8d0732caded9 Author: Alex Deucher Date: Fri May 20 04:34:26 2011 -0400 drm/radeon/kms: atombios.h updates for DP panel mode Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 428c4b51b7e133202db49021011f6af64b3276f8 Author: Alex Deucher Date: Fri May 20 04:34:25 2011 -0400 drm/dp: add some new DP regs for DP 1.2 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit eac4dff6d3edc0aea1941db16c03ae19aa628a3c Author: Alex Deucher Date: Fri May 20 04:34:22 2011 -0400 drm/radeon/kms: handle DP bridges Fusion hardware often has DP to VGA/LVDS/TMDS bridges to handle non-DP encoders. Internally we treat them mostly like DP. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 834b2904bbfde3d85b5e984688777d56e9c7bf80 Author: Alex Deucher Date: Fri May 20 04:34:24 2011 -0400 drm/radeon/kms: improve aux error handling Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f8d0edde15702f1e3114d4afc80cb9cced2c754b Author: Alex Deucher Date: Fri May 20 04:34:23 2011 -0400 drm/radeon/kms: improve DP detect logic Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d7fa8bb385d71c0c0c563a063a0f574adc532585 Author: Alex Deucher Date: Fri May 20 04:34:21 2011 -0400 drm/radeon/kms: add some dp encoder/connector helper funcs Used for dp1.2 support and for dp bridges. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 4e633939fe39a98824a0c590a6c1e30559071100 Author: Alex Deucher Date: Fri May 20 04:34:20 2011 -0400 drm/radeon/kms: make sure eDP panel is on for modesetting Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 2dafb74d63d3f79d0357ff19bf7691c22b034926 Author: Alex Deucher Date: Fri May 20 04:34:19 2011 -0400 drm/radeon/kms: fix eDP panel power function need to wait for the panel to power up. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3a5f4a21c5708479a9334c8a8268f300aea2c628 Author: Alex Deucher Date: Fri May 20 04:34:18 2011 -0400 drm/radeon/kms: adjust eDP handling (v2) eDP is usually used as an LVDS replacement, so treat it more like LVDS from the user perspective. v2: encoder mode is always DP for eDP. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 86a94defe2b88380c28547d7053633b26a397d42 Author: Alex Deucher Date: Fri May 20 04:34:17 2011 -0400 drm/radeon/kms: fix up DP clock programming on DCE4/5 In DP mode, the DP ref clock can come from PPLL, DCPLL, or ext clock, depending on the asic. The crtc virtual pixel clock is derived from the DP ref clock. - DCE4: PPLL or ext clock - DCE5: DCPLL or ext clock Setting ATOM_PPLL_INVALID will cause SetPixelClock to skip PPLL/DCPLL programming and only program the DP DTO for the crtc virtual pixel clock. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 8e8e523d865490e95ed7c9d2e173c02648d6be90 Author: Alex Deucher Date: Fri May 20 04:34:16 2011 -0400 drm/radeon/kms: spread spectrum fixes - properly mask the ss type - don't enable ss if type is external or percentage is 0 - if ss enabled and type is external, set ref_div_src to ext clock - prefer ASIC_INTERNAL_SS_ON_DP to LCD_Info SS_Id for eDP - fix ss amount calculation Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit df271bec805b42527d864777ed035fcbb42e76c0 Author: Alex Deucher Date: Fri May 20 04:34:15 2011 -0400 drm/radeon/kms: properly handle bpc >8 in atom command tables Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 96b3bef8c1d20b3f0087a26313296bf476930380 Author: Alex Deucher Date: Fri May 20 04:34:14 2011 -0400 drm/radeon/kms: DCE4.1 DIG encoders are fully routeable just like DCE3.2 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit bbe7b8bef48c567f5ff3f6041c1fb011292e8f12 Author: Thomas Gleixner Date: Fri May 20 11:38:24 2011 +0200 MAINTAINERS: Add drivers/clocksource to TIMEKEEPING It's not a random dump ground and we care about it. Signed-off-by: Thomas Gleixner Cc: Ralf Baechle commit c721be2807467819d16db4d61a4c5db539bcc1c7 Merge: 1e87347 27ad4bf Author: Russell King Date: Fri May 20 10:38:27 2011 +0100 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel-stable commit e28fb9c603f321e0bb4c6c43d58b31de052d6de6 Author: Ralf Baechle Date: Fri May 20 09:34:24 2011 +0100 SOUND: OSS: Remove Au1550 driver. This driver does no longer build since at least 2.6.30 and there is a modern ALSA replacement for it. RIP, Rot In Pieces. Signed-off-by: Ralf Baechle Signed-off-by: Takashi Iwai commit 4a787a3ff3f419c23ab0a5cef677fa441356b818 Merge: a0c8326 d491297 Author: Takashi Iwai Date: Fri May 20 11:25:32 2011 +0200 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit c0e299b1a91cbdb21ae08e382a4176200398bc36 Author: Thomas Gleixner Date: Fri May 20 10:50:52 2011 +0200 clockevents/source: Use u64 to make 32bit happy unsigned long is not 64bit on 32bit machine. Signed-off-by: Thomas Gleixner commit 6cb4b040795c555c7ab4b1ba29b0dba2b5a42beb Author: Jiri Kosina Date: Fri May 20 10:50:13 2011 +0200 HID: hiddev: fix race between hiddev_disconnect and hiddev_release When hiddev_disconnect() runs with chardev open, it will proceed with usbhid_close(). When userspace in parallel runs the hiddev_release(), it sees !hiddev->exists (as it has been already set so by hiddev_disconnect()) and kfrees hiddev while hiddev_disconnect() hasn't finished yet. Serialize the access to hiddev->exists and hiddev->open by existancelock. Reported-by: mike-@cinci.rr.com Signed-off-by: Jiri Kosina commit 23746a66d7d9e73402c68ef00d708796b97ebd72 Author: Jiri Kosina Date: Thu May 19 17:58:07 2011 +0200 HID: magicmouse: ignore 'ivalid report id' while switching modes The device reponds with 'invalid report id' when feature report switching it into multitouch mode is sent to it. This has been silently ignored before 0825411ade ("HID: bt: Wait for ACK on Sent Reports"), but since this commit, it propagates -EIO from the _raw callback . So let the driver ignore -EIO as response to 0xd7,0x01 report, as that's how the device reacts in normal mode. Sad, but following reality. This fixes https://bugzilla.kernel.org/show_bug.cgi?id=35022 Tested-by: Chase Douglas Signed-off-by: Jiri Kosina commit 966922f26c7fb5eddbe3c506b66bb5659f57b76f Author: Armando Visconti Date: Thu May 19 21:41:22 2011 +0200 HID: fix a crash in hid_report_raw_event() function. I'm using a Data Modul EasyTouch USB multitouch controller, which is issuing a hid report with a size equals to 0. The rsize value gets set to 536870912 and Linux is crashing in the memset because the value is too big. Signed-off-by: Armando Visconti Signed-off-by: Jiri Kosina commit 208b3a4c196e733b9cec006dc132cfc149b2810a Author: Benjamin Herrenschmidt Date: Fri May 20 17:50:18 2011 +1000 powerpc: Fix hard CPU IDs detection commit 9d07bc841c9779b4d7902e417f4e509996ce805d "powerpc: Properly handshake CPUs going out of boot spin loop" Would cause a miscalculation of the hard CPU ID. It removes breaking out of the loop when finding a match with a processor, thus the "i" used as an index in the intserv array is always incorrect This broke interrupt on my PowerMac laptop. Signed-off-by: Benjamin Herrenschmidt commit 591e610d651079117bd71c625605a3ebd868b1a1 Author: Wu Fengguang Date: Fri May 20 15:35:43 2011 +0800 ALSA: hda - add Intel Panther Point HDMI codec id Signed-off-by: Wu Fengguang Signed-off-by: Takashi Iwai commit bfe9fc8aebc997ce8bcf8ac0586c84a247812064 Author: Raymond Yau Date: Fri May 20 14:32:04 2011 +0800 ALSA: emu10k1 - Add dB range to Bass and Treble for SB Live! As the "Wave", "Wave Surround" or "Front" Playback Volume must be changed to 70% (i.e. -12 dB) so that distortion won't occur when increase Bass and Treble from 50% to 100%, so the maximum gain in Bass and Treble are +12 dB. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit acb373da7cc8aac7f7f4f35056db16606da01d42 Author: Raymond Yau Date: Fri May 20 13:04:04 2011 +0800 ALSA: hda - Remove PCM mixer elements from Virtual Master of realtek Afer commit aa202455eec51699e44f658530728162cefa1307 , none of realtek codec has hardware volume control "PCM Playback Volume" and "PCM Playback Switch". As Virtual Master require all slave controls must have same number of step and dB range. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 5a2d227fdc7a02ed1b4cebba391d8fb9ad57caaf Author: Adrian Wilkins Date: Thu May 19 21:52:38 2011 +0100 ALSA: hda - Fix input-src parse in patch_analog.c Compare pin type enum to the pin type and not the array index. Fixes bug#0005368. Signed-off-by: Adrian Wilkins Cc: (2.6.37 and later) Signed-off-by: Takashi Iwai commit a2d063ac216c1618bfc2b4d40b7176adffa63511 Author: Steven Rostedt Date: Thu May 19 21:34:58 2011 -0400 extable, core_kernel_data(): Make sure all archs define _sdata A new utility function (core_kernel_data()) is used to determine if a passed in address is part of core kernel data or not. It may or may not return true for RO data, but this utility must work for RW data. Thus both _sdata and _edata must be defined and continuous, without .init sections that may later be freed and replaced by volatile memory (memory that can be freed). This utility function is used to determine if data is safe from ever being freed. Thus it should return true for all RW global data that is not in a module or has been allocated, or false otherwise. Also change core_kernel_data() back to the more precise _sdata condition and document the function. Signed-off-by: Steven Rostedt Acked-by: Ralf Baechle Acked-by: Hirokazu Takata Cc: Richard Henderson Cc: Ivan Kokshaysky Cc: Matt Turner Cc: Geert Uytterhoeven Cc: Roman Zippel Cc: linux-m68k@lists.linux-m68k.org Cc: Kyle McMartin Cc: Helge Deller Cc: JamesE.J.Bottomley Link: http://lkml.kernel.org/r/1305855298.1465.19.camel@gandalf.stny.rr.com Signed-off-by: Ingo Molnar ---- arch/alpha/kernel/vmlinux.lds.S | 1 + arch/m32r/kernel/vmlinux.lds.S | 1 + arch/m68k/kernel/vmlinux-std.lds | 2 ++ arch/m68k/kernel/vmlinux-sun3.lds | 1 + arch/mips/kernel/vmlinux.lds.S | 1 + arch/parisc/kernel/vmlinux.lds.S | 3 +++ kernel/extable.c | 12 +++++++++++- 7 files changed, 20 insertions(+), 1 deletion(-) commit c16dbd54a3fe126b539a0ef149d80221c667bbd5 Merge: 257313b c5fc472 Author: Ingo Molnar Date: Fri May 20 08:54:05 2011 +0200 Merge branch 'perf/core' into perf/urgent Merge reason: One pending commit was left in perf/core after Linus merged perf/core - continue v2.6.40 work in the perf/urgent reason. Signed-off-by: Ingo Molnar commit 43c640157d4366a3ea9ba01f903ea892f46376ee Author: Viresh Kumar Date: Mon May 16 09:40:10 2011 +0530 spi/amba-pl022: work in polling or interrupt mode if pl022_dma_probe fails If pl022_dma_probe fails, we can try to transfer data in polling or interrupt mode. Also, set platform_info->enable_dma to 0, so that no other code tries to use dma. Signed-off-by: Viresh Kumar Acked-by: Linus Walleij Signed-off-by: Grant Likely commit c6e7b8cb11632a3b3968c6f64e179c7619eb70c0 Author: Axel Lin Date: Sun May 15 07:35:16 2011 +0800 spi/spi_s3c24xx: Use spi_bitbang_stop instead of spi_unregister_master in s3c24xx_spi_remove Calling spi_bitbang_stop() will also destroy bitbang->workqueue, which is created by calling spi_bitbang_start() in s3c24xx_spi_probe(). Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 708a7e438806c02add92a585b0a6b4b2ae50159b Author: Axel Lin Date: Sun May 15 07:33:28 2011 +0800 spi/spi_nuc900: Use spi_bitbang_stop instead of spi_unregister_master in nuc900_spi_remove Calling spi_bitbang_stop() will also destroy bitbang->workqueue, which is created by calling spi_bitbang_start() in nuc900_spi_probe(). Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 8901e1b98e1dad75c4567d03dd00a59bd6c450e8 Author: Axel Lin Date: Wed May 11 21:28:16 2011 +0800 spi/spi_tegra: use spi_unregister_master() instead of spi_master_put() spi_master_put() should only be used in error handling. Once spi_register_master() returns success, we should call spi_unregister_master() instead. Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 680c1305e259a488f489bc887854523b6c6e0705 Author: Axel Lin Date: Wed May 11 21:27:00 2011 +0800 spi/spi_sh: use spi_unregister_master instead of spi_master_put in remove path spi_master_put() should only be used in error handling. Once spi_register_master() returns success, we should call spi_unregister_master() instead. Signed-off-by: Axel Lin Signed-off-by: Grant Likely commit 0c4a1590189b426814748d2e03b95541852b3af6 Author: Mark Brown Date: Wed May 11 00:09:30 2011 +0200 spi: Use void pointers for data in simple SPI I/O operations Currently the simple SPI I/O operations all take pointers to u8 * buffers to operate on. This creates needless type compatibility issues and the underlying spi_transfer structure uses void pointers anyway so convert the API over to take void pointers too. Signed-off-by: Mark Brown Signed-off-by: Grant Likely commit 521999bd4a8c47a86136b9d8223a9480f5906db8 Author: Linus Walleij Date: Thu May 19 20:01:25 2011 +0200 spi/pl022: use cpu_relax in the busy loop This relaxes the cpu in the polling busy-wait loop. Reported-by: Vitaly Wool Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 7f9a4b9797405061a07fca26ff1b4f305c564e5d Author: Linus Walleij Date: Thu May 19 14:13:19 2011 +0200 spi/pl022: mark driver non-experimental This driver has no TODO, and is now used on several platforms: ARM, U300, Ux500, SPEAr and more. So drop the EXPERIMENTAL requirement. Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit a18c266f8e43004c85c56b4077f6158fcadb7707 Author: Magnus Templing Date: Thu May 19 18:05:34 2011 +0200 spi/pl022: timeout on polled transfer v2 This adds the missing handling of polling timeouts and deletes our last todo. Signed-off-by: Magnus Templing Reviewed-by: Srinidhi Kasagar [Fixups from review by Wolfram Sang] Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 78fab4c04c76b8c9327541bd270f82b85b42bbf7 Merge: 3b8a4dd 61c4f2c Author: Grant Likely Date: Fri May 20 00:43:00 2011 -0600 Merge commit 'v2.6.39' into spi/next commit 1adb656e52e1159b0187bf6590df94c7ff44d389 Author: Linus Walleij Date: Fri May 20 00:40:20 2011 -0600 gpio/via: rename VIA local config struct The local VIA GPIO config struct "gpio_config" collides with my extension to the gpio_chip struct, so rename it to viafb_gpio_config so we don't get this clash. Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 280df6b3c3ad777a91f1011cd98d50df891bfef8 Author: Jamie Iles Date: Fri May 20 00:40:19 2011 -0600 basic_mmio_gpio: split into a gpio library and platform device Allow GPIO_BASIC_MMIO_CORE to be used to provide an accessor library for implementing GPIO drivers whilst abstracting the register access detail. Based on a patch from Anton Vorontsov[1] and adapted to allow bgpio_chip to be embedded in another structure. Changes since v1: - Register the gpio_chip in the platform device probe 1. https://lkml.org/lkml/2011/4/19/401 Signed-off-by: Anton Vorontsov Signed-off-by: Jamie Iles Signed-off-by: Grant Likely commit e849dc044af0939135c822833092bc9baf480222 Author: Linus Walleij Date: Fri May 20 00:40:19 2011 -0600 gpio: remove some legacy comments in build files The build files for drivers/gpio has some wording and comments about the directory being reserved exclusively for GPIO expanders (according to the gpio.txt file these are on external busses) and this has been false for some time. We already have PL061 and Xilinx drivers which are in silicon and now I'm moving more silicon drivers here, so delete this and reword it a bit. Signed-off-by: Linus Walleij Signed-off-by: Grant Likely commit 3f397c2144e46d9127662fdb6314f21960d8563d Author: Uwe Kleine-König Date: Fri May 20 00:40:19 2011 -0600 gpio: add trace events for setting direction and value This patch allows to trace gpio operations using ftrace Signed-off-by: Uwe Kleine-König Signed-off-by: Grant Likely commit cc300d9ead66235e23c674babb8a4ae4ad4c9db8 Author: Erik Botö Date: Fri May 20 00:40:18 2011 -0600 gpio/pca953x: Use handle_simple_irq instead of handle_edge_irq Make pca953x driver use the simple irq handler since no hardware control is necessary and the driver lacks an irq_ack function. handle_edge_irq() calls chip->irq_ack() which crashes since this function does not exist. Signed-off-by: Erik Botö Signed-off-by: Richard Röjfors Signed-off-by: Grant Likely commit 8fa0c9bf82b0b8697ace9532c5a50a0f4e0c7bb5 Author: Jean Delvare Date: Fri May 20 00:40:18 2011 -0600 gpiolib: export gpiochip_find Export function gpiochip_find so that modules can use it. Signed-off-by: Jean Delvare Signed-off-by: Grant Likely commit 6cff9e2b34414733fa61fddef909e9ae1e4beaf3 Author: H Hartley Sweeten Date: Fri May 20 00:40:17 2011 -0600 gpio: remove redundant Kconfig depends on GPIOLIB Since all the drivers are in a 'if GPIOLIB/endif block', the depends on GPIOLIB is redundant so remove them. Signed-off-by: H Hartley Sweeten Signed-off-by: Grant Likely commit fd9962352105f19711d55cc2caaf75b2e201598b Author: Jamie Iles Date: Fri May 20 00:40:17 2011 -0600 basic_mmio_gpio: convert to non-__raw* accessors The __raw_* accessors don't include memory barriers and can cause problems when writes get stuck in write buffers. Suggested-by: Linus Walleij Acked-by: Anton Vorontsov Signed-off-by: Jamie Iles Signed-off-by: Grant Likely commit 31029116ebc1f2481bd2380437e9f7a18f18dca5 Author: Jamie Iles Date: Fri May 20 00:40:17 2011 -0600 basic_mmio_gpio: support direction registers Most controllers require the direction of a GPIO to be set by writing to a direction register. Add support for either an input direction register or an output direction register. Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit dd86a0cc5e35161538c10e35eb85e2ad0adfe14d Author: Jamie Iles Date: Fri May 20 00:40:16 2011 -0600 basic_mmio_gpio: support different input/output registers Some controllers have separate input and output registers. For these controllers, use "set" for the output and "dat" for the input. Changes since v2: reuse "set" for output and "dat" for input rather than adding a new "in" register. Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit e027d6f9d52d9ccabb307d0cb0265de3481b1e9e Author: Jamie Iles Date: Fri May 20 00:40:16 2011 -0600 basic_mmio_gpio: detect output method at probe time Rather than detecting the output method each time in the .set() callback, do it at probe time and set the appropriate callback. Changes since v2: moved the reg_dat initialization into bgpio_setup_io(). Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit 364b5e871839fafffa851bbff9ecf64ac641023c Author: Jamie Iles Date: Fri May 20 00:40:16 2011 -0600 basic_mmio_gpio: request register regions Make sure that we get the register regions with request_mem_region() before ioremap() to make sure we have exclusive access. Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit 924e7a9fc6da124588e27c611841d07047c157b4 Author: Jamie Iles Date: Fri May 20 00:40:15 2011 -0600 basic_mmio_gpio: allow overriding number of gpio Some platforms may have a number of GPIO that is less than the register width of the peripheral. Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit 4ddb8ae217ad2aae888d00d97c5160f677dd38f4 Author: Jamie Iles Date: Fri May 20 00:40:14 2011 -0600 basic_mmio_gpio: convert to platform_{get,set}_drvdata() Use the platform drvdata helpers rather than working on the struct device itself. Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit 8467afec5f8137fd0c13121f8a38c99c54c913f6 Author: Jamie Iles Date: Fri May 20 00:40:14 2011 -0600 basic_mmio_gpio: remove runtime width/endianness evaluation Remove endianness/width calculations at runtime by installing function pointers for bit-to-mask conversion and register accessors. Reported-by: Thomas Gleixner Signed-off-by: Jamie Iles Acked-by: Anton Vorontsov Signed-off-by: Grant Likely commit e83b906c99eb87a11cd731f6726e60cd8ac9ec4b Author: Benjamin Herrenschmidt Date: Fri May 20 15:37:22 2011 +1000 powerpc/pmac: Update via-pmu to new syscore_ops This was left as a sysdev, breaking the build Signed-off-by: Benjamin Herrenschmidt commit 880102e78547c1db158a17e36cf0cdd98e7ad710 Merge: 3d07f0e 39ab05c Author: Benjamin Herrenschmidt Date: Fri May 20 15:36:52 2011 +1000 Merge remote branch 'origin/master' into merge Manual merge of arch/powerpc/kernel/smp.c and add missing scheduler_ipi() call to arch/powerpc/platforms/cell/interrupt.c Signed-off-by: Benjamin Herrenschmidt commit ab50ff684707031ed4bad2fdd313208ae392e5bb Author: Artem Bityutskiy Date: Tue May 17 15:46:01 2011 +0300 UBI: switch to dynamic printks Remove custom dynamic prints and the module parameter to toggle them and use the generic kernel dynamic printk infrastructure. Signed-off-by: Artem Bityutskiy commit ebfce01a6dfa2bd30a16efdeb417862ea0355d3b Author: Artem Bityutskiy Date: Tue May 17 13:26:24 2011 +0300 UBI: turn some macros into static inline Similarly as we have done for UBIFS in 1dcffad74183bb00e8129ba1c5bb2c9931d31bd7, turn the debugging macros into static inline functions, for the same reasons: to avoid gcc 4.5 warnings. Signed-off-by: Artem Bityutskiy commit 3802243a189b0f153acb03f531daf35d40bc38bb Author: Artem Bityutskiy Date: Tue May 17 12:50:08 2011 +0300 UBI: improve checking in debugging prints When debugging is disabled, define debugging prints as if (0) printk() to make sure that the compiler still the format string in debugging messages even if debugging is disabled. Signed-off-by: Artem Bityutskiy commit bdc1a1b6100c78a6002b1761ebe36d5fe8f8585b Author: Artem Bityutskiy Date: Tue May 17 14:07:24 2011 +0300 UBIFS: fix kernel-doc comments This is a minor fix for UBIFS kernel-doc comments - we forgot the "@" symbol for several 'struct ubifs_debug_info'. Signed-off-by: Artem Bityutskiy commit 7196cd6c3d4863000ef88b09f34d6dd75610ec3e Author: Matt Carlson Date: Thu May 19 16:02:44 2011 +0000 tg3: Add braces around 5906 workaround. Commit dabc5c670d3f86d15ee4f42ab38ec5bd2682487d, entitled "tg3: Move TSO_CAPABLE assignment", moved some TSO flagging code around. In the process it failed to add braces around an exceptional 5906 condition. This patch fixes the problem. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit d542fe27c86ecf932f40c898881208ccdaef9dc5 Author: Matt Carlson Date: Thu May 19 16:02:43 2011 +0000 tg3: Fix NETIF_F_LOOPBACK error Mahesh Bandewar noticed that the features cleanup in commit 0da0606f493c5cdab74bdcc96b12f4305ad94085, entitled "tg3: Consolidate all netdev feature assignments", mistakenly sets NETIF_F_LOOPBACK by default. This patch corrects the error. Signed-off-by: Matt Carlson Signed-off-by: Mahesh Bandewar Signed-off-by: David S. Miller commit 449f4544267e73d5db372971da63634707c32299 Author: Eric Dumazet Date: Thu May 19 12:24:16 2011 +0000 macvlan: remove one synchronize_rcu() call When one macvlan device is dismantled, we can avoid one synchronize_rcu() call done after deletion from hash list, since caller will perform a synchronize_net() call after its ndo_stop() call. Add a new netdev->dismantle field to signal this dismantle intent. Reduces RTNL hold time. Signed-off-by: Eric Dumazet CC: Patrick McHardy CC: Ben Greear Signed-off-by: David S. Miller commit 257313b2a87795e07a0bdf58d0fffbdba8b31051 Author: Linus Torvalds Date: Thu May 19 21:22:53 2011 -0700 selinux: avoid unnecessary avc cache stat hit count There is no point in counting hits - we can calculate it from the number of lookups and misses. This makes the avc statistics a bit smaller, and makes the code generation better too. Signed-off-by: Linus Torvalds commit 3d07f0e83d4323d2cd45cc583f7cf1957aca3cac Merge: 593adf3 bbfff72 Author: Benjamin Herrenschmidt Date: Fri May 20 13:43:47 2011 +1000 Merge remote branch 'kumar/next' into next commit 593adf317cf165f7c66facf2285db9d4befbd1c0 Author: Paul Mackerras Date: Wed May 11 00:39:50 2011 +0000 powerpc/kvm: Fix the build for 32-bit Book 3S (classic) processors Commits a5d4f3ad3a ("powerpc: Base support for exceptions using HSRR0/1") and 673b189a2e ("powerpc: Always use SPRN_SPRG_HSCRATCH0 when running in HV mode") cause compile and link errors for 32-bit classic Book 3S processors when KVM is enabled. This fixes these errors. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 44075d95e2567ce7b454bc1a4cf264ff6afebe65 Author: Paul Mackerras Date: Wed May 11 00:38:50 2011 +0000 powerpc/kvm: Fix kvmppc_core_pending_dec The vcpu->arch.pending_exceptions field is a bitfield indexed by interrupt priority number as returned by kvmppc_book3s_vec2irqprio. However, kvmppc_core_pending_dec was using an interrupt vector shifted by 7 as the bit index. Fix it to use the irqprio value for the decrementer interrupt instead. This problem was found by code inspection. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 818d8462bb7c717706bcfe994258e2c3710d1fd0 Author: Chris Metcalf Date: Tue May 17 15:52:22 2011 -0400 arch/tile: cleanups for tilegx compat mode These changes make the syscall table line up correctly for tilegx compat mode, and remove the stale sys32_fadvise64() function, which isn't actually used by any syscall table. Signed-off-by: Chris Metcalf commit f4de51de2edcd26ec77bfc71b1f00b1de5a5dc20 Author: Chris Metcalf Date: Tue May 17 15:25:21 2011 -0400 arch/tile: allocate PCI IRQs later in boot This change became required due to some recent reworking in the platform-independent IRQ code. It is required for 2.6.38 and later. Cc: stable@kernel.org Signed-off-by: Chris Metcalf commit 571d76acdab95876aeff869ab6449f826c23aa43 Author: Chris Metcalf Date: Mon May 16 14:23:44 2011 -0400 arch/tile: support signal "exception-trace" hook This change adds support for /proc/sys/debug/exception-trace to tile. Like x86 and sparc, by default it is set to "1", generating a one-line printk whenever a user process crashes. By setting it to "2", we get a much more complete userspace diagnostic at crash time, including a user-space backtrace, register dump, and memory dump around the address of the crash. Some vestiges of the Tilera-internal version of this support are removed with this patch (the show_crashinfo variable and the arch_coredump_signal function). We retain a "crashinfo" boot parameter which allows you to set the boot-time value of exception-trace. Signed-off-by: Chris Metcalf commit 8aaf1dda42576b0f8dffb004065baa806f4df9b6 Author: Chris Metcalf Date: Mon May 16 13:59:39 2011 -0400 arch/tile: use better definitions of xchg() and cmpxchg() These definitions use a ({}) construct to avoid some cases where we were getting warnings about unused return values. We also promote the definition to the common , since it applies to both the 32- and 64-bit atomics. In addition, define __HAVE_ARCH_CMPXCHG for TILE-Gx since it has efficient direct atomic instructions. Signed-off-by: Chris Metcalf commit 4800a5bb13c09a572f7c74662a77c9eca229eba1 Author: Chris Metcalf Date: Tue May 17 14:41:06 2011 -0400 include/linux/compat.h: coding-style fixes I touched this file when adding support for the "tilegx" sub-architecture, and Andrew Morton observed "The file's a mismash of old-style, wrong-style and right-style. There's no point in doing mishmash preservation! May as well fix things up when we touch them." Accordingly, this change makes as checkpatch-clean as possible. It makes no semantic changes whatsoever. Signed-off-by: Chris Metcalf Signed-off-by: Andrew Morton commit 129257c6af28fadf7c81b796a6ed06db1fcf1b1d Merge: 693d92a 6ad11ea Author: Nicholas Bellinger Date: Fri May 20 02:16:55 2011 +0000 Merge branch 'master' of /pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 into for-40-iscsi-target-merge-v3 commit 044aea9b83614948c98564000db07d1d32b2d29b Author: Linus Torvalds Date: Thu May 19 18:59:47 2011 -0700 selinux: de-crapify avc cache stat code generation You can turn off the avc cache stats, but distributions seem to not do that (perhaps because several performance tuning how-to's talk about the avc cache statistics). Which is sad, because the code it generates is truly horrendous, with the statistics update being sandwitched between get_cpu/put_cpu which in turn causes preemption disables etc. We're talking ten+ instructions just to increment a per-cpu variable in some pretty hot code. Fix the craziness by just using 'this_cpu_inc()' instead. Suddenly we only need a single 'inc' instruction to increment the statistics. This is quite noticeable in the incredibly hot avc_has_perm_noaudit() function (which triggers all the statistics by virtue of doing an avc_lookup() call). Signed-off-by: Linus Torvalds commit 351fc4d660ff134fc33b920e1a3a97de4923dd91 Merge: fb0b760 9e3c256 Author: Dave Airlie Date: Fri May 20 11:30:02 2011 +1000 Merge remote branch 'keithp/drm-intel-next' of ../drm-next into drm-core-next * 'keithp/drm-intel-next' of ../drm-next: drm/i915: initialize gen6 rps work queue on Sandy Bridge and Ivy Bridge drm/i915/sdvo: Reorder i2c initialisation before ddc proxy drm/i915: FDI link training broken on Ironlake by Ivybridge integration drm/i915: enable rc6 by default drm/i915: add fbc enable flag, but disable by default drm/i915: clean up unused ring_get_irq/ring_put_irq functions drm/i915: fix user irq miss in BSD ring on g4x commit 39ab05c8e0b519ff0a04a869f065746e6e8c3d95 Merge: 1477fcc c42d223 Author: Linus Torvalds Date: Thu May 19 18:24:11 2011 -0700 Merge branch 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6 * 'driver-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6: (44 commits) debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning sysfs: remove "last sysfs file:" line from the oops messages drivers/base/memory.c: fix warning due to "memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION" memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION SYSFS: Fix erroneous comments for sysfs_update_group(). driver core: remove the driver-model structures from the documentation driver core: Add the device driver-model structures to kerneldoc Translated Documentation/email-clients.txt RAW driver: Remove call to kobject_put(). reboot: disable usermodehelper to prevent fs access efivars: prevent oops on unload when efi is not enabled Allow setting of number of raw devices as a module parameter Introduce CONFIG_GOOGLE_FIRMWARE driver: Google Memory Console driver: Google EFI SMI x86: Better comments for get_bios_ebda() x86: get_bios_ebda_length() misc: fix ti-st build issues params.c: Use new strtobool function to process boolean inputs debugfs: move to new strtobool ... Fix up trivial conflicts in fs/debugfs/file.c due to the same patch being applied twice, and an unrelated cleanup nearby. commit 1477fcc290b3d5c2614bde98bf3b1154c538860d Author: Stephen Rothwell Date: Fri May 20 11:11:53 2011 +1000 signal.h need a definition of struct task_struct This fixes these build errors on powerpc: In file included from arch/powerpc/mm/fault.c:18: include/linux/signal.h:239: error: 'struct task_struct' declared inside parameter list include/linux/signal.h:239: error: its scope is only this definition or declaration, which is probably not what you want include/linux/signal.h:240: error: 'struct task_struct' declared inside parameter list .. Exposed by commit e66eed651fd1 ("list: remove prefetching from regular list iterators"), which removed the include of from . Without that, linux/signal.h no longer accidentally got the declaration of 'struct task_struct'. Fix by properly declaring the struct, rather than introducing any new header file dependency. Signed-off-by: Stephen Rothwell Signed-off-by: Linus Torvalds commit eb04f2f04ed1227c266b3219c0aaeda525639718 Merge: 5765040 80d0208 Author: Linus Torvalds Date: Thu May 19 18:14:34 2011 -0700 Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (78 commits) Revert "rcu: Decrease memory-barrier usage based on semi-formal proof" net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree batman,rcu: convert call_rcu(softif_neigh_free_rcu) to kfree_rcu batman,rcu: convert call_rcu(neigh_node_free_rcu) to kfree() batman,rcu: convert call_rcu(gw_node_free_rcu) to kfree_rcu net,rcu: convert call_rcu(kfree_tid_tx) to kfree_rcu() net,rcu: convert call_rcu(xt_osf_finger_free_rcu) to kfree_rcu() net/mac80211,rcu: convert call_rcu(work_free_rcu) to kfree_rcu() net,rcu: convert call_rcu(wq_free_rcu) to kfree_rcu() net,rcu: convert call_rcu(phonet_device_rcu_free) to kfree_rcu() perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu() perf,rcu: convert call_rcu(free_ctx) to kfree_rcu() net,rcu: convert call_rcu(__nf_ct_ext_free_rcu) to kfree_rcu() net,rcu: convert call_rcu(net_generic_release) to kfree_rcu() net,rcu: convert call_rcu(netlbl_unlhsh_free_addr6) to kfree_rcu() net,rcu: convert call_rcu(netlbl_unlhsh_free_addr4) to kfree_rcu() security,rcu: convert call_rcu(sel_netif_free) to kfree_rcu() net,rcu: convert call_rcu(xps_dev_maps_release) to kfree_rcu() net,rcu: convert call_rcu(xps_map_release) to kfree_rcu() net,rcu: convert call_rcu(rps_map_release) to kfree_rcu() ... commit 5765040ebfc9a28d9dcfaaaaf3d25840d922de96 Merge: 08839ff de5397a Author: Linus Torvalds Date: Thu May 19 18:10:17 2011 -0700 Merge branch 'x86-smep-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-smep-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, cpu: Enable/disable Supervisor Mode Execution Protection x86, cpu: Add SMEP CPU feature in CR4 x86, cpufeature: Add cpufeature flag for SMEP commit 08839ff8276bd1ba0ce8b2d595f9fe62a5b07210 Merge: 08b5d06 660e34c 0c61227 Author: Linus Torvalds Date: Thu May 19 18:09:45 2011 -0700 Merge branches 'x86-reboot-for-linus' and 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Reorder reboot method preferences * 'x86-setup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, setup: Fix EDD3.0 data verification. commit 08b5d06ec6cff1d952f13cfcffcbf41ff0ce2c86 Merge: 1358820 5d94e81 Author: Linus Torvalds Date: Thu May 19 18:08:06 2011 -0700 Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Introduce pci_map_biosrom() x86, olpc: Use device tree for platform identification commit 13588209aa90d9c8e502750fc86160314555612f Merge: ac2941f dc382fd Author: Linus Torvalds Date: Thu May 19 18:07:31 2011 -0700 Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (50 commits) x86, mm: Allow ZONE_DMA to be configurable x86, NUMA: Trim numa meminfo with max_pfn in a separate loop x86, NUMA: Rename setup_node_bootmem() to setup_node_data() x86, NUMA: Enable emulation on 32bit too x86, NUMA: Enable CONFIG_AMD_NUMA on 32bit too x86, NUMA: Rename amdtopology_64.c to amdtopology.c x86, NUMA: Make numa_init_array() static x86, NUMA: Make 32bit use common NUMA init path x86, NUMA: Initialize and use remap allocator from setup_node_bootmem() x86-32, NUMA: Add @start and @end to init_alloc_remap() x86, NUMA: Remove long 64bit assumption from numa.c x86, NUMA: Enable build of generic NUMA init code on 32bit x86, NUMA: Move NUMA init logic from numa_64.c to numa.c x86-32, NUMA: Update numaq to use new NUMA init protocol x86-32, NUMA: Replace srat_32.c with srat.c x86-32, NUMA: implement temporary NUMA init shims x86, NUMA: Move numa_nodes_parsed to numa.[hc] x86-32, NUMA: Move get_memcfg_numa() into numa_32.c x86, NUMA: make srat.c 32bit safe x86, NUMA: rename srat_64.c to srat.c ... commit ac2941f59a38eeb535e1f227a8f90d7fe6b7828b Merge: 0162818 935a638 c387aa3 983bbf1 dffa4b2 Author: Linus Torvalds Date: Thu May 19 18:03:56 2011 -0700 Merge branches 'x86-efi-for-linus', 'x86-gart-for-linus', 'x86-irq-for-linus' and 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, efi: Ensure that the entirity of a region is mapped x86, efi: Pass a minimal map to SetVirtualAddressMap() x86, efi: Merge contiguous memory regions of the same type and attribute x86, efi: Consolidate EFI nx control x86, efi: Remove virtual-mode SetVirtualAddressMap call * 'x86-gart-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, gart: Don't enforce GART aperture lower-bound by alignment * 'x86-irq-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Don't unmask disabled irqs when migrating them x86: Skip migrating IRQF_PER_CPU irqs in fixup_irqs() * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, mce: Drop the default decoding notifier x86, MCE: Do not taint when handling correctable errors commit 016281880439a8665ecf37514865742da58131d4 Merge: 17b1418 865be7a Author: Linus Torvalds Date: Thu May 19 17:55:12 2011 -0700 Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, cpu: Fix detection of Celeron Covington stepping A1 and B0 Documentation, ABI: Update L3 cache index disable text x86, AMD, cacheinfo: Fix L3 cache index disable checks x86, AMD, cacheinfo: Fix fallout caused by max3 conversion x86, cpu: Change NOP selection for certain Intel CPUs x86, cpu: Clean up and unify the NOP selection infrastructure x86, percpu: Use ASM_NOP4 instead of hardcoding P6_NOP4 x86, cpu: Move AMD Elan Kconfig under "Processor family" Fix up trivial conflicts in alternative handling (commit dc326fca2b64 "x86, cpu: Clean up and unify the NOP selection infrastructure" removed some hacky 5-byte instruction stuff, while commit d430d3d7e646 "jump label: Introduce static_branch() interface" renamed HAVE_JUMP_LABEL to CONFIG_JUMP_LABEL in the code that went away) commit 8a745f1f39b7a20047a362b67ce9151c07d14440 Author: Kristen Carlson Accardi Date: Fri Mar 4 10:24:11 2011 -0800 libata: Power off empty ports Give users the option of completely powering off unoccupied SATA ports using the existing min_power link_power_management_policy option. When the use selects this option on an empty port, we will power the port off by setting DET to off. For occupied ports, behavior is unchanged. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Jeff Garzik commit 17b141803c6c6e27fbade3f97c1c9d8d66c72866 Merge: 78c4def 2b398bd 15d6aba 8fab6af Author: Linus Torvalds Date: Thu May 19 17:49:35 2011 -0700 Merge branches 'x86-apic-for-linus', 'x86-asm-for-linus' and 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, apic: Print verbose error interrupt reason on apic=debug * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Demacro CONFIG_PARAVIRT cpu accessors * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Fix mrst sparse complaints x86: Fix spelling error in the memcpy() source code comment x86, mpparse: Remove unnecessary variable commit 0afc6f5ba95419fd505e60637f7645425f16e407 Author: Pavel Herrmann Date: Thu Apr 28 22:32:54 2011 +0200 libata-pmp: add support for Thermaltake BlackX Duet esata drive dock Some errors still show up, but the dock works, both drives can be accessed at the same time The chip maker and designation is unknown - possibly jmicron JMB350? Signed-off-by: Pavel Herrmann Acked-by: Tejun Heo Signed-off-by: Jeff Garzik commit bfeec8ca15c9c06c1978a25248e2bd11c4a26d72 Author: Mikulas Patocka Date: Sun May 15 22:33:19 2011 +0200 ATA: Don't powerdown Compaq Triflex IDE device on suspend Don't powerdown Compaq Triflex IDE device on suspend This fixes APM suspend on Compaq Armada 7400. APM BIOS doesn't suspend if IDE is powered down when suspending. The Triflex controller is found only on old Compaq boards, so this patch will hopefully have no side effects. Signed-off-by: Mikulas Patocka Signed-off-by: Jeff Garzik commit 5f4e206666f834340b69ddb43f86de3851c8675a Author: Martin K. Petersen Date: Tue May 17 22:13:23 2011 -0400 libata: Use Maximum Write Same Length to report discard size limit Previously we used Maximum Unmap LBA Count in the Block Limits VPD to signal the maximum number of sectors we could handle in a single Write Same command. Starting with SBC3r26 the Block Limits VPD has an explicit limit on the number of blocks in a Write Same. This means we can stop abusing a field related to the Unmap command and let our SAT use the proper value in the VPD (Maximum Write Same Length). Signed-off-by: Martin K. Petersen Signed-off-by: Jeff Garzik Cc: stable@kernel.org commit f68b3afe45051d43e9f9277c6f1404670e1b99d2 Author: Jeff Garzik Date: Thu May 19 20:45:15 2011 -0400 drivers/ata/acard-ahci.c: fix enum warning Signed-off-by: Jeff Garzik commit 78c4def67e8eebe602655a3dec9aa08f0e2f7c4b Merge: 7e6628e 942c3c5 Author: Linus Torvalds Date: Thu May 19 17:45:08 2011 -0700 Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: hrtimer: Make lookup table const RTC: Disable CONFIG_RTC_CLASS from being built as a module timers: Fix alarmtimer build issues when CONFIG_RTC_CLASS=n timers: Remove delayed irqwork from alarmtimers implementation timers: Improve alarmtimer comments and minor fixes timers: Posix interface for alarm-timers timers: Introduce in-kernel alarm-timer interface timers: Add rb_init_node() to allow for stack allocated rb nodes time: Add timekeeping_inject_sleeptime commit 7e6628e4bcb3b3546c625ec63ca724f28ab14f0c Merge: 0f1bdc1 ab0e08f Author: Linus Torvalds Date: Thu May 19 17:44:40 2011 -0700 Merge branch 'timers-clockevents-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-clockevents-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: hpet: Cleanup the clockevents init and register code x86: Convert PIT to clockevents_config_and_register() clockevents: Provide interface to reconfigure an active clock event device clockevents: Provide combined configure and register function clockevents: Restructure clock_event_device members clocksource: Get rid of the hardcoded 5 seconds sleep time limit clocksource: Restructure clocksource struct members commit 0f1bdc1815c4cb29b3cd71a7091b478e426faa0b Merge: 80fe02b a18f22a Author: Linus Torvalds Date: Thu May 19 17:44:13 2011 -0700 Merge branch 'timers-clocksource-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'timers-clocksource-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: clocksource: convert mips to generic i8253 clocksource clocksource: convert x86 to generic i8253 clocksource clocksource: convert footbridge to generic i8253 clocksource clocksource: add common i8253 PIT clocksource blackfin: convert to clocksource_register_hz mips: convert to clocksource_register_hz/khz sparc: convert to clocksource_register_hz/khz alpha: convert to clocksource_register_hz microblaze: convert to clocksource_register_hz/khz ia64: convert to clocksource_register_hz/khz x86: Convert remaining x86 clocksources to clocksource_register_hz/khz Make clocksource name const commit 80fe02b5daf176f99d3afc8f6c9dc9dece019836 Merge: df48d87 db670da ec514c4 Author: Linus Torvalds Date: Thu May 19 17:41:22 2011 -0700 Merge branches 'sched-core-for-linus' and 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (60 commits) sched: Fix and optimise calculation of the weight-inverse sched: Avoid going ahead if ->cpus_allowed is not changed sched, rt: Update rq clock when unthrottling of an otherwise idle CPU sched: Remove unused parameters from sched_fork() and wake_up_new_task() sched: Shorten the construction of the span cpu mask of sched domain sched: Wrap the 'cfs_rq->nr_spread_over' field with CONFIG_SCHED_DEBUG sched: Remove unused 'this_best_prio arg' from balance_tasks() sched: Remove noop in alloc_rt_sched_group() sched: Get rid of lock_depth sched: Remove obsolete comment from scheduler_tick() sched: Fix sched_domain iterations vs. RCU sched: Next buddy hint on sleep and preempt path sched: Make set_*_buddy() work on non-task entities sched: Remove need_migrate_task() sched: Move the second half of ttwu() to the remote cpu sched: Restructure ttwu() some more sched: Rename ttwu_post_activation() to ttwu_do_wakeup() sched: Remove rq argument from ttwu_stat() sched: Remove rq->lock from the first half of ttwu() sched: Drop rq->lock from sched_exec() ... * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: sched: Fix rt_rq runtime leakage bug commit df48d8716eab9608fe93924e4ae06ff110e8674f Merge: acd3025 29510ec Author: Linus Torvalds Date: Thu May 19 17:36:08 2011 -0700 Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (107 commits) perf stat: Add more cache-miss percentage printouts perf stat: Add -d -d and -d -d -d options to show more CPU events ftrace/kbuild: Add recordmcount files to force full build ftrace: Add self-tests for multiple function trace users ftrace: Modify ftrace_set_filter/notrace to take ops ftrace: Allow dynamically allocated function tracers ftrace: Implement separate user function filtering ftrace: Free hash with call_rcu_sched() ftrace: Have global_ops store the functions that are to be traced ftrace: Add ops parameter to ftrace_startup/shutdown functions ftrace: Add enabled_functions file ftrace: Use counters to enable functions to trace ftrace: Separate hash allocation and assignment ftrace: Create a global_ops to hold the filter and notrace hashes ftrace: Use hash instead for FTRACE_FL_FILTER ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions perf bench, x86: Add alternatives-asm.h wrapper x86, 64-bit: Fix copy_[to/from]_user() checks for the userspace address limit x86, mem: memset_64.S: Optimize memset by enhanced REP MOVSB/STOSB x86, mem: memmove_64.S: Optimize memmove by enhanced REP MOVSB/STOSB ... commit acd30250d7d0f495685d1c7c6184636a22fcdf7f Merge: 6595b4a edf76f8 Author: Linus Torvalds Date: Thu May 19 17:30:15 2011 -0700 Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: irq: Export functions to allow modular irq drivers genirq: Uninline and sanity check generic_handle_irq() genirq: Remove pointless ifdefs genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP genirq: Add chip suspend and resume callbacks genirq: Implement a generic interrupt chip genirq: Support per-IRQ thread disabling. genirq: irq_desc: Document preflow_handler and affinity_hint genirq: Update DocBook comments genirq: Forgotten updates/deletions after removal of compat code commit 6595b4a940c4c447b619ab5268378ed03e632694 Merge: cbdad8d 5db1256 Author: Linus Torvalds Date: Thu May 19 17:29:29 2011 -0700 Merge branch 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: seqlock: Don't smp_rmb in seqlock reader spin loop watchdog, hung_task_timeout: Add Kconfig configurable default lockdep: Remove cmpxchg to update nr_chain_hlocks lockdep: Print a nicer description for simple irq lock inversions lockdep: Replace "Bad BFS generated tree" message with something less cryptic lockdep: Print a nicer description for irq inversion bugs lockdep: Print a nicer description for simple deadlocks lockdep: Print a nicer description for normal deadlocks lockdep: Print a nicer description for irq lock inversions commit cbdad8dc18b8ddd6c8b48c4ef26d46f00b5af923 Merge: 51509a2 86b9523 Author: Linus Torvalds Date: Thu May 19 17:28:58 2011 -0700 Merge branch 'core-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'core-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, gart: Rename pci-gart_64.c to amd_gart_64.c x86/amd-iommu: Use threaded interupt handler arch/x86/kernel/pci-iommu_table.c: Convert sprintf_symbol to %pS x86/amd-iommu: Add support for invalidate_all command x86/amd-iommu: Add extended feature detection x86/amd-iommu: Add ATS enable/disable code x86/amd-iommu: Add flag to indicate IOTLB support x86/amd-iommu: Flush device IOTLB if ATS is enabled x86/amd-iommu: Select PCI_IOV with AMD IOMMU driver PCI: Move ATS declarations in seperate header file dma-debug: print information about leaked entry x86/amd-iommu: Flush all internal TLBs when IOMMUs are enabled x86/amd-iommu: Rename iommu_flush_device x86/amd-iommu: Improve handling of full command buffer x86/amd-iommu: Rename iommu_flush* to domain_flush* x86/amd-iommu: Remove command buffer resetting logic x86/amd-iommu: Cleanup completion-wait handling x86/amd-iommu: Cleanup inv_pages command handling x86/amd-iommu: Move inv-dte command building to own function x86/amd-iommu: Move compl-wait command building to own function commit 1a4b6f66285785ddccef049e6b45be4e7c7a2189 Author: matt mooney Date: Thu May 19 16:47:32 2011 -0700 staging: usbip: replace usbip_u{dbg,err,info} and printk with dev_ and pr_ This switches all of the usbip_u{dbg,err,info} and printk statements to dev_, if possible, or pr_ macros. And removes a few unnecessary debug statements. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit d9a0fbfd7bc5d2c42f0fa9bcbdab62c4942d0388 Author: Antony Pavlov Date: Wed May 18 22:38:30 2011 +0400 serial: 8250_pci: add support for Cronyx Omega PCI multiserial board. This patch adds support for the Omega-PCI, an 8-port asynchronous multiport adapter for computers with PCI bus [1]. [1] http://www.cronyx.ru/hardware/ompci.html Signed-off-by: Antony Pavlov Signed-off-by: Greg Kroah-Hartman commit 5f873bae704cf8b7cbd64b5720912266286c9146 Author: Stephen Warren Date: Tue May 17 16:12:37 2011 -0600 tty/serial: Fix break handling for PORT_TEGRA When a break is received, Tegra's UART apparently fills the FIFO with 0 bytes. These must be drained so that they aren't interpreted as actual data received. This allows e.g. MAGIC_SYSRQ to work on Tegra's UARTs. v2: Added FIXME comment to clear_rx_fifo Originally-by: Laxman Dewangan Cc: Laxman Dewangan Signed-off-by: Stephen Warren Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4539c24fe4f92c09ee668ef959d3e8180df619b9 Author: Stephen Warren Date: Tue May 17 16:12:36 2011 -0600 tty/serial: Add explicit PORT_TEGRA type Tegra's UART is currently auto-detected as PORT_XSCALE due to register bit UART_IER.UUE being writable. However, the Tegra documentation states that this register bit is reserved. Hence, we should not program it. Instead, the documentation specifies that the UART is 16550 compatible. However, Tegra does need register bit UART_IER.RTOIE set, which is not enabled by any 16550 port type. This was not noticed before, since PORT_XSCALE enables CAP_UUE, which conflates both UUE and RTOIE bit programming. This change defines PORT_TEGRA that doesn't set UART_CAP_UUE, but does set UART_CAP_RTOIE, which is a new capability indicating that the RTOIE bit needs to be enabled. Based-on-code-by: Laxman Dewangan Cc: Laxman Dewangan Signed-off-by: Stephen Warren Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d5f6db9e1aff6ccf1876224f152c0268b0c8a992 Author: Jan Andersson Date: Thu May 19 20:47:02 2011 +0200 USB: EHCI: Remove SPARC_LEON {read,write}_be definitions from ehci.h {read,write}l_be are now defined for SPARC and do not need to be defined for SPARC_LEON in ehci.h. This patch fixes the following warnings: CC drivers/usb/host/ehci-hcd.o In file included from drivers/usb/host/ehci-hcd.c:119: drivers/usb/host/ehci.h:631:1: warning: "readl_be" redefined ... drivers/usb/host/ehci-hcd.c:119: drivers/usb/host/ehci.h:632:1: warning: "writel_be" redefined ... Signed-off-by: Jan Andersson Signed-off-by: Greg Kroah-Hartman commit 51509a283a908d73b20371addc67ee3ae7189934 Merge: 75f5076 6538df8 Author: Linus Torvalds Date: Thu May 19 16:46:07 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (34 commits) PM: Introduce generic prepare and complete callbacks for subsystems PM: Allow drivers to allocate memory from .prepare() callbacks safely PM: Remove CONFIG_PM_VERBOSE Revert "PM / Hibernate: Reduce autotuned default image size" PM / Hibernate: Add sysfs knob to control size of memory for drivers PM / Wakeup: Remove useless synchronize_rcu() call kmod: always provide usermodehelper_disable() PM / ACPI: Remove acpi_sleep=s4_nonvs PM / Wakeup: Fix build warning related to the "wakeup" sysfs file PM: Print a warning if firmware is requested when tasks are frozen PM / Runtime: Rework runtime PM handling during driver removal Freezer: Use SMP barriers PM / Suspend: Do not ignore error codes returned by suspend_enter() PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset PM: Revert "driver core: platform_bus: allow runtime override of dev_pm_ops" OMAP1 / PM: Use generic clock manipulation routines for runtime PM PM: Remove sysdev suspend, resume and shutdown operations PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM PM / AVR32: Use struct syscore_ops instead of sysdevs for PM ... commit fda928ac97dbf0359f3dc4c96925b7b422b540d7 Author: Jan Andersson Date: Wed May 18 10:44:53 2011 +0200 USB: UHCI: Support big endian GRUSBHC HC This patch adds support for big endian GRUSBHC UHCI controllers. The HCD bus glue will probe the register interface to determine the endianness of the controller. Tested on GR-LEON4-ITX board which has a controller with little endian interface and on custom LEON3 board with a BE controller. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c936503fff31663a8625d23f528d868aa8c22570 Author: Jan Andersson Date: Wed May 18 10:44:52 2011 +0200 sparc: add {read,write}*_be routines This patch adds {read,write}*_be big endian memory access routines to the io.h header used on SPARC32 and SPARC64. Tested on SPARC32 (LEON) Signed-off-by: Jan Andersson Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman commit 75f5076b12924f53340209d2cde73b98ed3b3095 Merge: 83d7e94 1df9fad Author: Linus Torvalds Date: Thu May 19 16:44:34 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/qib: Use pci_dev->revision RDMA/iwcm: Get rid of enum iw_cm_event_status IB/ipath: Use pci_dev->revision, again IB/qib: Prevent driver hang with unprogrammed boards RDMA/cxgb4: EEH errors can hang the driver RDMA/cxgb4: Reset wait condition atomically RDMA/cxgb4: Fix missing parentheses RDMA/cxgb4: Initialization errors can cause crash RDMA/cxgb4: Don't change QP state outside EP lock RDMA/cma: Add an ID_REUSEADDR option RDMA/cma: Fix handling of IPv6 addressing in cma_use_port commit 83d7e948754cf021ed7343b122940fcc27c1bd88 Merge: fce4a1d 9b090f2 Author: Linus Torvalds Date: Thu May 19 16:44:13 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-2.6-cm * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-2.6-cm: kmemleak: Initialise kmemleak after debug_objects_mem_init() kmemleak: Select DEBUG_FS unconditionally in DEBUG_KMEMLEAK kmemleak: Do not return a pointer to an object that kmemleak did not get commit 51e2f62fe79651e7ed8e16ba126a163b116fe3d7 Author: Jan Andersson Date: Wed May 18 10:44:51 2011 +0200 USB: UHCI: Add support for big endian descriptors This patch adds support for universal host controllers that use big endian descriptors. Support for BE descriptors requires a non-PCI host controller. For kernels with PCI-only UHCI there should be no change in behaviour. This patch tries to replicate the technique used to support BE descriptors in the EHCI HCD. Parts added to uhci-hcd.h are basically copy'n'paste from ehci.h. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit bab1ff1bda27e654dfd382a1fbdfcda1f7ed0a37 Author: Alan Stern Date: Wed May 18 10:44:50 2011 +0200 USB: UHCI: Use ACCESS_ONCE rather than using a full compiler barrier This patch (as1462) updates the special accessor functions defined in uhci-hcd.h. Rather than using a full compiler barrier, all we really need is the ACCESS_ONCE() mechanism, because the idea is to force the compiler to store a fixed copy of a possibly changing value. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 8452c6745e74384e7e434144f989ada3eae41170 Author: Jan Andersson Date: Wed May 18 10:44:49 2011 +0200 USB: UHCI: Add support for big endian mmio This patch adds support for big endian mmio to the UHCI HCD. Big endian mmio is supported by adding a flag bit to the UHCI HCD replicating the solution used in the EHCI HCD. When adding big endian support this patch also adds a check to see if we need to support HCs with PCI I/O registers when we support HCs with MMIO. This patch also adds 'const' to the register access functions' uhci_hcd argument. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit fce4a1dda2f1a9a25b3e5b7cd951070e0b42a818 Merge: e1f2084 6f6c3c3 Author: Linus Torvalds Date: Thu May 19 16:40:47 2011 -0700 Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus * 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus: (48 commits) MIPS: Move arch_get_unmapped_area and gang to new file. MIPS: Cleanup arch_get_unmapped_area MIPS: Octeon: Don't request interrupts for unused IPI mailbox bits. Octeon: Fix interrupt irq settings for performance counters. MIPS: Fix build warnings on defconfigs MIPS: Lemote 2F, Malta: Fix build warning MIPS: Set ELF AT_PLATFORM string for Loongson2 processors MIPS: Set ELF AT_PLATFORM string for BMIPS processors MIPS: Introduce set_elf_platform() helper function MIPS: JZ4740: setup: Autodetect physical memory. MIPS: BCM47xx: Fix MAC address parsing. MIPS: BCM47xx: Extend the filling of SPROM from NVRAM MIPS: BCM47xx: Register SSB fallback sprom callback MIPS: BCM47xx: Extend bcm47xx_fill_sprom with prefix. SSB: Change fallback sprom to callback mechanism. MIPS: Alchemy: Clean up GPIO registers and accessors MIPS: Alchemy: Cleanup DMA addresses MIPS: Alchemy: Rewrite ethernet platform setup MIPS: Alchemy: Rewrite UART setup and constants. MIPS: Alchemy: Convert dbdma.c to syscore_ops ... commit 5116901d8596a52598364d41581c0a745da003bc Author: Karl Relton Date: Wed May 18 21:42:34 2011 +0100 usb-storage: Correct adjust_quirks to include latest flags Commits ae38c78a03e1b77ad45248fcf097e4568e740209 and 00914025cc4e783d4703b4db1d47b41f389e50c8 added quirk flags US_FL_NO_READ_DISC_INFO and US_FL_NO_READ_CAPACITY_16 to the usb-storage driver. However they did not add the corresponding flags to adjust_quirks() in usb.c, so there was no facility for a user to over-ride/add them via the quirks module parameter. Signed-off-by: Karl Relton Signed-off-by: Greg Kroah-Hartman commit d05b6ec01b8186f847ac9e41098e40858926db40 Author: Arvid Brodin Date: Fri May 20 00:17:45 2011 +0200 usb/isp1760: Fix possible unlink problems Use skip map to avoid spurious interrupts from unlinked transfers. Also changes to urb_dequeue() and endpoint_disable() to avoid release of spinlock in uncertain state. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit 079cdb0947ce6ae7df0c73a1c82c14920a9b6b6d Author: Arvid Brodin Date: Fri May 20 00:17:34 2011 +0200 usb/isp1760: Move function isp1760_endpoint_disable() within file. Preparation for patch #2. The function isp1760_endpoint_disable() does almost the same thing as urb_dequeue(). In patch #2 I change these to use a common helper function instead of calling each other - for clarity but also to avoid releasing the spinlock while in a "questionable" state. It seemed proper to have these functions close to each other in the code. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit 69fff59de4d844f8b4c2454c3c23d32b69dcbfd7 Author: Alan Stern Date: Tue May 17 17:27:12 2011 -0400 USB: remove remaining usages of hcd->state from usbcore and fix regression This patch (as1467) removes the last usages of hcd->state from usbcore. We no longer check to see if an interrupt handler finds that a controller has died; instead we rely on host controller drivers to make an explicit call to usb_hc_died(). This fixes a regression introduced by commit 9b37596a2e860404503a3f2a6513db60c296bfdc (USB: move usbcore away from hcd->state). It used to be that when a controller shared an IRQ with another device and an interrupt arrived while hcd->state was set to HC_STATE_HALT, the interrupt handler would be skipped. The commit removed that test; as a result the current code doesn't skip calling the handler and ends up believing the controller has died, even though it's only temporarily stopped. The solution is to ignore HC_STATE_HALT following the handler's return. As a consequence of this change, several of the host controller drivers need to be modified. They can no longer implicitly rely on usbcore realizing that a controller has died because of hcd->state. The patch adds calls to usb_hc_died() in the appropriate places. The patch also changes a few of the interrupt handlers. They don't expect to be called when hcd->state is equal to HC_STATE_HALT, even if the controller is still alive. Early returns were added to avoid any confusion. Signed-off-by: Alan Stern Tested-by: Manuel Lauss CC: Rodolfo Giometti CC: Olav Kongas CC: Signed-off-by: Greg Kroah-Hartman commit e1f2084ed200eb31f2c9d1efe70569c76889c980 Merge: e33ab8f 659e6ed Author: Linus Torvalds Date: Thu May 19 16:27:21 2011 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: input/atari: Fix mouse movement and button mapping input/atari: Fix atarimouse init input/atari: Use the correct mouse interrupt hook m68k/atari: Do not use "/" in interrupt names m68k: unistd - Comment out definitions for unimplemented syscalls m68k: Really wire up sys_pselect6 and sys_ppoll m68k: Merge mmu and non-mmu versions of sys_call_table MAINTAINERS: Roman Zippel has been MIA for several years. m68k: bitops - Never step beyond the end of the bitmap m68k: bitops - offset == ((long)p - (long)vaddr) * 8 commit c5fc472171ec4f96d06d1ac039d88f9b89bb95db Author: Ingo Molnar Date: Fri May 20 01:22:14 2011 +0200 core_kernel_data(): Fix architectures that do not define _sdata Some architectures such as Alpha do not define _sdata but _data: kernel/built-in.o: In function `core_kernel_data': kernel/extable.c:77: undefined reference to `_sdata' So expand the scope of the data range to the text addresses too, this might be more correct anyway because this way we can cover readonly variables as well. Cc: Paul E. McKenney Cc: Steven Rostedt Link: http://lkml.kernel.org/n/tip-i878c8a0e0g0ep4v7i6vxnhz@git.kernel.org Signed-off-by: Ingo Molnar commit 034cfe48d0efc248ba4b725e3a94b95e76fbc5d3 Author: Randy Dunlap Date: Thu May 19 19:23:28 2011 -0400 networking: NET_CLS_ROUTE4 depends on INET IP_ROUTE_CLASSID depends on INET and NET_CLS_ROUTE4 selects IP_ROUTE_CLASSID, but when INET is not enabled, this kconfig warning is produced, so fix it by making NET_CLS_ROUTE4 depend on INET. warning: (NET_CLS_ROUTE4) selects IP_ROUTE_CLASSID which has unmet direct dependencies (NET && INET) Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit db60697a086cdf4bbe6deedcefc2ff81e2a9efd2 Author: Jonathan Cameron Date: Wed May 18 14:42:41 2011 +0100 staging:iio: Trivial kconfig reorganization and uniformity improvements. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 44d8b3542f703a70fbd8f3f64816ab8bab32bce0 Author: Jonathan Cameron Date: Wed May 18 14:42:40 2011 +0100 staging:iio:documenation partial update. More to be added, but this brings the docs in line with the current code. Now they are hopefully just uninformative rather than actually incorrect. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 0ed731d2343f7ff964348377bde81c595f8af9e6 Author: Jonathan Cameron Date: Wed May 18 14:42:39 2011 +0100 staging:iio: use pollfunc allocation helpers in remaining drivers. Some didn't get converted the first time around. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 58f0a255454dc2338d24d9827eadbd9db386acc5 Author: Jonathan Cameron Date: Wed May 18 14:42:38 2011 +0100 staging:iio:max1363 misc cleanups and use of for_each_bit_set to simplify event code spitting out. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6fe8135fccd66aedcc55ded70824342587fd2499 Author: Jonathan Cameron Date: Wed May 18 14:42:37 2011 +0100 staging:iio: implement an iio_info structure to take some of the constant elements out of iio_dev. This was suggested by Arnd Bergmann, Other elements may well move in here in future, but it definitely makes sense for these. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a3f02370c9fa6d85fbee2c11649ebc9c84bae919 Author: Michael Hennerich Date: Wed May 18 14:42:36 2011 +0100 staging:iio:meter:ade7758: Use private data space from iio_allocate_device Use private data space from iio_allocate_device. Drop dev_data in favor of iio_priv(). Fix indention issues from previous patches. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7df86302f4258764a3b8b1d63848dab3aa292654 Author: Jonathan Cameron Date: Wed May 18 14:42:35 2011 +0100 staging:iio:accel:lis3l02dq make write_reg_8 take value not a pointer to value. Silliness that has been there a long time. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8d213f24f2291a3edc7f94ac2bec8c85015aed96 Author: Jonathan Cameron Date: Wed May 18 14:42:34 2011 +0100 staging:iio: ring core cleanups + check if read_last available in lis3l02dq Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c74b0de1666f8b8f6c65e1e944deff71fed0769a Author: Jonathan Cameron Date: Wed May 18 14:42:33 2011 +0100 staging:iio:core cleanup: squash tiny wrappers and use dev_set_name to handle creation of event interface name. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 21b185f8d5951ebbf76d61f431fb541dce5113d1 Author: Jonathan Cameron Date: Wed May 18 14:42:32 2011 +0100 staging:iio: poll func allocation clean up. Add a function to neatly deal with allocation of poll functions. Ultimately this allows us to more easily change the implementation. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e3796e6bbba213ba2aad7212de0bdae2833ac45e Author: Jonathan Cameron Date: Wed May 18 14:42:31 2011 +0100 staging:iio:ad7780 trivial unused header cleanup. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f07458ad8f07cafff2e9ca791cb6b9bcd6eea36a Author: Michael Hennerich Date: Wed May 18 14:42:30 2011 +0100 staging:iio:adc: AD7780: Use private data space from iio_allocate_device + trivial fixes Use private data space from iio_allocate_device Drop dev_data in favour of iio_priv() Fix typo in gpio name Fix error return path, free gpio Make scale_uv type unsigned long Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 643ea260b4cb81dfc99b3e18e4be25ba2f1936ed Author: Michael Hennerich Date: Wed May 18 14:42:29 2011 +0100 staging:iio:adc:AD7780: Convert to new channel registration method Convert to new channel registration method Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 44039a671ecceaf023209b0446ca7443ec11c57c Author: Michael Hennerich Date: Wed May 18 14:42:28 2011 +0100 staging:iio:adc: AD7606: Drop dev_data in favour of iio_priv() Some other small cleanups including excess header removals. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit b9c445155e0bc805f0f668fd32ec4a3e808931fe Author: Michael Hennerich Date: Wed May 18 14:42:27 2011 +0100 staging:iio:adc: AD7606: Consitently use indio_dev Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7b2fdd192fede94d88e2e31826031e759f30908e Author: Jonathan Cameron Date: Wed May 18 14:42:26 2011 +0100 staging:iio: Rip out helper for software rings. It seemed like a good idea at the time, it wasn't. The code with this in place is larger and more complex for no real gain. Basically we've cleaned up the core around it so much that this no longer makes sense. Only really effects the lis3l02dq driver. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cc4a48e4cf92776656633aeb895520dc53893f32 Author: Michael Hennerich Date: Wed May 18 14:42:25 2011 +0100 staging:iio:adc:AD7298: Use private data space from iio_allocate_device Use private data space from iio_allocate_device Signed-off-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 5565a450248d827afa949aab157873d4b9be329e Author: Jonathan Cameron Date: Wed May 18 14:42:24 2011 +0100 staging:iio: rationalization of different buffer implementation hooks. 1) move a generic helper function out of ring_sw. It applies to other buffers as well. 2) Get rid of a lot of left over function definitions. 3) Move all the access functions into static structures. 4) Introduce and use a static structure for the setup functions, preenable etc. Some driver conversions thanks to Michael Hennerich (pulled out of patches that would otherwise sit after this). Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 38d15f06f942306050a063abd111467d39c5cc37 Author: Jonathan Cameron Date: Wed May 18 14:42:23 2011 +0100 staging:iio:imu:adis16400 avoid allocating rx, tx, and state separately from iio_dev. Uses the iio_allocate_device parameter to set aside space for adis16400_state and ____cacheline_aligned buffers for tx and rx to avoid separatel allocating them. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 59c85e82c2e7a672cb4342dc5ccf9df8a3a14f73 Author: Jonathan Cameron Date: Wed May 18 14:42:22 2011 +0100 staging:iio:trigger handle name attr in core, remove old alloc and register any control_attrs via struct device As the majority of triggers don't actually have any other control_attrs lets use the fact that struct device has a groups element when we do need to have these attributes registered. A vargs function is used to cut down on lots of building strings in every single driver just in order to pass them into the allocate. Also iio_allocate_trigger_named -> iio_allocate_trigger as there is no unamed version any more, so that is now just confusing. Blackfin tested and fixed by Michael Hennerich. V2: Elements from Michael Hennerich's patches for the ade7758 Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3b8ebfb47f0cacc82c88b6f886ad84d78d6fdd61 Author: Jonathan Cameron Date: Wed May 18 14:42:21 2011 +0100 staging:iio: iio_event_interfaces - clean out unused elements Also removed const casting of _name that was unnecessary. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d731aea081dc96b91be680c23b844f33aa4759e1 Author: Jonathan Cameron Date: Wed May 18 14:42:20 2011 +0100 staging:iio:lis3l02dq remerge the two interrupt handlers. Does add a small burden to both handlers, but the gain is somewhat simpler code. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 02db0bb33acf8afbdb9fb4fbaa99f7185337098f Author: Jonathan Cameron Date: Wed May 18 14:42:19 2011 +0100 staging:iio:buffer - remove unused event code for buffer events. These events are no longer passed up to userspace. ad7745 - was using these events to indicate directly dataready events. I'm not sure when it ever makes sense to push these to userspace so for now I've taken them to event codes 0 and 1 until someone has time to make this driver do something more standard. (they were arbitary before, they still are, be it in a different way!) Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 383f650f6cf739b256eb24c4a1d397d883de56ff Author: Jonathan Cameron Date: Wed May 18 14:42:18 2011 +0100 staging:iio:addac:adt7316 replace abuse of buffer events. Currently squashed the fault condition from external temperature sensor - lots of other issues to be fixed with this driver which obeys almost no elements of the abi. V2: removed a couple of usused variables that sparse found. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d1ab8552cda68dd100cf113cba7bc37e653ad886 Author: Jonathan Cameron Date: Wed May 18 14:42:17 2011 +0100 staging:iio:adc:adt7410 replace abuse of buffer events. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e7a2c3238345c88a668c26ec6790f19f4fa7a820 Author: Jonathan Cameron Date: Wed May 18 14:42:16 2011 +0100 staging:iio:adc:adt7310 replace abuse of buffer events. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit b206c3bbb4eda4f82c3396c0cc3a4443ffc166c5 Author: Jonathan Cameron Date: Wed May 18 14:42:15 2011 +0100 staging:iio:adc:ad7291 remove abuse of buffer events and replace with something almost sane This device has separate events for a sort of decaying average and for the raw value. We don't have a way of specifying this as yet. For now I have both resulting in the same event code. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 0bb8be643161ae1dc5c5a0255cf5ca20f7de7b5a Author: Jonathan Cameron Date: Wed May 18 14:42:14 2011 +0100 staging:iio:adc:ad7816 and adt75 change to meaningful event code. This was another abuse of the buffer event codes. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d91a0ab06ca27ec552233b5225e80661125fe1b2 Author: Jonathan Cameron Date: Wed May 18 14:42:13 2011 +0100 staging:iio:adc:ad7150 fix event codes. I won't guarantee I got these right, but they are certainly closer than the abuse of buffer event codes that was perviously in here. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 41c775240a78fac3e2bd7f024c3cf0d61547249e Author: Jonathan Cameron Date: Wed May 18 14:42:12 2011 +0100 staging:iio:core clean out unused elements. Trivial cleanup of things that have fallen by the way. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1f785681a87068f123d3e23da13b2c55ab4f93ac Author: Jonathan Cameron Date: Wed May 18 14:42:11 2011 +0100 staging:iio:trigger sysfs userspace trigger rework. Awaiting comments on using the nested_irq_trick so that may change. Moves away from platform device to sysfs controlled creation and removal of these triggers. Fix double free of name on trigger allocation failure thanks to Michael Hennerich. Signed-off-by: Jonathan Cameron Reviewed-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 586d15255dd529be94253b2d4bbb9f40ef680c1a Author: Jonathan Cameron Date: Wed May 18 14:42:10 2011 +0100 staging:iio:max1363 add new 2 channels parts form maxim, 11644-7 V2: IIO_CHAN macro usage update. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit bb20d65dbc014e6770bac57940c493753d3d542e Author: Jonathan Cameron Date: Wed May 18 14:42:09 2011 +0100 staging:iio:max1363 trivial removal of unused trig pointer. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a88b3ebc91e4606490fe0dd980ec9134cb816f42 Author: Jonathan Cameron Date: Wed May 18 14:42:08 2011 +0100 staging:iio: rip out scan_el attributes. Now handled as iio_dev_attrs like everything else. Drivers have no need to use this functionality any more and we save a lot of code by getting rid of it. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8a27a023f8f66a8361c5e3d8160a690f480479ec Author: Michael Hennerich Date: Wed May 18 14:42:07 2011 +0100 staging:iio:meter:ade7758: Use iio channel spec and miscellaneous other changes. Use iio channel spec for the ring buffer channels. Add/update file comment/license headers. Use available_scan_masks to prevent that multiple channels are enabled. Remove wavefrom type attributes. (no handled directly by the scan_elements) Use SPI_MODE_1. Move ade7758_initial_setup() before ade7758_probe_trigger() to ensure the ADE7758 interrupt is disabled when the host interrupt get's enabled. Add spi_device_id. Update ring buffer setup. Some backporting needed to ensure driver builds all the way through core changes. Signed-off-by: Michael Hennerich Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9308bc9af00dc49919bfba58c23ae5225404064d Author: Michael Hennerich Date: Wed May 18 14:42:06 2011 +0100 staging:iio:meter:ade7758: Fix list and set of available sample frequencies. Fix list of available sample frequencies. Fix ade7758_write_frequency(). Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e33ab8f275cf6e0e0bf6c9c44149de46222b36cc Merge: 3bfccb7 7e186bd 8c59508 0f16d0d 7899891 Author: Linus Torvalds Date: Thu May 19 16:14:58 2011 -0700 Merge branches 'stable/irq', 'stable/p2m.bugfixes', 'stable/e820.bugfixes' and 'stable/mmu.bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/irq' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen: do not clear and mask evtchns in __xen_evtchn_do_upcall * 'stable/p2m.bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/p2m: Create entries in the P2M_MFN trees's to track 1-1 mappings * 'stable/e820.bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/setup: Fix for incorrect xen_extra_mem_start initialization under 32-bit xen/setup: Ignore E820_UNUSABLE when setting 1-1 mappings. * 'stable/mmu.bugfixes' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen mmu: fix a race window causing leave_mm BUG() commit fb7f6ccac2a0651f458f8027dad5d31c9be3fff3 Author: Michael Hennerich Date: Wed May 18 14:42:05 2011 +0100 staging:iio:meter:ade7758: Fix return value of ade7758_write_reset Update file comment/license header. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f535e08eb60edbfb9f8ff660c9512b498ba0e1de Author: Michael Hennerich Date: Wed May 18 14:42:04 2011 +0100 staging:iio:meter:ade7758: Fix timing on SPI read accessor functions. According to the ADE7758 datasheet the minimum time between read command (that is, a write to communication register) and data read must not be less than 4us. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 69c272cc8edf3e5432859a9c1bcb51a64b2accb5 Author: Michael Hennerich Date: Wed May 18 14:42:03 2011 +0100 staging:iio:meter:ade7758: Update trigger to the new API Update trigger to the new API. Add file comment/license header. Some backporting needed to keep the driver building all the way through the core changes. Signed-off-by: Michael Hennerich Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit faf290e867fd51e227165d0bef113b022520a58f Author: Michael Hennerich Date: Wed May 18 14:42:02 2011 +0100 staging:iio: Add channel types IIO_CURRENT and IIO_POWER. This is required for the ADE7758 driver cleanup. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e61181d0a3e6788d57de9c1ae305d1c6f5fabade Author: Michael Hennerich Date: Wed May 18 14:42:01 2011 +0100 staging:iio:adc:ad7606: Use private data space from iio_allocate_device Trivial backport done by Jonathan Cameron Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1caf7cb461351b33d6229692a17afcad238e5b7a Author: Michael Hennerich Date: Wed May 18 14:42:00 2011 +0100 staging:iio:adc:ad7606 Convert to new channel registration method Update Add missing call to iio_trigger_notify_done() Set pollfunc top and bottom half handler V3: rebase fixup. Backported to relevant merge point by Jonathan Cameron. V2: IIO_CHAN macro usage update Signed-off-by: Michael Hennerich Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 29b7f43ef41bdbdd35dc54ea878efb855c224b7b Author: Jonathan Cameron Date: Wed May 18 14:41:59 2011 +0100 staging:iio:gyro:adis16260 move to chan_spec based setup. For clean drivers its easier to convert to chan_spec based registration than to work around the scan_el attributes going away. Some minor cleanups done whilst here. Untested. V3: rebase fixup and make attribute_group static. V2: IIO_CHAN macro updates. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cd69f57dee75cb27337bf5438359aae86503873f Author: Jonathan Cameron Date: Wed May 18 14:41:58 2011 +0100 staging:iio:accel:adis16240 move to chan_spec based setup. For clean drivers its easier to convert to chan_spec based registration than to work around the scan_el attributes going away. Some minor cleanups done whilst here. Untested. V2: IIO_CHAN macro use updated. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit eb7fea53e53ed47e82b4cc9911dd8fdc7f953de5 Author: Jonathan Cameron Date: Wed May 18 14:41:57 2011 +0100 staging:iio: Add chan info support for 'peak_raw' attributes. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1e8fa5b8631a0965065d621240c0eafe879ac5d0 Author: Jonathan Cameron Date: Wed May 18 14:41:56 2011 +0100 staging:iio:accel: lis3l02dq add writing for calibscale and calibbias. This was missed out in original chan_spec conversion. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 01a99e182333cc3b885028eaec9fde158dde4f16 Author: Michael Hennerich Date: Wed May 18 14:41:55 2011 +0100 staging:iio:adc:ad7298: Convert to new channel registration method Convert to new channel registration method Update Add missing call to iio_trigger_notify_done() Backported to a point that will allow the driver to build all the way through the series. V2: IIO_CHAN macro usage updated. Signed-off-by: Michael Hennerich Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6684e5b47dd4ef1cedde6f029cc1d9f7c5097d6e Author: Jonathan Cameron Date: Wed May 18 14:41:54 2011 +0100 staging:iio:adc:ad799x removed unused headers. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1bf7ac76cc8a621f1bac3302e166d33d40ec6e7d Author: Michael Hennerich Date: Wed May 18 14:41:53 2011 +0100 staging:iio:adc:ad799x: Use private data space from iio_allocate_device Use private data space from iio_allocate_device Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d22fd9c5534b39edd48b792a018dcd9b46db276e Author: Michael Hennerich Date: Wed May 18 14:41:52 2011 +0100 staging:iio:adc:ad799x: Convert to new channel registration method. Convert to new channel registration method Update copyright header Add missing call to iio_trigger_notify_done() V2: IIO_CHAN macro updates Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f39e086adcbdb953922fb2856d2745642432fca9 Author: Michael Hennerich Date: Wed May 18 14:41:51 2011 +0100 staging:iio:adc:ad7887: Use private data space from iio_allocate_device Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 596d06097f7843e4fd913f4e4e031a18641c2734 Author: Michael Hennerich Date: Wed May 18 14:41:50 2011 +0100 staging:iio:adc:ad7887: Convert to new channel registration method. Convert to new channel registration method Update / change license copyright header Add missing call to iio_trigger_notify_done() V2: use IIO_CHAN macro. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a34c26dcd48a0c6e03ea175e152e787414861aa2 Author: Jonathan Cameron Date: Wed May 18 14:41:49 2011 +0100 staging:iio:accel:adis16209 move to chan_spec based setup. For clean drivers its easier to convert to chan_spec based registration than to work around the scan_el attributes going away. Some minor cleanups done whilst here. Untested. V2: IIO_CHAN macro used. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ad3eb9ab1276cc69bb9cc72dffc074d1a317a6c0 Author: Jonathan Cameron Date: Wed May 18 14:41:48 2011 +0100 staging:iio:accel:adis16204 move to chan_spec based setup. For clean drivers its easier to convert to chan_spec based registration than to work around the scan_el attributes going away. Some minor cleanups done whilst here. Untested. V2: used IIO_CHAN macro Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d37b24b3c033be00f7345b7217d3aae1c662f363 Author: Jonathan Cameron Date: Wed May 18 14:41:47 2011 +0100 staging:iio:accel:adis16203 move to chan_spec based setup. Mainly motivated by wish to remove the remaing users of the scan helpers. Some minor cleanups done whilst here. Untested. V2: Use IIO_CHAN macro Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cf96ffd8c2ed7728f8abb2b6122da78319466a2d Author: Jonathan Cameron Date: Wed May 18 14:41:46 2011 +0100 staging:iio:accel:adis16201 move to chan_spec based setup. Mainly motivated by wish to remove the remaing users of the scan helpers. Some minor cleanups done whilst here. Untested. V2: IIO_CHAN macro used. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cbcdf4dd4fb109141b60da7b224895b88dbdff19 Author: Jonathan Cameron Date: Wed May 18 14:41:45 2011 +0100 staging:iio:light:tsl2563: chan_spec based channel setup. Makes a small interface change by splitting event _en attr in two. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 845bd12ac78f92ba8905f45de7e17a4a8b3cef40 Author: Jonathan Cameron Date: Wed May 18 14:41:44 2011 +0100 staging:iio: use the new central name attribute creation code Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1b732888d83f71a31a4bd26290ca8a00df1bf928 Author: Jonathan Cameron Date: Wed May 18 14:41:43 2011 +0100 staging:iio: Add core attribute handling for name of device. Saves on a fair bit of code replication. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 51c060a069376385bc0c2f8010121303d3b7bd57 Author: Jonathan Cameron Date: Wed May 18 14:41:42 2011 +0100 staging:iio:trigger remove legacy pollfunc elements. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 504b4958ff4c578fb153b1f526b2812946d7ddff Author: Jonathan Cameron Date: Wed May 18 14:41:41 2011 +0100 staging:iio:gyro:adis16260 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 36177c03186aa6e8ec4eb3c398df23ad5783604d Author: Jonathan Cameron Date: Wed May 18 14:41:40 2011 +0100 staging:iio:adc:ad799x move to irqchip based trigger handling. Untested. Also cleared out last_timestamp as it isn't used anywhere. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e362dfbb6940860818b659d96176c51270200c41 Author: Jonathan Cameron Date: Wed May 18 14:41:39 2011 +0100 staging:iio:adc:ad7887 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 13cfac2038438bf98a649a5c92ed56e4534a0d84 Author: Jonathan Cameron Date: Wed May 18 14:41:38 2011 +0100 staging:iio:adc:ad7606 conversion to irq_chip based polling. I'm far from sure what the best way to handle this particular part is, so have (I think) done the absolute minimum to change it to the new interface. V2: Trivial constification of device name. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 70d4fd3fcd47e01c29754d59fffaaee47a690a50 Author: Jonathan Cameron Date: Wed May 18 14:41:37 2011 +0100 staging:iio:adc:ad7298 move to irqchip based trigger handling. Untested. This one is of a different form, so worth a closer look than the previous incredibly similar patches (which were based on the adis16400 that I have tested). Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d6d30d2685ca7605c5e142f40b8e0777d54755c2 Author: Jonathan Cameron Date: Wed May 18 14:41:36 2011 +0100 staging:iio:accel:adis16240 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d7e044f146ade0336d431f1c15d4915565731963 Author: Jonathan Cameron Date: Wed May 18 14:41:35 2011 +0100 staging:iio:accel:adis16209 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 80142f0de68a3d68f114f25f56e736c4a63e1c18 Author: Jonathan Cameron Date: Wed May 18 14:41:34 2011 +0100 staging:iio:accel:adis16204 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f3dadc1dd2ac91529c39ee0015fc91e2ea474453 Author: Jonathan Cameron Date: Wed May 18 14:41:33 2011 +0100 staging:iio:accel:adis16203 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 05c2858d2f62c364f00c35b9607d2135a719a452 Author: Jonathan Cameron Date: Wed May 18 14:41:32 2011 +0100 staging:iio:accel:adis16201 move to irqchip based trigger handling. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 20e79c515f84242f391d8e73b77c040bbe6342fc Author: Jonathan Cameron Date: Wed May 18 14:41:31 2011 +0100 staging:iio:imu remove adis16300 driver. Support is now provided by the unified adis16400 driver. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8e886e651fded8e96d222fe47741dbb3bc06557e Author: Jonathan Cameron Date: Wed May 18 14:41:30 2011 +0100 staging:iio:imu:adis16400 add support for adis16300 Next patch will remove original driver. Note this leaves holes in the scan indexing. Untested - except via adis16350... V3: rebase fixup. V2: move to single IIO_CHAN macro. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 70987b81ec08f98fb9b1aa7ac5022bc78359c65c Author: Jonathan Cameron Date: Wed May 18 14:41:29 2011 +0100 staging:iio:imu remove old adis16350. Support now in adis16400 driver. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 2a29a90b581067cd32dbb65512ec379c9891a500 Author: Jonathan Cameron Date: Wed May 18 14:41:28 2011 +0100 staging:iio:imu:adis16350 etc support into adis16400 driver. Next patch will remove the current adis16350 driver. These should have been merged a long time ago, but there we are. V3: rebase fixup + add missing extend_name for supply on adis16350 V2: Move to single IIO_CHAN macro + use the new extend_name to make the naming of the temperature sensors contain x, y, z rather than messing with modifiers. This a very weird case and I don't want temperature to use axial modifiers. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e78548455d05a8b315f2a98712cf64f07d88ef9c Author: Jonathan Cameron Date: Wed May 18 14:41:27 2011 +0100 staging:iio:imu:adis16400 move to irq based triggers and channel spec channel registration. V2: rebase fixup. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3f00ca47fcfa79673ee960afaccc7fcbfbcb5946 Author: Jonathan Cameron Date: Wed May 18 14:41:26 2011 +0100 staging:iio:meter:ade7758 move to irqchip based trigger handling. Untested Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f20546e004b71f9ce921c4a4ca48a56017237e2e Author: Jonathan Cameron Date: Wed May 18 14:41:25 2011 +0100 staging:iio:adc:ad7476 move to irqchip based triggering Untested V2: Fixed missing free of pollfunc->name pointed out by Michael Hennerich. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c5e0819e2d82c78c392a91a320e92cd4e19d54b7 Author: Jonathan Cameron Date: Wed May 18 14:41:24 2011 +0100 staging:iio:adc:ad7476 use channel_spec V3: Trivial rebase fixup. V2: Move to new single IIO_CHAN macro. Done without hardware. Fix from Michael Hennerich incorporated to use iio_ring_buffer_register_ex instead of iio_ring_buffer_register and thus actually make it work. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6da288a35b1b90dd1cbe8a682ba1180f672b1c13 Author: Jonathan Cameron Date: Wed May 18 14:41:23 2011 +0100 staging:iio:adc:max1363 move to irqchip based threaded irq triggering V2: Fixed missing free of pollfunc->name as pointed out by Michael Hennerich. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d1dbf01128dd1d675bcbe85da49af6c9a8c56cff Author: Jonathan Cameron Date: Wed May 18 14:41:22 2011 +0100 staging:iio:accel:lis3l02dq move to threaded trigger handling. V2: Cleaned up handling of name string. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8384d9573e937949eba96eaa1323253c2687aa5c Author: Jonathan Cameron Date: Wed May 18 14:41:21 2011 +0100 staging:iio: add generic data ready poll function. This case is extremely common, so let us only have the one copy. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit e0580032658c3b9c4e1ffca3a60a5c865a44cb36 Author: Jonathan Cameron Date: Wed May 18 14:41:20 2011 +0100 staging:iio:ring_sw add function needed for threaded irq. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 52615d4783df043605080f7ee65607eb60e3f076 Author: Jonathan Cameron Date: Wed May 18 14:41:19 2011 +0100 staging:iio:Documentation generic_buffer.c update to new abi for buffers + misc fixes Trivial space before newline fix incorporated. Additional fixes related to handling of sign extension and shifted data. Signed-off-by: Jonathan Cameron squash into buffer handling update. Signed-off-by: Greg Kroah-Hartman commit d96d1337e339521a2bd56dc9d51fef140c1a49ee Author: Jonathan Cameron Date: Wed May 18 14:41:18 2011 +0100 staging:iio: Add infrastructure for irq_chip based triggers V3: Get rid of separate interrupt pool. This is well handled by irq_get_descs and irq_free_descs. Two functions I simply wasn't aware of previously. Thus the allocation for a given trigger is now handled by core code rather than us reinventing the wheel. V2: Stop silly name duplication. Move pool handling to industrialio-trigger as that is the only user. Changed over to using irq_modify_status rather than the arm specific set_irq_flags as per Thomas Gleixner's suggestion. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3bfccb74973db10a03d3d4c1d10fc00e77145699 Merge: 5318991 09ca132 887cb45 Author: Linus Torvalds Date: Thu May 19 16:14:35 2011 -0700 Merge branches 'stable/balloon.cleanup' and 'stable/general.cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/balloon.cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/balloon: Move dec_totalhigh_pages() from __balloon_append() to balloon_append() xen/balloon: Clarify credit calculation xen/balloon: Simplify HVM integration xen/balloon: Use PageHighMem() for high memory page detection * 'stable/general.cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: drivers/xen/sys-hypervisor: Cleanup code/data sections definitions arch/x86/xen/smp: Cleanup code/data sections definitions arch/x86/xen/time: Cleanup code/data sections definitions arch/x86/xen/xen-ops: Cleanup code/data sections definitions arch/x86/xen/mmu: Cleanup code/data sections definitions arch/x86/xen/setup: Cleanup code/data sections definitions arch/x86/xen/enlighten: Cleanup code/data sections definitions arch/x86/xen/irq: Cleanup code/data sections definitions xen: tidy up whitespace in drivers/xen/Makefile commit 5318991645d78c83dde7a7bb1cba24695cc152c4 Merge: dc93275 7c1bfd6 d79647a Author: Linus Torvalds Date: Thu May 19 16:14:25 2011 -0700 Merge branches 'stable/backend.base.v3' and 'stable/gntalloc.v7' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen * 'stable/backend.base.v3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/pci: Fix compiler error when CONFIG_XEN_PRIVILEGED_GUEST is not set. xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override functions. xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2P override. xen/irq: The Xen hypervisor cleans up the PIRQs if the other domain forgot. xen/irq: Export 'xen_pirq_from_irq' function. xen/irq: Add support to check if IRQ line is shared with other domains. xen/irq: Check if the PCI device is owned by a domain different than DOMID_SELF. xen/pci: Add xen_[find|register|unregister]_device_domain_owner functions. * 'stable/gntalloc.v7' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen: xen/gntdev,gntalloc: Remove unneeded VM flags commit dc93275150da9542f500fbd3d0515eecfefba7f6 Merge: 6b55b90 1403635 Author: Linus Torvalds Date: Thu May 19 16:14:02 2011 -0700 Merge branch 'stable/broadcom.ibft' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6 * 'stable/broadcom.ibft' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/ibft-2.6: iscsi_ibft: search for broadcom specific ibft sign (v2) commit 461be806744d0c83babcfa5d63993b43bd801c46 Author: Jonathan Cameron Date: Wed May 18 14:41:17 2011 +0100 staging:iio:accel:lis3l02dq make threshold interrupt threaded. We have moved the timestamp acquisition into the bottom half. It may technically be less accurate but for this device I very much doubt anyone cares! Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit aaf370db7dad574e166f64cd9ad4129f12198145 Author: Jonathan Cameron Date: Wed May 18 14:41:16 2011 +0100 staging:iio: Remove legacy event handling. This requires all drivers using the channel registration code and events to change in one go. V3: remove unwanted irq enable from event handler. V2: rebase related fixes to move to new IIO_CHAN macro. All trivial. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 72148f6ec7ad3802b8bc3e9df534bff73c7f14a6 Author: Jonathan Cameron Date: Wed May 18 14:41:15 2011 +0100 staging:iio:adc:ad799x move to new event handling Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6f3ca9e3d614b1b448800bbfa27d518fa11d3b77 Author: Jonathan Cameron Date: Wed May 18 14:41:14 2011 +0100 staging:iio:adc:ad7314 remove unmatched unregister of event line. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit cda0b2af52b281f865501777df9e7a1ada64b313 Author: Jonathan Cameron Date: Wed May 18 14:41:13 2011 +0100 staging:iio:adt7310 move to current event handling Another driver that has two event lines, but pushes all events out the same chrdev. Probably needs a rethink. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9c6b6ba819236ae098248d72f95235f286974b21 Author: Jonathan Cameron Date: Wed May 18 14:41:12 2011 +0100 staging:iio:adc:adt7410 move to current event handling This device actually has a pair of interrupts. The code basically ignores that and feeds them both to the same handlers. I'm not sure if that is the right thing to do, but the updated code should do exactly the same. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 58c0323c947b7cb48b280fea4394483817315b0d Author: Jonathan Cameron Date: Wed May 18 14:41:11 2011 +0100 staging:iio:ad7291 move from old event system to current. This driver needed some tender loving care. It still does. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1142f709e6a99e5176abf78cfe3e9b2737651ff7 Author: Jonathan Cameron Date: Wed May 18 14:41:10 2011 +0100 staging:iio:adc:adt75 old to new event handling conversion Another one where the events are 'unusual'. Still left sorting that out for another day. Untested changes Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 4f2c1b02b9be473e7c458fc6bc7dc745203017f4 Author: Jonathan Cameron Date: Wed May 18 14:41:09 2011 +0100 staging:iio:adc:ad7152 remove unregister of interrupt line. a) This interface is going away b) There is no matching register call so looks like a cut and paste error Trivial sparse warning fix. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9b5d9b06a4ae41705f856b68ccac507219250de6 Author: Jonathan Cameron Date: Wed May 18 14:41:08 2011 +0100 staging:iio:adc:ad7150 move from deprecated event handling plus remove irq as gpio requirement. Another driver with some very 'non standard' magic event codes. Again I've left it be for now and merely moved it to the new api. There is no reason why the irq in this driver ever had to be a gpio. Scrap that test and clean out unecessary headers. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit db9afe2fc0c59f84bc1950b9b78767bbcdc80f13 Author: Jonathan Cameron Date: Wed May 18 14:41:07 2011 +0100 staging:iio:adc:ad7816 move from old to current event handling. I'm not sure what the event is and am very much against the dodgy hack to give it a code. However for now, lets just stop it using the deprecated core handling so we can move on. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 724cf92ddc0209d7b7358525a450d0238c784410 Author: Jonathan Cameron Date: Wed May 18 14:41:06 2011 +0100 staging:iio:adc:ad7745 move from old to current event handling. Nice simple one. Not sure we actually want devices outputting datardy signals like that, but I'll leave it for now. Cleaned up some unneeded functions whilst here. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 90f79e76871b570480d87ac15603aa2685008f78 Author: Jonathan Cameron Date: Wed May 18 14:41:05 2011 +0100 staging:iio:adt7316 get rid of legacy event handling code. Note this driver is still a long way from being abi compliant. What I have done here cleans up a few corners, but primarily gets it away from using the infrastructure that is going away. Untested Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ce298d403167169ddf965ceb9645fd831065f65b Author: Jonathan Cameron Date: Wed May 18 14:41:04 2011 +0100 staging:iio:dac:ad5504 move from old to new event handling. Untested, but fairly trivial change here. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit bdab1001738f4ebf8df21bab8c9da79bd5dd3362 Author: Jonathan Cameron Date: Wed May 18 14:41:03 2011 +0100 staging:iio:light:tsl2563 remove old style event registration. Untested. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit b26a2188e0464f5962caff62074c91ef1c92056a Author: Jonathan Cameron Date: Wed May 18 14:41:02 2011 +0100 staging:iio:buffering remove unused parameter dead_offset from read_last_n in all buffer implementations. This element has been usused by the core for quite some time. sca3000 set it none the less until the rewrite in the previous patch (and hence didn't work). Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 25888dc51163a566f8c8f18a84c100851d12738c Author: Jonathan Cameron Date: Wed May 18 14:41:01 2011 +0100 staging:iio:sca3000 extract old event handling and move to poll for events from buffer Fairly substantial rewrite as the code had bitrotted. A rethink is needed for how to handle variable types in the new chan_spec world. This patch restores sca3000 buffer usage to a working state. V3: Rebase fixups. V2: Move to new version of IIO_CHAN macro Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1e3345bc2c118c43f7f8a6db5d71c06e02b989da Author: Jonathan Cameron Date: Wed May 18 14:41:00 2011 +0100 staging:iio: lis3l02dq - separate entirely interrupt handling for thesholds from that for the datardy signal. This removes the one and only real user of the rather complex event list management. V3: More trivial rebase fixups. V2: Trivial rebase fixup. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 72b38e3de1e9c9813bfb37ffa23de26e5b703014 Author: Jonathan Cameron Date: Wed May 18 14:40:59 2011 +0100 staging:iio: Push interrupt setup down into the drivers for event lines. It is much easier to do in driver, and the core does not add much. Note all drivers will have to be updated with this patch. None currently are. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1b076b5210870e819d23434bd134cf8d6dddc68c Author: Jonathan Cameron Date: Wed May 18 14:40:58 2011 +0100 staging:iio:lis3l02dq: General cleanup As Arnd observed, things are clearner if we pass iio_dev into read and write fucntions. Now uses st for lis3l02dq_state everywhere. Other bits of trivial tidying. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3feb07979c4d5b63d5e15ef01c97018a6d0db5b3 Author: Jonathan Cameron Date: Wed May 18 14:40:57 2011 +0100 staging:iio: Buffer device flattening. Given we now only have one device we don't need the extra layer any more. Hence this patch removes it. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit b9d40a9d5583a530372b4e1888e4f643ed05aca6 Author: Jonathan Cameron Date: Wed May 18 14:40:56 2011 +0100 staging:iio: remove legacy event chrdev for the buffers part of sca3000 driver temporarily disabled (buffer won't run anyway). This section is replaced later in this patch set. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit a7348347ba8a4a961a88434d37e45a8bd98a47b0 Author: Jonathan Cameron Date: Wed May 18 14:40:55 2011 +0100 staging:iio: Add polling of events on the ring access chrdev. Staging one of combining the ring chrdevs. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 939606d5cc454ea0ebae5346ace632d89f145e62 Author: Jonathan Cameron Date: Wed May 18 14:40:54 2011 +0100 staging:iio: remove ability to escalate events. Whilst it is possible to output events to say buffers have passed a particular level there are no obvious reasons to actually do so. The upshot of this patch is that buffers will only ever have one threshold turned on at a time. For now sca3000 has it's ring buffer effectively disabled. Fixed later in series. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 298cd976e07f1a0ca56adffd80c237117e3e11af Author: Jonathan Cameron Date: Wed May 18 14:40:53 2011 +0100 staging:iio:max1363 - move to channel_spec registration. V3: move to single chan registration macro. Also introduce some local macros to greatly reduce code length when setting up the chan_spec arrays for all the different devices. V2: update read_raw for two value approach. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f3736416e87001cab2112dd5186cb89490bbbb32 Author: Jonathan Cameron Date: Wed May 18 14:40:52 2011 +0100 staging:iio:lis3l02dq - move to new channel_spec approach. V3: Move to single IIO_CHAN macro. V2: Update to two part read_raw value. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 1d892719e70e477156f62e060e0805d991d450e5 Author: Jonathan Cameron Date: Wed May 18 14:40:51 2011 +0100 staging:iio: allow channels to be set up using a table of iio_channel_spec structures. V8: Add missing address in IIO_CHAN macro. Spotted by Michael Hennerich. V7: Document additions to iio_dev structure. V6: Fixup the docs for iio_chan_spec structure. V5: Actually have the macro handle the _input type channels (oops) V4: Add ability to do, _input and modified channel naming in a coherent fashion. Scrap all the messy IIO_CHAN_* macros and move to only one. V3: Added more types - intensity and light. V2: Various fixes - some thanks to Arnd. Bug fix for unregistering of event attr group Changed iio_read_channel_info to have two part value - use for raw value read as well. constify the channelspec structures raw write support for calibbias and similar Additional strings for buidling attribute names. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d410fa4ef99112386de5f218dd7df7b4fca910b4 Author: Randy Dunlap Date: Thu May 19 15:59:38 2011 -0700 Create Documentation/security/, move LSM-, credentials-, and keys-related files from Documentation/ to Documentation/security/, add Documentation/security/00-INDEX, and update all occurrences of Documentation/ to Documentation/security/. commit 6b55b908458120a5f469aa87d11821be67fbd8e2 Merge: f8223b1 bb0a56e Author: Linus Torvalds Date: Thu May 19 15:59:24 2011 -0700 Merge branch 'move-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'move-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] Move x86 drivers to drivers/cpufreq/ commit 8ce6eb1a4a4bc46820f23e927377d386d3ec5404 Author: David S. Miller Date: Thu May 19 18:58:39 2011 -0400 irda: Fix error propagation in ircomm_lmp_connect_response() The variable 'ret' is set but unused, and this pointed out that errors from irlmp_connect_response() are not propagated to the caller. Note that this is currently academic since irlmp_connect_response() always returns 0. :-) Signed-off-by: David S. Miller commit f8223b17550c427ac249124ff7f25722221f4591 Merge: 98a38a5 1a8e146 Author: Linus Torvalds Date: Thu May 19 15:57:29 2011 -0700 Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] remove redundant sprintf from request_module call. [CPUFREQ] cpufreq_stats.c: Fixed brace coding style issue [CPUFREQ] Fix memory leak in cpufreq_stat [CPUFREQ] cpufreq.h: Fix some checkpatch.pl coding style issues. [CPUFREQ] use dynamic debug instead of custom infrastructure [CPUFREQ] CPU hotplug, re-create sysfs directory and symlinks [CPUFREQ] Fix _OSC UUID in pcc-cpufreq commit ad6376434c945495ea8c4082ad8a392cc58c3406 Author: David S. Miller Date: Thu May 19 18:53:58 2011 -0400 irda: Kill set but unused variable 'bytes' in irlan_check_command_param() Signed-off-by: David S. Miller commit bfad6ef6d29e776472b3ead1f5bc920c5410ed2c Author: David S. Miller Date: Thu May 19 18:52:59 2011 -0400 irda: Kill set but unused variable 'clen' in ircomm_connect_indication() Signed-off-by: David S. Miller commit ed84cadb21e15a3e59a2154158c58579774f0851 Author: David S. Miller Date: Thu May 19 18:51:50 2011 -0400 rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport() This is identical to the case I fixed in rxrpc_get_peer() Signed-off-by: David S. Miller commit bb0a56ecc4ba2a3db1b6ea6949c309886e3447d3 Author: Dave Jones Date: Thu May 19 18:51:07 2011 -0400 [CPUFREQ] Move x86 drivers to drivers/cpufreq/ Signed-off-by: Dave Jones commit 63722966d703aeb8071d52172de87e377006cd28 Author: David S. Miller Date: Thu May 19 18:49:54 2011 -0400 be2net: Kill set but unused variable 'req' in lancer_fw_download() Signed-off-by: David S. Miller commit fa7479cf48103ee9261398034528495966bd7d2d Author: David S. Miller Date: Thu May 19 18:46:41 2011 -0400 irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication() Signed-off-by: David S. Miller commit d187c1aab8d30771bb781c745b150f6159467d6f Author: David S. Miller Date: Thu May 19 18:44:41 2011 -0400 atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined. Signed-off-by: David S. Miller commit 2a64255019e13dd975f1487cec32b873bcb76da6 Author: David S. Miller Date: Thu May 19 18:41:03 2011 -0400 rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer(). I backed off from trying to just eliminate this variable, since transforming atomic_inc_return() into atomic_inc() takes away the memory barriers. Signed-off-by: David S. Miller commit c9d10c497c3728a5c798c11486dccdc01b2092a8 Author: David S. Miller Date: Thu May 19 18:37:11 2011 -0400 rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler() Signed-off-by: David S. Miller commit 32890b983086136fef8721363a2d3860f337ad53 Author: Marc Dietrich Date: Thu May 19 16:34:42 2011 +0200 Staging: initial version of the nvec driver This is an implementation of a NVidia compliant embedded controller protocol driver. It is used on some ARM-Tegra boards for device communication. Signed-off-by: Marc Dietrich Signed-off-by: Greg Kroah-Hartman commit 9e5e10a22507b8d372bcf0e88875d4a3f6ede297 Author: David S. Miller Date: Thu May 19 18:35:58 2011 -0400 rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection() Signed-off-by: David S. Miller commit 504f284a713c46c6ecf975fbd20af00f4e205f5b Author: David S. Miller Date: Thu May 19 18:34:37 2011 -0400 rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window() Signed-off-by: David S. Miller commit 23a4231150ad227c99b7358ae9a741def5898d90 Author: anish kumar Date: Thu May 19 20:59:02 2011 +0530 Staging: sm7xx: printk loglevels modified to match the scenario KERN_ERR should be used in place of KERN_INFO in the case of error scenarios. Signed-off-by: anish kumar Signed-off-by: Greg Kroah-Hartman commit 617a0c7177195a5cef6f0c2e559ee05b5d4191dd Author: anish kumar Date: Thu May 19 20:58:51 2011 +0530 Staging: sm7xx: preferred form for passing a size to memory allocation routines The preferred form for passing a size of a struct is the following: p = kmalloc(sizeof(*p), ...); Please refer Documentation/Codingstyle chapter 14 Signed-off-by: anish kumar Acked-by: Harry Wei Signed-off-by: Greg Kroah-Hartman commit 1639c8ab4857f18f59222141777c8db931071785 Author: anish kumar Date: Thu May 19 20:58:42 2011 +0530 Staging: sm7xx: removing extra white spaces,redundant code and using macros This patch is to remove extra spaces,redundant code and using ARRAY_SIZE macros. Signed-off-by: anish kumar Signed-off-by: Greg Kroah-Hartman commit 2d9903621dbfa6524e7e98fded2fae31ef09f484 Author: Randy Dunlap Date: Thu May 19 08:52:34 2011 -0700 staging: fix mei build when PM is not enabled Fix mei build when CONFIG_PM is not enabled (i.e., fix typo): drivers/staging/mei/main.c:1159: error: 'MEI_PM_OPS' undeclared here (not in a function) Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 3fadc1212a53908bc28e6351a40efd148739108b Author: matt mooney Date: Wed May 18 21:46:13 2011 -0700 staging: usbip: userspace: bind-driver.c: mark remote_host as unused Use __attribute__((unused)) to suppress error until it can be determined that remote_host is not needed. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 2006d35d6190a96885cf48fbaf6425c2bd30ab5c Author: matt mooney Date: Thu May 19 01:37:31 2011 -0700 staging: usbip: userspace: stub_driver.c: update kernel module name Change kernel module name to usbip-host. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit f06cd54f555a4ceca4de39160c68c7e3da657e89 Author: David S. Miller Date: Thu May 19 18:32:55 2011 -0400 pkt_sched: Kill set but unused variable 'protocol' in tc_classify() I checked the history and this has been like this since the beginning of time. Signed-off-by: David S. Miller commit 8fb53b959bd9e503b646a3d68c7b1759667b6a19 Author: David S. Miller Date: Thu May 19 18:20:29 2011 -0400 isdn: capi: Use pr_debug() instead of ifdefs. I was investigating some warnings that spew because of the _DEBUG_FOO ifdef'ery in here. Instead of adding more ifdefs to fix that warning, let's use pr_debug() and get rid of these CPP checks altogether. Signed-off-by: David S. Miller commit 43a5f002afc6f24891e57d31275f34e19a1a07d0 Author: Matt Carlson Date: Thu May 19 12:12:56 2011 +0000 tg3: Update version to 3.119 This patch updates the tg3 version to 3.119. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 310050fad8962a2ebc70011353a549614e118152 Author: Matt Carlson Date: Thu May 19 12:12:55 2011 +0000 tg3: Apply rx_discards fix to 5719/5720 Commit 4d95847381228639844c7197deb8b2211274ef22, entitled "tg3: Workaround rx_discards stat bug", was intended to be applied to the 5717, 5718, 5719_A0, and 5720 A0 chip revisions. The implementation missed the latter two when applying the fix in a critical area. This patch fixes the problem. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 6ff6f81dd4ec08945e10147dbfe611569ef4cc09 Author: Matt Carlson Date: Thu May 19 12:12:54 2011 +0000 tg3: Remove excessive parenthesis This patch removes some excessive parenthesizing. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 0da0606f493c5cdab74bdcc96b12f4305ad94085 Author: Matt Carlson Date: Thu May 19 12:12:53 2011 +0000 tg3: Consolidate all netdev feature assignments This patch consolidates all the netdev feature bit assignments to one location. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit dabc5c670d3f86d15ee4f42ab38ec5bd2682487d Author: Matt Carlson Date: Thu May 19 12:12:52 2011 +0000 tg3: Move TSO_CAPABLE assignment This patch moves the code that asserts the TSO_CAPABLE flag closer to where the TSO capabilities flags are set. There isn't a good enough reason for the code to be separated. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 4452d0999906e3e26b718566362e943fcaa3d694 Author: Matt Carlson Date: Thu May 19 12:12:51 2011 +0000 tg3: Fix stats for 5704 and later devices Commit 4d95847381228639844c7197deb8b2211274ef22, entitled "tg3: Workaround rx_discards stat bug" modified the hardware statistics data structure. The modification shifted the statistics so that the labels no longer corresponded to the counter values. This patch fixes the problem by utilizing reserved space for the new counters. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 54e0a67f446fae290f99781691eba46c5cda66e7 Author: Matt Carlson Date: Thu May 19 12:12:50 2011 +0000 tg3: Fix TSO loopback test Commit bb158d696489244f79fd4c3abd47968a06b48c79, entitled "tg3: Add TSO loopback test", mistakenly inverted the checksum field test from the receive BD. This patch corrects the problem. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 42b64a450b81ec9e8cdd5b3fb13613ab9bb25048 Author: Matt Carlson Date: Thu May 19 12:12:49 2011 +0000 tg3: Consolidate autoneg advertisement setup code Autonegotiation setup has gotten a little more complicated since the tg3 driver was created. This patch consolidates autoneg setup into one routine and modifies the call sites accordingly. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit b0c5943f1ca4df6c1c451ef6be5287a161d29a9d Author: Matt Carlson Date: Thu May 19 12:12:48 2011 +0000 tg3: Fix EEE interoperability workaround Commit 21a00ab270f95d32e502d92f166dd75c518d3c5f, entitled "tg3: Fix EEE interoperability issue", added an EEE interoperability fix. We found that the fix doesn't work if applied too early though. This patch delays the fix until right before allowing LPI assertion. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 108a6c1655f184c9abb7b5917838a8fb204361f5 Author: Matt Carlson Date: Thu May 19 12:12:47 2011 +0000 tg3: Fix IPv6 TCP problems for 5719 Commit 4d163b75e979833979cc401ae433cb1d7743d57e, entitled "tg3: Fix 5719 A0 tx completion bug" turned off TSO to fix a hardware bug. In doing so, it accidentally turned off all IPv6 TCP checksum offloading too. This patch fixes the problem by reenabling the hardware bit that control both features. The TSO capability is still not exposed to the kernel. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 1ff30a59f6d0c754e99442501a5145bdbbcfa6ea Author: Matt Carlson Date: Thu May 19 12:12:46 2011 +0000 tg3: Fix 57765 B0 data corruption The PCIe max FTS limit is too aggressive on these chips. This patch loosens the limit a little to eliminate data corruption issues. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 432aa7ed75b3adaef6040d2cbe745fdd1c899415 Author: Matt Carlson Date: Thu May 19 12:12:45 2011 +0000 tg3: Cleanup transmit error path This patch consolidates the skb cleanup code into a function named tg3_skb_error_unmap(). The modification addresses a long-standing bug where pci_unmap_single() was incorrectly being called instead of pci_unmap_page() in tigon3_dma_hwbug_workaround(). Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 2ffcc981d823a0518c627ca22d51ef72d0b7ca9a Author: Matt Carlson Date: Thu May 19 12:12:44 2011 +0000 tg3: Set tx bug flags for more devices It has been recently discovered that all tg3 devices have a 4Gb boundary DMA problem, and that all 5755 and newer devices can't handle fragments less than or equal to 8 bytes in size. This patch adjusts the flags and removes tg3_start_xmit(). tg3_start_xmit_dma_bug() has been renamed to tg3_start_xmit(). Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 98a38a5d60a6e79eaad7f4a9b68cc1bd306ac5c0 Merge: 7663164 f721a46 Author: Linus Torvalds Date: Thu May 19 14:56:13 2011 -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: params.c: Use new strtobool function to process boolean inputs debugfs: move to new strtobool Add a strtobool function matching semantics of existing in kernel equivalents modpost: Update 64k section support for binutils 2.18.50 module: Use binary search in lookup_symbol() module: Use the binary search for symbols resolution lib: Add generic binary search function to the kernel. module: Sort exported symbols module: each_symbol_section instead of each_symbol module: split unset_section_ro_nx function. module: undo module RONX protection correctly. module: zero mod->init_ro_size after init is freed. minor ANSI prototype sparse fix module: reorder kparam_array to remove alignment padding on 64 bit builds module: remove 64 bit alignment padding from struct module with CONFIG_TRACE* module: do not hide __modver_version_show declaration behind ifdef module: deal with alignment issues in built-in module versions commit 7663164f2619e37a1dcad59383e2fcf8c5194107 Merge: e66eed6 6151658 Author: Linus Torvalds Date: Thu May 19 14:55:34 2011 -0700 Merge branch 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs * 'docs-move' of git://git.kernel.org/pub/scm/linux/kernel/git/rdunlap/linux-docs: Correct occurrences of - Documentation/kvm/ to Documentation/virtual/kvm - Documentation/uml/ to Documentation/virtual/uml - Documentation/lguest/ to Documentation/virtual/lguest throughout the kernel source tree. Add a 00-INDEX file to Documentation/virtual Remove uml from the top level 00-INDEX file. Move kvm, uml, and lguest subdirectories under a common "virtual" directory, I.E: commit 5b5ed8afe48ca6916daabf9822e7a19fc19fdab4 Author: David S. Miller Date: Thu May 19 17:45:29 2011 -0400 9p: Kill unused variable 'ret' in trans_rdma.c:parse_opts() Probably just cut and pasted from the other parse_opts() implementations in the 9p sources. Signed-off-by: David S. Miller commit 99517e3d7930f8cc064f7e9443b1b441e00e83d7 Author: David S. Miller Date: Thu May 19 17:38:57 2011 -0400 9p: Kill set but not used variable 'ret' in parse_opts() Signed-off-by: David S. Miller commit 80d02085d99039b3b7f3a73c8896226b0cb1ba07 Author: Paul E. McKenney Date: Thu May 12 01:08:07 2011 -0700 Revert "rcu: Decrease memory-barrier usage based on semi-formal proof" This reverts commit e59fb3120becfb36b22ddb8bd27d065d3cdca499. This reversion was due to (extreme) boot-time slowdowns on SPARC seen by Yinghai Lu and on x86 by Ingo . This is a non-trivial reversion due to intervening commits. Conflicts: Documentation/RCU/trace.txt kernel/rcutree.c Signed-off-by: Ingo Molnar commit e66eed651fd18a961f11cda62f3b5286c8cc4f9f Author: Linus Torvalds Date: Thu May 19 14:15:29 2011 -0700 list: remove prefetching from regular list iterators This is removes the use of software prefetching from the regular list iterators. We don't want it. If you do want to prefetch in some iterator of yours, go right ahead. Just don't expect the iterator to do it, since normally the downsides are bigger than the upsides. It also replaces with , because the use of LIST_POISON ends up needing it. is sadly not self-contained, and including prefetch.h just happened to hide that. Suggested by David Miller (networking has a lot of regular lists that are often empty or a single entry, and prefetching is not going to do anything but add useless instructions). Acked-by: Ingo Molnar Acked-by: David S. Miller Cc: linux-arch@vger.kernel.org Signed-off-by: Linus Torvalds commit 3fb72f1e6e6165c5f495e8dc11c5bbd14c73385c Author: Micha Nelissen Date: Thu May 19 10:14:06 2011 +0000 ipconfig wait for carrier v3 -> v4: fix return boolean false instead of 0 for ic_is_init_dev Currently the ip auto configuration has a hardcoded delay of 1 second. When (ethernet) link takes longer to come up (e.g. more than 3 seconds), nfs root may not be found. Remove the hardcoded delay, and wait for carrier on at least one network device. Signed-off-by: Micha Nelissen Cc: David Miller Signed-off-by: David S. Miller commit c182f90bc1f22ce5039b8722e45621d5f96862c2 Author: Jacek Luczak Date: Thu May 19 09:55:13 2011 +0000 SCTP: fix race between sctp_bind_addr_free() and sctp_bind_addr_conflict() During the sctp_close() call, we do not use rcu primitives to destroy the address list attached to the endpoint. At the same time, we do the removal of addresses from this list before attempting to remove the socket from the port hash As a result, it is possible for another process to find the socket in the port hash that is in the process of being closed. It then proceeds to traverse the address list to find the conflict, only to have that address list suddenly disappear without rcu() critical section. Fix issue by closing address list removal inside RCU critical section. Race can result in a kernel crash with general protection fault or kernel NULL pointer dereference: kernel: general protection fault: 0000 [#1] SMP kernel: RIP: 0010:[] [] sctp_bind_addr_conflict+0x64/0x82 [sctp] kernel: Call Trace: kernel: [] ? sctp_get_port_local+0x17b/0x2a3 [sctp] kernel: [] ? sctp_bind_addr_match+0x33/0x68 [sctp] kernel: [] ? sctp_do_bind+0xd3/0x141 [sctp] kernel: [] ? sctp_bindx_add+0x4d/0x8e [sctp] kernel: [] ? sctp_setsockopt_bindx+0x112/0x4a4 [sctp] kernel: [] ? generic_file_aio_write+0x7f/0x9b kernel: [] ? sctp_setsockopt+0x14f/0xfee [sctp] kernel: [] ? do_sync_write+0xab/0xeb kernel: [] ? fsnotify+0x239/0x282 kernel: [] ? alloc_file+0x18/0xb1 kernel: [] ? compat_sys_setsockopt+0x1a5/0x1d9 kernel: [] ? compat_sys_socketcall+0x143/0x1a4 kernel: [] ? sysenter_dispatch+0x7/0x32 Signed-off-by: Jacek Luczak Acked-by: Vlad Yasevich CC: Eric Dumazet Reviewed-by: Eric Dumazet Signed-off-by: David S. Miller commit a0c8326397262f1817ee6c5212ad6adf43e3df36 Author: Ben Gardiner Date: Wed May 18 09:27:45 2011 -0400 ASoC: davinci-mcasp: enable ping-pong SRAM buffers The davinci-i2s driver copies the platform data for playback and capture sram sizes which is in turn used by davinci-pcm to allocate ping-pong buffers. Copy also the platform data in davinci-mcasp probe. Signed-off-by: Ben Gardiner Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c26f642e2683fb1a367686bc0bac9f5947885cb6 Author: Dmitry Artamonow Date: Wed May 18 19:25:10 2011 +0400 ASoC: add iPAQ hx4700 machine driver AK4641 connected via I2S and I2C, jack detection via GPIO. Signed-off-by: Philipp Zabel Signed-off-by: Dmitry Artamonow Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 00d2701070c91728988bbfa414a346a23acd8275 Author: Dmitry Artamonow Date: Wed May 18 19:25:09 2011 +0400 ASoC: Asahi Kasei AK4641 codec driver A driver for the AK4641 codec used in iPAQ hx4700 and Glofiish M800 among others. Signed-off-by: Harald Welte Signed-off-by: Philipp Zabel Signed-off-by: Dmitry Artamonow Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 75d65a425c0163d3ec476ddc12b51087217a070c Author: Linus Torvalds Date: Thu May 19 13:50:07 2011 -0700 hlist: remove software prefetching in hlist iterators They not only increase the code footprint, they actually make things slower rather than faster. On internationally acclaimed benchmarks ("make -j16" on an already fully built kernel source tree) the hlist prefetching slows down the build by up to 1%. (Almost all of it comes from hlist_for_each_entry_rcu() as used by avc_has_perm_noaudit(), which is very hot due to all the pathname lookups to see if there is anything to do). The cause seems to be two-fold: - on at least some Intel cores, prefetch(NULL) ends up with some microarchitectural stall due to the TLB miss that it incurs. The hlist case triggers this very commonly, since the NULL pointer is the last entry in the list. - the prefetch appears to cause more D$ activity, probably because it prefetches hash list entries that are never actually used (because we ended the search early due to a hit). Regardless, the numbers clearly say that the implicit prefetching is simply a bad idea. If some _particular_ user of the hlist iterators wants to prefetch the next list entry, they can do so themselves explicitly, rather than depend on all list iterators doing so implicitly. Acked-by: Ingo Molnar Acked-by: David S. Miller Cc: linux-arch@vger.kernel.org Signed-off-by: Linus Torvalds commit be281e554e2a4cf2478df7a8b8926c89454bccfa Author: Eric Dumazet Date: Thu May 19 01:14:23 2011 +0000 ipv6: reduce per device ICMP mib sizes ipv6 has per device ICMP SNMP counters, taking too much space because they use percpu storage. needed size per device is : (512+4)*sizeof(long)*number_of_possible_cpus*2 On a 32bit kernel, 16 possible cpus, this wastes more than 64kbytes of memory per ipv6 enabled network device, taken in vmalloc pool. Since ICMP messages are rare, just use shared counters (atomic_long_t) Per network space ICMP counters are still using percpu memory, we might also convert them to shared counters in a future patch. Signed-off-by: Eric Dumazet CC: Denys Fedoryshchenko Signed-off-by: David S. Miller commit 75e308c894c4a5e47c005b8e821ae5f539ad2ef3 Author: Changli Gao Date: Wed May 18 21:16:01 2011 +0000 net: ping: fix the coding style The characters in a line should be no more than 80. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit bb0cd2fb539c4e454ed32e32194acc03b75753f3 Author: Changli Gao Date: Wed May 18 21:16:00 2011 +0000 net: ping: make local functions static As these functions are only used in this file. Signed-off-by: Changli Gao Signed-off-by: David S. Miller commit 6b60d7b9df727726dfb7e59ca0a7caf14e81e0a2 Merge: a48eff1 abb57ea Author: David S. Miller Date: Thu May 19 15:55:45 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit 13143d2d1cffd243a6d778000b02ab4938ac751a Author: Sage Weil Date: Thu May 12 16:08:30 2011 -0700 rbd: warn on update_snaps failure on notify Signed-off-by: Sage Weil commit 9d6fcb081a4770c3772c51c59c7251c22716d7bb Author: Sage Weil Date: Thu May 12 15:48:16 2011 -0700 ceph: check return value for start_request in writepages Since we pass the nofail arg, we should never get an error; BUG if we do. (And fix the function to not return an error if __map_request fails.) Signed-off-by: Sage Weil commit 6b4a3b517a767c483d16a200730b2967e0e23b83 Author: Sage Weil Date: Thu May 12 15:43:48 2011 -0700 ceph: remove useless check rc is only ever 0 or negative in this method. Signed-off-by: Sage Weil commit a2a79609c044d3ddb540671d5029a41c90c57251 Author: Sage Weil Date: Thu May 12 15:34:24 2011 -0700 libceph: add missing breaks in addr_set_port Signed-off-by: Sage Weil commit 04177882265bc5014300a631e7384f8fe6b6aa0f Author: Sage Weil Date: Thu May 12 15:33:17 2011 -0700 libceph: fix TAG_WAIT case If we get a WAIT as a client something went wrong; error out. And don't fall through to an unrelated case. Signed-off-by: Sage Weil commit da39822c6565095a0151ccf9d6b95e2ae5612885 Author: Sage Weil Date: Thu May 12 15:28:11 2011 -0700 ceph: fix broken comparison in readdir loop Both off and fi->offset are unsigned, so the difference is always >= 0. Compare them directly instead of the sign of the difference. Signed-off-by: Sage Weil commit 31456665a02148353a83fec84d3182700e356588 Author: Sage Weil Date: Thu May 12 15:18:43 2011 -0700 libceph: fix osdmap timestamp assignment Signed-off-by: Sage Weil commit 3540303f87115cbdae6ed2cab44ce6a7676d48d3 Author: Sage Weil Date: Thu May 12 15:13:23 2011 -0700 ceph: fix rare potential cap leak If we grab new_cap, retake the lock, and find we already have a cap now for the given mds, release new_cap. Signed-off-by: Sage Weil commit 12a2f643b0e6e791ba61485430d0003eeb3e373c Author: Sage Weil Date: Thu May 12 14:34:04 2011 -0700 libceph: use snprintf for unknown addrs Signed-off-by: Sage Weil commit 2dab036b8c349d747f447ac98c8eb40c769727a8 Author: Sage Weil Date: Thu May 12 14:29:51 2011 -0700 libceph: use snprintf for formatting object name Signed-off-by: Sage Weil commit ae598083015e22d1802617c18d3408971b1bddc0 Author: Sage Weil Date: Thu May 12 14:28:05 2011 -0700 ceph: use snprintf for dirstat content We allocate a buffer for rstats if the dirstat option is enabled. Use snprintf. Signed-off-by: Sage Weil commit e8f54ce169125a2e59330fac25ad3c9ac0ce22a5 Author: Sage Weil Date: Thu May 12 14:18:42 2011 -0700 libceph: fix uninitialized value when no get_authorizer method is set If there is no get_authorizer method we set the out_kvec to a bogus pointer. The length is also zero in that case, so it doesn't much matter, but it's better not to add the empty item in the first place. Signed-off-by: Sage Weil commit 1b36698577c1008dc1e63f0bf4b6f3d9deada94a Author: Sage Weil Date: Thu May 12 14:14:51 2011 -0700 libceph: remove unused variable Signed-off-by: Sage Weil commit 0da5d70369e87f80adf794080cfff1ca15a34198 Author: Sage Weil Date: Thu May 19 11:21:05 2011 -0700 libceph: handle connection reopen race with callbacks If a connection is closed and/or reopened (ceph_con_close, ceph_con_open) it can race with a callback. con_work does various state checks for closed or reopened sockets at the beginning, but drops con->mutex before making callbacks. We need to check for state bit changes after retaking the lock to ensure we restart con_work and execute those CLOSED/OPENING tests or else we may end up operating under stale assumptions. In Jim's case, this was causing 'bad tag' errors. There are four cases where we re-take the con->mutex inside con_work: catch them all and return EAGAIN from try_{read,write} so that we can restart con_work. Reported-by: Jim Schutt Tested-by: Jim Schutt Signed-off-by: Sage Weil commit 3b663780347ce532b08be1c859b1df14f0eea4c8 Author: Sage Weil Date: Wed May 18 16:12:12 2011 -0700 ceph: take reference on mds request r_unsafe_dir We put ourselves on an inode list for the parent directory of metadata operations so that an fsync on the directory will wait for metadata updates to commit to disk. We weren't holding a reference to that directory, however, and under certain workloads (fsstress in this case) the directory can go away. Signed-off-by: Sage Weil commit c6e38c06cb51bee42ff80a36a0f7c67b485c4541 Author: Mohammed Shafi Shajakhan Date: Wed May 18 17:56:00 2011 +0530 ath9k: use PS wakeup before REG_READ otherwise we will get deadbeef when the station is in idle state Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit a2cd43c52aa5c676b03d575177536e05ac672c75 Author: Luciano Coelho Date: Wed May 18 11:42:03 2011 +0300 nl80211: remove some stack variables in trigger_scan and start_sched_scan Some stack variables (name *ssid and *channel) are only used to define the size of the memory block that needs to be allocated for the request structure in the nl80211_trigger_scan() and nl80211_start_sched_scan() functions. This is unnecessary because the sizes of the actual elements in the structure can be used instead. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit d676ff493d9dfb8b34892214665028a8c85e2056 Author: Javier Cardona Date: Tue May 17 16:13:34 2011 -0700 mac80211: Don't sleep when growing the mesh path After commit 1928ecab620907a0953f811316d05f367f3f4dba (mac80211: fix and simplify mesh locking) mesh table allocation is performed with the pathtbl_resize_lock taken. Under those conditions one should not sleep. This patch makes the allocations GFP_ATOMIC to prevent that. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit ba4903f97a275ed0967b58ff882f8ab41bec24ad Author: Felix Fietkau Date: Tue May 17 21:09:54 2011 +0200 ath9k: implement .tx_last_beacon() Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 755173291a86c6e77414e1eaf22279fde88ccd86 Author: Rafał Miłecki Date: Tue May 17 19:19:39 2011 +0200 b43: read PHY info only when needed (for PHY-A) We risk reading TMSHIGH register twice, but PHY-A are really rare and we do not support them at the moment. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1495298ddd496131b8226a837ab10bdd5acb3480 Author: Rafał Miłecki Date: Tue May 17 18:57:28 2011 +0200 b43: separate ssb core reset Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit c4a2a08165dd5a58e24eb342902839dca78887b8 Author: Rafał Miłecki Date: Tue May 17 18:57:27 2011 +0200 b43: add helper for finding GPIO device Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 05100a29cb65b7473bc0c71282df3e31b460b728 Author: Rafał Miłecki Date: Tue May 17 14:00:02 2011 +0200 b43: dma: cache translation (routing bits) Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 0355a3452fe218b2bc61a7a571064ee86dd6bf4e Author: Rafał Miłecki Date: Tue May 17 14:00:01 2011 +0200 b43: make b43_wireless_init less bus specific Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 620d785ba9066d5436857ec8e7c104c7b1c467e1 Author: Rafał Miłecki Date: Tue May 17 14:00:00 2011 +0200 b43: add helpers for block R/W ops Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit ac56703e0e790509963ee42cddebe706fbd3b74c Author: Felix Fietkau Date: Tue May 17 10:34:12 2011 +0200 ath9k: fix ad-hoc nexttbtt calculation rounding up the delta between last-beacon-tsf and tsf to intval is wrong and can lead to misconfigured timers which breaks beacon transmission. Fix this by adding intval and subtracting the offset of the tsf within the current slot. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 5b68138e5659cbfd5df2879d17f9ba0b66477fec Author: Sujith Manoharan Date: Tue May 17 13:36:18 2011 +0530 ath9k: Drag the driver to the year 2011 The Times They Are a-Changin'. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit a455c57ed3e4b2166c42286dd7987f36b5e00612 Author: Mohammed Shafi Shajakhan Date: Tue May 17 13:05:05 2011 +0530 ath_hw: Fix bssid mask documentation Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 89ea674565611908e11f92f57b15bf50d82f1f22 Author: Sujith Manoharan Date: Tue May 17 12:42:34 2011 +0530 ath9k_htc: Fix packet timeout The WMI tx status event timeout was not aligning with the TX cleanup timer threshold value. Fix this to handle dropped packets. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit d108e8b9320b77e3fa165757fd40f298bdd89d1c Author: Sujith Manoharan Date: Tue May 17 12:42:24 2011 +0530 ath9k_htc: Change credit limit for UB94/95 Reduce the credit size for UB94/95 to fix target hangs. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit bd54879958f3e7efe249f69c75718cc9ee915cf8 Author: Sujith Manoharan Date: Tue May 17 12:42:14 2011 +0530 ath9k_htc: Fix max subframe handling Commit "ath9k_htc: Fix AMPDU subframe handling" registered the maximum subframe limit of the driver with mac80211, which was used in ADDBA negotiation. While technically correct, this causes inter-operability issues with a few APs. Revert to the older behavior to fix this. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 0cd075d74b319b88bbaad666c2b9b911859a5b0e Author: Sujith Manoharan Date: Tue May 17 12:42:03 2011 +0530 ath9k_htc: Fix BSSID calculation The BSSID/AID has to be set for the first associated station interface. Subsequent interfaces may move out of assoc/disassoc status, in which case, the BSSID has to be re-calculated from the available interfaces. Also, ANI should be enabled or disabled based on the current opmode. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 33a5315f97e5b3964183f0cf74768ac47eabe631 Author: Sujith Manoharan Date: Tue May 17 12:41:52 2011 +0530 ath9k_htc: Fix RX filter calculation Choose the MY_BEACON filter only in case of a single interface. Also, set the ATH9K_RX_FILTER_MCAST_BCAST_ALL filter in case of interfaces. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit db32124a3f463e551ebffe3b4c6045924d3dfafd Author: Sujith Manoharan Date: Tue May 17 12:41:41 2011 +0530 ath9k_htc: Recalculate the BSSID mask on interface Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 84dfa7308ccba190ad7efe655c25ca80793c029e Author: Sujith Manoharan Date: Tue May 17 12:41:31 2011 +0530 ath9k_htc: Fix station flags The FW does absolutely nothing with the station flags, so remove them. But keep the field around since it might come in handy in the future. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit c75197a779b6f5ee4c5b859423a0d5257475ebee Author: Sujith Manoharan Date: Tue May 17 12:41:20 2011 +0530 ath9k_htc: Fix mode selection Remove all the unsupported modes like FH, TURBO etc. Since this requires a FW update, increase the fw version to 1.3 Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 20ba2861b09ae942398eda6d2dc0bf1019a97ddb Author: Daniel Halperin Date: Mon May 16 21:46:28 2011 -0700 iwlwifi: remove unused parameter from iwl_hcmd_queue_reclaim cmd_index is never used. Signed-off-by: Daniel Halperin Signed-off-by: John W. Linville commit 62a5b7dcee00c8e64e61ed98541c95fd38583116 Author: Marc Yang Date: Mon May 16 19:17:53 2011 -0700 mwifiex: adjust high/low water marks for tx_pending queue This is to fix an issue that the throughput of the higher priority stream gets dropped when a lower priority stream is present. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 17e8cec87586c26b953c6541c8a045e906ea046c Author: Marc Yang Date: Mon May 16 19:17:52 2011 -0700 mwifiex: CPU mips optimization with NO_PKT_PRIO_TID If we go through the entire for loop in mwifiex_wmm_get_highest_priolist_ptr() and don't find any packets, set highest_queued_prio to NO_PKT_PRIO_TID (< LOW_PRIO_TID). Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 93968147874508e6dd534af1e236a7353269da3f Author: Marc Yang Date: Mon May 16 19:17:51 2011 -0700 mwifiex: check mwifiex_wmm_lists_empty() before dequeue add checks to mwifiex_wmm_process_tx() loop so it doesn't re-enter mwifiex_dequeue_tx_packet() to find it can't send. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 49729ff616547d7abcb96924d14aa860320e7352 Author: Marc Yang Date: Mon May 16 19:17:50 2011 -0700 mwifiex: reduce CPU usage by tracking highest_queued_prio This patch adds highest_queued_prio to track priority of packets as they are enqueued so that mwifiex_wmm_get_highest_priolist_ptr() starts checking at the first level where we have packets, instead of the highest. The function also lowers priority value to the level where first packet is found. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit f699254c7126d7df94491dfd4c3648f8ec0c0d51 Author: Marc Yang Date: Mon May 16 19:17:49 2011 -0700 mwifiex: reduce CPU usage by tracking tx_pkts_queued This patch adds tx_pkts_queued to track number of packets being enqueued & dequeued so that mwifiex_wmm_lists_empty() evaluation is lightweight. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 7176ba23f8b589b1df3229574ff46fb904ce9ec5 Author: Rhyland Klein Date: Mon May 16 14:41:48 2011 -0700 net: rfkill: add generic gpio rfkill driver This adds a new generic gpio rfkill driver to support rfkill switches which are controlled by gpios. The driver also supports passing in data about the clock for the radio, so that when rfkill is blocking, it can disable the clock. This driver assumes platform data is passed from the board files to configure it for specific devices. Original-patch-by: Anantha Idapalapati Signed-off-by: Rhyland Klein Signed-off-by: John W. Linville commit c6820f1e6c8273ca4b8f94c2354193d19e1a5c47 Author: Felix Fietkau Date: Mon May 16 23:22:00 2011 +0200 ath9k: fix ad-hoc mode beacon selection In ad-hoc mode, beacon timers are configured differently compared to AP mode, and (depending on the scenario) can vary enough to make the beacon tasklet not detect slot 0 based on the TSF. Since staggered beacons are not (and cannot be) used in ad-hoc mode, it makes more sense to just hardcode slot 0 here, avoiding unnecessary TSF reads and calculations. Signed-off-by: Felix Fietkau Reported-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 29510ec3b626c86de9707bb8904ff940d430289b Merge: 398995c 95950c2 Author: Ingo Molnar Date: Thu May 19 19:48:03 2011 +0200 Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 398995ce7980b03b5803f8f31073b45d87746bc1 Merge: c330525 d697182 Author: Ingo Molnar Date: Thu May 19 19:25:55 2011 +0200 Merge branch 'tip/perf/core-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit bf59170a66bc3eaf3ee513aa6ce9774aa2ab5188 Author: Dave Chinner Date: Thu Apr 21 09:34:28 2011 +0000 xfs: obey minleft values during extent allocation correctly When allocating an extent that is long enough to consume the remaining free space in an AG, we need to ensure that the allocation leaves enough space in the AG for any subsequent bmap btree blocks that are needed to track the new extent. These have to be allocated in the same AG as we only reserve enough blocks in an allocation transaction for modification of the freespace trees in a single AG. xfs_alloc_fix_minleft() has been considering blocks on the AGFL as free blocks available for extent and bmbt block allocation, which is not correct - blocks on the AGFL are there exclusively for the use of the free space btrees. As a result, when minleft is less than the number of blocks on the AGFL, xfs_alloc_fix_minleft() does not trim the given extent to leave minleft blocks available for bmbt allocation, and hence we can fail allocation during bmbt record insertion. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 44396476a0f24e5174768d3732f1958857c26d22 Author: Dave Chinner Date: Thu Apr 21 09:34:27 2011 +0000 xfs: reset buffer pointers before freeing them When we free a vmapped buffer, we need to ensure the vmap address and length we free is the same as when it was allocated. In various places in the log code we change the memory the buffer is pointing to before issuing IO, but we never reset the buffer to point back to it's original memory (or no memory, if that is the case for the buffer). As a result, when we free the buffer it points to memory that is owned by something else and attempts to unmap and free it. Because the range does not match any known mapped range, it can trigger BUG_ON() traps in the vmap code, and potentially corrupt the vmap area tracking. Fix this by always resetting these buffers to their original state before freeing them. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit ee58abdfcc8201f500107c7ba03f738af8b49b85 Author: Dave Chinner Date: Thu Apr 21 09:34:26 2011 +0000 xfs: avoid getting stuck during async inode flushes When the underlying inode buffer is locked and xfs_sync_inode_attr() is doing a non-blocking flush, xfs_iflush() can return EAGAIN. When this happens, clear the error rather than returning it to xfs_inode_ag_walk(), as returning EAGAIN will result in the AG walk delaying for a short while and trying again. This can result in background walks getting stuck on the one AG until inode buffer is unlocked by some other means. This behaviour was noticed when analysing event traces followed by code inspection and verification of the fix via further traces. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit e57375153d7376f2a923d98c388c1e20227b5731 Author: Dave Chinner Date: Thu Apr 21 09:34:25 2011 +0000 xfs: fix xfs_itruncate_start tracing Variables are ordered incorrectly in trace call. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Alex Elder commit 1beb65ad45f29fa1d53c13c6a20056a190ac9060 Author: Dave Chinner Date: Tue May 10 02:05:50 2011 +0000 xfs: fix duplicate workqueue initialisation The workqueue initialisation function is called twice when initialising the XFS subsystem. Remove the second initialisation call. Signed-off-by: Dave Chinner Signed-off-by: Alex Elder commit e69522a8cc51fbefbfe9d178ad177f7b6ca00ebd Author: Joe Perches Date: Tue May 3 20:14:44 2011 +0000 xfs: kill off xfs_printk() xfs_alert_tag() can be defined using xfs_alert(), and thereby avoid using xfs_printk() altogether. This is the only remaining use of xfs_printk(), so changing it this way means xfs_printk() can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated.can simply be eliminated. Also add format checking to the non-debug inline function xfs_debug. Miscellaneous function prototype argument alignment. (Updated to delete the definition of xfs_printk(), which is no longer used or needed.) Signed-off-by: Joe Perches Signed-off-by: Alex Elder commit 9b090f2da85bd0df5e1a1ecfe4120b7b50358f48 Author: Catalin Marinas Date: Thu May 19 16:25:30 2011 +0100 kmemleak: Initialise kmemleak after debug_objects_mem_init() Kmemleak frees objects via RCU and when CONFIG_DEBUG_OBJECTS_RCU_HEAD is enabled, the RCU callback triggers a call to free_object() in lib/debugobjects.c. Since kmemleak is initialised before debug objects initialisation, it may result in a kernel panic during booting. This patch moves the kmemleak_init() call after debug_objects_mem_init(). Reported-by: Marcin Slusarz Tested-by: Tejun Heo Signed-off-by: Catalin Marinas Cc: commit 79e0d9bd262bdd36009e8092e57e34dc5e22a1c7 Author: Catalin Marinas Date: Wed Apr 27 17:06:19 2011 +0100 kmemleak: Select DEBUG_FS unconditionally in DEBUG_KMEMLEAK In the past DEBUG_FS used to depend on SYSFS and DEBUG_KMEMLEAK selected it conditionally. This is no longer the case, so always select DEBUG_FS via DEBUG_KMEMLEAK. Signed-off-by: Catalin Marinas commit 52c3ce4ec5601ee383a14f1485f6bac7b278896e Author: Catalin Marinas Date: Wed Apr 27 16:44:26 2011 +0100 kmemleak: Do not return a pointer to an object that kmemleak did not get The kmemleak_seq_next() function tries to get an object (and increment its use count) before returning it. If it could not get the last object during list traversal (because it may have been freed), the function should return NULL rather than a pointer to such object that it did not get. Signed-off-by: Catalin Marinas Reported-by: Phil Carmody Acked-by: Phil Carmody Cc: commit 39dfe1387060dbad30255fc36c8b3b67d3b359d7 Author: Madis Janson Date: Thu May 19 18:32:41 2011 +0200 ALSA: hda - Enable Realtek ALC269 codec input layer beep This fixes the input layer beep not working on some EeePC 1000 models by adding the subsystem id into whitelist. Otherwise the corresponding ALSA mixer is not enabled and stays muted, resulting in no console beep. Signed-off-by: Madis Janson Signed-off-by: Takashi Iwai commit 659e6ed55ff8d617c895c10288644e3e6107834e Author: Geert Uytterhoeven Date: Mon Jan 31 20:15:04 2011 +0100 input/atari: Fix mouse movement and button mapping Up and down movements were reversed, left and right buttons were swapped. Signed-off-by: Geert Uytterhoeven commit 186f200a95cbd13c291cdd3ddeb07aad0a3782cc Author: Michael Schmitz Date: Sun Dec 28 23:00:45 2008 +0100 input/atari: Fix atarimouse init Atarimouse fails to load as a module (with ENODEV), due to a brown paper bag bug, misinterpreting the semantics of atari_keyb_init(). [geert] Propagate the return value of atari_keyb_init() everywhere Signed-off-by: Michael Schmitz Signed-off-by: Geert Uytterhoeven commit 7786908c3c1bb38dcc5cd2c037251c05507eef16 Author: Michael Schmitz Date: Tue Dec 16 21:26:03 2008 +0100 input/atari: Use the correct mouse interrupt hook The Atari keyboard driver calls atari_mouse_interrupt_hook if it's set, not atari_input_mouse_interrupt_hook. Fix below. [geert] Killed off atari_mouse_interrupt_hook completely, after fixing another incorrect assignment in atarimouse.c. Signed-off-by: Michael Schmitz Signed-off-by: Geert Uytterhoeven commit 79abeed6ee93231d494c191a9251c0845bd71fdd Author: Geert Uytterhoeven Date: Wed May 4 14:55:41 2011 +0200 m68k/atari: Do not use "/" in interrupt names It may trigger a warning in fs/proc/generic.c:__xlate_proc_name() when trying to add an entry for the interrupt handler to sysfs. Signed-off-by: Geert Uytterhoeven commit 1fc74ac61229edfe053fb87e8939ae9ca3794389 Author: Geert Uytterhoeven Date: Thu May 5 20:33:02 2011 +0200 m68k: unistd - Comment out definitions for unimplemented syscalls Suggested-by: Arnd Bergmann Signed-off-by: Geert Uytterhoeven commit d6d42bb2f85d875dc0c421699de5a1401b2af6a6 Author: Geert Uytterhoeven Date: Fri May 6 20:57:11 2011 +0200 m68k: Really wire up sys_pselect6 and sys_ppoll We reserved the numbers a long time ago, but never wired them up in the syscall table as they need TIF_RESTORE_SIGMASK, which we only got last year in commit cb6831d5d3099e772a510eb3e1ed0760ccffb45e ("m68k: Switch to saner sigsuspend()") Signed-off-by: Geert Uytterhoeven Acked-by: Greg Ungerer Cc: stable@kernel.org commit c4245c9d6535f3d02fda7f6eb9adcec9f09e8fe3 Author: Geert Uytterhoeven Date: Wed Apr 6 22:12:53 2011 +0200 m68k: Merge mmu and non-mmu versions of sys_call_table Impact for nommu: - Store table in .rodata instead of .text, - Let kernel/sys_ni.c handle the stubbing of MMU-only syscalls, - Implement sys_mremap and sys_nfsservct, - Remove unused padding at the end of the table. Impact for mmu: - Store table in .rodata instead of .data. Signed-off-by: Geert Uytterhoeven Acked-by: Greg Ungerer commit 6cf515e113fc1938b3cc9812bd8519a4c6155ef9 Author: Geert Uytterhoeven Date: Sun Apr 24 10:32:49 2011 +0200 MAINTAINERS: Roman Zippel has been MIA for several years. Hence make AFFS and HFS orphans, and remove him as an m68k maintainer. Signed-off-by: Geert Uytterhoeven commit f82a519f1262963d6ab30fa238721463fad2e0c8 Author: Geert Uytterhoeven Date: Sun Apr 3 14:00:10 2011 +0200 m68k: bitops - Never step beyond the end of the bitmap find_next bitops on m68k (find_next_zero_bit, find_next_bit, and find_next_bit_le) may cause out of bounds memory access when the bitmap size in bits % 32 != 0 and offset (the bitnumber to start searching at) is very close to the bitmap size. For example, unsigned long bitmap[2] = { 0, 0 }; find_next_bit(bitmap, 63, 62); 1. find_next_bit() tries to find any set bits in bitmap[1], but no bits set. 2. Then find_first_bit(bimap + 2, -1) 3. Unfortunately find_first_bit() takes unsigned int as the size argument. 4. find_first_bit will access bitmap[2~] until it find any set bits. Add missing tests for stepping beyond the end of the bitmap to all find_{first,next}_*() functions, and make sure they never return a value larger than the bitmap size. Reported-by: Akinobu Mita Cc: Andreas Schwab Signed-off-by: Geert Uytterhoeven commit 359c47ea71be21c1105ae474e8c90ec3e988bbdf Author: Geert Uytterhoeven Date: Sun Apr 3 13:32:00 2011 +0200 m68k: bitops - offset == ((long)p - (long)vaddr) * 8 Hence use "offset" in find_next_{,zero_}bit(), like is already done for find_next_{,zero_}bit_le() Signed-off-by: Geert Uytterhoeven Cc: Akinobu Mita Cc: Andreas Schwab Signed-off-by: Geert Uytterhoeven commit df1fe13289eca445b77471c204408bec67313be3 Author: Dmitry Eremin-Solenikov Date: Thu May 19 18:48:27 2011 +0400 ALSA: intel8x0m: enable AMD8111 modem AMD 8111 southbridges contain a controller for MC'97 modem. Enable support for this controller in intel8x0m driver. Signed-off-by: Dmitry Eremin-Solenikov Signed-off-by: Takashi Iwai commit 887cb45694f77d59de19674cb73146fec72fadbb Author: Daniel Kiper Date: Wed May 4 20:19:49 2011 +0200 drivers/xen/sys-hypervisor: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit b53cedebd74918237176520f9157deb7ae066b71 Author: Daniel Kiper Date: Wed May 4 20:18:05 2011 +0200 arch/x86/xen/smp: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit fb6ce5dea4bb704bfcd9fda7e6b1354da66f4d2f Author: Daniel Kiper Date: Wed May 4 20:18:45 2011 +0200 arch/x86/xen/time: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit ad7ba09e658f8e890797ed168dfb3f84be934b09 Author: Daniel Kiper Date: Wed May 4 20:19:15 2011 +0200 arch/x86/xen/xen-ops: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 3f508953dd2ebcbcd32d28d0b6aad4d76980e722 Author: Daniel Kiper Date: Thu May 12 17:19:53 2011 -0400 arch/x86/xen/mmu: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper [v1: Rebased on top of latest linus's to include fixes in mmu.c] Signed-off-by: Konrad Rzeszutek Wilk commit 83f7649c52871d4b0799c209c364374b682fa4a8 Author: Guenter Roeck Date: Thu Mar 17 13:16:01 2011 -0700 hwmon: (pmbus) Add support for Analog Devices ADM1275 Add support for Analog Devices ADM1275 Hot-Swap Controller and Digital Power Monitor Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit 0c0a0615163e025eb978547969467012529e01d5 Author: Guenter Roeck Date: Tue Mar 8 22:01:39 2011 -0800 hwmon: (pmbus) Support for TI UCD90xxx series Sequencer and System Health Controllers Hardware monitoring support for TI UCD90120, UCD90124, UCD9090, and UCD90910 Sequencer and System Health Controllers. Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit 84fc4585c152f34a1a90a03b7abb88a2e1218a42 Author: Guenter Roeck Date: Sun Mar 6 15:54:27 2011 -0800 hwmon: (pmbus) Add support for TI UCD9200 series of PWM System Controllers This patch adds hardware monitoring support for TI UCD9220, UCD9222, UCD9224, UCD9240, UCD9244, UCD9246, and UCD9248 Digital PWM System Controllers. Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit 6586b14c7bdec22f59dc749ead1d01d542d793b6 Author: Guenter Roeck Date: Wed Mar 9 07:23:54 2011 -0800 hwmon: (pmbus) Use device specific function to read fan configuration Fan control implementation tends to be device specific, so start using the device specific function call to read fan configuration registers. Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit 2cfa6aedb32c9c1226094ed383dc3c9b3e2ecddb Author: Guenter Roeck Date: Tue Mar 8 23:00:10 2011 -0800 hwmon: (pmbus) Expand scope of device specific get_status function Some devices use non-standard registers to access various functionality. This does not only affect status registers, but other registers as well. Rename local get_status function to get_byte_data to reflect this requirement. Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit b4ce237b7f7d31abe9c5b0c443a64573ace4933d Author: Guenter Roeck Date: Fri Mar 11 18:09:33 2011 -0800 hwmon: (pmbus) Introduce infrastructure to detect sensors and limit registers This commit replaces hard-coded sensor and limit register detection code with table based sensor detection. This change eliminates code block repetition and reduces code size. Signed-off-by: Guenter Roeck Reviewed-by: Tom Grennan commit f5bae2642e3df716d2bb7bcffdf51e7a286e885e Author: Guenter Roeck Date: Wed Feb 2 08:49:54 2011 -0800 hwmon: Driver for MAX16065 System Manager and compatibles This patch adds hardware monitoring support for Maxim MAX16065, MAX16066, MAX16067, MAX16068, MAX16070, and MAX16071 flash-configurable system managers with nonvolatile fault registers. Signed-off-by: Guenter Roeck Reviewed-by: Jean Delvare commit 82c7465b4dd013d19858bfeac084849ae17682c0 Author: Jerome Oufella Date: Tue Apr 12 15:34:39 2011 -0400 hwmon: (sht15) add support for CRC validation The sht15 sensor allows validating exchanges to and from the device using a crc8 function. An utility function to reverse a byte has also been added. Signed-off-by: Jerome Oufella Acked-by: Jonathan Cameron Signed-off-by: Guenter Roeck commit cc15c7ebb424e45ba2c5ceecbe52d025219ee970 Author: Vivien Didelot Date: Tue Apr 12 15:34:38 2011 -0400 hwmon: (sht15) add support for the status register * Add support for: - Heater. - End of battery notice. - Ability not to reload from OTP. - Low resolution (12bit temp, 8bit humidity). * Add an utility function to read individual bytes from the device. Signed-off-by: Vivien Didelot Acked-by: Jonathan Cameron Signed-off-by: Guenter Roeck commit 181148ae68799f5b17f09b418b276f56e9179e99 Author: Vivien Didelot Date: Tue Apr 12 15:34:37 2011 -0400 hwmon: (sht15) clean-up the probe function * Move the creation of sysfs attributes after the end of the initialization, and remove them in the error path. * Release regulator in the error path. * Add a soft reset command (need to wait 11ms before next command). Signed-off-by: Vivien Didelot Acked-by: Jonathan Cameron Signed-off-by: Guenter Roeck commit 99a0378de9f887fd4d501f1baa50aaf16d01a8e8 Author: Vivien Didelot Date: Tue Apr 12 15:34:36 2011 -0400 hwmon: (sht15) general code clean-up * Add a documentation file for the device. * Respect a bit more the kernel-doc syntax. * Rename some variables for clarity. * Use bool type for flags. * Use an enum for states (actions being done). Signed-off-by: Vivien Didelot Acked-by: Jonathan Cameron Signed-off-by: Guenter Roeck commit 83bffbce745795572d20f0109395cb61690c6dcf Author: Per Dalén Date: Wed Apr 6 20:29:44 2011 +0200 hwmon: Add support for MAX6642 MAX6642 is a SMBus-Compatible Remote/Local Temperature Sensor with Overtemperature Alarm from Maxim. Signed-off-by: Per Dalen Signed-off-by: Guenter Roeck commit ed9d01026f156db2d638cbb045231c7a8fde877d Author: Jouni Malinen Date: Mon May 16 19:40:15 2011 +0300 cfg80211: Use consistent BSS matching between scan and sme cfg80211 scan code adds separate BSS entries if the same BSS shows up on multiple channels. However, sme implementation does not use the frequency when fetching the BSS entry. Fix this by adding channel information to cfg80211_roamed() and include it in cfg80211_get_bss() calls. Please note that drivers using cfg80211_roamed() need to be modified to fully implement this fix. This commit includes only minimal changes to avoid compilation issues; it maintains the old (broken) behavior for most drivers. ath6kl was the only one that I could test, so I updated it to provide the operating frequency in the roamed event. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 79d2b1570bcc31b846ccb2114a34e98ca87bf1d9 Author: Rajkumar Manoharan Date: Mon May 16 18:23:23 2011 +0530 ath9k: Fix power save wrappers in debug ops Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit ceec1e0fae6eecac876ec28cfb97786f87dfb1c6 Author: Steve French Date: Mon Mar 14 19:01:59 2011 +0000 [CIFS] Remove sparse warning Move extern for cifsConvertToUCS to different header to prevent following warning: CHECK fs/cifs/cifs_unicode.c fs/cifs/cifs_unicode.c:267:1: warning: symbol 'cifsConvertToUCS' was not declared. Should it be static? Signed-off-by: Steve French Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 4e64fb33dea9c4cad0106760c49c7629d4c699a5 Author: Steve French Date: Wed May 18 18:08:28 2011 +0000 [CIFS] Update cifs to version 1.72 Signed-off-by: Steve French commit c4aca0c09f80ca40dbcecb2370af9594fbe9051d Author: Shirish Pargaonkar Date: Fri May 6 02:35:00 2011 -0500 cifs: Change key name to cifs.idmap, misc. clean-up Change idmap key name from cifs.cifs_idmap to cifs.idmap. Removed unused structure wksidarr and function match_sid(). Handle errors correctly in function init_cifs(). Signed-off-by: Shirish Pargaonkar Reviewed-by: Jeff Layton Signed-off-by: Steve French commit f14bcf71d1b802f6042b6c70a0c37120e47a0876 Author: Sean Finney Date: Mon Apr 11 13:19:35 2011 +0000 cifs: Unconditionally copy mount options to superblock info Previously mount options were copied and updated in the cifs_sb_info struct only when CONFIG_CIFS_DFS_UPCALL was enabled. Making this information generally available allows us to remove a number of ifdefs, extra function params, and temporary variables. Reviewed-by: Jeff Layton Signed-off-by: Sean Finney Signed-off-by: Steve French commit 5167f11ec962690ecf926fab00f1d0524cd78664 Author: Sean Finney Date: Mon Apr 11 13:19:34 2011 +0000 cifs: Use kstrndup for cifs_sb->mountdata A relatively minor nit, but also clarified the "consensus" from the preceding comments that it is in fact better to try for the kstrdup early and cleanup while cleaning up is still a simple thing to do. Reviewed-By: Steve French Signed-off-by: Sean Finney Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 046462abca2576cc1c71f501c148798fac4ea314 Author: Sean Finney Date: Mon Apr 11 13:19:33 2011 +0000 cifs: Simplify handling of submount options in cifs_mount. With CONFIG_DFS_UPCALL enabled, maintain the submount options in cifs_sb->mountdata, simplifying the code just a bit as well as making corner-case allocation problems less likely. Reviewed-by: Jeff Layton Signed-off-by: Sean Finney Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit b946845a9dc523c759cae2b6a0f6827486c3221a Author: Sean Finney Date: Mon Apr 11 13:19:32 2011 +0000 cifs: cifs_parse_mount_options: do not tokenize mount options in-place To keep strings passed to cifs_parse_mount_options re-usable (which is needed to clean up the DFS referral handling), tokenize a copy of the mount options instead. If values are needed from this tokenized string, they too must be duplicated (previously, some options were copied and others duplicated). Since we are not on the critical path and any cleanup is relatively easy, the extra memory usage shouldn't be a problem (and it is a bit simpler than trying to implement something smarter). Reviewed-by: Jeff Layton Signed-off-by: Sean Finney Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit c1508ca23653245266e2e3ab69a8dad464f7a569 Author: Sean Finney Date: Mon Apr 11 13:19:31 2011 +0000 cifs: Add support for mounting Windows 2008 DFS shares Windows 2008 CIFS servers do not always return PATH_NOT_COVERED when attempting to access a DFS share. Therefore, when checking for remote shares, unconditionally ask for a DFS referral for the UNC (w/out prepath) before continuing with previous behavior of attempting to access the UNC + prepath and checking for PATH_NOT_COVERED. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=31092 Reviewed-by: Jeff Layton Signed-off-by: Sean Finney Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit dd61394586dbd9387fe53b325c6807f61734cf89 Author: Sean Finney Date: Mon Apr 11 13:19:30 2011 +0000 cifs: Extract DFS referral expansion logic to separate function The logic behind the expansion of DFS referrals is now extracted from cifs_mount into a new static function, expand_dfs_referral. This will reduce duplicate code in upcoming commits. Reviewed-by: Jeff Layton Signed-off-by: Sean Finney Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 460458ce8ec195a1902f0c742b76880fbd01dd96 Author: Jeff Layton Date: Thu Mar 31 21:18:15 2011 -0400 cifs: turn BCC into a static inlined function It's a bad idea to have macro functions that reference variables more than once, as the arguments could have side effects. Turn BCC() into a static inlined function instead. While we're at it, make it return a void * to discourage anyone from dereferencing it as-is. Reported-and-acked-by: David Howells Signed-off-by: Jeff Layton Signed-off-by: Steve French Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 820a803ffac3ef591e597bc107f8e289a823a29c Author: Jeff Layton Date: Wed May 4 08:05:26 2011 -0400 cifs: keep BCC in little-endian format This is the same patch as originally posted, just with some merge conflicts fixed up... Currently, the ByteCount is usually converted to host-endian on receive. This is confusing however, as we need to keep two sets of routines for accessing it, and keep track of when to use each routine. Munging received packets like this also limits when the signature can be calulated. Simplify the code by keeping the received ByteCount in little-endian format. This allows us to eliminate a set of routines for accessing it and we can now drop the *_le suffixes from the accessor functions since that's now implied. While we're at it, switch all of the places that read the ByteCount directly to use the get_bcc inline which should also clean up some unaligned accesses. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 0e6e37a7a81f370d9aafafdf88aca13977f6fb5f Author: Jeff Layton Date: Wed May 4 08:08:19 2011 -0400 cifs: fix some unused variable warnings in id_rb_search fs/cifs/cifsacl.c: In function ‘id_rb_search’: fs/cifs/cifsacl.c:215:19: warning: variable ‘linkto’ set but not used [-Wunused-but-set-variable] fs/cifs/cifsacl.c:214:18: warning: variable ‘parent’ set but not used [-Wunused-but-set-variable] Reviewed-by: Shirish Pargaonkar Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 6feb9891da4f8b04ffca69c00eb56bb7c1b64dc4 Author: Pavel Shilovsky Date: Thu Apr 7 18:18:11 2011 +0400 CIFS: Simplify invalidate part (try #5) Simplify many places when we call cifs_revalidate/invalidate to make it do what it exactly needs. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 0b81c1c405c063f3ecea66c2f5e9c3aefc5359c8 Author: Pavel Shilovsky Date: Thu Mar 10 10:11:05 2011 +0300 CIFS: directio read/write cleanups Recently introduced strictcache mode brought a new code that can be efficiently used by directio part. That's let us add vectored operations and break unnecessary cifs_user_read and cifs_user_write. Signed-off-by: Pavel Shilovsky Reviewed-by: Jeff Layton Signed-off-by: Steve French commit be8e3b0044a68e1f1002c432f6b40d290cf0701d Author: Steve French Date: Fri Apr 29 05:40:20 2011 +0000 consistently use smb_buf_length as be32 for cifs (try 3) There is one big endian field in the cifs protocol, the RFC1001 length, which cifs code (unlike in the smb2 code) had been handling as u32 until the last possible moment, when it was converted to be32 (its native form) before sending on the wire. To remove the last sparse endian warning, and to make this consistent with the smb2 implementation (which always treats the fields in their native size and endianness), convert all uses of smb_buf_length to be32. This version incorporates Christoph's comment about using be32_add_cpu, and fixes a typo in the second version of the patch. Signed-off-by: Steve French Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 9409ae58e0759d010b347e7b19ebc90ab5d4b98f Author: Shirish Pargaonkar Date: Fri Apr 22 12:09:36 2011 -0500 cifs: Invoke id mapping functions (try #17 repost) rb tree search and insertion routines. A SID which needs to be mapped, is looked up in one of the rb trees depending on whether SID is either owner or group SID. If found in the tree, a (mapped) id from that node is assigned to uid or gid as appropriate. If unmapped, an upcall is attempted to map the SID to an id. If upcall is successful, node is marked as mapped. If upcall fails, node stays marked as unmapped and a mapping is attempted again only after an arbitrary time period has passed. To map a SID, which can be either a Owner SID or a Group SID, key description starts with the string "os" or "gs" followed by SID converted to a string. Without "os" or "gs", cifs.upcall does not know whether SID needs to be mapped to either an uid or a gid. Nodes in rb tree have fields to prevent multiple upcalls for a SID. Searching, adding, and removing nodes is done within global locks. Whenever a node is either found or inserted in a tree, a reference is taken on that node. Shrinker routine prunes a node if it has expired but does not prune an expired node if its refcount is not zero (i.e. sid/id of that node is_being/will_be accessed). Thus a node, if its SID needs to be mapped by making an upcall, can safely stay and its fields accessed without shrinker pruning it. A reference (refcount) is put on the node without holding the spinlock but a reference is get on the node by holding the spinlock. Every time an existing mapped node is accessed or mapping is attempted, its timestamp is updated to prevent it from getting erased or a to prevent multiple unnecessary repeat mapping retries respectively. For now, cifs.upcall is only used to map a SID to an id (uid or gid) but it would be used to obtain an SID for an id. Signed-off-by: Shirish Pargaonkar Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 4d79dba0e00749fa40de8ef13a9b85ce57a1603b Author: Shirish Pargaonkar Date: Wed Apr 27 23:34:35 2011 -0500 cifs: Add idmap key and related data structures and functions (try #17 repost) Define (global) data structures to store ids, uids and gids, to which a SID maps. There are two separate trees, one for SID/uid and another one for SID/gid. A new type of key, cifs_idmap_key_type, is used. Keys are instantiated and searched using credential of the root by overriding and restoring the credentials of the caller requesting the key. Id mapping functions are invoked under config option of cifs acl. Signed-off-by: Shirish Pargaonkar Signed-off-by: Steve French commit 9ad1506b42c828dff0b9d8f3914e1f837734e91c Author: Pavel Shilovsky Date: Fri Apr 8 05:29:10 2011 +0400 CIFS: Add launder_page operation (try #3) Add this let us drop filemap_write_and_wait from cifs_invalidate_mapping and simplify the code to properly process invalidate logic. Reviewed-by: Jeff Layton Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit 1cb06d0b50536af177b2f2f7cab25546f3731d3e Author: Steve French Date: Thu Feb 24 18:07:19 2011 +0000 Introduce smb2 mounts as vers=2 As with Linux nfs client, which uses "nfsvers=" or "vers=" to indicate which protocol to use for mount, specifying "vers=smb2" or "vers=2" will force an smb2 mount. When vers is not specified cifs is used ie "vers=cifs" or "vers=1" We can eventually autonegotiate down from smb2 to cifs when smb2 is stable enough to make it the default, but this is for the future. At that time we could also implement a "maxprotocol" mount option as smbclient and Samba have today, but that would be premature until smb2 is stable. Intially the smb2 Kconfig option will depend on "BROKEN" until the merge is complete, and then be "EXPERIMENTAL" When it is no longer experimental we can consider changing the default protocol to attempt first. Reviewed-by: Jeff Layton Reviewed-by: Pavel Shilovsky Signed-off-by: Steve French commit 257fb1f15d72f89dad2d72fa467c189f2d7fdd71 Author: Pavel Shilovsky Date: Wed Mar 16 01:55:32 2011 +0300 CIFS: Use invalidate_inode_pages2 instead of invalidate_remote_inode (try #4) Use invalidate_inode_pages2 that don't leave pages even if shrink_page_list() has a temp ref on them. It prevents a data coherency problem when cifs_invalidate_mapping didn't invalidate pages but the client thinks that a data from the cache is uptodate according to an oplock level (exclusive or II). Signed-off-by: Pavel Shilovsky Signed-off-by: Steve French commit fd5707e1b44560d18b47d552c1871ea0bfc46688 Author: Jeff Layton Date: Thu Mar 31 17:22:07 2011 -0400 cifs: fix comment in validate_t2 The comment about checking the bcc is in the wrong place. Also make it match kernel coding style. Reported-and-acked-by: David Howells Signed-off-by: Jeff Layton Signed-off-by: Steve French commit 4358b5678b27ffe81391d84ce150df8e81010f6a Author: Jeff Layton Date: Tue Mar 29 09:33:31 2011 -0400 VFS: trivial: fix comment on s_maxbytes value warning check I originally intended to remove this warning in 2.6.34, but it's not in a high performance codepath and might help us to catch bugs later. Let's keep it, but fix the comment to allay confusion about its removal. Signed-off-by: Jeff Layton Signed-off-by: Steve French commit b73b9a4ba753dfd7d304ee6ee4685b827524c533 Author: Steve French Date: Tue Apr 19 18:27:10 2011 +0000 [CIFS] Allow to set extended attribute cifs_acl (try #2) Allow setting cifs_acl on the server. Pass on to the server the ACL blob generated by an application. cifs is just a pass-through, it does not monitor or inspect the contents of the blob, server decides whether to enforce/apply the ACL blob composed by an application. If setting of ACL is succeessful, mark the inode for revalidation. Signed-off-by: Shirish Pargaonkar Acked-by: Jeff Layton Signed-off-by: Steve French commit 43988d76851077d2945080665e3c4e2e636d700a Author: Steve French Date: Tue Apr 19 18:23:31 2011 +0000 [CIFS] Use ecb des kernel crypto APIs instead of local cifs functions (repost) Using kernel crypto APIs for DES encryption during LM and NT hash generation instead of local functions within cifs. Source file smbdes.c is deleted sans four functions, one of which uses ecb des functionality provided by kernel crypto APIs. Remove function SMBOWFencrypt. Add return codes to various functions such as calc_lanman_hash, SMBencrypt, and SMBNTencrypt. Includes fix noticed by Dan Carpenter. Signed-off-by: Shirish Pargaonkar CC: Dan Carpenter Acked-by: Jeff Layton Signed-off-by: Steve French commit 257208736acc694def83627fa0de2892490a5d42 Author: Shirish Pargaonkar Date: Fri Feb 25 10:48:55 2011 -0600 cifs: cleanup: Rename and remove config flags Remove config flag CIFS_EXPERIMENTAL. Do export operations under new config flag CIFS_NFSD_EXPORT Signed-off-by: Shirish Pargaonkar Reviewed-by: Jeff Layton Signed-off-by: Steve French commit b34cb85cc2d84c487afe2baa2d3c04d8b677bbd0 Author: Steve French Date: Thu Feb 24 17:58:00 2011 +0000 Introduce SMB2 Kconfig option SMB2 is the followon to the CIFS (and SMB) protocols and the default for Windows since Windows Vista, and also now implemented by various non-Windows servers. SMB2 is more secure, has various performance advantages, including larger i/o sizes, flow control, better caching model and more. SMB2 also resolves some scalability limits in the cifs protocol and adds many new features while being much simpler (only a few dozen commands instead of hundreds) and since the protocol is clearer it is also more consistently implemented across servers and thus easier to optimize. After much discussion with Jeff Layton, Jeremy Allison and others at Connectathon, we decided to move the smb2 code from a distinct .ko and fstype into distinct C files that optionally build in cifs.ko. As a result the Kconfig gets simpler. To avoid destabilizing cifs, the smb2 code is going to be moved into its own experimental CONFIG_CIFS_SMB2 ifdef as it is merged and rereviewed. The changes to stable cifs (builds with the smb2 ifdef off) are expected to be fairly small. Reviewed-by: Jeff Layton Signed-off-by: Steve French commit 34c87901e113799a45423fdac29c7478c889a95d Author: Steve French Date: Tue Mar 1 05:02:57 2011 +0000 Shrink stack space usage in cifs_construct_tcon We were reserving MAX_USERNAME (now 256) on stack for something which only needs to fit about 24 bytes ie string krb50x + printf version of uid Signed-off-by: Steve French commit fd62cb7e7411f1f5ca774145665316d3612fed9a Author: Justin P. Mattock Date: Thu Feb 24 22:15:02 2011 -0800 fs:cifs:connect.c remove one to many l's in the word. The patch below removes an extra "l" in the word. Signed-off-by: Justin P. Mattock Signed-off-by: Steve French commit c52a95545c7f8060aa4e83deca16e3414ce73000 Author: Steve French Date: Thu Feb 24 06:16:22 2011 +0000 Don't compile in unused reparse point symlink code Recent Windows versions now create symlinks more frequently and they do use this "reparse point" symlink mechanism. We can of course do symlinks nicely to Samba and other servers which support the CIFS Unix Extensions and we can also do SFU symlinks and "client only" "MF" symlinks optionally, but for recent Windows we currently can not handle the common "reparse point" symlinks fully, removing the caller for this. We will need to extend and reenable this "reparse point" worker code in cifs and fix cifs_symlink to call this. In the interim this code has been moved to its own config option so it is not compiled in by default until cifs_symlink fixed up (and tested) to use this. CC: Jeff Layton Signed-off-by: Steve French commit 0eff0e26777430bcfee1ef47bd90250858ada431 Author: Steve French Date: Thu Feb 24 05:39:23 2011 +0000 Remove unused CIFSSMBNotify worker function The CIFSSMBNotify worker is unused, pending changes to allow it to be called via inotify, so move it into its own experimental config option so it does not get built in, until the necessary VFS support is fixed. It used to be used in dnotify, but according to Jeff, inotify needs minor changes before we can reenable this. CC: Jeff Layton Signed-off-by: Steve French commit 9b6763e0aacf245b58687a372816a0a4aabf2b1e Author: Shirish Pargaonkar Date: Mon Feb 21 23:56:59 2011 -0600 cifs: Remove unused inode number while fetching root inode ino is unused in function cifs_root_iget(). Signed-off-by: Shirish Pargaonkar Signed-off-by: Steve French commit 983bbf1af0664b78689612b247acb514300f62c7 Author: Tian, Kevin Date: Fri May 6 14:43:56 2011 +0800 x86: Don't unmask disabled irqs when migrating them It doesn't make sense to unconditionally unmask a disabled irq when migrating it from offlined cpu to another. If the irq triggers then it will be disabled in the interrupt handler anyway. So we can just avoid unmasking it. [ tglx: Made masking unconditional again and fixed the changelog ] Signed-off-by: Fengzhe Zhang Signed-off-by: Kevin Tian Cc: Ian Campbell Cc: Jan Beulich Cc: "xen-devel@lists.xensource.com" Link: http://lkml.kernel.org/r/%3C625BA99ED14B2D499DC4E29D8138F1505C8ED7F7E3%40shsmsx502.ccr.corp.intel.com%3E Signed-off-by: Thomas Gleixner commit b87ba87ca26e226b2277a2d5613ed596f408e96d Author: Tian, Kevin Date: Fri May 6 14:43:36 2011 +0800 x86: Skip migrating IRQF_PER_CPU irqs in fixup_irqs() IRQF_PER_CPU means that the irq cannot be moved away from a given cpu. So it must not be migrated when the cpu goes offline. [ tglx: massaged changelog ] Signed-off-by: Fengzhe Zhang Signed-off-by: Kevin Tian Cc: Ian Campbell Cc: Jan Beulich Cc: "xen-devel@lists.xensource.com" Link: http://lkml.kernel.org/r/%3C625BA99ED14B2D499DC4E29D8138F1505C8ED7F7E2%40shsmsx502.ccr.corp.intel.com%3E Signed-off-by: Thomas Gleixner commit c3305257cd4df63e03e21e331a0140ae9c0faccc Author: Ingo Molnar Date: Thu May 19 14:01:42 2011 +0200 perf stat: Add more cache-miss percentage printouts Print out the cache-miss percentage as well if the cache refs were collected, for all the generic cache event types. Before: 11,103,723,230 dTLB-loads # 622.471 M/sec ( +- 0.30% ) 87,065,337 dTLB-load-misses # 4.881 M/sec ( +- 0.90% ) After: 11,353,713,242 dTLB-loads # 626.020 M/sec ( +- 0.35% ) 113,393,472 dTLB-load-misses # 1.00% of all dTLB cache hits ( +- 0.49% ) Also ASCII color highlight too high percentages, them when it's executed on the console. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Steven Rostedt Link: http://lkml.kernel.org/n/tip-lkhwxsevdbd9a8nymx0vxc3y@git.kernel.org Signed-off-by: Ingo Molnar commit 2cba3ffb9a9db3874304a1739002d053d53c738b Author: Ingo Molnar Date: Thu May 19 13:30:56 2011 +0200 perf stat: Add -d -d and -d -d -d options to show more CPU events Print even more detailed statistics if requested via perf stat -d: -d: detailed events, L1 and LLC data cache -d -d: more detailed events, dTLB and iTLB events -d -d -d: very detailed events, adding prefetch events Full output looks like this now: Performance counter stats for '/home/mingo/hackbench 10' (5 runs): 1703.674707 task-clock # 8.709 CPUs utilized ( +- 4.19% ) 49,068 context-switches # 0.029 M/sec ( +- 16.66% ) 8,303 CPU-migrations # 0.005 M/sec ( +- 24.90% ) 17,397 page-faults # 0.010 M/sec ( +- 0.46% ) 2,345,389,239 cycles # 1.377 GHz ( +- 4.61% ) [55.90%] 1,884,503,527 stalled-cycles-frontend # 80.35% frontend cycles idle ( +- 5.67% ) [50.39%] 743,919,737 stalled-cycles-backend # 31.72% backend cycles idle ( +- 8.75% ) [49.91%] 1,314,416,379 instructions # 0.56 insns per cycle # 1.43 stalled cycles per insn ( +- 2.53% ) [60.87%] 272,592,567 branches # 160.003 M/sec ( +- 1.74% ) [56.56%] 3,794,846 branch-misses # 1.39% of all branches ( +- 6.59% ) [58.50%] 449,982,778 L1-dcache-loads # 264.125 M/sec ( +- 2.47% ) [49.88%] 22,404,961 L1-dcache-load-misses # 4.98% of all L1-dcache hits ( +- 6.08% ) [55.05%] 6,204,750 LLC-loads # 3.642 M/sec ( +- 8.91% ) [43.75%] 1,837,411 LLC-load-misses # 1.078 M/sec ( +- 7.27% ) [12.07%] 411,440,421 L1-icache-loads # 241.502 M/sec ( +- 5.60% ) [36.52%] 27,556,832 L1-icache-load-misses # 16.175 M/sec ( +- 7.46% ) [46.72%] 464,067,627 dTLB-loads # 272.392 M/sec ( +- 4.46% ) [54.17%] 10,765,648 dTLB-load-misses # 6.319 M/sec ( +- 3.18% ) [48.68%] 1,273,080,386 iTLB-loads # 747.256 M/sec ( +- 3.38% ) [47.53%] 117,481 iTLB-load-misses # 0.069 M/sec ( +- 14.99% ) [47.01%] 4,590,653 L1-dcache-prefetches # 2.695 M/sec ( +- 4.49% ) [46.19%] 1,712,660 L1-dcache-prefetch-misses # 1.005 M/sec ( +- 3.75% ) [44.82%] 0.195622057 seconds time elapsed ( +- 6.84% ) Also clean up the attribute construction code to be appending, and factor it out into add_default_attributes(). Tweak the coverage percentage printout a bit, so that it's easier to view it alongside the +- sttddev colum. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Steven Rostedt Link: http://lkml.kernel.org/n/tip-to3kgu04449s64062val8b62@git.kernel.org Signed-off-by: Ingo Molnar commit ab0e08f15d23628dd8d50bf6ce1a935a8840c7dc Author: Thomas Gleixner Date: Wed May 18 21:33:43 2011 +0000 x86: hpet: Cleanup the clockevents init and register code No need to recalculate the frequency and the conversion factors over and over. Calculate the frequency once and use the new config/register interface and let the core code do the math. Signed-off-by: Thomas Gleixner Cc: John Stultz Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.646482357%40linutronix.de%3E commit 61ee9a4ba05f0a4163d43a33dee7a0651e080b98 Author: Thomas Gleixner Date: Wed May 18 21:33:42 2011 +0000 x86: Convert PIT to clockevents_config_and_register() Let the core do the work. Signed-off-by: Thomas Gleixner Cc: John Stultz Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.545615675%40linutronix.de%3E commit 80b816b736cfa5b9582279127099b20a479ab7d9 Author: Thomas Gleixner Date: Wed May 18 21:33:42 2011 +0000 clockevents: Provide interface to reconfigure an active clock event device Some ARM SoCs have clock event devices which have their frequency modified due to frequency scaling. Provide an interface which allows to reconfigure an active device. After reconfiguration reprogram the current pending event. Signed-off-by: Thomas Gleixner Cc: LAK Cc: John Stultz Acked-by: Linus Walleij Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.437459958%40linutronix.de%3E commit 57f0fcbe1dea8a36c9d1673086326059991c5f81 Author: Thomas Gleixner Date: Wed May 18 21:33:41 2011 +0000 clockevents: Provide combined configure and register function All clockevent devices have the same open coded initialization functions. Provide an interface which does all necessary initialization in the core code. Signed-off-by: Thomas Gleixner Cc: John Stultz Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.331975870%40linutronix.de%3E commit 847b2f42be203f3cff7f243fdd3ee50c1e06c882 Author: Thomas Gleixner Date: Wed May 18 21:33:41 2011 +0000 clockevents: Restructure clock_event_device members Group the hot path members of struct clock_event_device together so we have a better cache line footprint. Make it cacheline aligned. Signed-off-by: Thomas Gleixner Cc: John Stultz Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.223607682%40linutronix.de%3E commit 724ed53e8ac2c5278af8955673049714c1073464 Author: Thomas Gleixner Date: Wed May 18 21:33:40 2011 +0000 clocksource: Get rid of the hardcoded 5 seconds sleep time limit Slow clocksources can have a way longer sleep time than 5 seconds and even fast ones can easily cope with 600 seconds and still maintain proper accuracy. Signed-off-by: Thomas Gleixner Cc: John Stultz Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.109811585%40linutronix.de%3E commit 369db4c9524b7487faf1ff89646eee396c1363e1 Author: Thomas Gleixner Date: Wed May 18 21:33:40 2011 +0000 clocksource: Restructure clocksource struct members Group the hot path members of struct clocksource together so we have a better cache line footprint. Make it cacheline aligned. Signed-off-by: Thomas Gleixner Cc: John Stultz Cc: Eric Dumazet Reviewed-by: Ingo Molnar Link: http://lkml.kernel.org/r/%3C20110518210136.003081882%40linutronix.de%3E commit ad44cc3298872c4d4f4b034df9163c3944ae8c1c Author: Ricardo Neri Date: Wed May 18 22:31:56 2011 -0500 OMAP4: DSS2: HDMI: Implement ASoC Codec driver for HDMI audio Implement an ASoC Codec Driver to handle audio configuration. The implementation offers an interface for audio configuration and control to be exposed to ALSA while hidding the HDMI details. The ASoC driver supports the Basic Audio configuration as described in CEA-861-D: 2-channel linear PCM with 32, 44.1 and 48kHz sample rates and 16 bits/sample. It additionally supports 24 bit/sample in 32-bit words. Signed-off-by: Ricardo Neri Signed-off-by: Tomi Valkeinen commit 82335c4cc2edf57afece9399441a7480c2a1b055 Author: Ricardo Neri Date: Tue Apr 5 16:05:18 2011 -0500 OMAP4: DSS2: HDMI: Add functionality for audio configuration Add functionality for relevant audio configuration. Functions to configure the audio FIFO and DMA as well as functions for the audio core and Audio Info frame are included. This functionality is to be used by the ASoC HDMI audio codec. Signed-off-by: Ricardo Neri Signed-off-by: Tomi Valkeinen commit 5d8dbe4aa986526f9096bcdb27679c37f5c7b194 Author: Ricardo Neri Date: Wed Mar 23 03:04:55 2011 -0600 OMAP4: DSS2: HDMI: Add enums and structures for audio Add enurations and structures for audio configuration. This includes enumerations for the Audio InfoFrame, I2S, audio FIFO and audio core. Signed-off-by: Ricardo Neri Signed-off-by: Tomi Valkeinen commit 72e91ace30d0bdfe3140011f65cdcd6e46215f71 Author: Ricardo Neri Date: Wed May 18 22:27:56 2011 -0500 OMAP4: DSS2: HDMI: Add DSS feature for CTS calculation CTS and N parameters are used to regenerate the audio clock from the TMDS clock at the HDMI sink. In OMAP4430 ES1.0 version the calculation of the CTS parameter is done by the HDMI IP (hardware mode) while in others it must be done by the HDMI driver (software mode). A DSS feature is used to indicate the HDMI driver which mode is used. Signed-off-by: Ricardo Neri Signed-off-by: Tomi Valkeinen commit 6ff7084edfd31410c1d4112ed2b3bdc11485af94 Author: Ricardo Neri Date: Wed May 18 22:23:33 2011 -0500 OMAP4: DSS2: Create a DSS features structure for OMAP4430 ES1.0 Create a separate DSS features structure for OMAP4430 ES1.0. This structure is used to expose features only present in such silicon version. Specifically, this is required to handle how the HDMI IP calculates the CTS parameter for audio clock regeneration packets. OMAP4430 ES1.0 is the only one that supports computation of the CTS parameter by the HDMI IP (hardware mode). The rest of the revisions require the HDMI driver to perform the computation. Signed-off-by: Ricardo Neri Signed-off-by: Tomi Valkeinen commit d6971822c288ce5547190c6f812cc978d6520777 Author: Michal Marek Date: Tue May 17 15:36:46 2011 +0200 ftrace/kbuild: Add recordmcount files to force full build Modifications to recordmcount must be performed on all object files to stay consistent with what the kernel code may expect. Add the recordmcount files to the main dependencies to make sure any change to them causes a full recompile. Signed-off-by: Michal Marek Link: http://lkml.kernel.org/r/20110517133646.GP13293@sepie.suse.cz Signed-off-by: Steven Rostedt commit a0eb221a446f2f6c988430f0b0a13f74b7c2b799 Author: Linus Walleij Date: Wed May 18 14:18:57 2011 +0200 dmaengine: move link order Move the dmaengine subsystem up early in the drivers Makefile so DMA is made available early to all drivers, just like e.g. regulators. Now even regulators can use DMA on the same initlevel. As a result we can bump the ste_dma40 and coh901318 dmaengine drivers down one initlevel to subsys_init(). Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit 27ad4bf72a27c80c121b2349174e6b41b2e3afd8 Author: Uwe Kleine-König Date: Thu Mar 17 09:40:29 2011 +0100 ARM: imx: move mx3 support to mach-imx Fixing a few "please, no space before tabs" and "empty line at end of file" warnings on the way. LAKML-Reference: 1299271882-2130-6-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 7fc92c6092d7208e53d35cda32a9181aae396adf Author: Gwenhael Goavec-Merou Date: Fri Apr 29 05:21:39 2011 +0000 MX1: Add ARMadeus Systems APF9328 board support APF9328 is an i.MXL based SOM (System On Module) that can be plugged on several docking/development boards. Here only basic module support is added (Ethernet, Serial, NOR Flash). Signed-off-by: Gwenhael Goavec-Merou Signed-off-by: Eric Jarrige Signed-off-by: Nicolas Colombain Signed-off-by: Julien Boibessot Acked-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 6ec02091f766fed4c4cbcafe7b33a935f582ba8d Author: Peter Korsgaard Date: Fri May 6 12:05:35 2011 +0200 mx23: register clocks for mmc Commit 47babe69 (mxs: dynamically allocate mmc device) added the ssp setup and mmc clocks for mx23/28, but forgot to register the mmc clocks on mx23. Signed-off-by: Peter Korsgaard Acked-by: Shawn Guo Signed-off-by: Sascha Hauer commit 2790205f6e2d3e636d9721f521badf23638d2de2 Author: Wolfram Sang Date: Wed May 4 17:43:54 2011 +0200 arm: mach-imx/mxs: drop 'default' boards No boards should be compiled in by default. Signed-off-by: Wolfram Sang Signed-off-by: Sascha Hauer commit 7f5e6b089de8a588f649d77f661ff41f2c7679ae Author: Uwe Kleine-König Date: Sat Apr 2 00:16:21 2011 +0200 ARM: imx: remove some deprecated and unused #defines LAKML-Reference: 1302464943-20721-6-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit d286a43aa248cb657e0876b5aa4fe0034170d05c Author: Uwe Kleine-König Date: Sat Apr 2 00:15:49 2011 +0200 ARM: mx3: make ioremap quirk ready for multi-SoC kernels To be able to compile e.g. i.MX31 and i.MX51 in a single kernel image the ioremap quirk needs a runtime check. While touching this code make the comment more understandable by adding a sentence from the commit log that introduced it (eadefef ([ARM] MX3: Use ioremap wrapper to map SoC devices nonshared)). As mach/io.h now uses cpu_is_ some header reshuffling in mach/hardware.h was necessary. (mach/mx27.h and mach/mx31.h #include which #includes . So mach/mxc.h which provides the cpu_is_ macros needs to be included before mach/mx27.h and mach/mx31.h.) LAKML-Reference: 1302464943-20721-5-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 7db4d88206e20b8d91e8e7bba3b79805a1b1a98d Author: Uwe Kleine-König Date: Fri Apr 8 11:06:43 2011 +0200 ARM: mxc: don't allow to compile together i.MX51 and i.MX53 The two SoCs have different PHYS_OFFSETs so it's not (yet) possible to compile a single (working) kernel for these. LAKML-Reference: 1302464943-20721-4-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 91350f6677f988b2342b214338520d1c3ed1ea0e Author: Uwe Kleine-König Date: Tue Mar 22 11:54:35 2011 +0100 ARM: mxc: don't use the symbols in the CPU family choice to select others The symbols in this choice should only be used to select between the available machines that can be built into a single kernel. As these sets (will) differ e.g. depending on ARM_PATCH_PHYS_VIRT and AUTO_ZRELADDR letting them select other symbols makes the logic more complex and needs to duplicate some things. So let the machines select the corresponding symbols (indirectly via SOC_XYZ). LAKML-Reference: 1302464943-20721-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 13cf8df97d075cf61445c689a30c8b0ce70b415f Author: Uwe Kleine-König Date: Thu Apr 7 11:13:25 2011 +0200 ARM: remove support for mxc91231 Since support for mxc91231 was introduced 2009 it only saw patches that were part of (mxc or arm) global cleanups. The only supported machine only had 4 devices (2x UART, sdhc, watchdog). Cc: Dmitriy Taychenachev LAKML-Reference: 1302211482-17926-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit f142b6196891660b329408e71573f97475823667 Author: Sascha Hauer Date: Thu Mar 3 15:12:44 2011 +0100 video i.MX: remove mx1 compile time dependencies remove usage of CONFIG_ARCH_MX1. It's mostly unused anyway, replace it with cpu_is_mx1() where necessary. Also, depend on IMX_HAVE_PLATFORM_IMX_FB instead of the architectures directly. LAKML-Reference: 20110303141244.GQ29521@pengutronix.de Acked-by: Paul Mundt Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit ba8a6c04ea11fdd38a614ec7108de2bf7400b5ab Author: Fabio Estevam Date: Wed Apr 6 13:05:26 2011 -0300 ARM: mx51: Remove imx51_add_gpio_keys There is no need for using a MX51-specific version of imx_add_gpio_keys. Remove imx51_add_gpio_keys and use imx_add_gpio_keys instead. Signed-off-by: Fabio Estevam LAKML-Reference: 1302105926-20574-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 18879e13b11b8c173a773edb258da51abc0bd2cd Author: Uwe Kleine-König Date: Mon Dec 6 10:03:18 2010 +0100 ARM: imx51: use platform id 2 for imx51-cspi The platform id is used to determine the spi bus number, so it should better be different to the ids used for imx51-ecspi. Otherwise it's not possible to use both devices "imx51-cspi.0" and "imx51-ecspi.0". Alternative approaches are to use dynamic bus numbering as offered by the spi framework or let the machine code set the bus number. The downside of both possibilities is that the bus number isn't fixed for the same busses on different machines using i.MX51. LAKML-Reference: 1302100716-21034-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 01d8cf03db728519ff291aa3519c9543b1203ed7 Author: Uwe Kleine-König Date: Tue Jan 11 10:22:14 2011 +0100 ARM: mxs: fix naming of struct holding info for mxs-i2c devices For consistency mxs has to be repeated, one for the name space and another one for the device name. LAKML-Reference: 1300308028-8922-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 492fc4f6f75d6f1a782dbca4c27687254f7715ea Author: Wolfram Sang Date: Tue Jan 11 09:33:42 2011 +0100 ARM: mxs/i.MX23: make i2c defines consistent and match the reference manual The defines for the i2c related irqs (MX23_INT_I2C_DMA and MX23_INT_I2C_ERROR) already match the reference manual. So make the base address consistent. Signed-off-by: Wolfram Sang LAKML-Reference: 1298049507-6987-2-git-send-email-w.sang@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit afa77ef30ead4865ce2c0c1c55054d45521ce1c7 Author: Uwe Kleine-König Date: Thu Mar 3 21:32:02 2011 +0100 ARM: mx3: dynamically allocate "ipu-core" devices ... together with the related devices "mx3_camera" and "mx3_sdc_fb". "mx3_camera" doesn't fit the scheme of the other devices that just are allocated and registered in a single function because it needs additional care to get some dmaable memory. So currently imx31_alloc_mx3_camera duplicates most of imx_add_platform_device_dmamask, but I'm not sure it's worth to split the latter to be able to reuse more code. This gets rid of mach-mx3/devices.[ch] and so several files need to be adapted not to #include devices.h anymore. LAKML-Reference: 1299271882-2130-5-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 031e912741746e4350204bb0436590ca0e993a7d Author: Uwe Kleine-König Date: Thu Mar 3 14:21:53 2011 +0100 ARM: mx3/mx31moboard: properly allocate memory for mx3-camera It's not allowed to create an alias of system RAM for DMA. So the memory used must not be allocated using dma_alloc_coherent but has to be reserved before using memblock routines. There is no need to memzero the buffer because dma_alloc_coherent zeros the memory for us. LAKML-Reference: 1299271882-2130-4-git-send-email-u.kleine-koenig@pengutronix.de Tested-by: Philippe Retornaz Acked-by: Philippe Retornaz Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit dca7c0b4293a06d1ed9387e729a4882896abccc2 Author: Uwe Kleine-König Date: Thu Mar 3 11:39:42 2011 +0100 ARM: mx3/pcm037: properly allocate memory for mx3-camera There is no need to memzero the buffer because dma_alloc_coherent zeros the memory for us. This fixes: BUG: Your driver calls ioremap() on system memory. This leads <4>to architecturally unpredictable behaviour on ARMv6+, and ioremap() <4>will fail in the next kernel release. Please fix your driver. Tested-by: Michael Grzeschik LAKML-Reference: 1299271882-2130-3-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 83422671c3e93b8ef77805fbad74173a1636d5f1 Author: Uwe Kleine-König Date: Tue Mar 1 11:04:34 2011 +0100 ARM: mx3: dynamically allocate "mxc_rtc" devices LAKML-Reference: 1299271882-2130-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 3da25ccee303add545e49cef5c6cdeb0c1d94300 Author: Fabio Estevam Date: Sun Apr 3 22:47:23 2011 -0300 ARM: mx5/mx53_loco: Fix build warning related to gpio_keys_button structure Fix the following warning: CC arch/arm/mach-mx5/board-mx53_loco.o arch/arm/mach-mx5/board-mx53_loco.c:203: warning: initialization discards qualifiers from pointer target type Signed-off-by: Fabio Estevam LAKML-Reference: 1301881643-26040-1-git-send-email-festevam@gmail.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit c6c83b451c432d0a459df24134969181042e07c7 Author: Fabio Estevam Date: Mon Apr 4 09:50:49 2011 -0300 ARM: mx5/mx53_smd: Add esdhc support Signed-off-by: Fabio Estevam Acked-by: Wolfram Sang LAKML-Reference: 1301921449-32194-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit fdaf0ef72a1d0ef58d56923773491f24e2c3ae6a Author: Baruch Siach Date: Mon Mar 14 11:40:21 2011 +0200 ARM: imx/mx25: add NAND chip select pins to iomux Signed-off-by: Baruch Siach LAKML-Reference: cae1d71db47204ee2654eca7391cb656ed53566b.1300095569.git.baruch@tkos.co.il Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit af12e3aed1eeba872d3a90891d7a769c9013ee46 Author: Richard Zhao Date: Thu Mar 31 18:16:23 2011 +0800 ARM: imx: clean up the section marks of extern data Signed-off-by: Richard Zhao LAKML-Reference: 1301566583-18947-1-git-send-email-richard.zhao@freescale.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit c7dae1812a26071ec56d14cfd9f414d5ac1677a3 Author: Fabio Estevam Date: Tue Mar 29 16:45:09 2011 -0300 ARM: mxs/mach-mx2[38]evk: Set the initial value on gpio_request_one Current code does not set the GPIO value to zero as mentioned in the comment. Fix it by setting the initial GPIO value to zero. Signed-off-by: Fabio Estevam LAKML-Reference: 1301427910-31726-1-git-send-email-fabio.estevam@freescale.com [ukleinek: squashed two patches together fixing both boards at once] Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 986e5f08de25050e893411aef56776d84d3530b6 Author: Wolfram Sang Date: Thu Mar 10 20:55:04 2011 +0100 ARM: mx27: fix gpt4/5 base address Reported-by: Igor Trevisan Signed-off-by: Wolfram Sang LAKML-Reference: 1299786904-5494-1-git-send-email-w.sang@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit f4bf03d8b7fbd3e2d38d895a89c53df039976fd0 Author: Uwe Kleine-König Date: Mon Apr 4 16:23:20 2011 +0200 ARM: imx: remove #includes already available from devices-common.h Most machine files include "devices-imxXX.h" which in turn includes . The latter already includes many headers that the machine files don't need to include again. These were found by: $ grep \#include arch/arm/plat-mxc/include/mach/devices-common.h > tmpfile $ git grep -l 'devices-imx' arch/arm | xargs grep -f tmpfile -F (but I kept linux/init.h, linux/kernel.h and linux/platform_device.h) LAKML-Reference: 1298912674-15153-2-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 5309498a56842d0acb723196b7bc57bfb9aee918 Author: Uwe Kleine-König Date: Mon Feb 28 18:04:33 2011 +0100 ARM: imx: use imx_add_gpio_keys to register "gpio-keys" devices LAKML-Reference: 1302207841-12450-1-git-send-email-u.kleine-koenig@pengutronix.de Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 9c97f66271a09dedfe26a145fceb74c6efd83571 Author: Shawn Guo Date: Sat Feb 26 23:19:04 2011 +0800 ARM: mach-imx: mx25_3ds: add write-protect and card-detect for SD Signed-off-by: Shawn Guo LAKML-Reference: 1298733544-24659-1-git-send-email-shawn.guo@freescale.com Acked-by: Wolfram Sang [ukl: fixup conflict with ff86452 (ARM: mx25_3ds: Add I2C support) and drop #inclusion of ] Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 6f9ec442a07701e0ef241854862fdf2540be1bdb Author: Fabio Estevam Date: Thu Mar 17 12:55:57 2011 -0300 ARM: mx5/babbage: Use gpio_request_one in babbage_usbhub_reset Current code inside babbage_usbhub_reset uses gpio_direction_output with initial value of the GPIO and also sets the GPIO value via gpio_set_value to the same level right after. This is not needed. By using gpio_request_one it is possible to set the direction and initial value in one shot. Signed-off-by: Fabio Estevam LAKML-Reference: 1300377359-23212-2-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 2d95378b043f082192a11f8476e3f63291c3477b Author: Fabio Estevam Date: Fri Mar 25 12:52:47 2011 -0300 ARM: mx53: Print silicon revision on boot Having the silicon revision to appear on the boot log is a useful information. MX31, MX35 and MX51 already show the silicon revision on boot. Add support for displaying such information for MX53 as well. Tested on a mx53loco board, where it shows: CPU identified as i.MX53, silicon rev 2.0 Signed-off-by: Fabio Estevam LAKML-Reference: 1301068367-18937-1-git-send-email-fabio.estevam@freescale.com Signed-off-by: Uwe Kleine-König Signed-off-by: Sascha Hauer commit 07acecc11139efbc8d0401576e81dc8c188cb092 Author: David Henningsson Date: Thu May 19 11:46:03 2011 +0200 ALSA: HDA: Add jack detection for HDMI Just as for headphones and microphone jacks, this patch adds reporting of HDMI jack status through the input layer. Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit c04abeeff9d76a703cac1e6d312853b0fc8136f5 Author: Benjamin Tissoires Date: Thu May 19 11:37:29 2011 +0200 HID: hid-multitouch: add support for Elo TouchSystems 2515 IntelliTouch Plus This patch adds support for Elo TouchSystems 2515 IntelliTouch Plus that can be found in Lenovo A700 all-in-one. Signed-off-by: Benjamin Tissoires Tested-by: Bastien Nocera Signed-off-by: Jiri Kosina commit 6f6c3c33c027f2c83d53e8562cd9daa73fe8108b Author: Ralf Baechle Date: Thu May 19 09:21:33 2011 +0100 MIPS: Move arch_get_unmapped_area and gang to new file. It never really belonged into syscall.c and it's about to become well more complex. Signed-off-by: Ralf Baechle commit 9c1e8a9138ff92a4ff816ea8a1884ad2461a993a Author: Ralf Baechle Date: Tue May 17 16:18:09 2011 +0100 MIPS: Cleanup arch_get_unmapped_area As noticed by Kevin Cernekee in http://www.linux-mips.org/cgi-bin/extract-mesg.cgi?a=linux-mips&m=2011-05&i=BANLkTikq04wuK%3Dbz%2BLieavmm3oDtoYWKxg%40mail.gmail.com Patchwork: https://patchwork.linux-mips.org/patch/2387/ Signed-off-by: Ralf Baechle commit e650ce0f083ff9354a10ad66e6bf8c193e8a2755 Author: David Daney Date: Thu Feb 17 14:47:52 2011 -0800 MIPS: Octeon: Don't request interrupts for unused IPI mailbox bits. We only use the three low-order mailbox bits. Leave the upper bits alone for possible use by drivers and other software. Signed-off-by: David Daney To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2090/ Signed-off-by: Ralf Baechle commit 7716e6548abed1582a7759666e79d5c612a906c7 Author: Chandrakala Chavva Date: Thu Feb 17 13:57:52 2011 -0800 Octeon: Fix interrupt irq settings for performance counters. Octeon uses different interrupt irq for timer and performance counters. Set CvmCtl[IPPCI] to correct irq value very early. Signed-off-by: Chandrakala Chavva Signed-off-by: David Daney To: linux-mips@linux-mips.org Cc: Chandrakala Chavva Patchwork: https://patchwork.linux-mips.org/patch/2085/ Signed-off-by: Ralf Baechle commit b32ee693eb106172f89639acff88dc8fee8ba3e2 Author: Wanlong Gao Date: Sun Apr 10 03:04:18 2011 +0800 MIPS: Fix build warnings on defconfigs Since d45dcef77019012fc6769e657fc2f1a5d681bbbb ["Bluetooth: Fix BT_L2CAP and BT_SCO in Kconfig"] BT_L2CAP=m and BT_SCO=m are no longer valid so change the settings from m to y. [ralf@linux-mips.org: Merging only the MIPS parts of this patch.] Signed-off-by: Wanlong Gao To: akpm@linux-foundation.org To: manuel.lauss@googlemail.com Cc: linux-arm-kernel@lists.infradead.org Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Cc: linuxppc-dev@lists.ozlabs.org Patchwork: https://patchwork.linux-mips.org/patch/2277/ Signed-off-by: Ralf Baechle commit 1c8da7a1107a46c94b21cc176aaf95c819aab3db Author: Wanlong Gao Date: Sun Apr 10 01:42:17 2011 +0800 MIPS: Lemote 2F, Malta: Fix build warning Since 5ada28bf76752e33dce3d807bf0dfbe6d1b943ad ["led-class: always implement blinking"] LEDS_CLASS=m is no longer valid so change the setting from m to y. Signed-off-by: Wanlong Gao To: david.woodhouse@intel.com To: akpm@linux-foundation.org To: mingo@elte.hu Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2276/ Signed-off-by: Ralf Baechle commit 5aac1e8a381d52a977b5050369a82a547c446ee2 Author: Robert Millan Date: Sat Apr 16 11:29:29 2011 -0700 MIPS: Set ELF AT_PLATFORM string for Loongson2 processors Signed-off-by: Robert Millan Acked-by: David Daney Signed-off-by: Kevin Cernekee Cc: David Daney Cc: wu zhangjin Cc: Aurelien Jarno Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2302/ Signed-off-by: Ralf Baechle commit 06785df09b18e9127d16893039b64ae118c53cb4 Author: Kevin Cernekee Date: Sat Apr 16 11:29:28 2011 -0700 MIPS: Set ELF AT_PLATFORM string for BMIPS processors Signed-off-by: Kevin Cernekee Cc: Robert Millan Cc: David Daney Cc: wu zhangjin Cc: Aurelien Jarno Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2300/ Signed-off-by: Ralf Baechle commit c094c99e659efedcbb05a0f75b8f77145d8ec539 Author: Robert Millan Date: Mon Apr 18 11:37:55 2011 -0700 MIPS: Introduce set_elf_platform() helper function Replace these sequences: if (cpu == 0) __elf_platform = "foo"; with a trivial inline function. Signed-off-by: Robert Millan Signed-off-by: Kevin Cernekee Signed-off-by: David Daney Cc: wu zhangjin Cc: Aurelien Jarno Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2304/ Patchwork: https://patchwork.linux-mips.org/patch/2374/ Signed-off-by: Ralf Baechle commit 6edde0247644db475f68f25dcb1bf72260600081 Author: Maarten ter Huurne Date: Mon May 2 11:47:00 2011 +0200 MIPS: JZ4740: setup: Autodetect physical memory. Assume that the boot loader knows the physical memory of the system and deduce that information from the contents of the SDRAM control register. It is still possible to override with with the "mem=" parameter, but we have a sensible default now. Signed-off-by: Maarten ter Huurne Acked-by: Lars-Peter Clausen Cc: linux-kernel@vger.kernel.org Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2319/ Signed-off-by: Ralf Baechle commit 9cbda726bb283d60cd4f34a3a9da8b5b48a46b0f Author: Hauke Mehrtens Date: Tue May 10 23:31:34 2011 +0200 MIPS: BCM47xx: Fix MAC address parsing. Some devices like the Netgear WGT634u are using minuses between the blocks of the MAC address and other devices are using colons to separate them. Signed-off-by: Hauke Mehrtens Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2366/ Signed-off-by: Ralf Baechle commit 41790fd51f71f3744a5d142cc5369eebab8817a0 Author: Hauke Mehrtens Date: Tue May 10 23:31:33 2011 +0200 MIPS: BCM47xx: Extend the filling of SPROM from NVRAM Some members of the struct ssb_sprom where not filled with data available in the NVRAM. Some attribute names in the NVRAM changed from SPROM version 3 to version 4. This patch was done by analyzing the the pci sprom parser in the ssb code and some open source parts of the braodcom wireless driver used on embedded devices. Signed-off-by: Hauke Mehrtens Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2365/ Signed-off-by: Ralf Baechle commit fe6f3642ac70d21004ddbe7242bd4548c35f1c10 Author: Hauke Mehrtens Date: Tue May 10 23:31:32 2011 +0200 MIPS: BCM47xx: Register SSB fallback sprom callback We are generating the prefix based on the PCI bus address the device is on. This is done like Broadcom does it in their code expect that the the bus number is increased by one. In the SB bus implementation used by Broadcom the SB bus emulates a PCI bus so the kernel sees one PCI bus more then in our implementation. We do not handle prefixes like sb/1/ yet as they are only used on the new bus which is not implemented yet. Signed-off-by: Hauke Mehrtens Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2364/ Signed-off-by: Ralf Baechle commit a7c62f8564357532872e106f0fa383728cf886cc Author: Hauke Mehrtens Date: Tue May 10 23:31:31 2011 +0200 MIPS: BCM47xx: Extend bcm47xx_fill_sprom with prefix. When an other SSB based device without an own SPROM is attached, using the PCI bus to the main SSB based device, the data normally found in the SPROM will be stored in the NVRAM on modern devices. The keys, to load the data from the NVRAM, are all using some sort of prefix like pci/1/1/, pci/1/3/ or sb/1/ before the actual key. This patch extends bcm47xx_fill_sprom() to make it possible to read out these values when some prefix was used. The keys for the SPROM data used on the main chip does not have a prefix. Signed-off-by: Hauke Mehrtens Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2363/ Signed-off-by: Ralf Baechle commit b3ae52b6b0335eba547221aad2cb3c50902e3d2d Author: Hauke Mehrtens Date: Tue May 10 23:31:30 2011 +0200 SSB: Change fallback sprom to callback mechanism. Some embedded devices like the Netgear WNDR3300 have two SSB based cards without an own sprom on the pci bus. We have to provide two different fallback sproms for these and this was not possible with the old solution. In the bcm47xx architecture the sprom data is stored in the nvram in the main flash storage. The architecture code will be able to fill the sprom with the stored data based on the bus where the device was found. The bcm63xx code should do the same thing as before, just using the new API. Acked-by: Michael Buesch Cc: netdev@vger.kernel.org Cc: linux-wireless@vger.kernel.org Cc: Florian Fainelli Signed-off-by: Hauke Mehrtens Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2362/ Signed-off-by: Ralf Baechle commit b7f720d68c0042cc8ce496e31a61df79a77f1b48 Author: Manuel Lauss Date: Sun May 8 10:42:20 2011 +0200 MIPS: Alchemy: Clean up GPIO registers and accessors remove au_readl/au_writel, remove the predefined GPIO1/2 KSEG1 register addresses and fix the fallout in all boards and drivers. This also fixes a bug in the mtx-1_wdt driver which was introduced by commit 6ea8115bb6f359df4f45152f2b40e1d4d1891392 ("Convert mtx1 wdt to be a platform device and use generic GPIO API") before this patch mtx-1_wdt only modified GPIO215, the patch then used the gpio resource information as bit index into the GPIO2 register but the conversion to the GPIO API didn't realize that. With this patch the drivers original behaviour is restored and GPIO15 is left alone. Signed-off-by: Manuel Lauss Cc: Florian Fainelli To: Linux-MIPS Cc: linux-watchdog@vger.kernel.org Cc: Wim Van Sebroeck Patchwork: https://patchwork.linux-mips.org/patch/2381/ Signed-off-by: Ralf Baechle Date: Sun May 8 10:42:19 2011 +0200 MIPS: Alchemy: Cleanup DMA addresses According to the databooks, the Au1000 DMA engine must be programmed with the physical FIFO addresses. This patch does that; furthermore this opened the possibility to get rid of a lot of now unnecessary address defines. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2348/ Signed-off-by: Ralf Baechle Date: Sun May 8 10:42:18 2011 +0200 MIPS: Alchemy: Rewrite ethernet platform setup Rewrite ethernet setup to use runtime cpu detection, and also clean up the ethernet base address mess as far as possible. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2353/ Signed-off-by: Ralf Baechle Date: Sun May 8 10:42:17 2011 +0200 MIPS: Alchemy: Rewrite UART setup and constants. Detect CPU type at runtime and setup uarts accordingly; also clean up the uart base address mess in the process as far as possible. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2352/ Signed-off-by: Ralf Baechle Date: Sun May 8 10:42:16 2011 +0200 MIPS: Alchemy: Convert dbdma.c to syscore_ops Convert the PM sysdev to syscore_ops and clean up the ddma addresses a bit. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2351/ Signed-off-by: Ralf Baechle commit 4b5c82b5e57ac6cb919e7e74984e28b312bdf10c Author: Manuel Lauss Date: Sun May 8 10:42:15 2011 +0200 MIPS: Alchemy: Convert irq.c to syscore_ops. Convert the PM sysdev to use syscore_ops instead. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2350/ Signed-off-by: Ralf Baechle commit dca7587185b3a499a09a9e2755316eee31c49c7f Author: Manuel Lauss Date: Sun May 8 10:42:14 2011 +0200 MIPS: Alchemy: irq code and constant cleanup replace au_readl/au_writel with __raw_readl/__raw_writel, and clean up IC-related stuff from the headers. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2354/ Signed-off-by: Ralf Baechle commit c1e58a3129bc327f7e0eb06fd4fe5ebf2af5d8ef Author: Manuel Lauss Date: Sun May 8 10:42:13 2011 +0200 MIPS: Alchemy: update inlinable GPIO API This fixes a build failure with gpio_keys and CONFIG_GPIOLIB=n (mtx1): CC drivers/input/keyboard/gpio_keys.o gpio_keys.c: In function 'gpio_keys_report_event': gpio_keys.c:325:2: error: implicit declaration of function 'gpio_get_value_cansleep' gpio_keys.c: In function 'gpio_keys_setup_key': gpio_keys.c:390:3: error: implicit declaration of function 'gpio_set_debounce' Also add stubs for the other new functions. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2346/ Signed-off-by: Ralf Baechle commit 0591128066bdfe07e0ef0ab7f877f794d8ba071d Author: Manuel Lauss Date: Sun May 8 10:42:12 2011 +0200 MIPS: DB1200: Set Config[OD] for improved stability. Setting Config[OD] gets rid of a _LOT_ of spurious CPLD interrupts, but also decreases overall performance a bit. Signed-off-by: Manuel Lauss To: Linux-MIPS Cc: Florian Fainelli Cc: Wolfgang Grandegger Patchwork: https://patchwork.linux-mips.org/patch/2347/ Signed-off-by: Ralf Baechle commit 8b659a393171aed3dafa1d7455ac9eec1f3ed315 Author: Ralf Baechle Date: Thu May 19 09:21:29 2011 +0100 MIPS: Split do_syscall_trace into two functions. Signed-off-by: Ralf Baechle commit c19c20ac6338435469a2c222ef5dc55e0469a6dc Author: Ralf Baechle Date: Thu May 19 09:21:28 2011 +0100 MIPS: Use single define for pending work on syscall exit Signed-off-by: Ralf Baechle commit 4f0ad950880a33df792b1e63649e29f8784b0163 Author: Ralf Baechle Date: Thu May 19 09:21:28 2011 +0100 MIPS: IP27: Remove pointless switch statement. Signed-off-by: Ralf Baechle commit 2f58b8d04e680ec13157ba6eee44455438c56d5f Author: John Crispin Date: Thu May 5 23:00:23 2011 +0200 MIPS: Lantiq: Add watchdog support This patch adds the driver for the watchdog found inside the Lantiq SoC family. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: Wim Van Sebroeck Cc: linux-mips@linux-mips.org Cc: linux-watchdog@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2327/ Signed-off-by: Ralf Baechle commit f1f0ceaada9d040a41023017c87abb1d651b44af Author: John Crispin Date: Fri May 6 00:10:02 2011 +0200 MIPS: Lantiq: Add etop board support Register the etop platform device inside the machtype specific init code. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Signed-off-by: David Daney Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2356/ Patchwork: https://patchwork.linux-mips.org/patch/2370/ Signed-off-by: Ralf Baechle commit 504d4721ee8e432af4b5f196a08af38bc4dac5fe Author: John Crispin Date: Fri May 6 00:10:01 2011 +0200 MIPS: Lantiq: Add ethernet driver This patch adds the driver for the ETOP Packet Processing Engine (PPE32) found inside the XWAY family of Lantiq MIPS SoCs. This driver makes 100MBit ethernet work. Support for all 8 dma channels, gbit and the embedded switch found on the ar9/vr9 still needs to be implemented. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Cc: netdev@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2357/ Acked-by: David S. Miller Signed-off-by: Ralf Baechle commit dfec1a827d2bdc35d0990afd100f79a685ec0985 Author: John Crispin Date: Fri May 6 00:10:00 2011 +0200 MIPS: Lantiq: Add DMA support This patch adds support for the DMA engine found inside the XWAY family of SoCs. The engine has 5 ports and 20 channels. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2355/ Signed-off-by: Ralf Baechle commit 2f0fc4159a6abc20b13569522c545150b99485cf Author: John Crispin Date: Tue Apr 5 14:10:57 2011 +0200 SERIAL: Lantiq: Add driver for MIPS Lantiq SOCs. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Signed-off-by: Felix Fietkau Cc: alan@lxorguk.ukuu.org.uk Cc: linux-mips@linux-mips.org Cc: linux-serial@vger.kernel.org Patchwork: https://patchwork.linux-mips.org/patch/2269/ Acked-by: Alan Cox Signed-off-by: Ralf Baechle commit 935c500c377d8e414bbe08e0e169f6c85d2a4273 Author: John Crispin Date: Wed Mar 30 09:27:56 2011 +0200 MIPS: Lantiq: Add more gpio drivers The XWAY family allows to extend the number of gpios by using shift registers or latches. This patch adds the 2 drivers needed for this. The extended gpios are output only. [ralf@linux-mips.org: Fixed ltq_stp_probe section() attributes.] Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2258/ Signed-off-by: Ralf Baechle commit 973c32eb7f2d5c45d0e68b0083ead9ee763d9a6f Author: John Crispin Date: Wed Mar 30 09:27:55 2011 +0200 MIPS: Lantiq: Add machtypes for lantiq eval kits This patch adds mach specific code for the Lantiq EASY50712/50601 evaluation boards Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2255/ Patchwork: https://patchwork.linux-mips.org/patch/2361/ Signed-off-by: Ralf Baechle commit a053ac17024561f3a2fd02424b5f92823282b5ad Author: John Crispin Date: Wed Mar 30 09:27:54 2011 +0200 MIPS: Lantiq: Add mips_machine support This patch adds support for Gabor's mips_machine patch. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: Gabor Juhos Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2251/ Patchwork: https://patchwork.linux-mips.org/patch/2358/ Signed-off-by: Ralf Baechle commit 24aff71fa8df0d6a73dab17f3f2285a24b8f658f Author: John Crispin Date: Wed Mar 30 09:27:53 2011 +0200 MIPS: Lantiq: Add platform device support This patch adds the wrappers for registering our platform devices. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2254/ Patchwork: https://patchwork.linux-mips.org/patch/2360/ Patchwork: https://patchwork.linux-mips.org/patch/2359/ Signed-off-by: Ralf Baechle commit 3c5447390c3e1a462913e327a016a55cae501580 Author: John Crispin Date: Tue Apr 12 18:10:01 2011 +0200 MIPS: Lantiq: Add NOR flash support This patch adds the driver/map for NOR devices attached to the SoC via the External Bus Unit (EBU). Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: David Woodhouse Cc: Daniel Schwierzeck Cc: linux-mips@linux-mips.org Cc: linux-mtd@lists.infradead.org Acked-by: Artem Bityutskiy Patchwork: https://patchwork.linux-mips.org/patch/2285/ Signed-off-by: Ralf Baechle commit e47d488935ed0b2dd3d59d3ba4e13956ff6849c0 Author: John Crispin Date: Wed Mar 30 09:27:49 2011 +0200 MIPS: Lantiq: Add PCI controller support. The Lantiq family of SoCs have a EBU (External Bus Unit). This patch adds the driver that allows us to use the EBU as a PCI controller. In order for PCI to work the EBU is set to endianess swap all the data. In addition we need to make use of SWAP_IO_SPACE for device->host DMA to work. The clock of the PCI works in several modes (internal/external). If this is not configured correctly the SoC will hang. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2250/ Signed-off-by: Ralf Baechle commit 8ec6d93508f705dacafd5fcd058c69ef405002f9 Author: John Crispin Date: Wed Mar 30 09:27:48 2011 +0200 MIPS: Lantiq: add SoC specific code for XWAY family Add support for the Lantiq XWAY family of Mips24KEc SoCs. * Danube (PSB50702) * Twinpass (PSB4000) * AR9 (PSB50802) * Amazon SE (PSB5061) The Amazon SE is a lightweight SoC and has no PCI as well as a different clock. We split the code out into seperate files to handle this. The GPIO pins on the SoCs are multi function and there are several bits we can use to configure the pins. To be as compatible as possible to GPIOLIB we add a function int lq_gpio_request(unsigned int pin, unsigned int alt0, unsigned int alt1, unsigned int dir, const char *name); which lets you configure the 2 "alternate function" bits. This way drivers like PCI can make use of GPIOLIB without a cubersome wrapper. The PLL code inside arch/mips/lantiq/xway/clk-xway.c is voodoo to me. It was taken from a 2.4.20 source tree and was never really changed by me since then. Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2249/ Signed-off-by: Ralf Baechle commit 171bb2f19ed6f3627f4f783f658f2f475b2fbd50 Author: John Crispin Date: Wed Mar 30 09:27:47 2011 +0200 MIPS: Lantiq: Add initial support for Lantiq SoCs Add initial support for Mips based SoCs made by Lantiq. This series will add support for the XWAY family. The series allows booting a minimal system using a initramfs or NOR. Missing drivers and support for Amazon and GPON family will be provided in a later series. [Ralf: Remove some cargo cult programming and fixed formatting.] Signed-off-by: John Crispin Signed-off-by: Ralph Hempel Signed-off-by: David Daney Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2252/ Patchwork: https://patchwork.linux-mips.org/patch/2371/ Signed-off-by: Ralf Baechle commit c0a5afb9bcf6b5aa5685e4fcf1282cad5fab3d91 Author: Maxin John Date: Tue Mar 29 00:15:55 2011 +0300 MIPS: Enable kmemleak for MIPS Signed-off-by: Maxin B. John To: Catalin Marinas Cc: Daniel Baluta Cc: naveen yadav Cc: linux-mips@linux-mips.org Cc: linux-kernel@vger.kernel.org Cc: linux-mm@kvack.org Patchwork: https://patchwork.linux-mips.org/patch/2244/ Signed-off-by: Ralf Baechle commit 9b130f8004e51c65b20b0f0e17cdee073a719047 Author: Jayachandran C Date: Sat May 7 01:37:31 2011 +0530 MIPS: XLR, XLS: Add PCI support. Adds pci/pci-xlr.c to support for XLR PCI/PCI-X interface and XLS PCIe interface. Update irq.c to ack PCI interrupts, use irq handler data to do the PCI/PCIe bus ack. Signed-off-by: Jayachandran C Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2337/ Signed-off-by: Ralf Baechle commit f9cab74fd9b0cf19f52a989694e7a1d8213af3a1 Author: Jayachandran C Date: Sat May 7 01:37:14 2011 +0530 MIPS: Add default configuration for XLR/XLS processors Enable XLR CPU support, SMP, initramfs based root filesystem etc. [ralf@linux-mips.org: shrink the defconfig file through make savedefconfig.] Signed-off-by: Jayachandran C To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2338/ Signed-off-by: Ralf Baechle commit 7f058e852b229ec77b37676b2b78baf2e78ffee8 Author: Jayachandran C Date: Sat May 7 01:36:57 2011 +0530 MIPS: Kconfig and Makefile update for Netlogic XLR/XLS Add NLM_XLR_BOARD, CPU_XLR and other config options Makefile updates, mostly based on r4k Signed-off-by: Jayachandran C To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2334/ Signed-off-by: Ralf Baechle commit 5c642506740ecbf20fb7a9e482287e4e5c639e5c Author: Jayachandran C Date: Sat May 7 01:36:40 2011 +0530 MIPS: Platform files for XLR/XLS processor support * include/asm/netlogic added with files common for all Netlogic processors (common with XLP which will be added later) * include/asm/netlogic/xlr for XLR/XLS chip specific files * netlogic/xlr for XLR/XLS platform files Signed-off-by: Jayachandran C To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2334/ Signed-off-by: Ralf Baechle commit efa0f81c11021c95b1e72c65868115b6fb4ecc6a Author: Jayachandran C Date: Sat May 7 01:36:21 2011 +0530 MIPS: Netlogic: Cache, TLB support and feature overrides for XLR CPU_XLR case added to mm/tlbex.c CPU_XLR case added to mm/c-r4k.c for PINDEX attribute Feature overrides for XLR cpu. Signed-off-by: Jayachandran C To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2333/ Signed-off-by: Ralf Baechle commit 3c595a515dbb61ae96e8f5607d895820aa06e870 Author: Jayachandran C Date: Sat May 7 01:36:05 2011 +0530 MIPS: Netlogic: mach-netlogic include files Add war.h and irq.h with XLR/XLS definitions. Signed-off-by: Jayachandran C To: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2331/ Signed-off-by: Ralf Baechle commit a7117c6bddcbfff2fa237a14a853b32cb94bf59a Author: Jayachandran C Date: Wed May 11 12:04:58 2011 +0530 MIPS: Netlogic XLR/XLS processor IDs. Add Netlogic Microsystems company ID and processor IDs for XLR and XLS processors for CPU probe. Add CPU_XLR to cpu_type_enum. Signed-off-by: Jayachandran C Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/2367/ Signed-off-by: Ralf Baechle commit 12a5a2621b1ee14d32beca35304d7c6076a58815 Merge: e77dc34 61c4f2c Author: James Morris Date: Thu May 19 18:51:57 2011 +1000 Merge branch 'master' into next Conflicts: include/linux/capability.h Manually resolve merge conflict w/ thanks to Stephen Rothwell. Signed-off-by: James Morris commit 9d2e173644bb5c42ff1b280fbdda3f195a7cf1f7 Author: Michael Hennerich Date: Thu May 19 00:59:32 2011 -0700 Input: ADP5589 - new driver for I2C Keypad Decoder and I/O Expander From http://www.analog.com/ADP5589: The ADP5589 is an I/O port expander and keypad matrix decoder designed for QWERTY type phones that require a large keypad matrix and expanded I/O lines. Signed-off-by: Michael Hennerich Signed-off-by: Mike Frysinger Signed-off-by: Dmitry Torokhov commit 779d530632c98967820d3bbcae15d492fc20301e Merge: c9ce9e4 8ab5215 Author: Jens Axboe Date: Thu May 19 09:46:00 2011 +0200 Merge branches 'for-jens/xen-backend-fixes' and 'for-jens/xen-blkback-v3.3' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-2.6.40/drivers commit f38aa708776aefd9e3ba7ec1211c07efe9fa3227 Author: Sebastian Siewior Date: Mon May 16 08:58:13 2011 +0000 powerpc: Remove last piece of GEMINI It seems that Adrian is getting old. He removed almost everything of GEMINI in commit c53653130 ("[POWERPC] Remove the broken Gemini support") except this piece. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Benjamin Herrenschmidt commit 2c78027a62ea38585da1ff944afdc6146335cb7c Author: Gabriel Paubert Date: Fri May 13 01:03:13 2011 +0000 powerpc: Fix for Pegasos keyboard and mouse [See http://lists.ozlabs.org/pipermail/linuxppc-dev/2010-October/086424.html and followups. Part of the commit message is directly copied from that.] Commit 540c6c392f01887dcc96bef0a41e63e6c1334f01 tries to find i8042 IRQs in the device-tree but doesn't fall back to the old hardcoded 1 and 12 in all failure cases. Specifically, the case where the device-tree contains nothing matching pnpPNP,303 or pnpPNP,f03 doesn't seem to be handled well. It sort of falls through to the old code, but leaves the IRQs set to 0. Signed-off-by: Gabriel Paubert Signed-off-by: Benjamin Herrenschmidt commit 03bf469add176afd8a1a4c493d9f4e0e520db12b Author: Benjamin Herrenschmidt Date: Wed May 11 20:58:18 2011 +0000 powerpc: Make early memory scan more resilient to out of order nodes We keep track of the size of the lowest block of memory and call setup_initial_memory_limit() only after we've parsed them all Signed-off-by: Benjamin Herrenschmidt Acked-by: Milton Miller commit f721a465cddbe7f03e6cd2272008da558cf93818 Author: Jonathan Cameron Date: Tue Apr 19 12:43:47 2011 +0100 params.c: Use new strtobool function to process boolean inputs Signed-off-by: Jonathan Cameron Signed-off-by: Rusty Russell commit b73a635f348610304eee543d733a6277f67ba178 Author: Milton Miller Date: Wed May 11 12:25:00 2011 +0000 powerpc/pseries/iommu: Cleanup ddw naming When using a property refering to the availibily of dynamic dma windows call it ddw_avail not ddr_avail. dupe_ddw_if_already_created does not dupilcate anything, it only finds and reuses the windows we already created, so rename it to find_existing_ddw. Also, it does not need the pci device node, so remove that argument. Signed-off-by: Milton Miller Signed-off-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit a0374396375d06398c419ebb6857fb5809cff81f Author: Jonathan Cameron Date: Tue Apr 19 12:43:46 2011 +0100 debugfs: move to new strtobool No functional changes requires that we eat errors from strtobool. If people want to not do this, then it should be fixed at a later date. V2: Simplification suggested by Rusty Russell removes the need for additional variable ret. Signed-off-by: Jonathan Cameron Signed-off-by: Rusty Russell commit c85667802bb5093c4054f8a887a90dd0acf82d3e Author: Milton Miller Date: Wed May 11 12:24:59 2011 +0000 powerpc/pseries/iommu: Find windows after kexec during boot Move the discovery of windows previously setup from when the pci driver calls set_dma_mask to an arch_initcall. When kexecing into a kernel with dynamic dma windows allocated, we need to find the windows early so that memory hot remove will be able to delete the tces mapping the to be removed memory and memory hotplug add will map the new memory into the window. We should not wait for the driver to be loaded and the device to be probed. The iommu init hooks are before kmalloc is setup, so defer to arch_initcall. Signed-off-by: Milton Miller Signed-off-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit d0f1fed29e6e73d9d17f4c91a5896a4ce3938d45 Author: Jonathan Cameron Date: Tue Apr 19 12:43:45 2011 +0100 Add a strtobool function matching semantics of existing in kernel equivalents This is a rename of the usr_strtobool proposal, which was a renamed, relocated and fixed version of previous kstrtobool RFC Signed-off-by: Jonathan Cameron Signed-off-by: Rusty Russell commit 6845756b29e4c4e7db41e2d75cafa9d091bc1c07 Author: Anders Kaseorg Date: Thu May 19 16:55:27 2011 -0600 modpost: Update 64k section support for binutils 2.18.50 Binutils 2.18.50 made a backwards-incompatible change in the way it writes ELF objects with over 65280 sections, to improve conformance with the ELF specification and interoperability with other ELF tools. Specifically, it no longer adds 256 to section indices SHN_LORESERVE and higher to skip over the reserved range SHN_LORESERVE through SHN_HIRESERVE; those values are only considered special in the st_shndx field, and not in other places where section indices are stored. See: http://sourceware.org/bugzilla/show_bug.cgi?id=5900 http://groups.google.com/group/generic-abi/browse_thread/thread/e8bb63714b072e67/6c63738f12cc8a17 Signed-off-by: Anders Kaseorg Signed-off-by: Rusty Russell commit 2573f6842201a00f139237e4b42ab16711b582af Author: Milton Miller Date: Wed May 11 12:24:58 2011 +0000 powerpc/pseries/iommu: Remove ddw property when destroying window If we destroy the window, we need to remove the property recording that we setup the window. Otherwise the next kernel we kexec will be confused. Also we should remove the property if even if we don't find the ibm,ddw-applicable window or if one of the property sizes is unexpected; presumably these came from a prior kernel via kexec, and we will not be maintaining the window with respect to memory hotplug. Signed-off-by: Milton Miller Signed-off-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit 9d63487f86115b1d3ef69670043bcf2b83c4d227 Author: Alessio Igor Bogani Date: Wed May 18 22:35:59 2011 +0200 module: Use binary search in lookup_symbol() The function is_exported() with its helper function lookup_symbol() are used to verify if a provided symbol is effectively exported by the kernel or by the modules. Now that both have their symbols sorted we can replace a linear search with a binary search which provide a considerably speed-up. This work was supported by a hardware donation from the CE Linux Forum. Signed-off-by: Alessio Igor Bogani Acked-by: Greg Kroah-Hartman Signed-off-by: Rusty Russell commit 64ac822fb4554fb516bce123a38b35e04e41fff5 Author: Milton Miller Date: Wed May 11 12:24:57 2011 +0000 powerpc/pseries/iommu: Add additional checks when changing iommu mask Do not check dma supported until we have chosen the right dma ops. Check that the device is pci before treating it as such. Check the mask is supported by the selected dma ops before committing it. We only need to set iommu ops if it is not the current ops; this avoids searching the tree for the iommu table unnecessarily. Signed-off-by: Milton Miller Signed-off-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit 403ed27846aa126ecf0b842b5b179c506b9d989c Author: Alessio Igor Bogani Date: Wed Apr 20 11:10:52 2011 +0200 module: Use the binary search for symbols resolution Takes advantage of the order and locates symbols using binary search. This work was supported by a hardware donation from the CE Linux Forum. Signed-off-by: Alessio Igor Bogani Signed-off-by: Rusty Russell Tested-by: Dirk Behme commit 23a6c484047bb8ac50e6d5bb718f8d178a4bf32e Author: Nishanth Aravamudan Date: Wed May 11 11:07:51 2011 +0000 powerpc/pseries/iommu: Use correct return type in dupe_ddw_if_already_created Otherwise we get silent truncations. Signed-off-by: Nishanth Aravamudan Cc: Anton Blanchard Cc: Milton Miller Cc: linuxppc-dev@ozlabs.org Signed-off-by: Benjamin Herrenschmidt commit 1a94dc35bc5c166d89913dc01a49d27a3c21a455 Author: Tim Abbott Date: Thu Apr 14 20:00:19 2011 +0200 lib: Add generic binary search function to the kernel. There a large number hand-coded binary searches in the kernel (run "git grep search | grep binary" to find many of them). Since in my experience, hand-coding binary searches can be error-prone, it seems worth cleaning this up by providing a generic binary search function. This generic binary search implementation comes from Ksplice. It has the same basic API as the C library bsearch() function. Ksplice uses it in half a dozen places with 4 different comparison functions, and I think our code is substantially cleaner because of this. Signed-off-by: Tim Abbott Extra-bikeshedding-by: Alan Jenkins Extra-bikeshedding-by: André Goddard Rosa Extra-bikeshedding-by: Rusty Russell Signed-off-by: Rusty Russell Signed-off-by: Alessio Igor Bogani Signed-off-by: Rusty Russell commit f02e8a6596b7dc9b2171f7ff5654039ef0950cdc Author: Alessio Igor Bogani Date: Thu Apr 14 14:59:39 2011 +0200 module: Sort exported symbols This patch places every exported symbol in its own section (i.e. "___ksymtab+printk"). Thus the linker will use its SORT() directive to sort and finally merge all symbol in the right and final section (i.e. "__ksymtab"). The symbol prefixed archs use an underscore as prefix for symbols. To avoid collision we use a different character to create the temporary section names. This work was supported by a hardware donation from the CE Linux Forum. Signed-off-by: Alessio Igor Bogani Signed-off-by: Rusty Russell (folded in '+' fixup) Tested-by: Dirk Behme commit de4d8d53465483168d6a627d409ee2d09d8e3308 Author: Rusty Russell Date: Tue Apr 19 21:49:58 2011 +0200 module: each_symbol_section instead of each_symbol Instead of having a callback function for each symbol in the kernel, have a callback for each array of symbols. This eases the logic when we move to sorted symbols and binary search. Signed-off-by: Rusty Russell Signed-off-by: Alessio Igor Bogani commit 01526ed0830643bd53a8434c3068e4c077e1b09d Author: Jan Glauber Date: Thu May 19 16:55:26 2011 -0600 module: split unset_section_ro_nx function. Split the unprotect function into a function per section to make the code more readable and add the missing static declaration. Signed-off-by: Jan Glauber Signed-off-by: Rusty Russell commit 448694a1d50432be63aafccb42d6f54d8cf3d02c Author: Jan Glauber Date: Thu May 19 16:55:26 2011 -0600 module: undo module RONX protection correctly. While debugging I stumbled over two problems in the code that protects module pages. First issue is that disabling the protection before freeing init or unload of a module is not symmetric with the enablement. For instance, if pages are set to RO the page range from module_core to module_core + core_ro_size is protected. If a module is unloaded the page range from module_core to module_core + core_size is set back to RW. So pages that were not set to RO are also changed to RW. This is not critical but IMHO it should be symmetric. Second issue is that while set_memory_rw & set_memory_ro are used for RO/RW changes only set_memory_nx is involved for NX/X. One would await that the inverse function is called when the NX protection should be removed, which is not the case here, unless I'm missing something. Signed-off-by: Jan Glauber Signed-off-by: Rusty Russell commit 4d10380e720a3ce19dbe88d0133f66ded07b6a8f Author: Jan Glauber Date: Thu May 19 16:55:25 2011 -0600 module: zero mod->init_ro_size after init is freed. Reset mod->init_ro_size to zero after the init part of a module is unloaded. Otherwise we need to check if module->init is NULL in the unprotect functions in the next patch. Signed-off-by: Jan Glauber Signed-off-by: Rusty Russell commit 5d05c70849f760ac8f4ed3ebfeefb92689858834 Author: Daniel J Blueman Date: Tue Mar 8 22:01:47 2011 +0800 minor ANSI prototype sparse fix Fix function prototype to be ANSI-C compliant, consistent with other function prototypes, addressing a sparse warning. Signed-off-by: Daniel J Blueman Signed-off-by: Rusty Russell commit c5be0b2eb1ca05e0cd747f9c0ba552c6ee8827a0 Author: Richard Kennedy Date: Thu May 19 16:55:25 2011 -0600 module: reorder kparam_array to remove alignment padding on 64 bit builds Reorder structure kparam_array to remove 8 bytes of alignment padding on 64 bit builds, dropping its size from 40 to 32 bytes. Also update the macro module_param_array_named to initialise the structure using its member names to allow it to be changed without touching all its call sites. 'git grep' finds module_param_array in 1037 places so this patch will save a small amount of data space across many modules. Signed-off-by: Richard Kennedy Signed-off-by: Rusty Russell commit a288bd651f4180c224cfddf837a0416157a36661 Author: Richard Kennedy Date: Thu May 19 16:55:25 2011 -0600 module: remove 64 bit alignment padding from struct module with CONFIG_TRACE* Reorder struct module to remove 24 bytes of alignment padding on 64 bit builds when the CONFIG_TRACE options are selected. This allows the structure to fit into one fewer cache lines, and its size drops from 592 to 568 on x86_64. Signed-off-by: Richard Kennedy Signed-off-by: Rusty Russell commit 9b73a5840c7d5f77e5766626716df13787cb258c Author: Dmitry Torokhov Date: Mon Feb 7 16:02:27 2011 -0800 module: do not hide __modver_version_show declaration behind ifdef Doing so prevents the following warning from sparse: CHECK kernel/params.c kernel/params.c:817:9: warning: symbol '__modver_version_show' was not declared. Should it be static? since kernel/params.c is never compiled with MODULE being set. Signed-off-by: Dmitry Torokhov Signed-off-by: Rusty Russell commit b4bc842802db3314f9a657094da0450a903ea619 Author: Dmitry Torokhov Date: Mon Feb 7 16:02:25 2011 -0800 module: deal with alignment issues in built-in module versions On m68k natural alignment is 2-byte boundary but we are trying to align structures in __modver section on sizeof(void *) boundary. This causes trouble when we try to access elements in this section in array-like fashion when create "version" attributes for built-in modules. Moreover, as DaveM said, we can't reliably put structures into independent objects, put them into a special section, and then expect array access over them (via the section boundaries) after linking the objects together to just "work" due to variable alignment choices in different situations. The only solution that seems to work reliably is to make an array of plain pointers to the objects in question and put those pointers in the special section. Reported-by: Geert Uytterhoeven Signed-off-by: Dmitry Torokhov Signed-off-by: Rusty Russell commit 4c8440666b995f20604852b35dcfdbcc1d5931f1 Merge: 751e1f5 c560bbc Author: Benjamin Herrenschmidt Date: Thu May 19 17:00:06 2011 +1000 Merge branch 'merge' into next commit 751e1f5099f1568444fe2485f2485ca541d4952e Author: Benjamin Herrenschmidt Date: Thu May 19 14:44:31 2011 +1000 powerpc: Remove unused/obsolete CONFIG_XICS Signed-off-by: Benjamin Herrenschmidt commit 0e1d715b5b982ee0099f3fbf6ad47dc8bda518a6 Author: Ira Snyder Date: Fri Feb 11 13:34:30 2011 +0000 misc: Add CARMA DATA-FPGA Programmer support This adds support for programming the data processing FPGAs on the OVRO CARMA board. These FPGAs have a special programming sequence that requires that we program the Freescale DMA engine, which is only available inside the kernel. Signed-off-by: Ira W. Snyder Signed-off-by: Benjamin Herrenschmidt commit c186f0e177275e83728d7acfdf4a1b68793a7038 Author: Ira Snyder Date: Fri Feb 11 13:34:29 2011 +0000 misc: Add CARMA DATA-FPGA Access Driver This driver allows userspace to access the data processing FPGAs on the OVRO CARMA board. It has two modes of operation: 1) random access This allows users to poke any DATA-FPGA registers by using mmap to map the address region directly into their memory map. 2) correlation dumping When correlating, the DATA-FPGA's have special requirements for getting the data out of their memory before the next correlation. This nominally happens at 64Hz (every 15.625ms). If the data is not dumped before the next correlation, data is lost. The data dumping driver handles buffering up to 1 second worth of correlation data from the FPGAs. This lowers the realtime scheduling requirements for the userspace process reading the device. Signed-off-by: Ira W. Snyder Signed-off-by: Benjamin Herrenschmidt commit 41fb5e62604c5ddd00a784ffb7672dd8df5d76f2 Author: Milton Miller Date: Tue May 10 19:30:44 2011 +0000 powerpc: Make IRQ_NOREQUEST last to clear, first to set When creating an irq, don't allow a concurent driver request until we have caled map, which will likley call set_chip_and_handler to change the irq_chip and its operations. Similarly, when tearing down an IRQ, make sure no new uses come along while we change the irq back to the nop chip and then reset the descriptor to freed status. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit bbfff72ee3e76bd4712b87386af00bfe97114bc9 Author: Dipen Dudhat Date: Thu May 19 12:08:23 2011 +0530 powerpc: Integrated Flash controller device tree bindings Signed-off-by: Dipen Dudhat Acked-By: Scott Wood Signed-off-by: Kumar Gala commit 41cd08560bbf8371bbd00e783e992b0dc7e7c83d Author: Prabhakar Kushwaha Date: Thu Apr 28 12:30:00 2011 +0530 powerpc/85xx: Create dts of each core in CAMP mode for P1020RDB Create the dts files for each core and splits the devices between the two cores for P1020RDB. Core0 has core0 to have memory, l2, i2c, spi, gpio, tdm, dma, usb, eth1, eth2, sdhc, crypto, global-util, message, pci0, pci1, msi. Core1 has l2, eth0, crypto. MPIC is shared between two cores but each core will protect its interrupts from other core by using "protected-sources" of mpic. Fix compatible property for global-util node of P1020si.dtsi. Signed-off-by: Prabhakar Kushwaha Signed-off-by: Kumar Gala commit bc99d09abe14b4841454701c47e45f22444a890a Author: Prabhakar Kushwaha Date: Wed Apr 20 09:42:44 2011 +0530 powerpc/85xx: Fix PCIe IDSEL for Px020RDB PCIe device in legacy mode can trigger interrupts using the wires #INTA, #INTB ,#INTC and #INTD. PCI devices are obligated to use #INTx for interrupts under legacy mode. Each PCI slot or device is typically wired to different inputs on the interrupt controller. So, Define interrupt-map and interrupt-map-mask properties for device tree to of map each PCI interrupt signal to the inputs of the interrupt controller. Signed-off-by: Prabhakar Kushwaha Signed-off-by: Kumar Gala commit eb2c5d9965adec2d7cd1946fa39f2dece073dab7 Author: Prabhakar Kushwaha Date: Fri Apr 8 17:57:05 2011 +0530 powerpc/85xx: P2020 DTS: re-organize dts files Creates P2020si.dtsi, containing information for P2020 SoC. Modifies dts files for P2020 based systems to use dtsi file. Signed-off-by: Prabhakar Kushwaha Signed-off-by: Kumar Gala commit b6e4df4dab86e3cd2475748c49aac16dadb8330e Author: Prabhakar Kushwaha Date: Thu Apr 7 14:40:55 2011 +0530 powerpc/85xx: P1020 DTS : re-organize dts files Creates P1020si.dtsi, containing information for the P1020 SoC. Modifies dts files for P1020 based systems to use dtsi file Signed-off-by: Prabhakar Kushwaha Acked-by: Grant Likely Signed-off-by: Kumar Gala commit 9c817f183b8e02e418d3d5396a16879dc11f921d Author: Bhaskar Upadhaya Date: Tue Apr 19 19:28:31 2011 +0530 powerpc: Adding bindings for flexcan controller Signed-off-by: Bhaskar Upadhaya Acked-By: Scott Wood Signed-off-by: Kumar Gala commit b637cf7bf82d0692609821cd84e3a345e56cd96c Author: Scott Wood Date: Tue May 10 13:02:06 2011 -0500 powerpc/fsl: enable verbose bug output This debug option has no overhead other than a slight increase in kernel size, and makes bug reports more useful. While some end users may prefer to save the space, as a default on a kernel config aimed primarily at development on reference boards, it should be enabled. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit 5e8393ab311d2c34f2965be40ebec99c772284ab Author: Scott Wood Date: Tue May 10 13:01:47 2011 -0500 powerpc/e5500: add networking to defconfig Even though support for the p5020's on-chip ethernet is not yet upstream, it is not appropriate to disable all networking support (including loopback, unix domain sockets, external ethernet devices, etc) in the defconfig. The networking settings are taken from mpc85xx_smp_defconfig, minus the drivers for ethernet devices not found on any current e5500 chip. The other changes are the result of running "make savedefconfig". Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit ea94187face757e723aa461a60698ca43c09fbb9 Author: Scott Wood Date: Thu Mar 24 16:43:55 2011 -0500 powerpc/mpic: add the mpic global timer support Add support for MPIC timers as requestable interrupt sources. Based on http://patchwork.ozlabs.org/patch/20941/ by Dave Liu. Signed-off-by: Dave Liu Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit 22d168ce60272ca112e86e58c5ebde82f20f9c83 Author: Scott Wood Date: Thu Mar 24 16:43:54 2011 -0500 powerpc/mpic: parse 4-cell intspec types other than zero Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit c281739f5988af1f86ef06e92485aec25b8c8c4f Author: Scott Wood Date: Thu Mar 24 16:43:52 2011 -0500 powerpc/p1022ds: fix broken mpic timer node There is no hardware interrupt 0xf7. But now we can express the timer interrupt using 4-cell interrupts. This requires converting all of the other interrupt specifiers in the tree as well. Also add the second timer group, and fix the reg property to only describe the timer registers. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit 180076cb11a5f02de7d26f8cb82969b895a26f40 Author: Scott Wood Date: Thu Mar 24 16:43:15 2011 -0500 powerpc: Add fsl mpic timer binding Update the existing example in the general mpic binding to have a separate TCRx region. Currently the example doesn't describe TCRx at all. The one upstream device tree with an mpic timer node (p1022ds) uses one large reg region to describe both, even though there are other unrelated registers in between. That device tree also contains a bogus interrupt specifier, and there's no upstream software that uses this yet, so changing this shouldn't be a problem. Add a full binding for the MPIC timer node, not just an example of 4-cell interrupts in the MPIC binding. Add fsl,available-ranges, similar to msi-available-ranges. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit f46dad270b7f425d7d4ec08676f2513732d11c2b Author: Timur Tabi Date: Mon May 9 14:29:40 2011 -0500 powerpc/86xx: don't pretend that we support 8-bit pixels on the MPC8610 HPCD If the video mode is set to 16-, 24-, or 32-bit pixels, then the pixel data contains actual levels of red, blue, and green. However, if the video mode is set to 8-bit pixels, then the 8-bit value represents an index into color table. This is called "palette mode" on the Freescale DIU video controller. The DIU driver does not currently support palette mode, but the MPC8610 HPCD board file returned a non-zero (although incorrect) pixel format value for 8-bit mode. Signed-off-by: Timur Tabi Signed-off-by: Kumar Gala commit e0be2c21649107282930837f0805c71dfe29e2cc Author: Geert Uytterhoeven Date: Wed May 4 16:29:31 2011 +0200 powerpc/mpc8610_hpcd: Do not use "/" in interrupt names It may trigger a warning in fs/proc/generic.c:__xlate_proc_name() when trying to add an entry for the interrupt handler to sysfs. Signed-off-by: Geert Uytterhoeven Acked-by: Timur Tabi Signed-off-by: Kumar Gala commit 3a6e9bd7f60b29efc205485ceb11a768032c40d4 Author: Scott Wood Date: Mon May 9 16:26:00 2011 -0500 powerpc/e5500: set non-base IVORs Without this, we attempt to use doorbells for IPIs, and end up branching to some bad address. Plus, even for the exceptions we don't implement, it's good to handle it and get a message out. Signed-off-by: Scott Wood Signed-off-by: Kumar Gala commit d36b4c4f3cc6caae6d4a12d9f995513e4c3acdd5 Author: Kumar Gala Date: Wed Apr 6 00:18:48 2011 -0500 powerpc/fsl-booke64: Add support for Debug Level exception handler Signed-off-by: Kumar Gala commit 134c428e5a31f2d5ed3a70ba20dac83895ec8b82 Merge: a0496d4 c560bbc Author: Kumar Gala Date: Thu May 19 00:36:21 2011 -0500 Merge remote branch 'benh/merge' into benh-next commit 1e8c23013ed0d535e531b3b9cc30200e884f3ff0 Author: Milton Miller Date: Tue May 10 19:30:40 2011 +0000 powerpc: Remove virq_to_host The only references to the irq_map[].host field are internal to arch/powerpc/kernel/irq.c Signed-off-by: Milton Miller Acked-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit 3ee62d365b519c0c18c774049efcde84fe51c60c Author: Milton Miller Date: Tue May 10 19:30:36 2011 +0000 powerpc: Add virq_is_host to reduce virq_to_host usage Some irq_host implementations are using virq_to_host to check if they are the irq_host for a virtual irq. To allow us to make space versus time tradeoffs, replace this usage with an assertive virq_is_host that confirms or denies the irq is associated with the given irq_host. Signed-off-by: Milton Miller Acked-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit 9553361499f9f9e8ca8c9dae2e103f651fa48217 Author: Milton Miller Date: Tue May 10 19:30:33 2011 +0000 powerpc/axon_msi: Validate msi irq via chip_data Instead of checking for rogue msi numbers via the irq_map host field set the chip_data to h.host_data (which is the msic struct pointer) at map and compare it in get_irq. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 6b0aea44d6b36b52010d206be69ce37c2f4f1bd1 Author: Milton Miller Date: Tue May 10 19:30:29 2011 +0000 powerpc/spider-pic: Get pic from chip_data instead of irq_map Building on Grant's efforts to remove the irq_map array, this patch moves spider-pics use of virq_to_host() to use irq_data_get_chip_data and sets the irq chip data in the map call, like most other interrupt controllers in powerpc. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit da0519800260a3c791b4fe3317a0c7560027a372 Author: Milton Miller Date: Tue May 10 19:30:26 2011 +0000 powerpc: Remove irq_host_ops->remap hook It was called from irq_create_mapping if that was called for a host and hwirq that was previously mapped, "to update the flags". But the only implementation was in beat_interrupt and all it did was repeat a hypervisor call without error checking that was performed with error checking at the beginning of the map hook. In addition, the comment on the beat remap hook says it will only called once for a given mapping, which would apply to map not remap. All flags should be known by the time the match hook is called, before we call the map hook. Removing this mostly unused hook will simpify the requirements of irq_domain concept. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 23f73a5fb0dee5ab681bfeb8897bcfc57153ba9a Author: Milton Miller Date: Tue May 10 19:30:22 2011 +0000 powerpc/psurge: Create a irq_host for secondary cpus Create a dummy irq_host using the generic dummy irq chip for the secondary cpus to use. Create a direct irq mapping for the ipi and register the ipi action handler against it. If for some unlikely reason part of this fails then don't detect the secondary cpus. This removes another instance of NO_IRQ_IGNORE, records the ipi stats for the secondary cpus, and runs the ipi on the interrupt stack. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 67347eba156d64150be73c9f5797342a66b123d9 Author: Milton Miller Date: Tue May 10 19:30:18 2011 +0000 powerpc/mpc62xx_pic: Fix get_irq handling of NO_IRQ If none of irq category bits were set mpc52xx_get_irq() would pass NO_IRQ_IGNORE (-1) to irq_linear_revmap, which does an unsigned compare and declares the interrupt above the linear map range. It then punts to irq_find_mapping, which performs a linear search of all irqs, which will likely miss and only then return NO_IRQ. If no status bit is set, then we should return NO_IRQ directly. The interrupt should not be suppressed from spurious counting, in fact that is the definition of supurious. Signed-off-by: Milton Miller Acked-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit c42385cd4533b5ba9b9dd0034285cfcfd7982708 Author: Milton Miller Date: Tue May 10 19:30:15 2011 +0000 powerpc/mpc5121_ads_cpld: Remove use of NO_IRQ_IGNORE As NO_IRQ_IGNORE is only used between the static function cpld_pic_get_irq and its caller cpld_pic_cascade, and cpld_pic_cascade only uses it to suppress calling handle_generic_irq, we can change these uses to NO_IRQ and remove the extra tests and pathlength in cpld_pic_cascade. Signed-off-by: Milton Miller Acked-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit d1921bcdeee66c3d1704ef753dc74464856e4b7f Author: Milton Miller Date: Tue May 10 19:30:11 2011 +0000 powerpc/fsl_msi: Use chip_data not handler_data handler_data should be reserved for flow handlers on the dependent irq, not consumed by the parent irq code that is part of the irq_chip code. The msi_data pointer was already set in msidesc->irqhost->hostdata and being copied to irq_data->chipdata in the msidesc->irqhost->map() method called via create_irq_mapping, so we can obtain the pointer from there and free the instance it in teardown_msi_irqs. Also remove the unnecessary cast of irq_get_handler_data in the cascade handler, which is the demux flow handler of the parent msi interrupt. (This is the expected usage for handler_data). Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 6c4c82e20a1b476589c1e2b0b7c2adc783c93006 Author: Milton Miller Date: Tue May 10 19:30:07 2011 +0000 powerpc/fsl_msi: Don't abuse platform_data for driver_data The msi platform device driver was abusing dev.platform_data for its platform_driver_data. Use the correct pointer for storage. Platform_data is supposed to be for platforms to communicate to drivers parameters that are not otherwise discoverable. Its lifetime matches the platform_device not the platform device driver. It is generally not needed for drivers that only support systems with device trees. Signed-off-by: Milton Miller Acked-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit 7ee342bdc3d7e2cba4be6d1eece56efec9d3809f Author: Milton Miller Date: Tue May 10 19:30:04 2011 +0000 powerpc: Remove i8259 irq_host_ops->unmap It was never called because the host is always IRQ_HOST_MAP_LEGACY. And what it purported to do was mask the interrupt (which will already have happend if we shutdown the interrupt), then synchronise_irq and clear the chip pointer, both of which will have been be done by the caller were we to call unmap on a legacy irq. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit df74e70ac25fc4bf4036a2f9690b4e2e4520e65d Author: Milton Miller Date: Tue May 10 19:30:00 2011 +0000 powerpc: Remove trival irq_host_ops.unmap These all just clear chip or chipdata fields, which will be done by the generic code when we call irq_free_descs. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 2d441681a4df7822e6ef6fcc0320bb14d2a06dbb Author: Milton Miller Date: Tue May 10 19:29:57 2011 +0000 powerpc: Return early if irq_host lookup type is wrong If for some reason the code incrorectly calls the wrong function to manage the revmap, not only should we warn, we should take action. However, in the paths we expect to be taken every delivered interrupt change to WARN_ON_ONCE. Use the if (WARN_ON(x)) format to get the unlikely for free. Signed-off-by: Milton Miller Reviewed-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit 3af259d1555a93b3b6f6545af13e0eb99b0d5d32 Author: Milton Miller Date: Tue May 10 19:29:53 2011 +0000 powerpc: Radix trees are available before init_IRQ Since the generic irq code uses a radix tree for sparse interrupts, the initcall ordering has been changed to initialize radix trees before irqs. We no longer need to defer creating revmap radix trees to the arch_initcall irq_late_init. Also, the kmem caches are allocated so we don't need to use zalloc_maybe_bootmem. Signed-off-by: Milton Miller Reviewed-by: Grant Likely Signed-off-by: Benjamin Herrenschmidt commit e085255ebce87c0b85d4752638d8a7d4f35f5b64 Author: Milton Miller Date: Tue May 10 19:29:49 2011 +0000 powerpc/xics: Cleanup xics_host_map and ipi Since we already have a special case in map to set the ipi handler, use the desired flow. If we don't find an ics to handle the interrupt complain instead of returning 0 without having set a chip or handler. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 714542721b4a53a3ebbdd5f0619ac0f66e7df610 Author: Milton Miller Date: Tue May 10 19:29:46 2011 +0000 powerpc: Use bytes instead of bitops in smp ipi multiplexing Since there are only 4 messages, we can replace the atomic bit set (which uses atomic load reserve and store conditional sequence) with a byte stores to seperate bytes. We still have to perform a load reserve and store conditional sequence to avoid loosing messages on reception but we can do that with a single call to xchg. The do {} while and __BIG_ENDIAN specific mask testing was chosen by looking at the generated asm code. On gcc-4.4, the bit masking becomes a simple bit mask and test of the register returned from xchg without storing and loading the value to the stack like attempts with a union of bytes and an int (or worse, loading single bit constants from the constant pool into non-voliatle registers that had to be preseved on the stack). The do {} while avoids an unconditional branch to the end of the loop to test the entry / repeat condition of a while loop and instead optimises for the expected single iteration of the loop. We have a full mb() at the beginning to cover ordering between send, ipi, and receive so we can use xchg_local and forgo the further acquire and release barriers of xchg. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 1ece355b6825b7c61d1dc39a5c6cf49dc746e193 Author: Milton Miller Date: Tue May 10 19:29:42 2011 +0000 powerpc: Add kconfig for muxed smp ipi support Compile the new smp ipi mux and demux code only if a platform will make use of it. The new config is selected as required. The new cause_ipi smp op is only available conditionally to point out configs where the select is required; this makes setting the op an immediate fail instead of a deferred unresolved symbol at link. This also creates a new config for power surge powermac upgrade support that can be disabled in expert mode but is default on. I also removed the depends / default y on CONFIG_XICS since it is selected by PSERIES. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 23d72bfd8f9f24aa9efafed3586a99f5669c23d7 Author: Milton Miller Date: Tue May 10 19:29:39 2011 +0000 powerpc: Consolidate ipi message mux and demux Consolidate the mux and demux of ipi messages into smp.c and call a new smp_ops callback to actually trigger the ipi. The powerpc architecture code is optimised for having 4 distinct ipi triggers, which are mapped to 4 distinct messages (ipi many, ipi single, scheduler ipi, and enter debugger). However, several interrupt controllers only provide a single software triggered interrupt that can be delivered to each cpu. To resolve this limitation, each smp_ops implementation created a per-cpu variable that is manipulated with atomic bitops. Since these lines will be contended they are optimialy marked as shared_aligned and take a full cache line for each cpu. Distro kernels may have 2 or 3 of these in their config, each taking per-cpu space even though at most one will be in use. This consolidation removes smp_message_recv and replaces the single call actions cases with direct calls from the common message recognition loop. The complicated debugger ipi case with its muxed crash handling code is moved to debug_ipi_action which is now called from the demux code (instead of the multi-message action calling smp_message_recv). I put a call to reschedule_action to increase the likelyhood of correctly merging the anticipated scheduler_ipi() hook coming from the scheduler tree; that single required call can be inlined later. The actual message decode is a copy of the old pseries xics code with its memory barriers and cache line spacing, augmented with a per-cpu unsigned long based on the book-e doorbell code. The optional data is set via a callback from the implementation and is passed to the new cause-ipi hook along with the logical cpu number. While currently only the doorbell implemntation uses this data it should be almost zero cost to retrieve and pass it -- it adds a single register load for the argument from the same cache line to which we just completed a store and the register is dead on return from the call. I extended the data element from unsigned int to unsigned long in case some other code wanted to associate a pointer. The doorbell check_self is replaced by a call to smp_muxed_ipi_resend, conditioned on the CPU_DBELL feature. The ifdef guard could be relaxed to CONFIG_SMP but I left it with BOOKE for now. Also, the doorbell interrupt vector for book-e was not calling irq_enter and irq_exit, which throws off cpu accounting and causes code to not realize it is running in interrupt context. Add the missing calls. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 17f9c8a73bac2c7dfe28a520516ea6b8bbbe977e Author: Milton Miller Date: Tue May 10 19:29:35 2011 +0000 powerpc: Move smp_ops_t from machdep.h to smp.h I can't see any reason these functions are needed by machdep.h and they are all hidden by CONFIG_SMP with no UP alternative. Also move the declarations for the fallback timebase ops, which are used to fill in the smp ops. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit d4fc8fe1f66f46493d3c56436685eef3b5b32b07 Author: Milton Miller Date: Tue May 10 19:29:28 2011 +0000 powerpc: Remove stubbed beat smp support I have no idea if the beat hypervisor supports multiple cpus in a partition, but the code has not been touched since these stubs were added in February of 2007 except to move them in April of 2008. These are stubs: start_cpu always returns fail (which is dropped), the message passing and reciving are empty functions, and the top of file comment says "Incomplete". Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit a56555e573d3740d588d912aada506d57759cf5d Author: Milton Miller Date: Tue May 10 19:29:24 2011 +0000 powerpc: Remove alloc_maybe_bootmem for zalloc version Replace all remaining callers of alloc_maybe_bootmem with zalloc_maybe_bootmem. The callsite in pci_dn is followed with a memset to clear the memory, and not zeroing at the other callsites in the celleb fake pci code could lead to following uninitialized memory as pointers or even freeing said pointers on error paths. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 7ca8aa0924712de81485c70e00bbea8c092a08c1 Author: Milton Miller Date: Tue May 10 19:29:20 2011 +0000 powerpc: Remove powermac/pic.h Its unused, and of the three declarations, one is duplicated in pmac.h, the second is static and the third is renamed and static. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 3caba98fddd551ca7dcdb1eb701b36ed70b04fde Author: Milton Miller Date: Tue May 10 19:29:17 2011 +0000 powerpc/mpic: Simplify ipi cpu mask handling Now that MSG_ALL and MSG_ALL_BUT_SELF have been eliminated, smp_mpic_mesage_pass no longer needs to lookup the cpumask just to have mpic_send_ipi extract part of it and recode it in a NR_CPUS loop by mpic_physmask. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 217658f46c2dbfe260f8f5976f2a201911a2f4c6 Author: Ben Gardiner Date: Wed May 18 23:52:38 2011 -0400 ALSA: sound, core, pcm_lib: fix xrun_log The xrun_log function was augmented with the in_interrupt parameter whereas the empty macro definition used when xrun logging is disabled was not. Add a third parameter to the empty macro definition so as to not cause compiler errors when xrun logging (CONFIG_SND_PCM_XRUN_DEBUG) is disabled. Signed-off-by: Ben Gardiner Signed-off-by: Takashi Iwai commit 4427b1b4ec111622071ec872c94594e05635c6e9 Author: Kim Phillips Date: Sat May 14 22:08:17 2011 -0500 crypto: caam - add support for sha512 variants of existing AEAD algorithms In doing so, sha512 sized keys would not fit with the current descriptor inlining mechanism, so we now calculate whether keys should be referenced instead by pointers in the shared descriptor. also, use symbols for descriptor text lengths, and, ahem, unmap and free key i/o memory in cra_exit. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 66664487b137d71fd43667ac2a6a90970a040eb7 Author: Kim Phillips Date: Sat May 14 22:08:11 2011 -0500 crypto: caam - remove unused authkeylen from caam_ctx Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit ddbb80884a37601026ac3e5eaf176c4296231862 Author: Kim Phillips Date: Sat May 14 22:08:02 2011 -0500 crypto: caam - fix decryption shared vs. non-shared key setting Key sharing is enabled by default in the shared descriptor. Using CBC decrypt, AES has to alter the key in order to decrypt. During high traffic decryption rates, i.e, when sharing starts to take place, we need to use a different OPERATION option to tell AES that the key was already altered by the PRIOR descriptor - we need the following kind of logic: if ( shared ) operation where AES uses decryption key (DK=1) else operation where AES uses encryption key (DK=0) this patch implements this logic using a conditional and a non-conditional local jump within the decryption job descriptor. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 2930d49768e5276da4fbed9d9cc1bd40ed25818e Author: Kim Phillips Date: Sat May 14 22:07:55 2011 -0500 crypto: caam - platform_bus_type migration this fixes a build error since cryptodev-2.6 got rebased to include commit d714d1979d7b4df7e2c127407f4014ce71f73cd0 "dt: eliminate of_platform_driver shim code". Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit f1072939b6dd01d038d47db0bdc01b33e5f90f28 Author: Milton Miller Date: Tue May 10 19:29:10 2011 +0000 powerpc: Remove checks for MSG_ALL and MSG_ALL_BUT_SELF Now that smp_ops->smp_message_pass is always called with an (online) cpu number for the target remove the checks for MSG_ALL and MSG_ALL_BUT_SELF. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit e04763713286b1e00e1c2a33fe2741caf9470f2b Author: Milton Miller Date: Tue May 10 19:29:06 2011 +0000 powerpc: Remove call sites of MSG_ALL_BUT_SELF The only user of MSG_ALL_BUT_SELF in the whole kernel tree is powerpc, and it only uses it to start the debugger. Both debuggers always call smp_send_debugger_break with MSG_ALL_BUT_SELF, and only mpic can do anything more optimal than a loop over all online cpus, but all message passing implementations have to code for this special delivery target. Convert smp_send_debugger_break to take void and loop calling the smp_ops message_pass function for each of the other cpus in the online cpumask. Use raw_smp_processor_id() because we are either entering the debugger or trying to start kdump and the additional warning it not useful were it to trigger. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 2a116f3dd07cbb55b440d3841fc24a0b3fd99ccd Author: Milton Miller Date: Tue May 10 19:29:02 2011 +0000 powerpc/mpic: Break cpumask abstraction earlier mpic_set_affinity is allocating and freeing a cpumask var even though it was breaking the cpumask abstraction when passing the mask to mpic_physmask. It also didn't have any check for allocatin failure. Break the cpumask abstraction earlier and use simple bitwise and of the bits from the mask with the bits of cpu_online_mask. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit ebc04215108c124cb4f519d687a8e27a0d16a4aa Author: Milton Miller Date: Tue May 10 19:28:59 2011 +0000 powerpc/mpic: Limit NR_CPUS loop to 32 bit mpic_physmask was looping NR_CPUS times over a mask that was passed as a u32. Since mpic is architecturaly limited to 32 physical cpus, clamp the logical cpus to 32 when compiling (we could also clamp at runtime to nr_cpu_ids). Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit aa79bc2167104581cc1d77762394f2c01d3bf3f3 Author: Milton Miller Date: Tue May 10 19:28:55 2011 +0000 powerpc: Call no-longer static setup_nr_cpu_ids instead of replicating it c1854e00727f50f7ac99e98d26ece04c087ef785 (powerpc: Set nr_cpu_ids early and use it to free PACAs) copied the formerly static setup_nr_cpu_ids from init/main.c but 34db18a054c600b6f81787165669dc572fe4de25 (smp: move smp setup functions to kernel/smp.c) moved it to kernel/smp.c with a declaration in include/linux/smp.h, so we can call it instead of replicating it. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 2cd947f1757fb937806535be13caf2ddd813d60b Author: Milton Miller Date: Tue May 10 19:28:52 2011 +0000 powerpc: Use nr_cpu_ids in initial paca allocation Now that we never set a cpu above nr_cpu_ids possible we can limit our initial paca allocation to nr_cpu_ids. We can then clamp the number of cpus in platforms/iseries/setup.c. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 8657ae28ddd34db0f52b0730a6a25992c0173264 Author: Milton Miller Date: Tue May 10 19:28:48 2011 +0000 powerpc: Respect nr_cpu_ids when calling set_cpu_possible and set_cpu_present We should not set cpus above nr_cpu_ids to possible. While we will trigger a warning with CONFIG_CPUMASK_DEBUG, even then the mask initializers will set the bits beyond what the iterators check and cause nr_cpu_ids to increase. Respecting nr_cpu_ids during setup will allow us to use it in our initial paca allocation. It can be reduced from NR_CPUS by the existing early param nr_cpus=, which was added in 2b633e3fac5efada088b57d31e65401f22bcc18f (smp: Use nr_cpus= to set nr_cpu_ids early). We already call parse_early_parms between finding the command line and allocating the pacas. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 7c82733744a74f45e86125f369e876b896765038 Author: Milton Miller Date: Tue May 10 19:28:44 2011 +0000 powerpc/iseries: Cleanup and fix secondary startup 9cb82f2f4692293a27c578c3038518ce4477de72 (Make iSeries spin on __secondary_hold_spinloop, like pSeries) added a load of current_set but this load was repeated later and we don't even have the paca yet. It also checked __secondary_hold_spinloop with a 32 bit compare instead of a 64 bit compare. b6f6b98a4e91fcf31db7de54c3aa86252fc6fb5f (Don't spin on sync instruction at boot time) missed the copy of the startup code in iseries. 1426d5a3bd07589534286375998c0c8c6fdc5260 (Dynamically allocate pacas) doesn't allow for pacas to be less than lppacas and recalculated the paca location from the cpu id in r0 every time through the secondary loop. Various revisions over time made the comments on conditional branches confusing with respect to being a hold loop or forward progress Mostly in-order description of the changes: Replicate the few lines of code saved by the ugly scoped ifdef CONFIG_SMP in the secondary loop between yielding on UP and marking time with the hypervisor on SMP. Always compile the iseries_secondary_yield loop and use it if the cpu id is above nr_cpu_ids. Change all forward progress paths to be forward branches to the next numerical label. Assign a label to all loops. Move all sync instructions from the loops to the forward progress path. Wait to load current_set until paca is set to go. Move the iseries_secondary_smp_loop label to cover the whole spin loop. Add HMT_MEDIUM when we make forward progress. Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit bd9e5eefecb3d69018bb95796298019d309cbec8 Author: Milton Miller Date: Tue May 10 19:28:41 2011 +0000 powerpc/kdump64: Don't reference freed memory as pacas Starting with 1426d5a3bd07589534286375998c0c8c6fdc5260 (powerpc: Dynamically allocate pacas) the space for pacas beyond cpu_possible is freed, but we failed to update the loop in crash.c. Since c1854e00727f50f7ac99e98d26ece04c087ef785 (powerpc: Set nr_cpu_ids early and use it to free PACAs) the number of pacas allocated is always nr_cpu_ids. Signed-off-by: Milton Miller Cc: # .34.x Signed-off-by: Benjamin Herrenschmidt commit 768d18ad6d5e600d911f9499ca287d6986d8d81b Author: Milton Miller Date: Tue May 10 19:28:37 2011 +0000 powerpc: Don't search for paca in freed memory Starting with 1426d5a3bd07589534286375998c0c8c6fdc5260 (powerpc: Dynamically allocate pacas) we free the memory for pacas beyond cpu_possible, but we failed to update the loop the secondary cpus use to find their paca. If the system has running cpu threads for which the kernel did not allocate a paca for they will search the memory that was freed. For instance this could happen when the device tree for a kdump kernel was not updated after a cpu hotplug, or the kernel is running with more cpus than the kernel was configured. Since c1854e00727f50f7ac99e98d26ece04c087ef785 (powerpc: Set nr_cpu_ids early and use it to free PACAs) we set nr_cpu_ids before telling the cpus to advance, so use that to limit the search. We can't reference nr_cpu_ids without CONFIG_SMP because it is defined as 1 instead of a memory location, but any extra threads should be sent to kexec_wait in that case anyways, so make that explicit and remove the search loop for UP. Note to stable: The fix also requires c1854e00727f50f7ac99e98d26ece04c087ef785 (powerpc: Set nr_cpu_ids early and use it to free PACAs) to function. Also 9d07bc841c9779b4d7902e417f4e509996ce805d (Properly handshake CPUs going out of boot spin loop) affects the second chunk, specifically the branch target was 3b before and is 4b after that patch, and there was a blank line before the #ifdef CONFIG_SMP that was removed Cc: # .34.x: c1854e0072 powerpc: Set nr_cpu_ids early Cc: # .34.x Signed-off-by: Milton Miller Signed-off-by: Benjamin Herrenschmidt commit 3d2cea732d68aa270c360f55d8669820ebce188a Author: Milton Miller Date: Tue May 10 19:28:33 2011 +0000 powerpc/kexec: Fix memory corruption from unallocated slaves Commit 1fc711f7ffb01089efc58042cfdbac8573d1b59a (powerpc/kexec: Fix race in kexec shutdown) moved the write to signal the cpu had exited the kernel from before the transition to real mode in kexec_smp_wait to kexec_wait. Unfornately it missed that kexec_wait is used both by cpus leaving the kernel and by secondary slave cpus that were not allocated a paca for what ever reason -- they could be beyond nr_cpus or not described in the current device tree for whatever reason (for example, kexec-load was not refreshed after a cpu hotplug operation). Cpus coming through that path they will write to paca[NR_CPUS] which is beyond the space allocated for the paca data and overwrite memory not allocated to pacas but very likely still real mode accessable). Move the write back to kexec_smp_wait, which is used only by cpus that found their paca, but after the transition to real mode. Signed-off-by: Milton Miller Cc: # (1fc711f was backported to 2.6.32) Signed-off-by: Benjamin Herrenschmidt commit f0e939ae373836400b38e090d78fba6a183976f0 Author: Anton Blanchard Date: Tue May 10 13:34:03 2011 +0000 powerpc/pseries: Print corrupt r3 in FWNMI code I have a report of an FWNMI with an r3 value that we think is corrupt, but since we don't print r3 we have no idea what was wrong with it. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit eb0dd411bd90dd5ad3f1936930d3e83d9ef95561 Author: Nishanth Aravamudan Date: Mon May 9 12:58:03 2011 +0000 pseries/iommu: Restore iommu table pointer when restoring iommu ops When we swtich to direct dma ops, we set the dma data union to have the dma offset. When we switch back to iommu table ops because of a later dma_set_mask, we need to restore the iommu table pointer. Without this change, crashes have been observed on kexec where (for reasons still being investigated) we fall back to a 32-bit dma mask on a particular device and then panic because the table pointer is not valid. The easiset way to find this value is to call pci_dma_dev_setup_pSeriesLP which will search up the pci tree until it finds the node with the table. Signed-off-by: Nishanth Aravamudan Cc: Milton Miller Cc: Paul Mackerras Cc: Anton Blanchard Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Benjamin Herrenschmidt commit 40f1ce7fb7e8b5d4d0821c0f3dc866cb1d47d99c Author: Anton Blanchard Date: Sun May 8 21:43:47 2011 +0000 powerpc: Remove ioremap_flags We have a confusing number of ioremap functions. Make things just a bit simpler by merging ioremap_flags and ioremap_prot. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit be135f40899cb3334faa7d2e27025055da311ec4 Author: Anton Blanchard Date: Sun May 8 21:41:59 2011 +0000 powerpc: Add ioremap_wc Add ioremap_wc so drivers can request write combining on kernel mappings. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit f5f0307f42d39a51a925ca4841f76a2f2ea330ff Author: Anton Blanchard Date: Sun May 8 21:36:44 2011 +0000 powerpc: Improve scheduling of system call entry instructions After looking at our system call path, Mary Brown suggested that we should put all mfspr SRR* instructions before any mtspr SRR*. To test this I used a very simple null syscall (actually getppid) testcase at http://ozlabs.org/~anton/junkcode/null_syscall.c I tested with the following changes against the pseries_defconfig: CONFIG_VIRT_CPU_ACCOUNTING=n CONFIG_AUDIT=n to remove the overhead of virtual CPU accounting and syscall auditing. POWER6: baseline: mean = 757.2 cycles sd = 2.108 modified: mean = 759.1 cycles sd = 2.020 POWER7: baseline: mean = 411.4 cycles sd = 0.138 modified: mean = 404.1 cycles sd = 0.109 So we have 1.77% improvement on POWER7 which looks significant. The POWER6 suggest a 0.25% slowdown, but the results are within 1 standard deviation and may be in the noise. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit ba00ce1d6e08ad06f19f2ac53fd5c60bbe3fbeeb Author: Anton Blanchard Date: Sun May 8 21:20:19 2011 +0000 powerpc: Remove static branch hint in giveup_altivec A static branch hint will override dynamic branch prediction on recent POWER CPUs. Since we are about to use more altivec in the kernel remove the static hint in giveup_altivec that assumes a userspace task is using altivec. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit d988f0e3f84cb8a4f85ccdbca6f6fefcc37bedcb Author: Anton Blanchard Date: Sun May 8 21:18:38 2011 +0000 powerpc: Simplify 4k/64k copy_page logic To make it easier to add optimised versions of copy_page, remove the 4kB loop for 64kB pages and just do all the work in copy_page. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 37e0c21e9b5b6d6fd38a444762076c84c6170598 Author: Anton Blanchard Date: Sun May 8 13:19:30 2011 +0000 powerpc/pseries: Enable iSCSI support for a number of cards Enable iSCSI support for a number of cards. We had the base networking devices enabled but forgot to enable iSCSI. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 32218bdd31fc9367c0babd6f7d309c6856a5c7da Author: Anton Blanchard Date: Sun May 8 13:18:27 2011 +0000 powerpc/pseries: Enable Emulex and Qlogic 10Gbit cards Enable the Qlogic and Emulex 10Gbit adapters. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit 2a2c29c1a581319f4485af55e8d628d89e8f2583 Author: Stratos Psomadakis Date: Sat May 7 04:11:31 2011 +0000 powerpc/mm: Fix compiler warning in pgtable-ppc64.h [-Wunused-but-set-variable] The variable 'old' is set but not used in the wrprotect functions in arch/powerpc/include/asm/pgtable-ppc64.h, which can trigger a compiler warning. Remove the variable, since it's not used anyway. Signed-off-by: Stratos Psomadakis Signed-off-by: Benjamin Herrenschmidt commit af442a1baa6d00117cc7e7377ce7e6a545268684 Author: Nishanth Aravamudan Date: Wed May 4 12:54:16 2011 +0000 powerpc: Ensure dtl buffers do not cross 4k boundary Future releases of fimrware will enforce a requirement that DTL buffers do not cross a 4k boundary. Commit 127493d5dc73589cbe00ea5ec8357cc2a4c0d82a satisfies this requirement for CONFIG_VIRT_CPU_ACCOUNTING=y kernels, but if !CONFIG_VIRT_CPU_ACCOUNTING && CONFIG_DTL=y, the current code will fail at dtl registration time. Fix this by making the kmem cache from 127493d5dc73589cbe00ea5ec8357cc2a4c0d82a visible outside of setup.c and using the same cache in both dtl.c and setup.c. This requires a bit of reorganization to ensure ordering of the kmem cache and buffer allocations. Note: Since firmware now limits the size of the buffer, I made dtl_buf_entries read-only in debugfs. Tested with upcoming firmware with the 4 combinations of CONFIG_VIRT_CPU_ACCOUNTING and CONFIG_DTL. Signed-off-by: Nishanth Aravamudan Cc: Paul Mackerras Cc: Anton Blanchard Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Benjamin Herrenschmidt commit 767303349e052ae0cb9e6495a70870da3459eeb6 Author: Nishanth Aravamudan Date: Fri May 6 13:27:30 2011 +0000 powerpc: Fix kexec with dynamic dma windows When we kexec we look for a particular property added by the first kernel, "linux,direct64-ddr-window-info", per-device where we already have set up dynamic dma windows. The current code, though, wasn't initializing the size of this property and thus when we kexec'd, we would find the property but read uninitialized memory resulting in garbage ddw values for the kexec'd kernel and panics. Fix this by setting the size at enable_ddw() time and ensuring that the size of the found property is valid at dupe_ddw_if_kexec() time. Signed-off-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit 31355403dba5aa7a700c69f91cd6266092932701 Author: Michal Marek Date: Thu May 5 05:22:55 2011 +0000 powerpc: Use the deterministic mode of ar Signed-off-by: Michal Marek Signed-off-by: Benjamin Herrenschmidt commit 93395febdb51ed812ac1003852f537177a172aad Author: Justin Mattock Date: Tue Apr 5 06:58:22 2011 +0000 powerpc: Remove unused config in the Makefile The patch below removes an unused config variable found by using a kernel cleanup script. Note: I did try to cross compile these but hit erros while doing so.. (gcc is not setup to cross compile) and am unsure if anymore needs to be done. Please have a look if/when anybody has free time. Signed-off-by: Justin P. Mattock Signed-off-by: Benjamin Herrenschmidt commit c4f56af0f64ea894363b428b6590f5073047b455 Author: Michal Marek Date: Tue Apr 5 04:58:50 2011 +0000 powerpc: Call gzip with -n The timestamps recorded in the .gz files add no value. Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Michal Marek Signed-off-by: Benjamin Herrenschmidt commit c560bbceaf6b06e52f1ef20131b76a3fdc0a2c19 Author: kerstin jonsson Date: Tue May 17 23:57:11 2011 +0000 powerpc/4xx: Fix regression in SMP on 476 commit c56e58537d504706954a06570b4034c04e5b7500 breaks SMP support in PPC_47x chip. secondary_ti must be set to current thread info before callin kick_cpu or else start_secondary_47x will jump into void when trying to return to c-code. In the current setup secondary_ti is initialized before the CPU idle task is started and only the boot core will start. I am not sure this is the correct solution, but it makes SMP possible in my chip. Note! The HOTPLUG support probably need some fixing to, There is no trampoline code available in head_44x.S - start_secondary_resume? Signed-off-by: Kerstin Jonsson Signed-off-by: Benjamin Herrenschmidt commit 35d215fbe4f4d3569f2adabd8d53510a26ecb9c5 Author: Ben Hutchings Date: Sun Apr 24 15:04:31 2011 +0000 powerpc/kexec: Fix build failure on 32-bit SMP Commit b987812b3fcaf70fdf0037589e5d2f5f2453e6ce left crash_kexec_wait_realmode() undefined for UP. Commit 7c7a81b53e581d727d069cc45df5510516faac31 defined it for UP but left it undefined for 32-bit SMP. Seems like people are getting confused by nested #ifdef's, so move the definitions of crash_kexec_wait_realmode() after the #ifdef CONFIG_SMP section. Compile-tested with 32-bit UP, 32-bit SMP and 64-bit SMP configurations. Signed-off-by: Ben Hutchings Tested-by: Paul Gortmaker Signed-off-by: Benjamin Herrenschmidt commit 69e3cea8d5fd52677f2b6219542d0f8b53fe4c80 Author: Benjamin Herrenschmidt Date: Thu May 19 13:07:12 2011 +1000 powerpc/smp: Make start_secondary_resume available to all CPU variants This should fix SMP & Hotplug builds on FSL BookE and 476 Signed-off-by: Benjamin Herrenschmidt commit 95950c2ecb31314ef827428e43ff771cf3b037e5 Author: Steven Rostedt Date: Fri May 6 00:08:51 2011 -0400 ftrace: Add self-tests for multiple function trace users Add some basic sanity tests for multiple users of the function tracer at startup. Signed-off-by: Steven Rostedt commit 936e074b286ae779f134312178dbab139ee7ea52 Author: Steven Rostedt Date: Thu May 5 22:54:01 2011 -0400 ftrace: Modify ftrace_set_filter/notrace to take ops Since users of the function tracer can now pick and choose which functions they want to trace agnostically from other users of the function tracer, we need to pass the ops struct to the ftrace_set_filter() functions. The functions ftrace_set_global_filter() and ftrace_set_global_notrace() is added to keep the old filter functions which are used to modify the generic function tracers. Signed-off-by: Steven Rostedt commit a48eff128865aa20520fa6e0e0c5fbd2ac50d712 Author: David S. Miller Date: Wed May 18 18:42:43 2011 -0400 ipv4: Pass explicit destination address to rt_bind_peer(). Signed-off-by: David S. Miller commit ed2361e66eec60645f8e4715fe39a42235ef43ae Author: David S. Miller Date: Wed May 18 18:38:54 2011 -0400 ipv4: Pass explicit destination address to rt_get_peer(). This will next trickle down to rt_bind_peer(). Signed-off-by: David S. Miller commit 6bd023f3dddfc7c5f660089598c10e1f4167083b Author: David S. Miller Date: Wed May 18 18:32:03 2011 -0400 ipv4: Make caller provide flowi4 key to inet_csk_route_req(). This way the caller can get at the fully resolved fl4->{daddr,saddr} etc. Signed-off-by: David S. Miller commit 6882f933ccee5c3a86443ffc7621ce888b93ab6b Author: David S. Miller Date: Wed May 18 18:23:21 2011 -0400 ipv4: Kill RT_CACHE_DEBUG It's way past it's usefulness. And this gets rid of a bunch of stray ->rt_{dst,src} references. Even the comment documenting the macro was inaccurate (stated default was 1 when it's 0). If reintroduced, it should be done properly, with dynamic debug facilities. Signed-off-by: David S. Miller commit 9e3c256d7d56a12a3242222945ce8e6347f93fa0 Author: Jesse Barnes Date: Wed May 18 13:51:43 2011 -0700 drm/i915: initialize gen6 rps work queue on Sandy Bridge and Ivy Bridge It's not used on Ironlake, but is used on later generations, so make sure it exists before we try to use it in the interrupt handlers. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 8ba69ce4b3567de881514c61ea8b04b14d8e68ae Author: J. Ali Harlow Date: Wed May 18 19:18:56 2011 +0100 comedi vmk80xx: support comedi auto-configuration Add support for automatically associating a vmk8055 device with a comedi device (previously the user had to use comedi_num_legacy_minors to reserve device slots and then associate them with vmk8055 devices using comedi_config). Tested on multiple K8055s, but not on K8061s. Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit c647ed568af52cc75ece267ff02937d9263d1d27 Author: J. Ali Harlow Date: Wed May 18 19:18:55 2011 +0100 comedi vmk80xx: support bits instruction Calling comedi_dio_bifield2() returns EBUSY permanently. Implementing the insn_bits call fixes the problem and is good in its own right since one can then read and write to all the digitial lines at the same time. Tested on a K8055, but not on a K8061. Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit 510b9be374a4b589e7f6182d306b3c8ec9575e05 Author: J. Ali Harlow Date: Wed May 18 19:18:54 2011 +0100 comedi vmk80xx: extend rudimentary_check to check both directions rudimentary_check() can currently check whether the input or output direction is currently available (no pending transaction), but not both at the same time. We need this facility for do_bits(). Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit 9dc99895ef2bd96bad9674e4a0a6228c0690c912 Author: J. Ali Harlow Date: Wed May 18 19:18:53 2011 +0100 comedi vmk80xx: simplify rinsn output calculation vmk80xx_di_rinsn() and vmk80xx_do_rinsn() extract the required channel data by inconsistent and overly-complex algorithms. Simplify them both. Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit 85a2f34f4ecd48ce27f8ecc2d58ab66c05d55a9a Author: J. Ali Harlow Date: Wed May 18 19:18:52 2011 +0100 comedi vmk80xx: Digitial I/O should have a maxdata of 1 Digitial input and output sub-devices were reporting a maxdata of 0x1F and 0xFF respectively. They should both be 1. Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit 587e500c40aef11163bf09d367b5c3b3aba820cc Author: J. Ali Harlow Date: Wed May 18 19:18:51 2011 +0100 comedi vmk80xx: make rudimentary_check a static function rudimentary_check is a macro with side-effects (it returns on error) which is contary to CodingStyle. Replace it with a static function. Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit 12f4d0a8770ab26639091d0b2509b19681daad69 Author: Mammatha Edhala Date: Wed May 18 03:26:22 2011 +0000 be2net: Enable SR-IOV for Lancer Enable SR-IOV for Lancer Signed-off-by: Mammatha Edhala Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 311fda8e8b495e026fa1d24d9d5a211fc8be2aef Author: Julia Lawall Date: Wed May 18 21:20:43 2011 +0200 drivers/staging/cptm1217/clearpad_tm1217.c: Correct call to input_free_device This code is in a loop that currently is only executed once. Because of this property, the first block of code is currently actually correct. Nevertheless, the comments associated with the code suggest that the loop is planned to take more than one iteration in the future, and thus this patch is made with that case in mind. In the first block of code, there is currently an immediate abort from the function. It is changed to jump to the error handling code at fail, to be able to unregister and free the resources allocated on previous iterations. In the second block of code, the input_dev for the current iteration has been allocated, but has not been registered. It has also not been stored in ts->cp_input_info[i].input. Thus on jumping to fail, it will not be freed. In this case, we want to free, but not unregister, so the free for this most recently allocated resource is put before the jump. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @r exists@ local idexpression struct input_dev * x; expression ra,rr; position p1,p2; @@ x = input_allocate_device@p1(...) ... when != x = rr when != input_free_device(x,...) when != if (...) { ... input_free_device(x,...) ...} if(...) { ... when != x = ra when forall when != input_free_device(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("input_allocate_device",p1) cocci.print_secs("input_free_device",p2) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 8041f92a204c06aa5bef5f42a5108e3886c0b215 Author: Tomas Winkler Date: Wed May 18 22:29:30 2011 +0300 staging/easycap: easycap_probe: drop more unused variables wMaxPacketSize are bEndpointAddress assigned but not used Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 1d243c2e18a6070f4029b774966c51967c3240e0 Author: Tomas Winkler Date: Wed May 18 22:29:29 2011 +0300 staging/easycap: probe: simplify the endpoints tests we are interested only in isochronous in endpoints so we can simplify the flow Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 49c30e5764f51b5d1b6e0c6402c74eba4244bdd1 Author: Tomas Winkler Date: Wed May 18 22:29:28 2011 +0300 staging/easycap: easycap_probe: drop verbose printouts reduce printouts of not necessary information Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 0be6bc62cdd5e1bed75b2122ba7d26fc245b534b Author: Shmulik Ravid Date: Wed May 18 02:55:31 2011 +0000 bnx2x: add support for retrieving dcb peer configuration This patch adds support to the bnx2x for retrieving dcb peer (remote) configuration from the embedded DCBX stack. Signed-off-by: Shmulik Ravid Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 60a34277d5da958e7f39a942e0ed1016a904f6c6 Author: Frank Blaschka Date: Wed May 18 03:28:35 2011 +0000 qeth: use ndo_set_features callback for initial setup and recovery This patch uses the ndo_set_features callback during normal device startup or recovery to turn on hardware RX checksum. Patch was done with much help from Michal Miroslaw, thx!!! Signed-off-by: Frank Blaschka Reviewed-by: Michał Mirosław Signed-off-by: David S. Miller commit e05503ef1186ad33dfe56794407891eb1dd93ef6 Author: Jean Delvare Date: Wed May 18 16:49:24 2011 +0200 Haavard Skinnemoen has left Atmel Haavard's e-mail address at Atmel is no longer valid. Signed-off-by: Jean Delvare Acked-by: Havard Skinnemoen Signed-off-by: Jiri Kosina commit f634a4e7074f66ac3dfaf2cc6786e0ec3080a2d1 Author: Luciano Coelho Date: Wed May 18 16:51:26 2011 -0400 wl12xx: fix compilation error when CONFIG_PM is not set There was a compilation error when PM is not enabled: CC [M] drivers/net/wireless/wl12xx/main.o drivers/net/wireless/wl12xx/main.c:3653: error: unknown field 'suspend' specified in initializer drivers/net/wireless/wl12xx/main.c:3653: warning: initialization from incompatible pointer type drivers/net/wireless/wl12xx/main.c:3654: error: unknown field 'resume' specified in initializer drivers/net/wireless/wl12xx/main.c:3654: warning: initialization from incompatible pointer type Fix this by adding #ifdef's in the appropriate places. Cc: Eliad Peller Signed-off-by: Luciano Coelho Signed-off-by: David S. Miller commit c9ce9e438b2a9faba74a05a71b3dbe169cde783b Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 11:54:10 2011 -0400 xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override functions. If the backends, which use these two functions, are compiled as a module we need these two functions to be exported. Signed-off-by: Konrad Rzeszutek Wilk commit d5431d5273392c6509e9567a9c30ca8b8362d6b2 Author: Konrad Rzeszutek Wilk Date: Mon Feb 28 17:58:48 2011 -0500 xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2P override. We only supported the M2P (and P2M) override only for the GNTMAP_contains_pte type mappings. Meaning that we grants operations would "contain the machine address of the PTE to update" If the flag is unset, then the grant operation is "contains a host virtual address". The latter case means that the Hypervisor takes care of updating our page table (specifically the PTE entry) with the guest's MFN. As such we should not try to do anything with the PTE. Previous to this patch we would try to clear the PTE which resulted in Xen hypervisor being upset with us: (XEN) mm.c:1066:d0 Attempt to implicitly unmap a granted PTE c0100000ccc59067 (XEN) domain_crash called from mm.c:1067 (XEN) Domain 0 (vcpu#0) crashed on cpu#3: (XEN) ----[ Xen-4.0-110228 x86_64 debug=y Not tainted ]---- and crashing us. This patch allows us to inhibit the PTE clearing in the PV guest if the GNTMAP_contains_pte is not set. On the m2p_remove_override path we provide the same parameter. Sadly in the grant-table driver we do not have a mechanism to tell m2p_remove_override whether to clear the PTE or not. Since the grant-table driver is used by user-space, we can safely assume that it operates only on PTE's. Hence the implementation for it to work on !GNTMAP_contains_pte returns -EOPNOTSUPP. In the future we can implement the support for this. It will require some extra accounting structure to keep track of the page[i], and the flag. [v1: Added documentation details, made it return -EOPNOTSUPP instead of trying to do a half-way implementation] Signed-off-by: Konrad Rzeszutek Wilk commit cdbe61bfe70440939e457fb4a8d0995eaaed17de Author: Steven Rostedt Date: Thu May 5 21:14:55 2011 -0400 ftrace: Allow dynamically allocated function tracers Now that functions may be selected individually, it only makes sense that we should allow dynamically allocated trace structures to be traced. This will allow perf to allocate a ftrace_ops structure at runtime and use it to pick and choose which functions that structure will trace. Note, a dynamically allocated ftrace_ops will always be called indirectly instead of being called directly from the mcount in entry.S. This is because there's no safe way to prevent mcount from being preempted before calling the function, unless we modify every entry.S to do so (not likely). Thus, dynamically allocated functions will now be called by the ftrace_ops_list_func() that loops through the ops that are allocated if there are more than one op allocated at a time. This loop is protected with a preempt_disable. To determine if an ftrace_ops structure is allocated or not, a new util function was added to the kernel/extable.c called core_kernel_data(), which returns 1 if the address is between _sdata and _edata. Cc: Paul E. McKenney Signed-off-by: Steven Rostedt commit b848914ce39589d89ee0078a6d1ef452b464729e Author: Steven Rostedt Date: Wed May 4 09:27:52 2011 -0400 ftrace: Implement separate user function filtering ftrace_ops that are registered to trace functions can now be agnostic to each other in respect to what functions they trace. Each ops has their own hash of the functions they want to trace and a hash to what they do not want to trace. A empty hash for the functions they want to trace denotes all functions should be traced that are not in the notrace hash. Cc: Paul E. McKenney Signed-off-by: Steven Rostedt commit 07fd5515f3b5c20704707f63e7f4485b534508a8 Author: Steven Rostedt Date: Thu May 5 18:03:47 2011 -0400 ftrace: Free hash with call_rcu_sched() When a hash is modified and might be in use, we need to perform a schedule RCU operation on it, as the hashes will soon be used directly in the function tracer callback. Cc: Paul E. McKenney Signed-off-by: Steven Rostedt commit 2b499381bc50ede01b3d8eab164ca2fad00655f0 Author: Steven Rostedt Date: Tue May 3 22:49:52 2011 -0400 ftrace: Have global_ops store the functions that are to be traced This is a step towards each ops structure defining its own set of functions to trace. As the current code with pid's and such are specific to the global_ops, it is restructured to be used with the global ops. Signed-off-by: Steven Rostedt commit bd69c30b1d08032d97ab0dabd7a1eb7fb73ca2b2 Author: Steven Rostedt Date: Tue May 3 21:55:54 2011 -0400 ftrace: Add ops parameter to ftrace_startup/shutdown functions In order to allow different ops to enable different functions, the ftrace_startup() and ftrace_shutdown() functions need the ops parameter passed to them. Signed-off-by: Steven Rostedt commit 647bcd03d5b2fb44fd9c9ef1a4f50c2eee8f779a Author: Steven Rostedt Date: Tue May 3 14:39:21 2011 -0400 ftrace: Add enabled_functions file Add the enabled_functions file that is used to show all the functions that have been enabled for tracing as well as their ref counts. This helps seeing if any function has been registered and what functions are being traced. Signed-off-by: Steven Rostedt commit ed926f9b35cda0988234c356e16a7cb30f4e5338 Author: Steven Rostedt Date: Tue May 3 13:25:24 2011 -0400 ftrace: Use counters to enable functions to trace Every function has its own record that stores the instruction pointer and flags for the function to be traced. There are only two flags: enabled and free. The enabled flag states that tracing for the function has been enabled (actively traced), and the free flag states that the record no longer points to a function and can be used by new functions (loaded modules). These flags are now moved to the MSB of the flags (actually just the top 32bits). The rest of the bits (30 bits) are now used as a ref counter. Everytime a tracer register functions to trace, those functions will have its counter incremented. When tracing is enabled, to determine if a function should be traced, the counter is examined, and if it is non-zero it is set to trace. When a ftrace_ops is registered to trace functions, its hashes are examined. If the ftrace_ops filter_hash count is zero, then all functions are set to be traced, otherwise only the functions in the hash are to be traced. The exception to this is if a function is also in the ftrace_ops notrace_hash. Then that function's counter is not incremented for this ftrace_ops. Signed-off-by: Steven Rostedt commit 33dc9b1267d59cef46ff0bd6bc043190845dc919 Author: Steven Rostedt Date: Mon May 2 17:34:47 2011 -0400 ftrace: Separate hash allocation and assignment When filtering, allocate a hash to insert the function records. After the filtering is complete, assign it to the ftrace_ops structure. This allows the ftrace_ops structure to have a much smaller array of hash buckets instead of wasting a lot of memory. A read only empty_hash is created to be the minimum size that any ftrace_ops can point to. When a new hash is created, it has the following steps: o Allocate a default hash. o Walk the function records assigning the filtered records to the hash o Allocate a new hash with the appropriate size buckets o Move the entries from the default hash to the new hash. Signed-off-by: Steven Rostedt commit f45948e898e7bc76a73a468796d2ce80dd040058 Author: Steven Rostedt Date: Mon May 2 12:29:25 2011 -0400 ftrace: Create a global_ops to hold the filter and notrace hashes Combine the filter and notrace hashes to be accessed by a single entity, the global_ops. The global_ops is a ftrace_ops structure that is passed to different functions that can read or modify the filtering of the function tracer. The ftrace_ops structure was modified to hold a filter and notrace hashes so that later patches may allow each ftrace_ops to have its own set of rules to what functions may be filtered. Signed-off-by: Steven Rostedt commit 1cf41dd79993389b012e4542ab502ce36ae7343f Author: Steven Rostedt Date: Fri Apr 29 20:59:51 2011 -0400 ftrace: Use hash instead for FTRACE_FL_FILTER When multiple users are allowed to have their own set of functions to trace, having the FTRACE_FL_FILTER flag will not be enough to handle the accounting of those users. Each user will need their own set of functions. Replace the FTRACE_FL_FILTER with a filter_hash instead. This is temporary until the rest of the function filtering accounting gets in. Signed-off-by: Steven Rostedt commit b448c4e3ae6d20108dba1d7833f2c0d3dbad87ce Author: Steven Rostedt Date: Fri Apr 29 15:12:32 2011 -0400 ftrace: Replace FTRACE_FL_NOTRACE flag with a hash of ignored functions To prepare for the accounting system that will allow multiple users of the function tracer, having the FTRACE_FL_NOTRACE as a flag in the dyn_trace record does not make sense. All ftrace_ops will soon have a hash of functions they should trace and not trace. By making a global hash of functions not to trace makes this easier for the transition. Signed-off-by: Steven Rostedt commit c47d832bc0155153920e507f075647519bad09a2 Author: Daniel Mack Date: Mon May 16 16:38:14 2011 +0200 nfsd: make local functions static This also fixes a number of sparse warnings. Signed-off-by: Daniel Mack Cc: Trond Myklebust Cc: J. Bruce Fields Cc: Neil Brown Signed-off-by: J. Bruce Fields commit b313207286a78abac19f1dd2721292eae598b0f5 Author: Ingo Molnar Date: Wed May 18 21:00:44 2011 +0200 perf bench, x86: Add alternatives-asm.h wrapper perf bench needs this to build the kernel's memcpy routine: In file included from bench/mem-memcpy-x86-64-asm.S:2:0: bench/../../../arch/x86/lib/memcpy_64.S:7:33: fatal error: asm/alternative-asm.h: No such file or directory Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Steven Rostedt Link: http://lkml.kernel.org/n/tip-c5d41xibgullk8h2280q4gv0@git.kernel.org Signed-off-by: Ingo Molnar commit 01ed58abec07633791f03684b937a7e22e00c9bb Merge: af2d03d 26afb7c Author: Ingo Molnar Date: Wed May 18 20:59:27 2011 +0200 Merge branch 'x86/mem' into perf/core Merge reason: memcpy_64.S changes an assumption perf bench has, so merge this here so we can fix it. Signed-off-by: Ingo Molnar commit 0e499890c1fd9e0a1bed02002161c4c7873d7489 Author: Darrick J. Wong Date: Wed May 18 13:55:20 2011 -0400 ext4: wait for writeback to complete while making pages writable In order to stabilize pages during disk writes, ext4_page_mkwrite must wait for writeback operations to complete before making a page writable. Furthermore, the function must return locked pages, and recheck the writeback status if the page lock is ever dropped. The "someone could wander in" part of this patch was suggested by Chris Mason. Signed-off-by: Darrick J. Wong Signed-off-by: "Theodore Ts'o" commit 7cb1a5351da8ac499d965a78e94c79ad27891f43 Author: Darrick J. Wong Date: Wed May 18 13:53:20 2011 -0400 ext4: clean up some wait_on_page_writeback calls wait_on_page_writeback already checks the writeback bit, so callers of it needn't do that test. Signed-off-by: Darrick J. Wong Signed-off-by: "Theodore Ts'o" commit af2d03d4aaa847ef41a229dfee098a47908437c6 Merge: 9469234 f296388 Author: Ingo Molnar Date: Wed May 18 19:46:10 2011 +0200 Merge branch 'tip/perf/core-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 0a58e077eb600d1efd7e54ad9926a75a39d7f8ae Author: James Bottomley Date: Wed May 18 16:20:10 2011 +0200 block: add proper state guards to __elv_next_request blk_cleanup_queue() calls elevator_exit() and after this, we can't touch the elevator without oopsing. __elv_next_request() must check for this state because in the refcounted queue model, we can still call it after blk_cleanup_queue() has been called. This was reported as causing an oops attributable to scsi. Signed-off-by: James Bottomley Cc: stable@kernel.org Signed-off-by: Jens Axboe commit ed3ce80a52c4658f48ef8fc825bdedf8b3fcaa89 Author: Tao Ma Date: Wed May 18 13:29:57 2011 -0400 ext4: don't warn about mnt_count if it has been disabled Currently, if we mkfs a new ext4 volume with s_max_mnt_count set to zero, and mount it for the first time, we will get the warning: maximal mount count reached, running e2fsck is recommended It is really misleading. So change the check so that it won't warn in that case. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 539494253547d078089cc15490e83f6e5f2e7213 Author: Taylor Hutt Date: Tue May 17 18:03:54 2011 -0700 ASoC: Max98095: Move existing NULL check before pointer dereference. Visual inspection shows that max98095_put_eq_enum() and max98095_put_bq_enum() each have a possible NULL deref of 'pdata'. This change moves the NULL check above the use. Signed-off-by: Taylor Hutt Acked-by: Peter Hsiang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 6b8aae5aceb689ace3b8997393fe222b83956e53 Author: Oren Weil Date: Sun May 15 13:43:48 2011 +0300 staging/mei: add mei to staging Kbuild Add mei to Kconfig and Makefile in drivers/staging Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 3ceb3e66a072b7a41ec065aeb120a38c05bc8b7a Author: Oren Weil Date: Sun May 15 13:43:47 2011 +0300 staging/mei: AMT Watchdog code that open connection and invoke heartbeats to the AMT Watchdog client/feature, if exists Connect to WD Client, if exists Send Start WD Command. Every 2 secs send heartbeats. On System shutdown/suspends, send Stop WD command. This is intermediate stage before moving this code to standalone watchdog driver. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 334aab1dba74161daa336f0c48333545fee01c99 Author: Oren Weil Date: Sun May 15 13:43:46 2011 +0300 staging/mei: mei.h defining user space interface define IOCTL_MEI_CONNECT_CLIENT and its associated structure When the user wants to connect to a ME feature/client after it open a file descriptor to the driver, he need to use Connect IOCTL. This IOCTL received a struct that contains a union of 2 other structs. 1st struct - Input Parameters: UUID - a predefine unique that identify the ME feature, this id per feature is constant all over the chipsets and versions. 2nd struct Output Parameters: MaxMessageLen - maximum message length that allowed to be send to the feature ProtocolVersion ME feature current protocol version. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 5a6003f25f83b47f38a0f52a6202f18013287996 Author: Oren Weil Date: Sun May 15 13:43:45 2011 +0300 staging/mei: Hardware and MEI driver internal struct definition define the MEI protocol msg structs and HW registers, also define the MEI internal status and struct Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 91f01c6d45e634b98dd68439afdb04b674a95eee Author: Oren Weil Date: Sun May 15 13:43:44 2011 +0300 staging/mei: MEI driver init flow. Init driver list and queue, MEI Hardware reset flow, init of driver specific host client. MEI Init/reset flow: - Ack all waiting interrupts - Hardware reset flow (Set Reset Bit, Generate Interrupt, Clear Reset Bit Generate Interrupt) - Wait for ME Ready Bit (done in interrupt thread) - Set ME Ready Bit (done in interrupt thread) - Send Start request (done in interrupt thread) - wait for answer - Send Enumerate Clients request (done in interrupt thread) - wait for answer - Send Get Client property for each client request (done in interrupt thread) - Wait for answers - Init Done. MEI Driver connect internally to 2 ME clients/features: AMTHI and AMT watchdog. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 3ce72726c6790ffcf492c0689e5ee3a758bfb00e Author: Oren Weil Date: Sun May 15 13:43:43 2011 +0300 staging/mei: MEI link layer Implementation of the communication between host and ME. connect/disconnect to/from a client, send MEI message, read MEI message, flow control handling. Each MEI message has mei_msg_hdr followed by a payload. Driver is oblivious the payload. ME Address/ID - This is the logical address of the ME feature/client of that message. Host Address/ID - This is the logical address of the Host client of that message Length - This is the Length of message payload in bytes Reserved - reserved for future use. Message Complete - This bit is used to indicative that this is the last message of multi message MEI transfer of a client message that is larger then the MEI circular buffer. Payload - Message payload (data) up to 512bytes The HW data registers are consist two circular buffers, one for data from ME and other data from Host application. Each buffer has two pointers, read_ptr (H_CBRP) and write_ptr (H_CBWP). The buffers size is defined by depth value that exists in the status registers (H_CBD and ME_CBD_HRA). Every read from ME circular buffer cause read_ptr++ Every write to the Host circular buffer write_ptr++ Flow control MEI message that ME and MEI Driver use to notify each other that a ME feature/client or Host client buffer is ready to receive data. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit fb7d879f3b15056bf4f818e56b368ce76de2d5f3 Author: Oren Weil Date: Sun May 15 13:43:42 2011 +0300 staging/mei: Interrupt handling. ISR and interrupt thread for handling incoming data. e.g. read bus message, read client message, handle reset requests. quick handler: As MEI may share interrupt with GFX and/or USB the HW register need to be checked and acknowledged. thread handler: Check if HW has data for read. Write data to HW if possible. May init reset flow on error there can be two types of messages: 1) bus messages: Management messages between MEI Driver and ME e.g. Connect request/response, Disconnect request/response Enum clients request/response Flow control request/response those message are indicated by ME Address/ID == 0 && Host Address/ID == 0 2) feature/client messages: message that are sends between ME Feature/Client and an application, the struct of the message is defined by the ME Feature Protocol (e.g. APF Protocol, AMTHI Protocol) those message are indicated by ME Address/ID != 0 && Host Address/ID != 0 MEI Initialization state machine is also managed by this patch. After MEI Reset is preform: Send Start request wait for answer Send Enumerate Clients request wait for answer Send Get Client property for each client request wait for answers Init Done. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit ab841160d907bfc2305d3bf66d8275e807838e1a Author: Oren Weil Date: Sun May 15 13:43:41 2011 +0300 staging/mei: PCI device and char driver support. contains module entries and PCI driver and char device definitions (using file_operations, pci_driver struts). The HW interface is exposed on PCI interface. PCI: The MEI HW resources are memory map 32 bit registers (Host and ME Status Registers and Data Registers) and interrupt (shared, with Intel GFX on some chipsets and USB2 controller on others). The device is part of the chipsets and cannot be hotplugged. The MEI device present is determined by BIOS configuration. Probe: The driver starts the init MEI flow, that is explained in the patch "MEI driver init flow" [06/10], then schedules a timer that handles timeouts and watchdog heartbeats. Remove: The driver closes all connections and stops the watchdog. The driver expose char device that supports: open, release, write, read, ioctl, poll. Open: Upon open the driver allocates HOST data structure on behalf of application which will resides in the file's private data and assign a host ID number which will identify messages between driver client instance and MEI client. The driver also checks readiness of the device. The number of simultaneously opened instances is limited to 253. (255 - (amthi + watchdog)) Release: In release the driver sends a Disconnect Command to ME feature and clean all the data structs. IOCTL: MEI adds new IOCTL: (IOCTL_MEI_CONNECT_CLIENT) The IOCTL links the current file descriptor to ME feature. This is done by sending MEI Bus command: 'hbm_client_connect_request' to the ME and waiting for an answer :'hbm_client_connect_response'. Upon answer reception the driver updates its and HOST data structures in file structure to indicate that the file descriptor is associated to ME feature. Each ME feature is represented by UUID which is given as an input parameter to the IOCTL, upon success connect command the IOCTL will return the ME feature properties. ME can reject CONNECT commands due to several reasons, most common are: Invalid UUID ME or feature does not exists in ME. No More Connection allowed to this is feature, usually only one connection is allowed. Write: Upon write, the driver splits the user data into several MEI messages up to 512 bytes each and sends it to the HW. If the user wants to write data to AMTHI ME feature then the drivers routes the messages through AMTHI queues. Read: In read the driver checks is a connection exists to current file descriptor and then wait until a data is available. Message might be received (by interrupt from ME) in multiple chunks. Only complete message is released to the application. Poll: Nothing special here. Waiting for see if we have data available for reading. Signed-off-by: Tomas Winkler Signed-off-by: Itzhak Tzeel-Krupp Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 830c20ec4d24e082a04f954af1db5dda5009432c Author: Oren Weil Date: Sun May 15 13:43:40 2011 +0300 staging/mei: MEI Driver TODO list Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 6624fc2315a3cddef19b04f77d2d06cb32947449 Author: Oren Weil Date: Sun May 15 13:43:39 2011 +0300 staging/mei: MEI Driver documentations Signed-off-by: Tomas Winkler Signed-off-by: Oren Weil Signed-off-by: Greg Kroah-Hartman commit 8ab521506c4dbb144f0c04c55e3d8bec42c1b2b9 Author: Jan Beulich Date: Tue May 17 11:07:05 2011 +0100 xen/blkback: don't fail empty barrier requests The sector number on empty barrier requests may (will?) be -1, which, given that it's being treated as unsigned 64-bit quantity, will almost always exceed the actual (virtual) disk's size. Inspired by Konrad's "When writting barriers set the sector number to zero...". While at it also add overflow checking to the math in vbd_translate(). Signed-off-by: Jan Beulich Signed-off-by: Konrad Rzeszutek Wilk commit d48e5cffb312b08d74c880411b3fb4d5d5ad93f6 Author: Cho, Yu-Chen Date: Wed May 18 18:40:15 2011 +0800 staging/keucr: fix transport other code style fix keucr transport.c other coding style but not from checkpatch.pl. replace ternary conditional "?:" with if/else Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 3aa4fc587df15a7a55bd6e3f3fbdcca30c7acc58 Author: Cho, Yu-Chen Date: Wed May 18 18:40:14 2011 +0800 staging/keucr: fix keucr transport coding style fix keucr transport.c transport.h coding style Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit ece114aa788de418874c660c789c018a07a08bb1 Author: Cho, Yu-Chen Date: Wed May 18 18:40:13 2011 +0800 staging/keucr: fix keucr smil.h coding style fix keucr smil.h coding style Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 65cdcf36239a219e4e2863e0ff4f62280510286c Author: Cho, Yu-Chen Date: Wed May 18 18:40:12 2011 +0800 staging/keucr: fix keucr smilecc.c coding style fix keucr smilecc.c coding style Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 8a25a2cf0a025f337382d7aaca30591d20d08659 Author: Cho, Yu-Chen Date: Wed May 18 18:40:11 2011 +0800 staging/keucr: fix keucr scsiglue coding style fix keucr scsiglue.c coding style Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 70d837075852f1f10178e5d57b852b035ac1ed97 Author: Cho, Yu-Chen Date: Wed May 18 18:40:10 2011 +0800 staging/keucr: fix keucr msscsi coding style Fix keucr msscsi.c coding style. Remove externs ,and move MS_SCSIIrp to end, because there are not necessary to add extern for MS_SCSIIrp function. Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 333c5ec0184c96f3d4adec4623966ca0745ebc51 Author: Cho, Yu-Chen Date: Wed May 18 18:40:09 2011 +0800 staging/keucr: fix keucr ms coding style fix keucr ms.c and ms.h coding style Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit ec08b14483de0702ca43e3a8506e149486975f9b Author: Ben Gardiner Date: Wed May 18 10:03:34 2011 -0400 ALSA: sound, core, pcm_lib: xrun_log: log also in_interrupt When debugging pcm drivers I found the "period" or "hw" prefix printed by either XRUN_DEBUG_PERIODUPDATE or XRUN_DEBUG_PERIODUPDATE events, respectively to be very useful is observing the interplay between interrupt-context updates and syscall-context updates. Similarly, when debugging overruns with XRUN_DEBUG_LOG it is useful to see the context of the last 10 positions. Add an in_interrupt member to hwptr_log_entry which stores the value of the in_interrupt parameter of snd_pcm_update_hw_ptr0 when the log entry is created. Print a "[Q]" prefix when dumping the log entries if in_interrupt was true. Signed-off-by: Ben Gardiner Signed-off-by: Takashi Iwai commit 7cdd8d73139ec935a8e91806131a5b91e26c653e Author: Mathieu Bouffard Date: Wed May 18 17:09:17 2011 +0200 ALSA: usb-audio - Add support for USB X-Fi S51 Pro USB X-Fi S51 Pro volume and mute from the volume knob on the unit. Compiled and tested with 2.6.39-rc7-git12 Signed-off-by: Mathieu Bouffard Signed-off-by: Takashi Iwai commit 437f3b199c437e2a9ac01b9ab733c78e5fc7c720 Author: Jarod Wilson Date: Tue Apr 19 15:28:30 2011 -0400 HID: assorted usage updates from hut 1.12 I've got a Tivo Slide bluetooth remote/dongle, which uses a fair number of hid usages that aren't currently mapped in hid-input.c. I'd initially written additions to hid-input.c with just this device in mind, including some bits that were specific to the device. This go around, I'm looking at adding/correcting as many generic HID usages from the HID Usage Tables, version 1.12, as I can -- which also serves to enable all but four of the buttons on the Tivo Slide remote[*]. Outside of fixing the obviously incorrect mapping of 0xc 0x45 from KEY_RADIO to KEY_RIGHT, and making use of the new KEY_IMAGES (just added in 2.6.39-rc4) for AL Image Browser instead of KEY_MEDIA, these are purely additions, and thus should have no negative impact on any already functional HID devices. Most of the added mappings seemed to be perfectly logical to me, but there were a few that were mapped on more of an "I think this makes the most sense" basis. [*] I'll handle the last four tivo buttons via an hid-tivo.c follow-up. CC: Dmitry Torokhov CC: Jiri Kosina Signed-off-by: Jarod Wilson Signed-off-by: Jiri Kosina commit 6b7b8e488bbdedeccabdd001a78ffcbe43bb8a3a Merge: b50f315 c1d10d1 Author: Jiri Kosina Date: Wed May 18 17:06:31 2011 +0200 Merge branch 'master' into upstream. This is sync with Linus' tree to receive KEY_IMAGES definition that went in through input tree. commit 56184e3da005e0259fc628706351b54fcc4527db Author: Chris Wilson Date: Tue May 17 14:03:50 2011 +0100 drm/i915/sdvo: Reorder i2c initialisation before ddc proxy The ddc proxy depends upon the underlying i2c bus being selected. Under certain configurations, the i2c-adapter functionality is queried during initialisation and so may trigger an OOPS during boot. Hence, we need to reorder the initialisation of the ddc proxy until after we hook up the i2c adapter for the SDVO device. The condition under which it fails is when the i2c_add_adapter calls into i2c_detect which will attempt to probe all valid addresses on the adapter iff there is a pre-existing i2c_driver with the same class as the freshly added i2c_adapter. So it appears to depend upon having compiled in (or loaded such a module before i915.ko) an i2c-driver that likes to futz over the i2c_adapters claiming DDC support. Reported-by: Mihai Moldovan Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit b50f315cbb865079a16a12fd9ae6083f98fd592c Author: Stefan Achatz Date: Wed Apr 13 17:17:52 2011 +0200 HID: roccat: fix actual/startup profile sysfs attribute in koneplus startup_profile and actual_profile didn't work as expected. Also as the actual profile is persistent, the distinction between the two was ambiguous, so both use the same code now and startup_profile has been deprecated. Also the event is now propagated through chardev. The userland tool has been updated to support this change. Signed-off-by: Stefan Achatz Signed-off-by: Jiri Kosina commit df167c4a0d68a9dbde044a39a77f255ac666f93e Author: Benjamin Tissoires Date: Wed May 18 15:27:24 2011 +0200 HID: hid-multitouch: Add support for Lumio panels This patch enables support for Lumio optical devices. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit bd715d9a4f13f87bad5526c2cd41370949473b16 Merge: 19e2746 b2b07e4 Author: Oleg Nesterov Date: Wed May 18 15:09:07 2011 +0200 Merge branch 'signals-review' into ptrace commit b2b07e4fdbc51383cfc0ba5618c2ddf5c9d038f2 Author: Oleg Nesterov Date: Wed May 18 15:08:03 2011 +0200 signal: trivial, fix the "timespec declared inside parameter list" warning Fix the compile warning, do_sigtimedwait(struct timespec *) in signal.h needs the forward declaration of timespec. Reported-and-acked-by: Mike Frysinger Signed-off-by: Oleg Nesterov commit edf76f8307c350bcb81f0c760118a991b3e62956 Author: Jonathan Cameron Date: Wed May 18 10:39:04 2011 +0100 irq: Export functions to allow modular irq drivers Export handle_simple_irq, irq_modify_status, irq_alloc_descs, irq_free_descs and generic_handle_irq to allow their usage in modules. First user is IIO, which wants to be built modular, but needs to be able to create irq chips, allocate and configure interrupt descriptors and handle demultiplexing interrupts. [ tglx: Moved the uninlinig of generic_handle_irq to a separate patch ] Signed-off-by: Jonathan Cameron Link: http://lkml.kernel.org/r/%3C1305711544-505-1-git-send-email-jic23%40cam.ac.uk%3E Signed-off-by: Thomas Gleixner commit fe12bc2c996d3e492b2920e32ac79f7bbae3e15d Author: Thomas Gleixner Date: Wed May 18 12:48:00 2011 +0200 genirq: Uninline and sanity check generic_handle_irq() generic_handle_irq() is missing a NULL pointer check for the result of irq_to_desc. This was a not a big problem, but we want to expose it to drivers, so we better have sanity checks in place. Add a return value as well, which indicates that the irq number was valid and the handler was invoked. Based on the pure code move from Jonathan Cameron. Signed-off-by: Thomas Gleixner Cc: Jonathan Cameron commit fe0514348452f5b0ad7e842b0d71b8322b1297de Author: Thomas Gleixner Date: Wed May 18 12:53:03 2011 +0200 genirq: Remove pointless ifdefs kernel/irq/ is only built when CONFIG_GENERIC_HARDIRQS=y. So making code inside of kernel/irq/ conditional on CONFIG_GENERIC_HARDIRQS is pointless. Signed-off-by: Thomas Gleixner commit d23894402b33338c51f1863d7f866fdc6f073a02 Author: Mian Yousaf Kaukab Date: Tue Mar 22 15:55:59 2011 +0100 usb: musb: ux500: add configuration and build options for ux500 dma Signed-off-by: Mian Yousaf Kaukab Signed-off-by: Felipe Balbi commit 8dcc8f72e3f3b7ed1ba1cd5641e15658e2140abe Author: Mian Yousaf Kaukab Date: Tue Mar 22 15:55:58 2011 +0100 usb: musb: ux500: add dma glue layer for ux500 Unaligned sizes and buffers are not supported and they will be filtered out by is_compatible(). Signed-off-by: Mian Yousaf Kaukab Signed-off-by: Felipe Balbi commit e3c496f9b31e0e64f59b0c3770a17df7ddbd5ee3 Author: Mian Yousaf Kaukab Date: Tue Mar 22 15:55:57 2011 +0100 usb: musb: ux500: add dma name for ux500 Signed-off-by: Mian Yousaf Kaukab Signed-off-by: Felipe Balbi commit a48ff906788aa2eb692bcb087223645902140554 Author: Mian Yousaf Kaukab Date: Tue Mar 22 15:55:56 2011 +0100 usb: musb: ux500: add ux500 specific code for gadget side Although U8500 and U5500 platforms use paltform dma, Inventra dma specific code can work for them for the most part. Only difference is for the Rx path where this patch is making use of request->short_not_ok to select dma mode. Signed-off-by: Mian Yousaf Kaukab Signed-off-by: Felipe Balbi commit 28e4970555554d12eed286cb47763d1949b931fb Author: Felipe Balbi Date: Wed May 18 00:25:03 2011 +0300 usb: musb: fix compile error commit 35a83365da6aa10095c6138cc428c15853409c32 (usb: musb: drop unneeded musb_debug trickery) introduced a compile error for blackfin and tusb6010 glue layers. Fix it. Reported-by: Mike Frysinger Signed-off-by: Felipe Balbi commit dd2ed487fdd78b50549b2ca8418875c0d9f4a30e Author: Daniel Mack Date: Sun May 15 18:07:42 2011 +0200 HID: 'name' and 'phys' in 'struct hid_device' can never be NULL As they are static members of fix size, there is no need to NULL-check them. Signed-off-by: Daniel Mack Cc: Dmitry Torokhov Cc: Jiri Kosina Signed-off-by: Jiri Kosina commit 9e76a7ac87c13bb7515e5d7652bbb6bda4733b6e Author: Sarah Nadi Date: Tue May 17 10:38:43 2011 -0400 cris: typo in mach-fs Makefile Signed-off-by: Sarah Nadi Signed-off-by: Jiri Kosina commit 26afb7c661080ae3f1f13ddf7f0c58c4f931c22b Author: Jiri Olsa Date: Thu May 12 16:30:30 2011 +0200 x86, 64-bit: Fix copy_[to/from]_user() checks for the userspace address limit As reported in BZ #30352: https://bugzilla.kernel.org/show_bug.cgi?id=30352 there's a kernel bug related to reading the last allowed page on x86_64. The _copy_to_user() and _copy_from_user() functions use the following check for address limit: if (buf + size >= limit) fail(); while it should be more permissive: if (buf + size > limit) fail(); That's because the size represents the number of bytes being read/write from/to buf address AND including the buf address. So the copy function will actually never touch the limit address even if "buf + size == limit". Following program fails to use the last page as buffer due to the wrong limit check: #include #include #include #define PAGE_SIZE (4096) #define LAST_PAGE ((void*)(0x7fffffffe000)) int main() { int fds[2], err; void * ptr = mmap(LAST_PAGE, PAGE_SIZE, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE | MAP_FIXED, -1, 0); assert(ptr == LAST_PAGE); err = socketpair(AF_LOCAL, SOCK_STREAM, 0, fds); assert(err == 0); err = send(fds[0], ptr, PAGE_SIZE, 0); perror("send"); assert(err == PAGE_SIZE); err = recv(fds[1], ptr, PAGE_SIZE, MSG_WAITALL); perror("recv"); assert(err == PAGE_SIZE); return 0; } The other place checking the addr limit is the access_ok() function, which is working properly. There's just a misleading comment for the __range_not_ok() macro - which this patch fixes as well. The last page of the user-space address range is a guard page and Brian Gerst observed that the guard page itself due to an erratum on K8 cpus (#121 Sequential Execution Across Non-Canonical Boundary Causes Processor Hang). However, the test code is using the last valid page before the guard page. The bug is that the last byte before the guard page can't be read because of the off-by-one error. The guard page is left in place. This bug would normally not show up because the last page is part of the process stack and never accessed via syscalls. Signed-off-by: Jiri Olsa Acked-by: Brian Gerst Acked-by: Linus Torvalds Cc: Link: http://lkml.kernel.org/r/1305210630-7136-1-git-send-email-jolsa@redhat.com Signed-off-by: Ingo Molnar commit 208466dc10083e734a8af71d10f923ee4bff950c Author: Hema HK Date: Thu Mar 24 17:09:03 2011 +0530 usb: otg: OMAP4430: Powerdown the internal PHY when USB is disabled Powerdown the internal UTMI PHY when USB is not enabled. This will allow the OMAP core domain to transition to retention and offmode. Signed-off-by: Hema HK Cc: Felipe Balbi Signed-off-by: Felipe Balbi commit 8cfc67f0740cede2a6aec94b8513285d00c46d5f Author: Hema HK Date: Thu Mar 24 17:08:42 2011 +0530 usb: otg: OMAP4430: Fixing the omap4430_phy_init function omap4430_phy_init() function can be called with no device pointer, to powerdown the PHY during board init when USB is disabled. Fix the function accordingly. Signed-off-by: Hema HK Signed-off-by: Felipe Balbi commit a6d28523dbe6dc5bf3fc6a9078a69de6873c511e Author: Felipe Balbi Date: Mon May 2 12:45:05 2011 +0300 usb: musb: am35x: fix compile error when building am35x am35x_musb_set_mode() was redefined. Fix it. Reported-by: Sebastian Andrzej Siewior Signed-off-by: Felipe Balbi commit 1f15848807c20762017da29fa1dac64fb67b8128 Author: Hema HK Date: Mon Feb 28 14:19:35 2011 +0530 usb: musb: OMAP4430: Power down the PHY during board init Powerdown the internal PHY during board init for OMAP44xx. So that when musb is disabled core transition to retention/off is not blocked. Signed-off-by: Hema HK Cc: Tony Lindgren Cc: Paul Walmsley Signed-off-by: Felipe Balbi commit b896b4ebf0c136b51b184ea9f39247701e332005 Author: Kailang Yang Date: Wed May 18 11:53:16 2011 +0200 ALSA: hda - Fix no sound after Windows boot with ALC269 Change power control register to default. Signed-off-by: Kailang Yang Signed-off-by: Takashi Iwai commit 296f03380e986f910b20dfb5ad7743902e7d840e Author: Kailang Yang Date: Wed May 18 11:52:36 2011 +0200 ALSA: hda - Add support of ALC221 / ALC276 codecs Compatible with ALC269. Signed-off-by: Kailang Yang Signed-off-by: Takashi Iwai commit b478b998447d3eb95e03beab1ad132e3e6bc74d2 Author: Kailang Yang Date: Wed May 18 11:51:15 2011 +0200 ALSA: hda - Add support of ALC898/899 codec These are compatible with ALC882 codec. Signed-off-by: Kailang Yang Signed-off-by: Takashi Iwai commit c91d9cda558fc348205fa972c8b864f8579ef258 Author: Daniel Mack Date: Wed May 18 11:28:45 2011 +0200 ALSA: usb-audio: handle "Fast Track Ultra" with USB_DEVICE_VENDOR_SPEC() That way, the class compliant MIDI interface is also handled. Signed-off-by: Daniel Mack Reported-and-tested-by: Grant Diffey Signed-off-by: Takashi Iwai commit 3bc6fbc7439a88969de97d979795ce7847950668 Author: Daniel Mack Date: Wed May 18 11:28:44 2011 +0200 ALSA: usb-audio: assume valid clock If the interface can't report a clock's validity, assume that it's valid. Signed-off-by: Daniel Mack Reported-by: Vicente Joel Signed-off-by: Takashi Iwai commit 0ef283247a0cf0fd2e8370ee467030292eb3129e Author: Daniel Mack Date: Wed May 18 11:28:43 2011 +0200 ALSA: usb-audio: add quirks for Roland GR-55 Signed-off-by: Daniel Mack Reported-by: Jeffrey Scott Flesher Signed-off-by: Takashi Iwai commit 56a9eb1f30c3c7b543a5684e91b47d6ae952feba Author: Daniel Mack Date: Wed May 18 11:28:42 2011 +0200 ALSA: usb-audio: Add quirk for KORG PANDORA PX5D MIDI interface Signed-off-by: Daniel Mack Reported-and-tested-by: Frédéric Jaume Signed-off-by: Takashi Iwai commit 759e890f5c25ef087d866b330261e793b03ef7a4 Author: Daniel Mack Date: Wed May 18 11:28:41 2011 +0200 ALSA: usb-audio: remove invalid extra mixers for Komplete Audio 6 This was a flaw in the reading of the spec tables - Native Instrument's "Komplete Audio 6" device has no such extra controls. This patch also fixes the device name in two comments. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit ee95cb6121dae17bc199cd566503dff1b2dd243b Author: Daniel Mack Date: Wed May 18 11:28:40 2011 +0200 ALSA: usb-audio: include format.h in format.c Just in case a prototype changes, we'll be warned. This also fixes a sparse warning. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 60ed286a61b43e3fedf18e63f2d71b758f3505aa Author: Daniel Mack Date: Wed May 18 11:28:39 2011 +0200 ALSA: usb-audio: make hwc_debug a noop in case HW_CONST_DEBUG is not set Just defining it to nothing is dangerous as it can alter the code execution flow, for example when used in as only function in a conditional code block. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit 23dc05a33fd45c1f53b51e6ad9a209bf021a16c8 Author: Daniel Mack Date: Wed May 18 11:28:38 2011 +0200 MAINTAINERS: Add entry for Native Instruments sound driver Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit d70d0711edd8076ec2ce0ed109106e2df950681b Author: Martin K. Petersen Date: Wed May 18 10:37:39 2011 +0200 block: Add sysfs documentation for the discard topology parameters Add documentation for the discard I/O topology parameters exported in sysfs. Signed-off-by: Martin K. Petersen Signed-off-by: Jens Axboe commit a934a00a69e940b126b9bdbf83e630ef5fe43523 Author: Martin K. Petersen Date: Wed May 18 10:37:35 2011 +0200 block: Fix discard topology stacking and reporting In some cases we would end up stacking discard_zeroes_data incorrectly. Fix this by enabling the feature by default for stacking drivers and clearing it for low-level drivers. Incorporating a device that does not support dzd will then cause the feature to be disabled in the stacking driver. Also ensure that the maximum discard value does not overflow when exported in sysfs and return 0 in the alignment and dzd fields for devices that don't support discard. Reported-by: Lukas Czerner Signed-off-by: Martin K. Petersen Acked-by: Mike Snitzer Cc: stable@kernel.org Signed-off-by: Jens Axboe commit abb57ea48fd9431fa320a5c55f73e6b5a44c2efb Author: Eric Dumazet Date: Wed May 18 02:21:31 2011 -0400 net: add skb_dst_force() in sock_queue_err_skb() Commit 7fee226ad239 (add a noref bit on skb dst) forgot to use skb_dst_force() on packets queued in sk_error_queue This triggers following warning, for applications using IP_CMSG_PKTINFO receiving one error status ------------[ cut here ]------------ WARNING: at include/linux/skbuff.h:457 ip_cmsg_recv_pktinfo+0xa6/0xb0() Hardware name: 2669UYD Modules linked in: isofs vboxnetadp vboxnetflt nfsd ebtable_nat ebtables lib80211_crypt_ccmp uinput xcbc hdaps tp_smapi thinkpad_ec radeonfb fb_ddc radeon ttm drm_kms_helper drm ipw2200 intel_agp intel_gtt libipw i2c_algo_bit i2c_i801 agpgart rng_core cfbfillrect cfbcopyarea cfbimgblt video raid10 raid1 raid0 linear md_mod vboxdrv Pid: 4697, comm: miredo Not tainted 2.6.39-rc6-00569-g5895198-dirty #22 Call Trace: [] ? printk+0x1d/0x1f [] warn_slowpath_common+0x72/0xa0 [] ? ip_cmsg_recv_pktinfo+0xa6/0xb0 [] ? ip_cmsg_recv_pktinfo+0xa6/0xb0 [] warn_slowpath_null+0x20/0x30 [] ip_cmsg_recv_pktinfo+0xa6/0xb0 [] ip_cmsg_recv+0x127/0x260 [] ? skb_dequeue+0x4d/0x70 [] ? skb_copy_datagram_iovec+0x53/0x300 [] ? sub_preempt_count+0x24/0x50 [] ip_recv_error+0x23d/0x270 [] udp_recvmsg+0x264/0x2b0 [] inet_recvmsg+0xd9/0x130 [] sock_recvmsg+0xf2/0x120 [] ? might_fault+0x4b/0xa0 [] ? verify_iovec+0x4c/0xc0 [] ? sock_recvmsg_nosec+0x100/0x100 [] __sys_recvmsg+0x114/0x1e0 [] ? __lock_acquire+0x365/0x780 [] ? fget_light+0xa6/0x3e0 [] ? fget_light+0xbf/0x3e0 [] ? fget_light+0x2e/0x3e0 [] sys_recvmsg+0x39/0x60 Close bug https://bugzilla.kernel.org/show_bug.cgi?id=34622 Reported-by: Witold Baryluk Signed-off-by: Eric Dumazet CC: Stephen Hemminger Signed-off-by: David S. Miller commit de5397ad5b9ad22e2401c4dacdf1bb3b19c05679 Author: Fenghua Yu Date: Wed May 11 16:51:05 2011 -0700 x86, cpu: Enable/disable Supervisor Mode Execution Protection Enable/disable newly documented SMEP (Supervisor Mode Execution Protection) CPU feature in kernel. CR4.SMEP (bit 20) is 0 at power-on. If the feature is supported by CPU (X86_FEATURE_SMEP), enable SMEP by setting CR4.SMEP. New kernel option nosmep disables the feature even if the feature is supported by CPU. [ hpa: moved the call to setup_smep() until after the vendor-specific initialization; that ensures that CPUID features are unmasked. We will still run it before we have userspace (never mind uncontrolled userspace). ] Signed-off-by: Fenghua Yu LKML-Reference: <1305157865-31727-1-git-send-email-fenghua.yu@intel.com> Signed-off-by: H. Peter Anvin commit dc23c0bccf5eea171c87b3db285d032b9a5f06c4 Author: Fenghua Yu Date: Tue May 17 18:44:27 2011 -0700 x86, cpu: Add SMEP CPU feature in CR4 Add support for newly documented SMEP (Supervisor Mode Execution Protection) CPU feature in CR4. Signed-off-by: Fenghua Yu LKML-Reference: <1305683069-25394-3-git-send-email-fenghua.yu@intel.com> Signed-off-by: H. Peter Anvin commit d0281a257f370b09c410e466571858b4e12869c9 Author: Fenghua Yu Date: Tue May 17 18:44:26 2011 -0700 x86, cpufeature: Add cpufeature flag for SMEP Add support for newly documented SMEP (Supervisor Mode Execution Protection) CPU feature flag. SMEP prevents the CPU in kernel-mode to jump to an executable page that has the user flag set in the PTE. This prevents the kernel from executing user-space code accidentally or maliciously, so it for example prevents kernel exploits from jumping to specially prepared user-mode shell code. [ hpa: added better description by Ingo Molnar ] Signed-off-by: Fenghua Yu LKML-Reference: <1305683069-25394-2-git-send-email-fenghua.yu@intel.com> Signed-off-by: H. Peter Anvin commit 61e499bf05254aca0fab08e2c91643331a15e725 Author: Keith Packard Date: Tue May 17 16:13:52 2011 -0700 drm/i915: FDI link training broken on Ironlake by Ivybridge integration Commit 357555c00f8414057f0c12ee3f479f197264123d split out IVB-specific register definitions for FDI link training, but a piece of that commit stopped executing some critical code on Ironlake systems while leaving it running on Sandybridge. Turn that code back on both Ironlake and Sandybridge Signed-off-by: Keith Packard Acked-by: Jesse Barnes commit 9bed4aca296fdf9c1b85a8f093e92018dc9864f3 Author: Randy Dunlap Date: Wed May 18 09:03:34 2011 +1000 crypto: aesni-intel - fix aesni build on i386 Fix build error on i386 by moving function prototypes: arch/x86/crypto/aesni-intel_glue.c: In function 'aesni_init': arch/x86/crypto/aesni-intel_glue.c:1263: error: implicit declaration of function 'crypto_fpu_init' arch/x86/crypto/aesni-intel_glue.c: In function 'aesni_exit': arch/x86/crypto/aesni-intel_glue.c:1373: error: implicit declaration of function 'crypto_fpu_exit' Signed-off-by: Randy Dunlap Signed-off-by: Herbert Xu commit 2f19e06ac30771c7cb96fd61d8aeacfa74dac21c Author: Fenghua Yu Date: Tue May 17 15:29:18 2011 -0700 x86, mem: memset_64.S: Optimize memset by enhanced REP MOVSB/STOSB Support memset() with enhanced rep stosb. On processors supporting enhanced REP MOVSB/STOSB, the alternative memset_c_e function using enhanced rep stosb overrides the fast string alternative memset_c and the original function. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-10-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 057e05c1d6440117875f455e59da8691e08f65d5 Author: Fenghua Yu Date: Tue May 17 15:29:17 2011 -0700 x86, mem: memmove_64.S: Optimize memmove by enhanced REP MOVSB/STOSB Support memmove() by enhanced rep movsb. On processors supporting enhanced REP MOVSB/STOSB, the alternative memmove() function using enhanced rep movsb overrides the original function. The patch doesn't change the backward memmove case to use enhanced rep movsb. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-9-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 101068c1f4a947ffa08f2782c78e40097300754d Author: Fenghua Yu Date: Tue May 17 15:29:16 2011 -0700 x86, mem: memcpy_64.S: Optimize memcpy by enhanced REP MOVSB/STOSB Support memcpy() with enhanced rep movsb. On processors supporting enhanced rep movsb, the alternative memcpy() function using enhanced rep movsb overrides the original function and the fast string function. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-8-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 4307bec9344aed83f8107c3eb4285bd9d218fc10 Author: Fenghua Yu Date: Tue May 17 15:29:15 2011 -0700 x86, mem: copy_user_64.S: Support copy_to/from_user by enhanced REP MOVSB/STOSB Support copy_to_user/copy_from_user() by enhanced REP MOVSB/STOSB. On processors supporting enhanced REP MOVSB/STOSB, the alternative copy_user_enhanced_fast_string function using enhanced rep movsb overrides the original function and the fast string function. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-7-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit e365c9df2f2f001450decf9512412d2d5bd1cdef Author: Fenghua Yu Date: Tue May 17 15:29:14 2011 -0700 x86, mem: clear_page_64.S: Support clear_page() with enhanced REP MOVSB/STOSB Intel processors are adding enhancements to REP MOVSB/STOSB and the use of REP MOVSB/STOSB for optimal memcpy/memset or similar functions is recommended. Enhancement availability is indicated by CPUID.7.0.EBX[9] (Enhanced REP MOVSB/ STOSB). Support clear_page() with rep stosb for processor supporting enhanced REP MOVSB /STOSB. On processors supporting enhanced REP MOVSB/STOSB, the alternative clear_page_c_e function using enhanced REP STOSB overrides the original function and the fast string function. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-6-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 9072d11da15a71e086eab3b5085184f2c1d06913 Author: Fenghua Yu Date: Tue May 17 15:29:13 2011 -0700 x86, alternative: Add altinstruction_entry macro Add altinstruction_entry macro to generate .altinstructions section entries from assembly code. This should be less failure-prone than open-coding. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-5-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 509731336313b3799cf03071d72c64fa6383895e Author: Fenghua Yu Date: Tue May 17 15:29:12 2011 -0700 x86, alternative, doc: Add comment for applying alternatives order Some string operation functions may be patched twice, e.g. on enhanced REP MOVSB /STOSB processors, memcpy is patched first by fast string alternative function, then it is patched by enhanced REP MOVSB/STOSB alternative function. Add comment for applying alternatives order to warn people who may change the applying alternatives order for any reason. [ Documentation-only patch ] Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-4-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 161ec53c702ce9df2f439804dfb9331807066daa Author: Fenghua Yu Date: Tue May 17 15:29:11 2011 -0700 x86, mem, intel: Initialize Enhanced REP MOVSB/STOSB If kernel intends to use enhanced REP MOVSB/STOSB, it must ensure IA32_MISC_ENABLE.Fast_String_Enable (bit 0) is set and CPUID.(EAX=07H, ECX=0H): EBX[bit 9] also reports 1. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-3-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit 724a92ee45c04cb9d82884a856b03b1e594d9de1 Author: Fenghua Yu Date: Tue May 17 15:29:10 2011 -0700 x86, cpufeature: Add CPU feature bit for enhanced REP MOVSB/STOSB Intel processors are adding enhancements to REP MOVSB/STOSB and the use of REP MOVSB/STOSB for optimal memcpy/memset or similar functions is recommended. Enhancement availability is indicated by CPUID.7.0.EBX[9] (Enhanced REP MOVSB/ STOSB). Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305671358-14478-2-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin commit b56269468483a0255a27126ebc2ae7e321638d7b Author: David S. Miller Date: Tue May 17 17:53:22 2011 -0400 sfc: Don't use enums as a bitmask. This fixes: drivers/net/sfc/mcdi_mac.c: In function ‘efx_mcdi_set_mac’: drivers/net/sfc/mcdi_mac.c:36:2: warning: case value ‘3’ not in enumerated type ‘enum efx_fc_type’ Signed-off-by: David S. Miller commit a51f7a66fb5e4af5ec4286baef940d06594b59d2 Author: Jesse Barnes Date: Thu May 5 14:42:26 2011 -0700 drm/i915: enable rc6 by default With FBC disabled by default, it should be safe to enable RC6. So let's give it a try. Signed-off-by: Jesse Barnes Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit 9cbc94eabb0791906051bbfac024ef2c2be8e079 Merge: 1d1652c 7cc31a9 Author: David S. Miller Date: Tue May 17 17:33:11 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/vmxnet3/vmxnet3_ethtool.c net/core/dev.c commit c1a9f047638b27e481d097910604316b8a0d132b Author: Jesse Barnes Date: Thu May 5 15:24:21 2011 -0700 drm/i915: add fbc enable flag, but disable by default FBC has too many corner cases that we don't currently deal with, so disable it by default so we can enable more important features like RC6, which conflicts in some configurations. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=31742 Signed-off-by: Jesse Barnes Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit 1d1652cbdb9885e4d73972263e4cdbe1b0beebfe Author: David S. Miller Date: Tue May 17 17:28:02 2011 -0400 ipv4: Don't use enums as bitmasks in ip_fragment.c Noticed by Joe Perches. Signed-off-by: David S. Miller commit 6538df80194e305f1b78cafb556f4bb442f808b3 Author: Rafael J. Wysocki Date: Tue May 17 23:26:21 2011 +0200 PM: Introduce generic prepare and complete callbacks for subsystems Introduce generic .prepare() and .complete() power management callbacks, currently missing, that can be used by subsystems and power domains and export them. Provide NULL definitions of all the generic system sleep callbacks for CONFIG_PM_SLEEP unset. Signed-off-by: Rafael J. Wysocki commit 91e7c75ba93c48a82670d630b9daac92ff70095d Author: Rafael J. Wysocki Date: Tue May 17 23:26:00 2011 +0200 PM: Allow drivers to allocate memory from .prepare() callbacks safely If device drivers allocate substantial amounts of memory (above 1 MB) in their hibernate .freeze() callbacks (or in their legacy suspend callbcks during hibernation), the subsequent creation of hibernate image may fail due to the lack of memory. This is the case, because the drivers' .freeze() callbacks are executed after the hibernate memory preallocation has been carried out and the preallocated amount of memory may be too small to cover the new driver allocations. Unfortunately, the drivers' .prepare() callbacks also are executed after the hibernate memory preallocation has completed, so they are not suitable for allocating additional memory either. Thus the only way a driver can safely allocate memory during hibernation is to use a hibernate/suspend notifier. However, the notifiers are called before the freezing of user space and the drivers wanting to use them for allocating additional memory may not know how much memory needs to be allocated at that point. To let device drivers overcome this difficulty rework the hibernation sequence so that the memory preallocation is carried out after the drivers' .prepare() callbacks have been executed, so that the .prepare() callbacks can be used for allocating additional memory to be used by the drivers' .freeze() callbacks. Update documentation to match the new behavior of the code. Signed-off-by: Rafael J. Wysocki commit c650da23d59d2c82307380414606774c6d49b8bd Author: Rafael J. Wysocki Date: Tue May 17 23:25:10 2011 +0200 PM: Remove CONFIG_PM_VERBOSE Now that we have CONFIG_DYNAMIC_DEBUG there is no need for yet another flag causing dev_dbg() and pr_debug() statements in the core PM code to produce output. Moreover, CONFIG_PM_VERBOSE causes so much output to be generated that it's not really useful and almost no one sets it. References: https://bugzilla.kernel.org/show_bug.cgi?id=23182 Signed-off-by: Rafael J. Wysocki commit 290c748725c170ed9a02522959ae67f528eefe98 Merge: 2d2a916 72874da Author: Rafael J. Wysocki Date: Tue May 17 23:23:46 2011 +0200 Merge branch 'power-domains' into for-linus * power-domains: PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset PM: Revert "driver core: platform_bus: allow runtime override of dev_pm_ops" OMAP1 / PM: Use generic clock manipulation routines for runtime PM PM / Runtime: Generic clock manipulation rountines for runtime PM (v6) PM / Runtime: Add subsystem data field to struct dev_pm_info OMAP2+ / PM: move runtime PM implementation to use device power domains PM / Platform: Use generic runtime PM callbacks directly shmobile: Use power domains for platform runtime PM PM: Export platform bus type's default PM callbacks PM: Make power domain callbacks take precedence over subsystem ones commit 2d2a9163bd4f3ba301f8138c32e4790edc30156c Merge: 1c1be3a 2e711c0 Author: Rafael J. Wysocki Date: Tue May 17 23:23:40 2011 +0200 Merge branch 'syscore' into for-linus * syscore: PM: Remove sysdev suspend, resume and shutdown operations PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM PM / AVR32: Use struct syscore_ops instead of sysdevs for PM PM / Blackfin: Use struct syscore_ops instead of sysdevs for PM ARM / Samsung: Use struct syscore_ops for "core" power management ARM / PXA: Use struct syscore_ops for "core" power management ARM / SA1100: Use struct syscore_ops for "core" power management ARM / Integrator: Use struct syscore_ops for core PM ARM / OMAP: Use struct syscore_ops for "core" power management ARM: Use struct syscore_ops instead of sysdevs for PM in common code commit 1c1be3a949a61427a962771c85a347c822aeb991 Author: Rafael J. Wysocki Date: Sun May 15 11:39:48 2011 +0200 Revert "PM / Hibernate: Reduce autotuned default image size" This reverts commit bea3864fb627d110933cfb8babe048b63c4fc76e (PM / Hibernate: Reduce autotuned default image size), because users are now able to resolve the issue this commit was supposed to address in a different way (i.e. by using the new /sys/power/reserved_size interface). Signed-off-by: Rafael J. Wysocki commit ddeb648708108091a641adad0a438ec4fd8bf190 Author: Rafael J. Wysocki Date: Sun May 15 11:38:48 2011 +0200 PM / Hibernate: Add sysfs knob to control size of memory for drivers Martin reports that on his system hibernation occasionally fails due to the lack of memory, because the radeon driver apparently allocates too much of it during the device freeze stage. It turns out that the amount of memory allocated by radeon during hibernation (and presumably during system suspend too) depends on the utilization of the GPU (e.g. hibernating while there are two KDE 4 sessions with compositing enabled causes radeon to allocate more memory than for one KDE 4 session). In principle it should be possible to use image_size to make the memory preallocation mechanism free enough memory for the radeon driver, but in practice it is not easy to guess the right value because of the way the preallocation code uses image_size. For this reason, it seems reasonable to allow users to control the amount of memory reserved for driver allocations made after the hibernate preallocation, which currently is constant and amounts to 1 MB. Introduce a new sysfs file, /sys/power/reserved_size, whose value will be used as the amount of memory to reserve for the post-preallocation reservations made by device drivers, in bytes. For backwards compatibility, set its default (and initial) value to the currently used number (1 MB). References: https://bugzilla.kernel.org/show_bug.cgi?id=34102 Reported-and-tested-by: Martin Steigerwald Signed-off-by: Rafael J. Wysocki commit 13e381365614855bf14c8ad68f9b65e3afd3dd2c Author: Eric Dumazet Date: Wed May 11 22:40:45 2011 +0200 PM / Wakeup: Remove useless synchronize_rcu() call wakeup_source_add() adds an item into wakeup_sources list. There is no need to call synchronize_rcu() at this point. Its only needed in wakeup_source_remove() Signed-off-by: Eric Dumazet Signed-off-by: Rafael J. Wysocki commit 13d53f8775c6a00b070a3eef6833795412eb7fcd Author: Kay Sievers Date: Tue May 10 21:27:34 2011 +0200 kmod: always provide usermodehelper_disable() We need to prevent kernel-forked processes during system poweroff. Such processes try to access the filesystem whose disks we are trying to shutdown at the same time. This causes delays and exceptions in the storage drivers. A follow-up patch will add these calls and need usermodehelper_disable() also on systems without suspend support. Signed-off-by: Kay Sievers Signed-off-by: Rafael J. Wysocki commit c3b0795c98c08351567464150db66d11e05d7611 Author: Amerigo Wang Date: Tue May 10 21:09:38 2011 +0200 PM / ACPI: Remove acpi_sleep=s4_nonvs acpi_sleep=s4_nonvs is superseded by acpi_sleep=nonvs, so remove it. Signed-off-by: WANG Cong Acked-by: Pavel Machek Acked-by: Len Brown Signed-off-by: Rafael J. Wysocki commit e762318baae3002944d68220910aef7caffcd065 Author: Rafael J. Wysocki Date: Sat May 7 18:11:52 2011 +0200 PM / Wakeup: Fix build warning related to the "wakeup" sysfs file The "wakeup" device sysfs file is only created if CONFIG_PM_SLEEP is set, so put it under CONFIG_PM_SLEEP and make a build warning related to it go away. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit a144c6a6c924aa1da04dd77fb84b89927354fdff Author: Rafael J. Wysocki Date: Fri May 6 20:09:42 2011 +0200 PM: Print a warning if firmware is requested when tasks are frozen Some drivers erroneously use request_firmware() from their ->resume() (or ->thaw(), or ->restore()) callbacks, which is not going to work unless the firmware has been built in. This causes system resume to stall until the firmware-loading timeout expires, which makes users think that the resume has failed and reboot their machines unnecessarily. For this reason, make _request_firmware() print a warning and return immediately with error code if it has been called when tasks are frozen and it's impossible to start any new usermode helpers. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Reviewed-by: Valdis Kletnieks commit e1866b33b1e89f077b7132daae3dfd9a594e9a1a Author: Rafael J. Wysocki Date: Fri Apr 29 00:33:45 2011 +0200 PM / Runtime: Rework runtime PM handling during driver removal The driver core tries to prevent race conditions between runtime PM and driver removal from happening by incrementing the runtime PM usage counter of the device and executing pm_runtime_barrier() before running the bus notifier and the ->remove() callbacks provided by the device's subsystem or driver. This guarantees that, if a future runtime suspend of the device has been scheduled or a runtime resume or idle request has been queued up right before the driver removal, it will be canceled or waited for to complete and no other asynchronous runtime suspend or idle requests for the device will be put into the PM workqueue until the ->remove() callback returns. However, it doesn't prevent resume requests from being queued up after pm_runtime_barrier() has been called and it doesn't prevent pm_runtime_resume() from executing the device subsystem's runtime resume callback. Morever, it prevents the device's subsystem or driver from putting the device into the suspended state by calling pm_runtime_suspend() from its ->remove() routine. This turns out to be a major inconvenience for some subsystems and drivers that want to leave the devices they handle in the suspended state. To really prevent runtime PM callbacks from racing with the bus notifier callback in __device_release_driver(), which is necessary, because the notifier is used by some subsystems to carry out operations affecting the runtime PM functionality, use pm_runtime_get_sync() instead of the combination of pm_runtime_get_noresume() and pm_runtime_barrier(). This will resume the device if it's in the suspended state and will prevent it from being suspended again until pm_runtime_put_*() is called. To allow subsystems and drivers to put devices into the suspended state by calling pm_runtime_suspend() from their ->remove() routines, execute pm_runtime_put_sync() after running the bus notifier in __device_release_driver(). This will require subsystems and drivers to make their ->remove() callbacks avoid races with runtime PM directly, but it will allow of more flexibility in the handling of devices during the removal of their drivers. Signed-off-by: Rafael J. Wysocki commit ee940d8dccd899aa1777ea84da3d9cd04b1d2e8e Author: Mike Frysinger Date: Mon Apr 25 12:33:15 2011 +0200 Freezer: Use SMP barriers The freezer processes are dealing with multiple threads running simultaneously, and on a UP system, the memory reads/writes do not need barriers to keep things in sync. These are only needed on SMP systems, so use SMP barriers instead. Signed-off-by: Mike Frysinger Acked-by: Pavel Machek Signed-off-by: Rafael J. Wysocki commit 3c431936087e93d2219a184a8e19eaa68077e379 Author: MyungJoo Ham Date: Fri Apr 22 22:00:54 2011 +0200 PM / Suspend: Do not ignore error codes returned by suspend_enter() The current implementation of suspend-to-RAM returns 0 if there is an error from suspend_enter(), because suspend_devices_and_enter() ignores the return value from suspend_enter(). This patch addresses this issue and properly keep the error return from suspend_enter() and let suspend_devices_and_enter relay the error return. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Rafael J. Wysocki commit 7cc31a9ae1477abc79d5992b3afe889f25c50c99 Author: Michał Mirosław Date: Tue May 17 16:50:02 2011 -0400 net: ethtool: fix IPV6 checksum feature name string Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 02bb4b9e4c31809e4c751d7f3808c448e7ad0244 Author: K. Y. Srinivasan Date: Mon May 16 06:44:37 2011 -0700 Staging: hv: vmbus_drv: Get rid of util synchronixation based on channel counting Now that we have dealt with this issue differently, get rid of the old mechanism. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b9d8e35256251e6e6a27f5f190d4ec462be7f620 Author: K. Y. Srinivasan Date: Mon May 16 06:44:36 2011 -0700 Staging: hv: Re-implement the synchronization for util channels The util module expects that the util channels are fully initialized when the module loads. To deal with the race condition which can result in a NULL pointer dereferencing if the util module were to load before all the util channels are fully initialized, in commit: commit: 8b5d6d3bd3e34e4cc67d875c8c88007c1c9aa96 Author: Haiyang Zhang Date: Fri May 28 23:22:44 2010 +000 code was introduced in the vmbus driver to ensure that all the util channels were fully initialized before returning from the load of the vmbus driver. This solution has several problems: if for whatever reason, any util channel were to fail to initialize, vmbus driver would wait indefinitely. We deal with this synchronization issue very differently in this patch. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 31bceb845e0f5393db1d9bf033d365cff7132c93 Author: K. Y. Srinivasan Date: Mon May 16 06:44:35 2011 -0700 Staging: hv: vmbus_drv: Introduce state in struct vmbus_channel to track util services In preparation for getting rid of util channel synchronization based on counting util channels, introduce state in struct vmbus_channel to track util services. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2494b030ba9334c7dd7df9b9f7abe4eacc950ec5 Author: Fenghua Yu Date: Tue May 17 12:33:26 2011 -0700 x86, cpufeature: Fix cpuid leaf 7 feature detection CPUID leaf 7, subleaf 0 returns the maximum subleaf in EAX, not the number of subleaves. Since so far only subleaf 0 is defined (and only the EBX bitfield) we do not need to qualify the test. Signed-off-by: Fenghua Yu Link: http://lkml.kernel.org/r/1305660806-17519-1-git-send-email-fenghua.yu@intel.com Signed-off-by: H. Peter Anvin Cc: 2.6.36..39 commit 7e0b3bf3abec4cd30c58e6311f913759a9e324d7 Author: Ian Abbott Date: Mon May 16 15:28:16 2011 +0100 staging: comedi: addi-data: Get rid of redundant ps_BoardInfo The ps_BoardInfo pointer in the device private data is redundant as we can just use the this_board macro to access the same data, as is done elsewhere in the code. Get rid of the pointer and change the code to use the this_board macro instead. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit 57517878df4e5769885e80aba895f4e69b1ddbe9 Author: Ian Abbott Date: Mon May 16 15:28:15 2011 +0100 staging: comedi: addi-data: Don't overwrite read-only data The drivers for ADDI-DATA cards can override some static parameters for the board type using information read from EEPROM. Unfortunately, they currently write the parameters from the EEPROM back to the shared, read-only board data! The problem has been masked during compilation by type-casting away the const-ness of the data. This patch changes the code to use an area in the private data for the board instance to hold the parameters read from EEPROM (after initializing the parameters from the static board data). It also changes the type-casts to the read-only data to preserve the const qualifier. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit cfe3cffd8e44c0b69c9c50a1659acbd32ac19b70 Author: Ian Abbott Date: Mon May 16 12:05:54 2011 +0100 staging: comedi: adv_pci_dio: Add a counter subdevice to PCI-1751 The Advantech PCI-1751 has a 8254 counter chip on board. Add it to the device as a counter subdevice. Apparently the counter can generate interrupts although the driver does not currently use this capability. Original patch by Ivan Russkih (Иван Русских) . Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman commit c5cbebf87f49dfb4f4ccdf86f6c24b4912a3061f Author: Julia Lawall Date: Mon May 16 14:24:57 2011 +0200 drivers/staging/line6/driver.c: Drop unneeded put functions. This seems to be the result of patches ab366c1a and 1027f476 crossing each other. Patch ab366c1a adds calls to usb_put_intf and usb_put_dev at the end of the function line6_probe, in the error handling code, while patch 1027f476 moves the calls to the corresponding get function from the beginning to the end of line6_probe, making the calls to put in the error handling code unnecessary. // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 10ceaac958b0b04d6939ec114b7182d78d2a0027 Author: Naveen Singh Date: Mon May 16 15:10:15 2011 +0300 ath6kl: iw dev wlan0 link implementation implementing the cfg ops that gets called when iw dev wlan0 link is issued by user. The ops that needs to be implemented is get_station. kvalo: check the mac address, remove signal_pending(), use ARRAY_SIZE() and fix style issues Signed-off-by: Naveen Singh Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit d93089df1b752e4da048cd7f4749d29120b65e55 Author: Julia Lawall Date: Mon May 16 11:20:29 2011 +0200 drivers/staging/ath6kl/os/linux/cfg80211.c: Add missing call to cfg80211_put_bss A call to cfg80211_get_bss hould be accompanied by a call to cfg80211_put_bss in error-handling code. A simplified version of the semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @r exists@ local idexpression struct cfg80211_bss * x; expression ra,rr; position p1,p2; @@ x = cfg80211_get_bss@p1(...) ... when != x = rr when != cfg80211_put_bss(x,...) when != if (...) { ... cfg80211_put_bss(x,...) ...} if(...) { ... when != x = ra when forall when != cfg80211_put_bss(x,...) \(return <+...x...+>; \| return@p2...; \) } @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("cfg80211_get_bss",p1) cocci.print_secs("return",p2) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit aacd531df9b88f7419e22708f72a476030863efe Author: Clemens Noss Date: Sun May 15 22:50:46 2011 +0200 staging: brcm80211: use correct pointer types in bcm_pktq_flush to clarify the intention: On Sun, May 15, 2011 at 09:54:26PM +0200, Arend van Spriel wrote: > On 05/15/2011 08:10 PM, Hauke Mehrtens wrote: [...] >> Why don't you use the correct pointer type here instead of casting then >> around and the parameter names are meaningless too. >> >> static bool cb_del_ampdu_pkt(struct sk_buff *mpdu, struct >> cb_del_ampdu_pars *ampdu_pars) [...] > Actually this is a generic callback mechanism in which an additional > parameter can be passed, which can be of *any* type hence a void pointer > seems justified here and a meaningless name is used. I do agree that the > txi parameter will always be a struct sk_buff and should be indicated as > such. Reported-by: Hauke Mehrtens Signed-off-by: Clemens Noss Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 84067de664ee6adba8c373e4298d755abd783b24 Author: Clemens Noss Date: Sun May 15 22:45:30 2011 +0200 staging: brcm80211: fix cast to pointer from integer bcm_pktq_flush and related functions only ever get 0 or a pointer for arg, so make it a pointer. This might fix a crash on 64bit. Signed-off-by: Clemens Noss Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 7a9aea511a902d12b7a37e93b8c1eff24a0b2e48 Author: Rahul Tank Date: Sat May 14 11:31:42 2011 +0530 staging: echo: Trivial indentation changes --bcaec50161b317392804a33628dd Content-Type: text/plain; charset=ISO-8859-1 Hi Greg, Please find patch attached . Thanks, Rahul Hi Greg,

 Please find patch attached .

Thanks,
 Rahul
From ba1dbafaef1a87c1338c5bb0e6bba3be06071c90 Mon Sep 17 00:00:00 2001 From: Rahul Tank Date: Sat, 14 May 2011 11:28:25 +0530 Subject: [PATCH] Trivial indentation cleanup Signed-off-by: Rahul Tank Signed-off-by: Greg Kroah-Hartman commit 1c6e79d9922a8199dce9efbdda3e1942b8ee4a0b Author: matt mooney Date: Sat May 14 03:55:19 2011 -0700 staging: usbip: userspace: modify project gcc flags Add -Werror, remove -Wstrict-prototypes, and change -W to -Wextra. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit be0d54ae39fa5817a70cb002839f9cff6730849a Author: matt mooney Date: Sat May 14 03:55:18 2011 -0700 staging: usbip: userspace: move common cflags to configure.ac There are a standard set of cflags that are used in each makefile so let's set those in EXTRA_CFLAGS and enforce them for the entire project. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 968c6595e7a3905f55a024e8e743dd823b26cdf8 Author: matt mooney Date: Sat May 14 03:55:17 2011 -0700 staging: usbip: userspace: remove gcc warnings The warnings were for unused parameters, so __attribute__((unused)) has been added until it can be determined they are truly unneeded. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 88d6f40839856552bed131f368f6cd33595c7496 Author: matt mooney Date: Sat May 14 03:55:16 2011 -0700 staging: usbip: userspace: remove revision $Id$ This is git not CVS! Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit d762f5e10cdac605d6d3fb57ce36ed4d25b4302c Author: matt mooney Date: Sat May 14 03:55:15 2011 -0700 staging: usbip: userspace: set libusbip version in configure.ac Move libusbip version setting to configure.ac so that version numbers can be found in a single location. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit cd62e07e875668125f0665539d92854e00c3df3a Author: matt mooney Date: Sat May 14 03:55:14 2011 -0700 staging: usbip: userspace: cleanup makefiles Remove unneeded comments; change deprecated flag INCLUDE to AM_CPPFLAGS and put -D option in *_CPPFLAGS; and use "simply expanded variables" in assignments. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit af8bab0639aee8820c592d58c4a34b73258891ac Author: matt mooney Date: Sat May 14 03:55:13 2011 -0700 staging: usbip: userspace: configure.ac: major overhaul All parameters have been quoted; and autoscan was rerun so new headers, types, and functions were added. The deprecated macros AM_CONFIG_HEADER and AM_PROG_LIBTOOL were changed to AC_CONFIG_HEADERS and LT_INIT, respectively. The AS_HELP_STRING macro is used to avoid arbitrary spacing for proper help menu alignment, and AS_CASE to avoid quoting issues. And finally, the macros were realigned to allow mere mortals the ability to read them. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 220973dd23570a40395dfe6d594a5746f336511f Author: matt mooney Date: Sat May 14 03:55:12 2011 -0700 staging: usbip: userspace: update module name references Change all references to the kernel modules to correspond with the new names. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 9abec45232e0716ce4c4c67c566596ad88d7105d Author: matt mooney Date: Sat May 14 03:55:11 2011 -0700 staging: usbip: userspace: whitespace cleanup Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 33df2286f78fc1d09c9a1d6ce699bf6f8dff7b8d Author: matt mooney Date: Sat May 14 03:55:10 2011 -0700 staging: usbip: userspace: remove unused files Remove ChangeLog and NEWS. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit f9b90071e0539a00ae7c727bd6ffa00ab16f1382 Author: matt mooney Date: Sat May 14 03:55:09 2011 -0700 staging: usbip: userspace: rename source directories Rename cmd/ to src/ and lib/ to libsrc/. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7f27b199119980cba63c7968091d090beb6960cf Author: matt mooney Date: Sat May 14 03:55:08 2011 -0700 staging: usbip: userspace: move manpages to separate directory Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 0945b4fe3f016900f1f68255e24920b28624a9aa Author: Takahiro Hirofuchi Date: Sat May 14 03:55:07 2011 -0700 staging: usbip: add userspace code Add userspace code from svn trunk revision 175. Located at https://usbip.svn.sourceforge.net/svnroot/usbip/linux/trunk/src. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 604ae14ffb6d75d6eef4757859226b758d6bf9e3 Author: Michael S. Tsirkin Date: Mon May 16 10:37:39 2011 +0000 net: Change netdev_fix_features messages loglevel Cool, how about we make 'Features changed' debug as well? This way userspace can't fill up the log just by tweaking tun features with an ioctl. Signed-off-by: Michael S. Tsirkin Signed-off-by: David S. Miller commit b9eb8b8752804cecbacdb4d24b52e823cf07f107 Author: Anton Blanchard Date: Tue May 17 15:38:57 2011 -0400 net: recvmmsg: Strip MSG_WAITFORONE when calling recvmsg recvmmsg fails on a raw socket with EINVAL. The reason for this is packet_recvmsg checks the incoming flags: err = -EINVAL; if (flags & ~(MSG_PEEK|MSG_DONTWAIT|MSG_TRUNC|MSG_CMSG_COMPAT|MSG_ERRQUEUE)) goto out; This patch strips out MSG_WAITFORONE when calling recvmmsg which fixes the issue. Signed-off-by: Anton Blanchard Cc: stable@kernel.org [2.6.34+] Signed-off-by: David S. Miller commit a9869c94251a7a1c9bb369baa0e7917b9d315b37 Author: K. Y. Srinivasan Date: Thu May 12 19:35:17 2011 -0700 Staging: hv: netvsc_drv: Make netvsc_drv_exit() the module exit function Make netvsc_drv_exit() the module exit function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1fde28cffb6953487e0ab96a4123f4443d499364 Author: K. Y. Srinivasan Date: Thu May 12 19:35:16 2011 -0700 Staging: hv: netvsc_drv: Make netvsc_drv_init the module init function Now make netvsc_drv_init the module init function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bb546d0e930efa8b098d2fc8b5360fcc3eb92002 Author: K. Y. Srinivasan Date: Thu May 12 19:35:15 2011 -0700 Staging: hv: netvsc_drv: Move the dmi_check code to netvsc_drv_init() In preparation to eliminating netvsc_init(), move the dmi_check code to netvsc_drv_init(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 073aad34b335693e2134fdfaaa6ff69b8f3106bb Author: K. Y. Srinivasan Date: Thu May 12 19:35:14 2011 -0700 Staging: hv: netvsc_drv: Change the signature of netvsc_drv_init() Change the signature of netvsc_drv_init(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4753ff6a10136e93c751b53406c8542f446cfe84 Author: K. Y. Srinivasan Date: Thu May 12 19:35:13 2011 -0700 Staging: hv: netvsc_drv: Move the dmi table declaration to earlier in the file Move the dmi table declaration to earlier in the file. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 770cbb589b81a7eaf013e128658280bc9123a888 Author: K. Y. Srinivasan Date: Thu May 12 19:35:12 2011 -0700 Staging: hv: netvsc_drv: Get rid of the used type struct netvsc_driver Now, get rid of the unused type struct netvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d00717301bf806fc1d0095048516d2623acac5ca Author: K. Y. Srinivasan Date: Thu May 12 19:35:11 2011 -0700 Staging: hv: netvsc_drv: Get rid of the unused function drv_to_netvscdrv() Get rid of the unused function drv_to_netvscdrv(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 10ffe98cdce196c0fc51ba94b28835100301a5f0 Author: K. Y. Srinivasan Date: Thu May 12 19:35:10 2011 -0700 Staging: hv: netvsc_drv: Get rid of the empty function rndis_filter_init() Get rid of the empty function rndis_filter_init(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c7620cd029e427b4addc22a68b5a273d00b96904 Author: K. Y. Srinivasan Date: Thu May 12 19:35:09 2011 -0700 Staging: hv: netvsc_drv: Get rid of some unnecessary/dead code from rndis_filter.c After the cleanup that has been done, some code in rndis_filter.c is no longer needed; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit fde0ef9b235d8cb141e3aa35fdc7e9889e3a4cb3 Author: K. Y. Srinivasan Date: Thu May 12 19:35:08 2011 -0700 Staging: hv: netvsc_drv: Make netvsc_drv an instance of struct hv_driver In preparation to getting rid of struct netvsc_driver, make the variable netvsc_drv an instance of struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4e3cba6b4c34dd23a2e2487a26ffcecdf6bd3498 Author: K. Y. Srinivasan Date: Thu May 12 19:35:07 2011 -0700 Staging: hv: netvsc_drv: Get rid of the unnecessary state from struct netvsc_driver Now get rid of unused state (ring_buf_size) from struct netvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 70843a2177f321d86aa30ea7e6c6c1caa6c7d173 Author: K. Y. Srinivasan Date: Thu May 12 19:35:06 2011 -0700 Staging: hv: netvsc_drv: Get rid of the unnecessary assignment of ring_buf_size Since we pass ring size information differently, this assignment is not needed. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit aae23986fd5baaf48c7112612fbff7fb1094ad03 Author: K. Y. Srinivasan Date: Thu May 12 19:35:05 2011 -0700 Staging: hv: netvsc_drv: Get the ring size information from struct netvsc_device_info Get the ring size information from struct netvsc_device_info. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 78001df39c563f5bc2e433ee65d0bafdb89cef43 Author: K. Y. Srinivasan Date: Thu May 12 19:35:04 2011 -0700 Staging: hv: netvsc_drv: Add ring_size element to struct netvsc_device_info Add ring_size element to struct netvsc_device_info. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8afe583d2100fa5bea6f294570c2d16e4053419a Author: K. Y. Srinivasan Date: Thu May 12 19:35:03 2011 -0700 Staging: hv: netvsc_drv: Get rid of unused state in struct netvsc_driver Now, get rid of unused state (req_ext_size) from struct netvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d0e33046142c4896444202671d8f808484554f27 Author: K. Y. Srinivasan Date: Thu May 12 19:35:02 2011 -0700 Staging: hv: netvsc_drv: Get rid of an unnecessary assignment in rndis_filter.c Now that we compute the size of struct rndis_filter_packet where it is needed, get rid of the unnecessary assignment. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f8ba8c7050d1d08d6f06a6a762d7b4e75f4bb56d Author: K. Y. Srinivasan Date: Thu May 12 19:35:01 2011 -0700 Staging: hv: netvsc_drv: Directly get the size of rndis_filter_packet Directly get the size of rndis_filter_packet. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9dbfd1509e59b16bc83e0835f52e1b05a9e54212 Author: K. Y. Srinivasan Date: Thu May 12 19:35:00 2011 -0700 Staging: hv: netvsc_drv: Move the definition of struct rndis_filter_packet to hyperv_net.h Move the definition of struct rndis_filter_packet to hyperv_net.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 11e73de7ccc1c9c61c65f914a214cb6467966a51 Author: Ian Campbell Date: Mon May 16 23:59:48 2011 +0000 xen: netback: use __CONST_RING_SIZE not __RING_SIZE The later causes warnings with gcc 4.5+. __CONST_RING_SIZE was introduced in 667c78afaec0 to fix this but as netback wasn't upstream at the time it did not benefit, hence: CC drivers/net/xen-netback/netback.o drivers/net/xen-netback/netback.c:110:37: warning: variably modified 'grant_copy_op' at file scope [enabled by default] drivers/net/xen-netback/netback.c:111:30: warning: variably modified 'meta' at file scope [enabled by default] drivers/net/xen-netback/netback.c: In function 'xen_netbk_rx_action': drivers/net/xen-netback/netback.c:584:6: warning: variable 'irq' set but not used [-Wunused-but-set-variable] Thanks to Witold Baryluk for pointing this out. Signed-off-by: Ian Campbell Cc: Witold Baryluk Signed-off-by: David S. Miller commit e3f8a80efbf8a857fd26b5154c66b3fb614e5bbd Author: K. Y. Srinivasan Date: Thu May 12 19:34:59 2011 -0700 Staging: hv: netvsc_drv: Get rid of unnecessary state in struct netvsc_driver Since the function pointers in struct netvsc_driver are no longer used (as these are invoked directly), get rid of this unused state. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ac6f78590104f01036ae7f1ecc062411a251f756 Author: K. Y. Srinivasan Date: Thu May 12 19:34:58 2011 -0700 Staging: hv: netvsc_drv: Directly invoke the function rndis_filter_receive() Directly invoke the function rndis_filter_receive(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a25e1dbe9ede75b7601c477eee0b9e3c2e6b9870 Author: K. Y. Srinivasan Date: Thu May 12 19:34:57 2011 -0700 Staging: hv: netvsc_drv: Directly invoke the function netvsc_recv_callback() Directly invoke the function netvsc_recv_callback(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 39fb6aab389bda799f845d53adbda5df56dd2b0d Author: K. Y. Srinivasan Date: Thu May 12 19:34:56 2011 -0700 Staging: hv: netvsc_drv: Invoke netvsc_linkstatus_callback directly Invoke netvsc_linkstatus_callback directly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0ec6ff401148f4bfdfde9ac2761045a484eacb56 Author: K. Y. Srinivasan Date: Thu May 12 19:34:55 2011 -0700 Staging: hv: netvsc_drv: Invoke netvsc_send() directly Invoke netvsc_send() directly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 55acb696a8d43ff37cc5e30837bd8e635aff2ba9 Author: K. Y. Srinivasan Date: Thu May 12 19:34:54 2011 -0700 Staging: hv: netvsc_drv: Invoke rndis_filter_send() directly In preparation to getting rid of struct netvsc_driver, make the function rndis_filter_send() non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0652aebc5a4dffb0ee2bf0c4c71f8595402af46d Author: K. Y. Srinivasan Date: Thu May 12 19:34:53 2011 -0700 Staging: hv: netvsc_drv: Make the function rndis_filter_send() non-static In preparation to getting rid of struct netvsc_driver, make the function rndis_filter_send() non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5fcc411519d14ad1c327504586044fc2bb4669ce Author: K. Y. Srinivasan Date: Thu May 12 19:34:52 2011 -0700 Staging: hv: netvsc_drv: Make the function rndis_filter_receive() non-static In preparation to getting rid of struct netvsc_driver, make the function rndis_filter_receive() non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f79adf8f135a6dead5967a7266bd894e8f293529 Author: K. Y. Srinivasan Date: Thu May 12 19:34:51 2011 -0700 Staging: hv: netvsc_drv: Make the function netvsc_recv_callback() non-static In preparation to getting rid of struct netvsc_driver, make the function netvsc_recv_callback() non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 90ef117a30b64dd37b735bfbacbc5ae014a9f74f Author: K. Y. Srinivasan Date: Thu May 12 19:34:50 2011 -0700 Staging: hv: netvsc_drv: Make the function netvsc_linkstatus_callback() non-static In preparation to getting rid of struct netvsc_driver, make the function netvsc_linkstatus_callback() non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f9819f05f2c5a3fb61853c5fc8d20d61dfbfe89b Author: K. Y. Srinivasan Date: Thu May 12 19:34:49 2011 -0700 Staging: hv: netvsc_drv: Make the function netvsc_send non-static In preparation to getting rid of struct netvsc_driver, make the function netvsc_send non-static. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a76c36bc0ddc96a74885a3a8ffba268cfd209629 Author: K. Y. Srinivasan Date: Thu May 12 19:34:48 2011 -0700 Staging: hv: netvsc_drv: Get rid of unused state in struct netvsc_driver In preparation to getting rid of struct netvsc_driver, get rid of the unused state (void *ctx) in struct netvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a881fdd0cab987336a7a1b99630b3460689a3a60 Author: K. Y. Srinivasan Date: Thu May 12 19:34:47 2011 -0700 Staging: hv: netvsc_drv: Clean up the netvsc_drv_exit() function To conform to the Linux device model, the device should persist even when there is no driver bound to it. Cleanup the netvsc_drv_exit() routine keeping this in mind. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 96053efd3c8e13f85abe9783be0e70cb97e82f2b Author: K. Y. Srinivasan Date: Thu May 12 19:34:46 2011 -0700 Staging: hv: mousevsc_drv: Cleanup mousevsc_drv_exit() function To conform to the Linux device model, the device should persist even when there is no driver bound to it. Cleanup the mousevsc_drv_exit() routine keeping this in mind. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2bda87cb6c765bf2178d3da90367bf53dbcc14d6 Author: K. Y. Srinivasan Date: Thu May 12 19:34:45 2011 -0700 Staging: hv: storvsc_drv: Cleanup storvsc_drv_exit() function To conform to the Linux device model, the device should persist even when there is no driver bound to it. Cleanup the storvsc_drv_exit() routine keeping this in mind. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8553d753a494dfd952d7e44ab6f1171839b6185d Author: K. Y. Srinivasan Date: Thu May 12 19:34:44 2011 -0700 Staging: hv: blkvsc_drv: Cleanup the blkvsc_drv_exit() function To conform to the Linux device model, the device should persist even when there is no driver bound to it. Cleanup the blkvsc_drv_exit() routine keeping this in mind. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 459bce97655c8ca19b113efce98be0dd8d800652 Author: K. Y. Srinivasan Date: Thu May 12 19:34:43 2011 -0700 Staging: hv: mouse_drv: Fix a sparse warning Most of the sparse warnings in the hv code are from the base kernel. This patch fixes the only sparse related issue in the Hyper-V coode. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8a0794117bd5ab8df297932b9e9bd05ba430c472 Author: K. Y. Srinivasan Date: Thu May 12 19:34:42 2011 -0700 Staging: hv: netvsc: Cleanup hyperv_net.h Cleanup hyperv_net.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 299d0925e2c5fc27e538b721561c8bf649c6dc05 Author: K. Y. Srinivasan Date: Thu May 12 19:34:41 2011 -0700 Staging: hv: netvsc: Move the contents of rndis_filter.h to hyperv_net.h Move the contents of rndis_filter.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4a5cea3951c79dc6590207fcfb09cc062374c42c Author: K. Y. Srinivasan Date: Thu May 12 19:34:40 2011 -0700 Staging: hv: netvsc: Move the contents of rndis.h to hyperv_net.h Move the contents of rndis.h to hyperv_net.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5258490472e7076b1885da73b690dc57de0c8991 Author: K. Y. Srinivasan Date: Thu May 12 19:34:39 2011 -0700 Staging: hv: netvsc: Move the contents of netvsc.h to hyperv_net.h Move the contents of netvsc.h to hyperv_net.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 41308862d18ebba47e4b863a7b967dc7e5477fb9 Author: K. Y. Srinivasan Date: Thu May 12 19:34:38 2011 -0700 Staging: hv: netvsc: Include the contents of netvsc_api.h into hyperv_net.h Include the contents of netvsc_api.h into hyperv_net.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5ca7252a7e2be5e05772f202d94e173b7224e7a9 Author: K. Y. Srinivasan Date: Thu May 12 19:34:37 2011 -0700 Staging: hv: netvsc: Create a common header file for network driver Create a common header file for network driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5041e715c8ecdf4719de17a88508052b2329a41c Author: K. Y. Srinivasan Date: Thu May 12 19:34:36 2011 -0700 Staging: hv: Move the contents of storvsc_api.h to hyperv_storage.h Move the contents of storvsc_api.h to hyperv_storage.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e6572b035b7dd17e42c0b0f9271efdd368bcde31 Author: K. Y. Srinivasan Date: Thu May 12 19:34:35 2011 -0700 Staging: hv: stor: Move the contents of vstorage.h to hyperv_storage.h Move the contents of vstorage.h to hyperv_storage.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cdee15044f25baff5bbdce14cc6959f1a69acb03 Author: K. Y. Srinivasan Date: Thu May 12 19:34:34 2011 -0700 Staging: hv: stor: Create a common header file for storage drivers Create a common header file for storage drivers. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 43c698b927733dc060cabc7ebca2df3ec228e05d Author: K. Y. Srinivasan Date: Thu May 12 19:34:33 2011 -0700 Staging: hv: vmbus_drv: Cleanup hyperv_vmbus.h Cleanup hyperv_vmbus.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 89b2ca478126040d39a7a5fc39c0b32d2444f9e4 Author: K. Y. Srinivasan Date: Thu May 12 19:34:32 2011 -0700 Staging: hv: vmbus_drv: Move the contents of vmbus_private.h to vmbus_hyperv.h Move the contents of vmbus_private.h to vmbus_hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 940655c1032b7ffcb31da1e42a9432f5bcee8653 Author: K. Y. Srinivasan Date: Thu May 12 19:34:31 2011 -0700 Staging: hv: vmbus_drv: Move the contents of ring_buffer.h to hyperv_vmbus.h Move the contents of ring_buffer.h to hyperv_vmbus.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3645a917f761b14cb17cb2e1a27f54ef6ab1b14d Author: K. Y. Srinivasan Date: Thu May 12 19:34:30 2011 -0700 Staging: hv: vmbus_drv: Move the content of hv.h to hyperv_vmbus.h Move the content of hv.h to hyperv_vmbus.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit afbdc4a98b6b608c4d38b18a16e4cd62c6645c91 Author: K. Y. Srinivasan Date: Thu May 12 19:34:29 2011 -0700 Staging: hv: vmbus_drv: Include the contents of hv_api.h in hyperv_vmbus.h Include the contents of hv_api.h in hyperv_vmbus.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0f2a6619eeef158d11832436ce151987f18cb08d Author: K. Y. Srinivasan Date: Thu May 12 19:34:28 2011 -0700 Staging: hv: vmbus_drv: Create a common header file to build the vmbus driver Create a common header file to build the vmbus driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8ff3e6fc58d796640bb21bf398487c42230734d2 Author: K. Y. Srinivasan Date: Thu May 12 19:34:27 2011 -0700 Staging: hv: Include asm/hyperv.h in hyperv.h As the entries in hv_api.h are already in asm/hyperv.h, let's use that file instead and delete these. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bd07d87fd4b8a6af9820544b6bc6c37215d6f8ad Author: David Rientjes Date: Thu May 12 13:10:49 2011 -0700 slub: avoid label inside conditional Jumping to a label inside a conditional is considered poor style, especially considering the current organization of __slab_alloc(). This removes the 'load_from_page' label and just duplicates the three lines of code that it uses: c->node = page_to_nid(page); c->page = page; goto load_freelist; since it's probably not worth making this a separate helper function. Acked-by: Christoph Lameter Signed-off-by: David Rientjes Signed-off-by: Pekka Enberg commit 1393d9a1857471f816d0be1ccc1d6433a86050f6 Author: Christoph Lameter Date: Mon May 16 15:26:08 2011 -0500 slub: Make CONFIG_DEBUG_PAGE_ALLOC work with new fastpath Fastpath can do a speculative access to a page that CONFIG_DEBUG_PAGE_ALLOC may have marked as invalid to retrieve the pointer to the next free object. Use probe_kernel_read in that case in order not to cause a page fault. Cc: # 38.x Reported-by: Eric Dumazet Signed-off-by: Christoph Lameter Signed-off-by: Eric Dumazet Signed-off-by: Pekka Enberg commit 6332aa9d25e911cc97aa9cc09acee21afda07ea6 Author: Christoph Lameter Date: Mon May 16 15:26:06 2011 -0500 slub: Avoid warning for !CONFIG_SLUB_DEBUG Move the #ifdef so that get_map is only defined if CONFIG_SLUB_DEBUG is defined. Reported-by: David Rientjes Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit f9aea9fd2d03bd6b51a38d9866cf2b527966236c Author: Arend van Spriel Date: Fri May 13 11:59:52 2011 +0200 staging: brcm80211: fix checkpatch issue in wlc_channel.c Patch "[ba84f65] make function definitions and prototype consistent" introduced a checkpatch warning which is fixed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 40bee8c1f1e78f8fefe69bb320cd991c88a497bb Author: Sukesh Srikakula Date: Fri May 13 11:59:51 2011 +0200 staging: brcm80211: Corrected sdpcm_shared_t structure definition There is a mismatch in structure definition of 'sdpcm_shared_t' structure in driver & FW code. With this patch, it is corrected Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 1ce4784e675150748ff2d19b9a4ba287e3018905 Author: Sukesh Srikakula Date: Fri May 13 11:59:50 2011 +0200 staging: brcm80211: Better debug support added to brcmfmac driver With the current implementation there is no way to selectively enable required debug messages, as all the messages are currently under WL_DBG. With this fix, we are introducing several log levels which will enable us to print only the required debug messages. WL_ERR --> Prints error messages WL_CONN --> Prints all debug messages pertaining to connection management WL_SCAN --> Prints all debug messages pertaining to scanning WL_TRACE --> Prints all trace(Enter/Exit) sequence of cfg80211 calls WL_INFO --> Prints all informational messages. By default, only WL_ERR messages are enabled. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 65dd489204ffc7da8b8fd366a7ef7016db506bf2 Author: Sukesh Srikakula Date: Fri May 13 11:59:49 2011 +0200 staging: brcm80211: cfg80211 up/down routines in brcmfmac driver are fixed '__wl_cfg80211_up' & '__wl_cfg80211_down' routines are updated to correctly set the 'wl->status' variable. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 1f3b0085ed4f944f5b365a9070dbeb40fdfa1c0a Author: Sukesh Srikakula Date: Fri May 13 11:59:48 2011 +0200 staging: brcm80211: Removed unused variable from brcmfmac driver Removed unused variable from wl_profile structure Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9446af065b0df786cfeb58d61efaf51945d0f3de Author: Sukesh Srikakula Date: Fri May 13 11:59:47 2011 +0200 staging: brcm80211: Fixed scan notification functionality in brcmfmac driver Earlier brcmfmac driver used to report success even for an aborted scan. This functionality is now fixed with this patch. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e4dd632559075cfc84b053f080304b0478252c86 Author: Sukesh Srikakula Date: Fri May 13 11:59:46 2011 +0200 staging: brcm80211: Added support to change scan times from brcmfmac driver wl_dongle_scantime function moved out of conditional compilation to allow the fullmac driver to change FW scan times. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a1e962b64ffd1f96412bf1d4baf78bb6e0a2c797 Author: Sukesh Srikakula Date: Fri May 13 11:59:45 2011 +0200 staging: brcm80211: Added support to change roaming parameters from brcmfmac driver 'wl_dongle_roam' function moved out of conditional compilation to allow the fullmac driver to change FW roaming parameters Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 69274f020a9245c4f1079d602384d616f236568b Author: Sukesh Srikakula Date: Fri May 13 11:59:44 2011 +0200 staging: brcm80211: Fixed ibss join/leave functionality in brcmfmac driver IBSS functionality is broken in fullmac driver, which is fixed with this patch Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e494632efcd9e24875e9a83230c514c51875cbe2 Author: Sukesh Srikakula Date: Fri May 13 11:59:43 2011 +0200 staging: brcm80211: Fixed bss (re)connect/disconnect issues in brcmfmac driver Broken functionality of bss (re)connect/disconnect in full mac driver is fixed with this patch. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7549496614a008cf2a9f9a66d4c3dcd2b244ebb0 Author: Sukesh Srikakula Date: Fri May 13 11:59:42 2011 +0200 staging: brcm80211: Optimized wl_inform_single_bss function in brcmfmac driver Earlier verion of wl_inform_single_bss function is using 'cfg80211_inform_bss_frame' API for sending bss info to cfg80211. With this patch same will be done through a more optimal 'cfg80211_inform_bss' API. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7b2cb57ff734326258294c454f5f361e2d33e1c8 Author: Sukesh Srikakula Date: Fri May 13 11:59:41 2011 +0200 staging: brcm80211: Fixed wl_assoc_params structure miss match in brcmfmac driver There is a mismatch in the structure definition of wl_assoc_params structure in driver & FW code. With this patch, it is corrected Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8343f18056900eb8ca6dea45b70ffa4cce4b65cc Author: Sukesh Srikakula Date: Fri May 13 11:59:40 2011 +0200 staging: brcm80211: brcmfmac driver's interface name changed to "wlan" Currently interface name for the brcmfmac driver is "eth". This is changed to "wlan". Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e6e8f894aac3ab87aa272ed1479fa1f89c30844d Author: Sukesh Srikakula Date: Fri May 13 11:59:39 2011 +0200 staging: brcm80211: Fix for suspend issue in brcmfmac driver Currently, there are 2 callbacks registered with OS for getting notifications when system goes to suspend/resume. Racing between these 2 callbacks results in random suspend failures. With this fix, we avoid registering dhd callback for suspend/resume notification when cfg80211 is used. Relevent functionality in dhd suspend/resume callback function is moved to cfg80211 suspend/resume functions. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Grant Grundler Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 22d5d59b8c4bac63b1466dce5bee5dc48e8ee447 Author: Sukesh Srikakula Date: Fri May 13 11:59:38 2011 +0200 staging: brcm80211: Fix for WPA GTK install issue in brcmfmac driver Last 16 bytes of the key sent by cfg80211 needs to be swapped before installing it to FW for TKIP encryption. This is not done for group key in current code, which is corrected with this fix. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Franky (Zhenhui) Lin Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Tested-by: Grant Grundler Tested-by: Aaron Plattner Signed-off-by: Greg Kroah-Hartman commit dcc8fb87f2aceb25929b2a82b65c22f425badbfc Author: Roland Vossen Date: Fri May 13 11:59:37 2011 +0200 staging: brcm80211: removed more unused counter related structures Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 40592ba93f3f50bc0584df4837a26dc017fcb2ab Author: Roland Vossen Date: Fri May 13 11:59:36 2011 +0200 staging: brcm80211: removed counter related struct wl_cnt Code cleanup. Struct wl_cnt contains all sorts of counters, but either these were written and never read, or set to zero at initialization but never updated. Therefore the struct and any code accessing the struct has been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 47298e71ef2a177704cc96f2cc09ba142d5943f5 Author: Roland Vossen Date: Fri May 13 11:59:35 2011 +0200 staging: brcm80211: removed support for proprietary ioctl WLC_GET_PKTCNTS Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9eed787ce3913b2775a1f7bd17596f464ae5a00f Author: Roland Vossen Date: Fri May 13 11:59:34 2011 +0200 staging: brcm80211: removed stats WEXT support from fullmac Wireless Extension support is obsolete and made use of counters that are going to be removed in the next patches. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 83e60fc362524a584fe0c0be7babfffe48951aa6 Author: Roland Vossen Date: Fri May 13 11:59:33 2011 +0200 staging: brcm80211: removed counter related macros that expanded to NOP Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 75e436d3ed4d25ffc256a692a17e938d91deb958 Author: Roland Vossen Date: Fri May 13 11:59:32 2011 +0200 staging: brcm80211: removed unused struct net_device_stats related code Code cleanup. Variables were set but never read. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0c250c0eeab1840a2da4b9b6df7611b4efebd38a Author: Arend van Spriel Date: Fri May 13 11:59:30 2011 +0200 staging: brcm80211: fix makefiles for building drivers in kernel The makefiles used obj-m which forcibly builds the drivers as modules ignoring the Kconfig setting. This has been fixed in this patch. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 755f609cb3f64c6b5d25979c805fae16c4cc0c33 Author: Arend van Spriel Date: Fri May 13 11:59:29 2011 +0200 staging: brcm80211: cleanup functions in nvram.c Several function in nvram.c take a pointer value which is not actually used. These are removed and the header file contained some other prototypes that were not implemented. As this source file was the only one using the header file siutils.h it has been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 1f602d683ca10704081d49b3223c51608f1945d1 Author: Arend van Spriel Date: Fri May 13 11:59:28 2011 +0200 staging: brcm80211: make function definitions and prototype consistent Couple of functions that are only used within wlc_channel.c have been prototyped with static keyword. For the function definition itself this has been added when missing. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e2418ff1e8e2ac17ed2ef86d4b51102df9467447 Author: Arend van Spriel Date: Fri May 13 11:59:27 2011 +0200 staging: brcm80211: remove unused functions and prototypes Several functions in wlc_bmac.c are not used in the driver and prototypes in wlc_pub.h that have no implementation. These have been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c3ecec398cecab0e3fa85d454c223c7e092908f5 Author: Arend van Spriel Date: Fri May 13 11:59:26 2011 +0200 staging: brcm80211: remove unnecessary functions from wlc_main.c Couple of functions were not needed and have been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f6265746765a3f7e5158b5b779e6657d0c646adc Author: Roland Vossen Date: Fri May 13 11:59:25 2011 +0200 staging: brcm80211: got rid of #ifdef __mips__ by new dma_spin_for_len() Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit de3170671a0620254703def8e01ed4242676e952 Author: Roland Vossen Date: Fri May 13 11:59:21 2011 +0200 staging: brcm80211: replaced IL_BIGENDIAN by __BIG_ENDIAN Code cleanup. IL_BIGENDIAN was a Broadcom specific define. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a8e62dd6d91f3bc3687abbb26227e5fc39c4829c Author: Alan Stern Date: Tue May 17 14:45:48 2011 -0400 usb-storage: fix up the unusual_realtek device list This patch (as1461) fixes the unusual_devs entries for the Realtek USB card reader. They should be ordered by PID, and they should not override the Subclass and Protocol values provided by the device. Otherwise a notification about unnecessary entries gets printed in the kernel log during probing. Signed-off-by: Alan Stern Tested-By: Tony Vroon CC: Signed-off-by: Greg Kroah-Hartman commit b189702dd9e1d252b7d521d3f39a3b8a39c23e7a Author: K. Y. Srinivasan Date: Thu May 12 19:34:26 2011 -0700 Staging: hv: Move the contents of utils.h to hyperv.h Move the contents of utils.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 27b5b3ca6903675e8ad0a92562224fd0e185c43b Author: K. Y. Srinivasan Date: Thu May 12 19:34:25 2011 -0700 Staging: hv: Move the contents of vmbus.h to hyperv.h Move the contents of vmbus.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 35ea09c390378a4189f145fa4e894d42d21bd896 Author: K. Y. Srinivasan Date: Thu May 12 19:34:24 2011 -0700 Staging: hv: Move the contents of vmbus_api.h to hyperv.h Move the contents of vmbus_api.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f63c9149d052c86113fc84edd4ce138db44e768a Author: K. Y. Srinivasan Date: Thu May 12 19:34:23 2011 -0700 Staging: hv: Move the contents of logging.h to hyperv.h Move the contents of logging.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c35470b2297f0e05596a7aeebff8a67f4c6e3552 Author: K. Y. Srinivasan Date: Thu May 12 19:34:22 2011 -0700 Staging: hv: Move the contents of channel.h to hyperv.h Move the contents of channel.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b56dda06b4dddeb5a39e00a6812909fa832d527b Author: K. Y. Srinivasan Date: Thu May 12 19:34:21 2011 -0700 Staging: hv: Move the contents of channel_mgmt.h to hyperv.h Move the contents of channel_mgmt.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 50ed40e0d06df29a5cecda92254b080ad4ebcd10 Author: K. Y. Srinivasan Date: Thu May 12 19:34:20 2011 -0700 Staging: hv: Move the contents of vmbus_packet_format.h to hyperv.h Move the contents of vmbus_packet_format.h to hyperv.h Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 517d8dc686f4d78550922f938b5cc9675868a3e7 Author: K. Y. Srinivasan Date: Thu May 12 19:34:19 2011 -0700 Staging: hv: Move the contents of vmbus_channel_interface.h to hyperv.h Move the contents of vmbus_channel_interface.h to hyperv.h Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f7c6dfda0533e2977cd5c7fdb2d38d1078ecf849 Author: K. Y. Srinivasan Date: Thu May 12 19:34:18 2011 -0700 Staging: hv: Move the contents of the file version_info.h to hyperv.h Move the contents of the file version_info.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7effffb7a01b817f6c9fd6979f2c01f746bfc555 Author: K. Y. Srinivasan Date: Thu May 12 19:34:17 2011 -0700 Staging: hv: Move a subset of definitions from ring_buffer.h to hyperv.h Move a subset of definitions from ring_buffer.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a363bf7bd23fb6ee3e1690bd300a5e285f9c88df Author: K. Y. Srinivasan Date: Thu May 12 19:34:16 2011 -0700 Staging: hv: Add a subset of definitions from vmbus_api.h to hyperv.h Add a subset of definitions from vmbus_api.h to hyperv.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3f335ea2131b14bca2333b4316c8d4dd737e30db Author: K. Y. Srinivasan Date: Thu May 12 19:34:15 2011 -0700 Staging: hv: Include the newly created header file in all of the relevant hyperv files Include the newly created header file in all of the relevant hyperv files. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5c47340061ff722c7b743fbb8e7793019ab5f10a Author: K. Y. Srinivasan Date: Thu May 12 19:34:14 2011 -0700 Staging: hv: Create a common header for all hyperv drivers to include Create a common header for all hyperv drivers to include. When we exit staging, this would land under include/linux. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 94692349c4fc1bc74c19a28f9379509361a06a3b Author: Stephane Eranian Date: Tue May 17 15:36:19 2011 +0200 perf: Fix multi-event parsing bug This patch fixes an issue with event parsing. The following commit appears to have broken the ability to specify a comma separated list of events: commit ceb53fbf6dbb1df26d38379a262c6981fe73dd36 Author: Ingo Molnar Date: Wed Apr 27 04:06:33 2011 +0200 perf stat: Fail more clearly when an invalid modifier is specified This patch fixes this while preserving the desired effect: $ perf stat -e instructions:u,instructions:k ls /dev/null /dev/null Performance counter stats for 'ls /dev/null': 365956 instructions:u # 0.00 insns per cycle 731806 instructions:k # 0.00 insns per cycle 0.001108862 seconds time elapsed $ perf stat -e task-clock-msecs true invalid event modifier: '-msecs' Run 'perf list' for a list of valid events and modifiers Signed-off-by: Stephane Eranian Cc: acme@redhat.com Cc: peterz@infradead.org Cc: fweisbec@gmail.com Link: http://lkml.kernel.org/r/20110517133619.GA6999@quad Signed-off-by: Ingo Molnar commit dd196a2b3dbd192ff3ccf263d12b59bf22572958 Author: Chris Metcalf Date: Mon May 9 13:28:43 2011 -0400 tile: add an RTC driver for the Tilera hypervisor This is a simple RTC driver that lets Tilera hardware boot up and set the clock correctly. Acked-by: Andrew Morton Signed-off-by: Chris Metcalf commit 17fb76165f307f7be2cfbc93958356fe50fa4791 Author: Julia Lawall Date: Fri May 13 17:48:41 2011 +0200 drivers/staging/vt6656/main_usb.c: Delete unnecessary call to usb_kill_urb Since in each case nothing has been done with the recently allocated urb, it is not necessary to kill it before freeing it. The semantic patch that fixes this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression urb; statement S; position p1,p2; @@ urb = usb_alloc_urb@p1(...); ... when != urb if (urb == NULL) S ... when != urb usb_kill_urb@p2(urb); @other exists@ position r.p1,r.p2; @@ ... when != usb_alloc_urb@p1(...) usb_kill_urb@p2(...); @depends on !other exists@ expression urb; position r.p1,r.p2; @@ urb = usb_alloc_urb@p1(...); ... ( -usb_kill_urb@p2(urb); +usb_free_urb(urb); ... when != urb | -usb_kill_urb@p2(urb); ) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 7ed2911c8f727077249fc5170a1ab842465aef21 Author: Alan Cox Date: Fri May 13 11:09:32 2011 +0100 gma500: finish off the fault handler GEM wants to mmap the object through the GTT (which avoids aliasing) so we need to put the object into the GTT before we provide the fault mapping for it. While we are at it update the pin interface so that it digs dev out of the GEM object itself. This provides a rather cleaner API and call environment. Fix th refcount/on-off confusion in the pin API. At this point we get a bit further with modetest but if we write to the new GEM mapping we hang solid and as yet I don't know why. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4f0c8f43ee5e9e12ed36a5950e19cfe513669ae7 Author: Alan Cox Date: Fri May 13 11:08:26 2011 +0100 gma500: Don't try and take a GEM handle of a non GEM fb The initial GMA500 framebuffer is not GEM but stolen memory. We can't therefore take a GEM handle of it. Stop anyone trying to do this and causing a crash. Ideally we need a way to have GEM handles to non GEM objects but it's not clear how and if GEM and the modesetting/fb interfaces it provides are supposed to or indeed if they can handle it. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3a229fd54db17f39ce14348c9de898b3671771ca Author: J. Ali Harlow Date: Thu May 12 19:09:57 2011 +0100 comedi vmk80xx: Style improvements Style improvements to comedi driver vmk80xx: * One variable definition per line * Block quotes start and end with near-empty lines * If..else statements use braces for both branches * Egregious blank lines removed * Use if..else rather than goto where trivial * Don't put function return type on a separate line Signed-off-by: J. Ali Harlow Signed-off-by: Greg Kroah-Hartman commit cacd18a8476ce145ca5dcd46dc5b75585fd1289c Author: David Chang Date: Thu May 12 18:31:11 2011 +0800 staging: usbip: fix wrong endian conversion Fix number_of_packets wrong endian conversion in function correct_endian_ret_submit() Signed-off-by: David Chang Acked-by: Arjan Mels Cc: stable Signed-off-by: Greg Kroah-Hartman commit e6251a921716fca9c2e3008af2d8d0d5657a59bc Author: Martin Jackson Date: Tue May 17 11:02:06 2011 +0200 USB: gadget: f_audio: Fix invalid dereference of initdata as_out_ep_desc contines to be used during gadget enumeration and thus should not be marked as __initdata Signed-off-by: Martin Jackson Signed-off-by: Greg Kroah-Hartman commit 1e12c910eed82da6971f1c0421a069c680faba2e Author: Alan Stern Date: Tue May 17 10:40:51 2011 -0400 EHCI: don't rescan interrupt QHs needlessly This patch (as1466) speeds up processing of ehci-hcd's periodic list. The existing code will pointlessly rescan an interrupt endpoint queue each time it encounters the queue's QH in the periodic list, which can happen quite a few times if the endpoint's period is low. On some embedded systems, this useless overhead can waste so much time that the driver falls hopelessly behind and loses events. The patch introduces a "periodic_stamp" variable, which gets incremented each time scan_periodic() runs and each time the scan advances to a new frame. If the corresponding stamp in an interrupt QH is equal to the current periodic_stamp, we assume the QH has already been scanned and skip over it. Otherwise we scan the QH as usual, and if none of its URBs have completed then we store the current periodic_stamp in the QH's stamp, preventing it from being scanned again. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2b7aaf503d56216b847c8265421d2a7d9b42df3e Author: Alan Stern Date: Mon May 16 12:15:19 2011 -0400 OHCI: fix regression caused by nVidia shutdown workaround This patch (as1463) fixes a regression caused by commit 3df7169e73fc1d71a39cffeacc969f6840cdf52b (OHCI: work around for nVidia shutdown problem). The original problem encountered by people using NVIDIA chipsets was that USB devices were not turning off when the system shut down. For example, the LED on an optical mouse would remain on, draining a laptop's battery. The problem was caused by a bug in the chipset; an OHCI controller in the Reset state would continue to drive a bus reset signal even after system shutdown. The workaround was to put the controllers into the Suspend state instead. It turns out that later NVIDIA chipsets do not suffer from this bug. Instead some have the opposite bug: If a system is shut down while an OHCI controller is in the Suspend state, USB devices remain powered! On other systems, shutting down with a Suspended controller causes the system to reboot immediately. Thus, working around the original bug on some machines exposes other bugs on other machines. The best solution seems to be to limit the workaround to OHCI controllers with a low-numbered PCI product ID. I don't know exactly at what point NVIDIA changed their chipsets; the value used here is a guess. So far it was worked out okay for all the people who have tested it. This fixes Bugzilla #35032. Signed-off-by: Alan Stern Tested-by: Andre "Osku" Schmidt Tested-by: Yury Siamashka CC: Signed-off-by: Greg Kroah-Hartman commit e99c4309fb064604a957d9c1a8d2d4a9ff19cf5e Author: Mark Brown Date: Sun May 15 09:55:58 2011 -0700 USB: OTG: msm: Free VCCCX regulator even if we can't set the voltage If for some reason we fail to set the voltage range for the VDDCX regulator when removing it's better to still disable and free the regulator as that avoids leaking a reference to it and is likely to ensure that it's turned off completely. Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman commit 7b521fcb6bf63a49bb7712d922dd1dd0a90a93cf Author: Mark Brown Date: Sun May 15 09:55:57 2011 -0700 USB: OTG: msm: Allow the widest possible range for VDDCX when removing When not active the hardware should be able to tolerate voltages within the normal operating range so when removing set the maximum voltage we can use to the maximum rather than minimum of the operating range. This will improve interoperability in case we end up sharing the supply in some design. Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman commit 610ba42f29c3dfa46a05ff8c2cadc29f544ff76d Author: Marcin Gałczyński Date: Sun May 15 11:41:54 2011 +0200 USB: option: add support for Huawei E353 device I am sharing patch to the devices/usb/serial/option.c. This allows operation of Huawei E353 broadband modem using the “option” driver. The patch simply adds new constant with proper product ID and an entry to usb_device_id. I worked on the 2.6.38.6 sources. Tested on Dell inspiron 1764 (i3 core cpu) and brand new Huawei E353 modem, Fedora 15 beta. Looking at the type of change, i doubt it has potential to introduce problems in other parts of kernel or the driver itself. Signed-off-by: Marcin Galczynski Cc: stable Signed-off-by: Greg Kroah-Hartman commit 30b9284db3c77a5e20bb826cd1b66ed7b26cb726 Merge: 372b231 e6e4d9e Author: David S. Miller Date: Tue May 17 14:18:25 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6 commit c8144a36821b11e8124b38fdbf0b7cad546bbd2f Merge: f56e03e e4abce8 Author: David S. Miller Date: Tue May 17 14:17:05 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next-2.6 commit f56e03e8dc149bf0ac2888d6843584f48c8700fc Author: Vasiliy Kulikov Date: Tue May 17 00:16:56 2011 +0000 net: ping: fix build failure If CONFIG_PROC_SYSCTL=n the building process fails: ping.c:(.text+0x52af3): undefined reference to `inet_get_ping_group_range_net' Moved inet_get_ping_group_range_net() to ping.c. Reported-by: Randy Dunlap Signed-off-by: Vasiliy Kulikov Acked-by: Eric Dumazet Acked-by: Randy Dunlap Signed-off-by: David S. Miller commit 372b2312010bece1e36f577d6c99a6193ec54cbd Author: Eric Dumazet Date: Tue May 17 13:56:59 2011 -0400 net: use hlist_del_rcu() in dev_change_name() Using plain hlist_del() in dev_change_name() is wrong since a concurrent reader can crash trying to dereference LIST_POISON1. Bug introduced in commit 72c9528bab94 (net: Introduce dev_get_by_name_rcu()) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 20c304ed84e05a91b2acae36d428d621d3c1d1c6 Author: Takashi Iwai Date: Tue May 17 18:41:25 2011 +0200 ALSA: hda - Enable snoop bit for AMD controllers AMD Hudson controllers give noisy outputs when the buffer data is rewritten on the fly as PulseAudio does. This seems fixed by the snoop bit enabled just like ATI chipset. Also, disable 64bit DMA as now, to be sure. We can revisit this later. Signed-off-by: Takashi Iwai commit 891e376b1e864519bf7e49fa741f473078318530 Author: Thierry Reding Date: Tue May 17 09:32:29 2011 -0700 Input: tsc2007 - add X, Y and Z fuzz factors to platform data These new platform-specific values can be used to set the fuzz parameter passed to the input_set_abs_params() function for the ABS_X, ABS_Y and ABS_PRESSURE axes. Signed-off-by: Thierry Reding Signed-off-by: Dmitry Torokhov commit 1af38eac8cdb70dbad3086b4f1bf7296eb1b09b1 Author: Thierry Reding Date: Tue May 17 09:32:02 2011 -0700 Input: tsc2007 - add poll_period parameter to platform data This new parameter allows the polling frequency to be configured while keeping the default of once every millisecond. Signed-off-by: Thierry Reding Signed-off-by: Dmitry Torokhov commit 2d137c7ed25f9754f52495af570897ad993e4fe7 Author: Thierry Reding Date: Tue May 17 09:31:33 2011 -0700 Input: tsc2007 - add poll_delay parameter to platform data Depending on the quality of the touch panel, the time for the X-, X+, Y- and Y+ inputs to settle may vary. The poll_delay parameter can be used to override the default of 1 millisecond. Cc: Dmitry Torokhov Cc: Kwangwoo Lee Signed-off-by: Thierry Reding Signed-off-by: Dmitry Torokhov commit 84005eb5ea2939d448047fcf6924b3b9b6ed974d Author: Thierry Reding Date: Tue May 17 09:31:01 2011 -0700 Input: tsc2007 - add max_rt parameter to platform data Finger touch events or very quick stylus events on low-quality panels can cause the tsc2007 to read bogus values. Looking at oscilloscope snapshots, this seems to be caused by the touch event disappearing during the measurements. These bogus values result in misclicks, where the X and Y values deviate from the real position. Most of these misclicks can be filtered out by setting a low enough threshold for the maximum resistance (which is loosely the inverse of the pressure) allowed to consider a set of values valid. Since this behaviour is largely dependent on the type and quality of the panel, this commit introduces the max_rt parameter. The default value is kept at MAX_12BIT. Signed-off-by: Thierry Reding Signed-off-by: Dmitry Torokhov commit 4a1a42af0aba011e263098f107a2f45e0de2f279 Author: Thierry Reding Date: Tue May 17 09:29:45 2011 -0700 Input: tsc2007 - debounce pressure measurement When the controller signals a pen-down event via the platform-specific GPIO, while the sample values indicate an invalid measurement, the measurement needs to be repeated. Signed-off-by: Thierry Reding Signed-off-by: Dmitry Torokhov commit 86b9523ab1517f6edeb87295329c901930d3732d Merge: 2c14ddc fffcda1 Author: Ingo Molnar Date: Tue May 17 14:39:00 2011 +0200 Merge branch 'gart/rename' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into core/iommu commit 9199e66528f61a06abe09f0589bbe1eecaa301a7 Author: Tao Ma Date: Thu May 5 23:54:19 2011 +0800 jbd/jbd2: remove obsolete summarise_journal_usage. summarise_journal_usage seems to be obsolete for a long time, so remove it. Cc: Jan Kara Signed-off-by: Tao Ma Signed-off-by: Jan Kara commit 2842bb20eed2e25cde5114298edc62c8883a1d9a Author: Jan Kara Date: Thu May 5 13:59:35 2011 +0200 jbd: Fix forever sleeping process in do_get_write_access() In do_get_write_access() we wait on BH_Unshadow bit for buffer to get from shadow state. The waking code in journal_commit_transaction() has a bug because it does not issue a memory barrier after the buffer is moved from the shadow state and before wake_up_bit() is called. Thus a waitqueue check can happen before the buffer is actually moved from the shadow state and waiting process may never be woken. Fix the problem by issuing proper barrier. CC: stable@kernel.org Reported-by: Tao Ma Signed-off-by: Jan Kara commit 4e299c1d9113b5c1c3845c0d4e78d09dd60a4fe8 Author: Robin Dong Date: Thu May 5 10:44:04 2011 +0800 ext2: fix error msg when mounting fs with too-large blocksize When ext2 mounts a filesystem, it attempts to set the block device blocksize with a call to sb_set_blocksize, which can fail for several reasons. The current failure message in ext2 prints: EXT2-fs (loop1): error: blocksize is too small which is not correct in all cases. This can be demonstrated by creating a filesystem with # mkfs.ext2 -b 8192 on a 4k page system, and attempting to mount it. Change the error message to a more generic: EXT2-fs (loop1): bad blocksize 8192 to match the error message in ext3. Signed-off-by: Robin Dong Reviewed-by: Coly Li Reviewed-by: Eric Sandeen Signed-off-by: Jan Kara commit d9b01934d56a96d9f4ae2d6204d4ea78a36f5f36 Author: Ted Ts'o Date: Sat Apr 30 13:17:11 2011 -0400 jbd: fix fsync() tid wraparound bug If an application program does not make any changes to the indirect blocks or extent tree, i_datasync_tid will not get updated. If there are enough commits (i.e., 2**31) such that tid_geq()'s calculations wrap, and there isn't a currently active transaction at the time of the fdatasync() call, this can end up triggering a BUG_ON in fs/jbd/commit.c: J_ASSERT(journal->j_running_transaction != NULL); It's pretty rare that this can happen, since it requires the use of fdatasync() plus *very* frequent and excessive use of fsync(). But with the right workload, it can. We fix this by replacing the use of tid_geq() with an equality test, since there's only one valid transaction id that is valid for us to start: namely, the currently running transaction (if it exists). CC: stable@kernel.org Reported-by: Martin_Zielinski@McAfee.com Signed-off-by: "Theodore Ts'o" Signed-off-by: Jan Kara commit 86c4f6d85595cd7da635dc6985d27bfa43b1ae10 Author: Jan Kara Date: Wed Apr 27 18:20:44 2011 +0200 ext3: Fix fs corruption when make_indexed_dir() fails When make_indexed_dir() fails (e.g. because of ENOSPC) after it has allocated block for index tree root, we did not properly mark all changed buffers dirty. This lead to only some of these buffers being written out and thus effectively corrupting the directory. Fix the issue by marking all changed data dirty even in the error failure case. CC: stable@kernel.org Signed-off-by: Jan Kara commit b55fcb508dfc9f00056beb33d4c466bc9032dd05 Author: Takashi Iwai Date: Tue May 17 12:57:46 2011 +0200 ALSA: hda - Handle dock line-in as auto-detecable for Cxt auto-parser Similar process like in patch_realtek.c and patch_sigmatel.c. Signed-off-by: Takashi Iwai commit b08827f4c7a5020855abe0f9b1a316f11275b76b Merge: 75c0b3b 5fd2a84 7be13ad 667a11f Author: Tony Lindgren Date: Tue May 17 03:44:50 2011 -0700 Merge branches 'devel-fixes', 'devel-cleanup' and 'devel-genirq' into for-next commit 1f83ac5ac9fb3e8b2e053de380f55ba412228577 Author: Takashi Iwai Date: Tue May 17 12:29:09 2011 +0200 ALSA: hda - Handle dock line-in as auto-detectable for IDT codecs When a docking-station has a line-in jack, we can handle it also as a detectable jack just like mic-in. This will improve the usability of HP laptops with a docking-station. Signed-off-by: Takashi Iwai commit 8ed99d976812d1e14a254b9ac1fe6255af8270ff Author: Takashi Iwai Date: Tue May 17 12:05:02 2011 +0200 ALSA: hda - Add dock-mic detection support to Realtek auto-parser In addition to the normal mic jack, the mic (or line-in) jack on the docking-station is checked also as a candidate for auto-selection. Signed-off-by: Takashi Iwai commit e35d9d6a153493055fc888add70786154f00edd4 Author: Takashi Iwai Date: Tue May 17 11:28:16 2011 +0200 ALSA: hda - Check unsol-cap in is_jack_detectalbe() Also replace more open-codes with this function. Signed-off-by: Takashi Iwai commit 43c1b2e9209cc824177a5a13e34fb21dfab3455a Author: Takashi Iwai Date: Tue May 17 10:35:15 2011 +0200 ALSA: hda - Add support of dock-mic detection to Conexant auto-parser In addition to the normal external mic jack, check also the mic jack on a docking-station as well, and select the input source appropriately. The similar functionality was already implemented in patch_sigmatel.c. Signed-off-by: Takashi Iwai commit 7be13ad0ce518c03cf4852f69e8a9746be2edb03 Author: Mike Rapoport Date: Thu May 12 21:31:04 2011 +0000 omap: drop board-igep0030.c since it is merged into board-igep0020.c Signed-off-by: Mike Rapoport Signed-off-by: Tony Lindgren commit 2a60997a538cf60a3b5ebcfa2b9909c868e7aa20 Author: Mike Rapoport Date: Thu May 12 21:31:03 2011 +0000 omap: igep0020: add support for IGEP3 Add IGEP3 machine support to board-igep0020 Signed-off-by: Mike Rapoport Acked-by: Enric Balletbo i Serra Signed-off-by: Tony Lindgren commit 0d4ab9a58ff6d29e84b6f29a5084323f0374ef6a Author: Mike Rapoport Date: Thu May 12 21:31:02 2011 +0000 omap: igep0020: minor refactoring to allow easy addition of IGEP3 Signed-off-by: Mike Rapoport Acked-by: Enric Balletbo i Serra Signed-off-by: Tony Lindgren commit fdfb03ba375e34b8aaee22a501eb59c92b43726b Author: Mike Rapoport Date: Thu May 12 21:31:01 2011 +0000 omap: igep0020: name refactoring for future merge with IGEP3 IGEP2 and IGEP3 boards are very similar and can be merged into one file. Start refactoring with changing igep2 to igep where applicable. Signed-off-by: Mike Rapoport Acked-by: Enric Balletbo i Serra Signed-off-by: Tony Lindgren commit cffbcd0c23bf17c411b35d13fceb25bd5ec9afea Author: Rafi Rubin Date: Sun May 15 23:33:23 2011 -0400 Kconfig: fix copy/paste-ism for dell-wmi-aio driver Signed-off-by: Rafi Rubin Signed-off-by: Jiri Kosina commit 049262940eb585ff2a671d2db6fa38dfd96687f1 Author: Jonathan Neuschäfer Date: Mon May 16 21:15:34 2011 +0200 doc: timers-howto: fix a typo ("unsgined") Signed-off-by: Jonathan Neuschäfer Signed-off-by: Jiri Kosina commit 52d3cb88d75701f800db16561ff12c7692b56e55 Author: Takashi Iwai Date: Tue May 17 10:04:08 2011 +0200 ALSA: hda - Fix initialization of spec->automute_lines in patch_realtek.c spec->automute_lines shouldn't be set unless the line-detection is available. Signed-off-by: Takashi Iwai commit 1682c8174692180fcb19317704a0d32c8731eb33 Author: Takashi Iwai Date: Tue May 17 10:02:27 2011 +0200 ALSA: hda - Use get_wcaps_type() Replace the open-code with get_wcaps_type() macro. Signed-off-by: Takashi Iwai commit 06dec2282b1366136442950958b517db691533a1 Author: Takashi Iwai Date: Tue May 17 10:00:16 2011 +0200 ALSA: hda - Use is_jack_detectable() helper Replaced the open-code with the new helper function. Signed-off-by: Takashi Iwai commit 03697e2acce9b8818cdb5fc0ebd5e5199dea1c32 Author: Takashi Iwai Date: Tue May 17 09:53:31 2011 +0200 ALSA: hda - Add automute-mode enum to Conexant auto-parser Implement the same functionality as Realtek's auto-mute mode control. Now Conexant auto-parser can also mutes line-out and provide the enum control for different automute behavior. Signed-off-by: Takashi Iwai commit 6ad11eaa8a689a27e0c99905bcf800a37cd432a0 Author: Joe Carnuccio Date: Tue May 10 11:30:16 2011 -0700 [SCSI] qla2xxx: Refactor call to qla2xxx_read_sfp for thermal temperature. Eliminate duplicate code by refactoring the calls to qla2xxx_read_sfp() in qla2x00_get_thermal_temp(). This keeps the parameter values separate from the mailbox register mechanics. This also allows qla2xxx_read_sfp() to be the sole "spec" for READ SFP semantics. Signed-off_by: Joe Carnuccio Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 6766df9e8ae2ab29459381ade1ca91b28688ab13 Author: Joe Carnuccio Date: Tue May 10 11:30:15 2011 -0700 [SCSI] qla2xxx: Unify the read/write sfp mailbox command routines. Make the read/write sfp mailbox command routines uniform, and remove redundancy. Also protect against attempting to do a single byte dma in these routines. Signed-off-by: Joe Carnuccio Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 773120e4df1d2bf543345ad850cc92dc1f1bad8a Author: Andrew Vasquez Date: Tue May 10 11:30:14 2011 -0700 [SCSI] qla2xxx: Clear complete initialization control block. Use proper init_cb_size member which takes into account MID/non-MID init-cb structure sizes. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 82515920b60760bca9f66decdaa7dd98191fa47c Author: Andrew Vasquez Date: Tue May 10 11:30:13 2011 -0700 [SCSI] qla2xxx: Allow an override of the registered maximum LUN. The 'max_lun' value registered for each scsi_host is currently capped at 0xffff. The new module parameter can allow for 2nd-level flat-space addressing method-infrastructure to be supported. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 24014d046485e1947dfb5d79365472d9981cda1e Author: Saurav Kashyap Date: Tue May 10 11:30:12 2011 -0700 [SCSI] qla2xxx: Add host number in reset and quiescent message logs. Signed-off-by: Saurav Kashyap Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 1bff6cc8fbb73d6bed809d3eff18e90c175a601c Author: Joe Carnuccio Date: Tue May 10 11:30:11 2011 -0700 [SCSI] qla2xxx: Correctly read sfp single byte mailbox register. When reading a single byte using the READ SFP mailbox command, the single byte of data is returned in MB[1] and not MB[8]. The reason that MB[8] was being used is that the spec was unclear as it evolved over time; and we have not needed to read a single byte until recently. Signed-off-by: Joe Carnuccio Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit d652e0937029e1f7cf9b17d639782db1b0c23ea9 Author: Chad Dupuis Date: Tue May 10 11:30:10 2011 -0700 [SCSI] qla2xxx: Add qla82xx_rom_unlock() function. Encapsulate the unlocking of the ROM lock in a function for better code readability. Signed-off-by: Chad Dupuis Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 875efad774f05433210c8d99af405260cfda4f09 Author: Chad Dupuis Date: Tue May 10 11:30:09 2011 -0700 [SCSI] qla2xxx: Log if qla82xx firmware fails to load from flash. Signed-off-by: Chad Dupuis Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 134ae078504293cadeecc8550c4def876a42b07b Author: Madhuranath Iyengar Date: Tue May 10 11:30:08 2011 -0700 [SCSI] qla2xxx: Use passed in host to initialize local scsi_qla_host in queuecommand function Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 93d29cc63f1832dbbbab721cce1b9f845becf4d7 Author: Joe Carnuccio Date: Tue May 10 11:30:07 2011 -0700 [SCSI] qla2xxx: Correct buffer start in edc sysfs debug print. The debug print prints the first byte of the buffer which is buf[8]. Signed-off-by: Joe Carnuccio Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 53296788f425def50d09c7e0d773bdeaae57c623 Author: Saurav Kashyap Date: Tue May 10 11:30:06 2011 -0700 [SCSI] qla2xxx: Update firmware version after flash update for ISP82xx. The driver keeps a copy of the fw_version within the ha structure. For ISP82xx, this local copy doesn't get updated, and as a result, the old firmware version ends up getting displayed. This patch fixes this issue. Signed-off-by: Saurav Kashyap Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 43ebf16d762b082663976b679b813e1b546548d1 Author: Arun Easi Date: Tue May 10 11:18:16 2011 -0700 [SCSI] qla2xxx: Fix hang during driver unload when vport is active. Bumping ref count during fc_vport_terminate() was the cause. vport delete would wait for ref count to drop to zero and that would never happen. Cc: stable@kernel.org Signed-off-by: Arun Easi Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit fa96d927362a422405d65491326f8ef763572e84 Author: Andrew Vasquez Date: Tue May 10 11:18:15 2011 -0700 [SCSI] qla2xxx: Properly set the dsd_list_len for dsd_chaining in cmd type 6. The firmware spec has the fcp_data_dseg_len defined as a 32-bit value, while the corresponding field in the driver structure has it defined as a 16-bit value. Cc: stable@kernel.org Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Cc: stable@kernel.org Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit cefcaba67ab97fb756b3a6af5139c94d861b660d Author: Saurav Kashyap Date: Tue May 10 11:18:18 2011 -0700 [SCSI] qla2xxx: Fix virtual port failing to login after chip reset. This patch ensures qla82xx_watchdog is not being run for the vport. It also makes sure that beacon ON is not done for the vport, as it will lead to the waking up of the dpc thread again and again. Signed-off-by: Saurav Kashyap Signed-off-by: Madhuranath Iyengar Cc: stable@kernel.org Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 9f40682e2857a3c2ddb80a87b185af3c6a708346 Author: Arun Easi Date: Tue May 10 11:18:17 2011 -0700 [SCSI] qla2xxx: Fix vport delete hang when logins are outstanding. Timer is required to flush out entries that may be present in work queues. Cc: stable@kernel.org Signed-off-by: Arun Easi Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 7630abd0c690e90cea9412846f596fe1565aaa0e Author: Joe Perches Date: Sun May 8 23:32:40 2011 -0700 [SCSI] hpsa: Change memset using sizeof(ptr) to sizeof(*ptr) Not at all sure this is correct or appropriate to change, but this seems odd. Found via coccinelle script @@ type T; T* ptr; expression E1; @@ * memset(E1, 0, sizeof(ptr)); Signed-off-by: Joe Perches Acked-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit a3a85d3983f7e18c46fba9f92c21d8a713de9791 Author: Takashi Iwai Date: Tue May 17 09:17:52 2011 +0200 ALSA: hda - Add missing Front/Surround/CLFE as slaves for Cxt auto-parser Signed-off-by: Takashi Iwai commit 51f52a47527a07e45746b1bac1ab6123892095a0 Author: Anton Blanchard Date: Mon May 9 10:07:40 2011 +1000 [SCSI] ipr: Rate limit DMA mapping errors I noticed a stream of errors from the IPR driver while doing IOMMU fault injection. Rate limit the errors so we don't clog up the console and logfiles. Signed-off-by: Anton Blanchard Acked-by: Brian King Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 47ad1f4e40c4374243a56c8df168f4fb551c7915 Author: Takashi Iwai Date: Tue May 17 09:15:55 2011 +0200 ALSA: hda - Code refactoring in patch_conexant.c Use a struct instead of each array for managing input-source info for auto-parser. Signed-off-by: Takashi Iwai commit fda38518f236cbd965110938e324f6c6fcc91f38 Author: Stephen M. Cameron Date: Tue May 3 15:00:07 2011 -0500 [SCSI] hpsa: add P2000 to list of shared SAS devices Signed-off-by: Scott Teel Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 4638078697574be43816779845e26bf05ae70d9d Author: Stephen M. Cameron Date: Tue May 3 15:00:01 2011 -0500 [SCSI] hpsa: do not attempt PCI power management reset method if we know it won't work. Just go straight to the soft-reset method instead. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit dfc2224828c5fc4ec7e11587b9d6b97283aa2d01 Author: Stephen M. Cameron Date: Tue May 3 14:59:56 2011 -0500 [SCSI] hpsa: remove superfluous sleeps around reset code Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 64670ac8702ec37a00ad6e479f3cacbde0fd4efa Author: Stephen M. Cameron Date: Tue May 3 14:59:51 2011 -0500 [SCSI] hpsa: do soft reset if hard reset is broken on driver load, if reset_devices is set, and the hard reset attempts fail, try to bring up the controller to the point that a command can be sent, and send it a soft reset command, then after the reset undo whatever driver initialization was done to get it to the point to take a command, and re-do it after the reset. This is to get kdump to work on all the "non-resettable" controllers (except 64xx controllers which can't be reset due to the potentially shared cache module.) Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit cf0b08d0cd87ada9d284925834d08fb8026da888 Author: Stephen M. Cameron Date: Tue May 3 14:59:46 2011 -0500 [SCSI] hpsa: use new doorbell-bit-5 reset method The bit-2-doorbell reset method seemed to cause (survivable) NMIs on some systems and (unsurvivable) IOCK NMIs on some G7 servers. Firmware guys implemented a new doorbell method to alleviate these problems triggered by bit 5 of the doorbell register. We want to use it if it's available. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 9a41338e5b474add499a7ca2a5a76148e5076805 Author: Stephen M. Cameron Date: Tue May 3 14:59:41 2011 -0500 [SCSI] hpsa: remove atrophied hpsa_scsi_setup function hpsa_scsi_setup at one time contained enough code to justify its existence, but that time has passed. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 2b870cb30000477e425666f9c6d83cca8fddc7c0 Author: Stephen M. Cameron Date: Tue May 3 14:59:36 2011 -0500 [SCSI] hpsa: clarify messages around reset behavior When waiting for the board to become "not ready" don't print a message saying "waiting for board to become ready" (possibly followed by a message saying "failed waiting for board to become not ready". Instead, it should be "waiting for board to reset" and "failed waiting for board to reset." Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 2ed7127bceb10a6a7d5a38c30ab65176d4e4bc0f Author: Stephen M. Cameron Date: Tue May 3 14:59:31 2011 -0500 [SCSI] hpsa: increase time to wait for board reset Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 0ae01a32cb4a89ef0ed49bb6f49bd5830b13ab3e Author: Stephen M. Cameron Date: Tue May 3 14:59:25 2011 -0500 [SCSI] hpsa: factor out irq request code Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 2e9d1b3626c4383362df30bb853a1b57c2798300 Author: Stephen M. Cameron Date: Tue May 3 14:59:20 2011 -0500 [SCSI] hpsa: factor out cmd pool allocation functions Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 516fda49e8596904a741693059c8746f11ce579c Author: Stephen M. Cameron Date: Tue May 3 14:59:15 2011 -0500 [SCSI] hpsa: wait longer for no-op to complete after resetting controller This is to avoid the usual two or three messages about the command timing out. We're obviously not waiting long enough. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 580ada3c1e2f23b4b0f3c254cae3eb278f92d494 Author: Stephen M. Cameron Date: Tue May 3 14:59:10 2011 -0500 [SCSI] hpsa: do a better job of detecting controller reset failure Detect failure of controller reset by noticing if the 32 bytes of "driver version" we store on the hardware in the config table fail to get zeroed out. Previously we noticed if the controller did not transition to "simple mode", but this did not detect reset failure if the controller was already in simple mode prior to the reset attempt (e.g. due to module parameter hpsa_simple_mode=1). Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit a2a431a4fd3b11c6808933ca1bdb2d28a8fa0634 Author: Stephen M. Cameron Date: Tue May 3 14:59:05 2011 -0500 [SCSI] hpsa: delete old unused padding garbage Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 1fb011fb05b6bac4fb8eabd324a6983116f7594d Author: Stephen M. Cameron Date: Tue May 3 14:59:00 2011 -0500 [SCSI] hpsa: remove unused parameter from hpsa_complete_scsi_command() Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 8cd21da71c952843f9cc215436286cf7f991cc6e Author: Stephen M. Cameron Date: Tue May 3 14:58:55 2011 -0500 [SCSI] hpsa: add readl after writel in interrupt mask setting code This is to ensure the board interrupts are really off when these functions return. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit d0be5ec8693944c2e2fc0de70fda9dbc1b93bd7d Author: Stephen M. Cameron Date: Tue May 3 14:58:49 2011 -0500 [SCSI] hpsa: do readl after writel in main i/o path to ensure commands don't get lost. Apparently we've been doin it rong for a decade, but only lately do we run into problems. Signed-off-by: Stephen M. Cameron Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 72ef0e5757c160fc627d2c89b6379bc102ccab5c Author: Borislav Petkov Date: Mon May 2 16:49:38 2011 +0200 [SCSI] mptsas: Fix annoying warning Shut up drivers/message/fusion/mptsas.c: In function 'mptsas_event_process': drivers/message/fusion/mptsas.c:5015: warning: unused variable 'log_info' for configs with CONFIG_SCSI_MPT2SAS_LOGGING unset. Signed-off-by: Borislav Petkov Acked-by: "Desai, Kashyap" Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit 3699d92a4d7b649bde67dff3cc681400992e0254 Author: Kiran Patil Date: Mon Apr 18 16:24:14 2011 -0700 [SCSI] tcm_fc: Adding FC_FC4 provider (tcm_fc) for FCoE target (TCM - target core) support This is a comprehensive patch for FC-FC4 provider. tcm_fc is a FC-FC4 provider which glues target core (TCM) with Fiber channel library (libfc). tcm_fc uses existing FC4 provider hooks from Fiber channel library. This Fiber channel library is used by FCoE (transport - FC over Ethernet) protocol driver as well. Combination of modules such as Fiber channel library, tcm_fc, TCM target core, and FCoE protocol driver enables functional FCoE target. This patch includes initial commit for tcm_fc plus additional enhancement, bug fixes. This tcm_fc module essentially contains 3 entry points such as "prli", "prlo", "recv". When process login request (ELS_PRLI) request is received, Fiber channel library (libfc) module calls passive providers (FC-FC4, tcm_fc) (if any registered) "prli" function. Likewise when LOGO request is received, "prlo" function of passive provider is invoked by libfc. For all other request (e.g. any read/write, task management, LUN inquiry commands), "recv" function of passiver provider is invoked by libfc. Those passive providers "prli, prlo, recv" functions interact with TCM target core for requested operation. This module was primarily developed by "Joe Eykholt" and there were significant contributions from the people listed under signed-off. Signed-off-by: Joe Eykholt Signed-off-by: Nicholas A. Bellinger Signed-off-by: Christoph Hellwig Signed-off-by: Yi Zou Signed-off-by: Kiran Patil Acked-by: Robert Love Signed-off-by: James Bottomley Signed-off-by: James Bottomley commit f1e430e6369f5edac552d99bff15369ef8c6bbd2 Author: Michael Hennerich Date: Mon May 16 23:17:40 2011 -0700 Input: ad714x - fix captouch wheel option algorithm As reported by Jean-Francois Dagenais, the wheel algorithm caused a divide by zero exception due to missing variable pre-initialization. In fact it turned out that the whole algorithm had several problems. It is therefore replaced with something that is known working. Signed-off-by: Michael Hennerich Tested-by: Jean-Francois Dagenais Signed-off-by: Dmitry Torokhov commit 3532cb0ca2774b05e3c660f536ba3d1b38061fc9 Author: Michael Hennerich Date: Mon May 16 23:17:34 2011 -0700 Input: ad714x - allow platform code to specify irqflags Add option to specify irqflags in platfrom data. Also update copyright notice. Signed-off-by: Michael Hennerich Tested-by: Jean-Francois Dagenais Signed-off-by: Dmitry Torokhov commit e223cc7e96ddbcd32c4a0314d42ae56ade8008e5 Author: Michael Hennerich Date: Mon May 16 23:17:23 2011 -0700 Input: ad714x - fix threshold and completion interrupt masks Fix two issues in the threshold and completion interrupt mask and unmask functions. According to the AD714x datasheets the highest stage completion interrupt should be enabled. Fix mask computation. Signed-off-by: Michael Hennerich Tested-by: Jean-Francois Dagenais Signed-off-by: Dmitry Torokhov commit dc5f4f5e9a3434bfe925f05db9db2908fbab771f Author: Michael Hennerich Date: Mon May 16 23:17:11 2011 -0700 Input: ad714x - fix up input configuration Add missing input name and set up parent devices so input devices will show in proper places in sysfs tree. Signed-off-by: Michael Hennerich Tested-by: Jean-Francois Dagenais Signed-off-by: Dmitry Torokhov commit 9cb6cfae4e792d9f92612dd57ee1e3ff218f17a6 Author: Éric Piel Date: Mon May 16 22:45:54 2011 -0700 Input: elantech - remove support for proprietary X driver Apparently somewhere someone had a proprietary X driver. To get the multitouch info, it uses some hack on the normal API instead of using the multitouch protocol. Now that the multitouch info is transmitted correctly it makes not much sense to keep it. Especially because it's impossible to find this proprietary X driver anywhere, so the number of users must be very low. Signed-off-by: Éric Piel Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 89eec4d71e0a4e47a2f12a08992ada7500ea78a0 Author: Éric Piel Date: Mon May 16 22:45:54 2011 -0700 Input: elantech - report multitouch with proper ABS_MT messages Multitouch info was reported only via a old protocol used by the proprietary X driver from elantech. Let's report the multitouch info also following the official MT protocol. It's semi-mt because the device only reports the lowest/highest coordinates. This was done following the multi-touch-protocol.txt documentation, and inspired by the bcm5974 and elantech implementations. Testing was light as there is not many applications using this protocol yet, but the X synaptics driver didn't complain and the X multitouch driver behaved correctly. Signed-off-by: Éric Piel Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit f941c705f68fa62f694678bf2efde64dfb9962bb Author: Éric Piel Date: Mon May 16 22:45:54 2011 -0700 Input: elantech - export pressure and width when supported Using the info of the Dell/Ubuntu driver, described in the protocol document, report both width and pressure when pressing 1 and 3 fingers, for the versions of the touchpad which support it. Signed-off-by: Éric Piel Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 71c6d18859ccb137343017ec995b76d9f62bd9b0 Author: Éric Piel Date: Mon May 16 22:45:54 2011 -0700 Input: elantech - describe further the protocol For some Dell laptops, Ubuntu had a special version of the elantech driver with more knowledge on the devices. It can be found there: http://zinc.ubuntu.com/git?p=mid-team/hardy-netbook.git;a=blob;f=drivers/input/mouse/elantech.c;h=d0e2cafed162428f72e3654f4dda85e08ea486b3;hb=refs/heads/abi-22 By inspecting the source code, and doing some test on a real hardware, I have completed the protocol specification (especially for the 6 bytes protocol). It also adds information about the mapping between the version reported by the device and the protocol to use. Signed-off-by: Éric Piel Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 6dcae1eaee2b437536b2fe928a609f9589691ebf Author: David S. Miller Date: Mon May 16 23:09:26 2011 -0400 bluetooth: Fix warnings in l2cap_core.c net/bluetooth/l2cap_core.c: In function ‘l2cap_recv_frame’: net/bluetooth/l2cap_core.c:3758:15: warning: ‘sk’ may be used uninitialized in this function net/bluetooth/l2cap_core.c:3758:15: note: ‘sk’ was declared here net/bluetooth/l2cap_core.c:3791:15: warning: ‘sk’ may be used uninitialized in this function net/bluetooth/l2cap_core.c:3791:15: note: ‘sk’ was declared here Signed-off-by: David S. Miller commit d46d4d64a85c6ff6118b33afd5d63bcb7e4be54a Merge: 2142c13 e00cf3b Author: David S. Miller Date: Mon May 16 22:49:41 2011 -0400 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 834cb0fc4712a3b21c6b8c5cb55bd13607191311 Author: Sarah Sharp Date: Thu May 12 18:06:37 2011 -0700 xhci: Fix memory leak bug when dropping endpoints When the USB core wants to change to an alternate interface setting that doesn't include an active endpoint, or de-configuring the device, the xHCI driver needs to issue a Configure Endpoint command to tell the host to drop some endpoints from the schedule. After the command completes, the xHCI driver needs to free rings for any endpoints that were dropped. Unfortunately, the xHCI driver wasn't actually freeing the endpoint rings for dropped endpoints. The rings would be freed if the endpoint's information was simply changed (and a new ring was installed), but dropped endpoints never had their rings freed. This caused errors when the ring segment DMA pool was freed when the xHCI driver was unloaded: [ 5582.883995] xhci_hcd 0000:06:00.0: dma_pool_destroy xHCI ring segments, ffff88003371d000 busy [ 5582.884002] xhci_hcd 0000:06:00.0: dma_pool_destroy xHCI ring segments, ffff880033716000 busy [ 5582.884011] xhci_hcd 0000:06:00.0: dma_pool_destroy xHCI ring segments, ffff880033455000 busy [ 5582.884018] xhci_hcd 0000:06:00.0: Freed segment pool [ 5582.884026] xhci_hcd 0000:06:00.0: Freed device context pool [ 5582.884033] xhci_hcd 0000:06:00.0: Freed small stream array pool [ 5582.884038] xhci_hcd 0000:06:00.0: Freed medium stream array pool [ 5582.884048] xhci_hcd 0000:06:00.0: xhci_stop completed - status = 1 [ 5582.884061] xhci_hcd 0000:06:00.0: USB bus 3 deregistered [ 5582.884193] xhci_hcd 0000:06:00.0: PCI INT A disabled Fix this issue and free endpoint rings when their endpoints are successfully dropped. This patch should be backported to kernels as old as 2.6.31. Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit 30f89ca021c3e584b61bc5a14eede89f74b2e826 Author: Sarah Sharp Date: Mon May 16 13:09:08 2011 -0700 xhci: Fix memory leak in ring cache deallocation. When an endpoint ring is freed, it is either cached in a per-device ring cache, or simply freed if the ring cache is full. If the ring was added to the cache, then virt_dev->num_rings_cached is incremented. The cache is designed to hold up to 31 endpoint rings, in array indexes 0 to 30. When the device is freed (when the slot was disabled), xhci_free_virt_device() is called, it would free the cached rings in array indexes 0 to virt_dev->num_rings_cached. Unfortunately, the original code in xhci_free_or_cache_endpoint_ring() would put the first entry into the ring cache in array index 1, instead of array index 0. This was caused by the second assignment to rings_cached: rings_cached = virt_dev->num_rings_cached; if (rings_cached < XHCI_MAX_RINGS_CACHED) { virt_dev->num_rings_cached++; rings_cached = virt_dev->num_rings_cached; virt_dev->ring_cache[rings_cached] = virt_dev->eps[ep_index].ring; This meant that when the device was freed, cached rings with indexes 0 to N would be freed, and the last cached ring in index N+1 would not be freed. When the driver was unloaded, this caused interesting messages like: xhci_hcd 0000:06:00.0: dma_pool_destroy xHCI ring segments, ffff880063040000 busy This should be queued to stable kernels back to 2.6.33. Signed-off-by: Sarah Sharp Cc: stable@kernel.org commit e00cf3b9eb7839b952e434a75bff6b99e47337ac Merge: 1a8218e 3b8ab88 Author: John W. Linville Date: Mon May 16 14:55:42 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: drivers/net/wireless/iwlwifi/iwl-agn-tx.c net/mac80211/sta_info.h commit e4abce8538496ba90cb89909894ea42e00f96a7d Author: Ben Hutchings Date: Mon May 16 18:51:24 2011 +0100 sfc: Use netif_device_{detach,attach}() around reset and self-test We need to keep the TX queues stopped throughout a reset, without triggering the TX watchdog and regardless of the link state. The proper way to do this is to use netif_device_{detach,attach}() just as we do around suspend/resume, rather than the current bodge of faking link-down. Since we also need to do this during an offline self-test and we perform a reset during that, add these function calls outside of efx_reset_down() and efx_reset_up(). Signed-off-by: Ben Hutchings commit 1e87347c2f6e124d73b4921c4580adad4ac534d6 Merge: f29251f 3cff484 Author: Russell King Date: Mon May 16 23:06:49 2011 +0100 Merge git://git.kernel.org/pub/scm/linux/kernel/git/nico/orion into devel-stable commit db210f824c2f155703edf03bc2137da1bd76e27d Author: Thiago Farina Date: Sun May 1 12:10:25 2011 +0000 ide/ide-scan-pci.c: Use for_each_pci_dev(). Use for_each_pci_dev() to simplify the code. Signed-off-by: Thiago Farina Signed-off-by: David S. Miller commit dc382fd5bcca7098a984705ed6ac880f539d068e Author: David Rientjes Date: Mon May 16 13:54:10 2011 -0700 x86, mm: Allow ZONE_DMA to be configurable ZONE_DMA is unnecessary for a large number of machines that do not require less than 32-bit DMA addressing, e.g. ISA legacy DMA or PCI cards with a restricted DMA address mask. This patch allows users to disable ZONE_DMA for x86 if they know they will not be using such devices with their kernel. This prevents the VM from unnecessarily reserving a ratio of memory (defaulting to 1/256th of system capacity) with lowmem_reserve_ratio for such allocations when it will never be used. Signed-off-by: David Rientjes Link: http://lkml.kernel.org/r/alpine.DEB.2.00.1105161353560.4353@chino.kir.corp.google.com Signed-off-by: H. Peter Anvin commit d81f087f1f1c1aacdb4f17224a554237285ddd11 Author: Kristoffer Glembo Date: Thu Apr 28 22:17:00 2011 +0000 sparc32,leon: Remove unnecessary page_address calls in LEON DMA API. The function mmu_inval_dma_area takes a virtual address as a parameter which is problematic in case the buffer is located in highmem and the mapping currently is unavailable. Since the function was only implemented for LEON this patch removes calls to it in non LEON code paths and renames it to dma_make_coherent which instead takes a physical address (which for now is unused since we flush the whole cache). This way it is possible to remove several unnecessary calls to page_address which will fail if the virtual mapping is unavailable. Signed-off-by: Kristoffer Glembo Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit fb1fece5da027d3c7e69cf44ca8e58aaf0faf520 Author: KOSAKI Motohiro Date: Mon May 16 13:38:07 2011 -0700 sparc: convert old cpumask API into new one Adapt new API. Almost change is trivial, most important change are to remove following like =operator. cpumask_t cpu_mask = *mm_cpumask(mm); cpus_allowed = current->cpus_allowed; Because cpumask_var_t is =operator unsafe. These usage might prevent kernel core improvement. No functional change. Signed-off-by: KOSAKI Motohiro Signed-off-by: David S. Miller commit 865be7a81071a77014c83cd01536c989eed362b4 Author: Ondrej Zary Date: Mon May 16 21:38:08 2011 +0200 x86, cpu: Fix detection of Celeron Covington stepping A1 and B0 Steppings A1 and B0 of Celeron Covington are currently misdetected as Pentium II (Dixon). Fix it by removing the stepping check. [ hpa: this fixes this specific bug... the CPUID documentation specifies that the L2 cache size can disambiguate additional CPUs; this patch does not fix that. ] Signed-off-by: Ondrej Zary Link: http://lkml.kernel.org/r/201105162138.15416.linux@rainbow-software.org Signed-off-by: H. Peter Anvin commit 34e268d87d60da7968d7300aae7d575be9d16ae7 Author: Stephen Boyd Date: Thu May 12 16:50:10 2011 -0700 ASoC: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/linux/poll.h:14, from include/sound/pcm.h:29, from include/sound/ac97_codec.h:31, from sound/soc/soc-core.c:34: In function 'copy_from_user', inlined from 'codec_reg_write_file' at sound/soc/soc-core.c:252: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Acked-by: Liam Girdwood Signed-off-by: Stephen Boyd Signed-off-by: Mark Brown commit 55dd23eca666876e6028aa35d5e391cfced54871 Author: Daniel Hellstrom Date: Mon May 2 00:08:54 2011 +0000 sparc32, sun4d: Implemented SMP IPIs support for SUN4D machines The sun4d does not seem to have a distingstion between soft and hard IRQs. When generating IPIs the generated IRQ looks like a hard IRQ, this patch adds a "IPI check" in the sun4d irq trap handler at a predefined IRQ number (SUN4D_IPI_IRQ). Before generating an IPI a per-cpu memory structure is modified for the "IPI check" to successfully detect a IPI request to a specific processor, the check clears the IPI work requested. All three IPIs (resched, single and cpu-mask) use the same IRQ number. The IPI IRQ should preferrably be on a separate IRQ and definitly not shared with IRQ handlers requesting IRQ with IRQF_SHARED. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit ecbc42b70acbc6327adefe9635db93fcf62bf59d Author: Daniel Hellstrom Date: Mon May 2 00:08:53 2011 +0000 sparc32, sun4m: Implemented SMP IPIs support for SUN4M machines Implement the three IPIs (resched, single and cpu-mask) generation and interrupt handler catch. The sun4m has 15 soft-IRQs and three of them is used with this patch, the three IPIs was previously implemented with the cross-call IRQ15 which does not work with locking routines such as spinlocks because IRQ15 is NMI, it may cause deadlock. The IRQ trap handler code assumes (in the same spritit as the old it seems) that hard interrupts will be generated until handled (level), when a IRQ happens the IRQ pending register is checked for pending soft-IRQs. When both hard and soft IRQ happens at the same time only soft-IRQs are handled. The old code implemented a soft-IRQ traphandler at IRQ14 which called smp_reschedule_irq which in turn called set_need_resched. It seems to be an old relic and is replaced with the interrupt traphander exit code RESTORE_ALL, it calls schedule() when appropriate. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 1ca0c808c60f171c1949b0e7f3a4c0516855f7a0 Author: Daniel Hellstrom Date: Mon May 2 00:08:52 2011 +0000 sparc32,leon: Implemented SMP IPIs for LEON CPU This patch implements SMP IPIs on LEON using software generated IRQs to signal between CPUs. The IPI IRQ number is set by using the ipi_num property in the device tree, or defaults to 13. LEON SMP systems should reserve IRQ 13 (and IRQ 15) to Linux in order for the defaults to work. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit d6d048192b1d22cb8f09da0cc936095ec2cb969c Author: Daniel Hellstrom Date: Mon May 2 00:08:51 2011 +0000 sparc32: implement SMP IPIs using the generic functions The current sparc32 SMP IPI generation is implemented the cross call function. The cross call function uses IRQ15 the NMI, this is has the effect that IPIs will interrupt IRQ critical areas and hang the system. Typically on/after spin_lock_irqsave calls can be aborted. The cross call functionality must still exist to flush cache/TLBS. This patch provides CPU models a custom way to implement generation of IPIs on the generic code's request. The typical approach is to generate an IRQ for each IPI case. After this patch each sparc32 SMP CPU model needs to implement IPIs in order to function properly. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 2645e7219e88d1e2ab8b2939537bce36e6db9e8c Author: Daniel Hellstrom Date: Mon Apr 25 21:48:17 2011 +0000 sparc32,leon: SMP power down implementation Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 5149bed8912f4030f52feb33326cfe794831b184 Author: Daniel Hellstrom Date: Mon Apr 25 21:43:48 2011 +0000 sparc32,leon: added some SMP comments Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 8547920fc6f0d288fcc57ca705ccb2d00920fc72 Author: Feng, Boqun Date: Thu Apr 28 17:15:33 2011 +0800 drm/i915: clean up unused ring_get_irq/ring_put_irq functions This patch depends on patch "drm/i915: fix user irq miss in BSD ring on g4x". Once the previous patch apply, ring_get_irq/ring_put_irq become unused. So simply remove them. Signed-off-by: Feng, Boqun Reviewed-by: Xiang, Haihao Signed-off-by: Keith Packard commit 5bfa1063a775836a84f97e4df863fc36e1f856ad Author: Feng, Boqun Date: Mon May 16 16:02:39 2011 +0800 drm/i915: fix user irq miss in BSD ring on g4x On g4x, user interrupt in BSD ring is missed. This is because though g4x and ironlake share the same bsd_ring, their interrupt control interfaces have _two_ differences. 1.different irq enable/disable functions: On g4x are i915_enable_irq and i915_disable_irq. On ironlake are ironlake_enable_irq and ironlake_disable_irq. 2.different irq flag: On g4x user interrupt flag in BSD ring on is I915_BSD_USER_INTERRUPT. On ironlake is GT_BSD_USER_INTERRUPT Old bsd_ring_get/put_irq call ring_get_irq and ring_get_irq. ring_get_irq and ring_put_irq only call ironlake_enable/disable_irq. So comes the irq miss on g4x. To fix this, as other rings' code do, conditionally call different functions(i915_enable/disable_irq and ironlake_enable/disable_irq) and use different interrupt flags in bsd_ring_get/put_irq. Signed-off-by: Feng, Boqun Reviewed-by: Xiang, Haihao Cc: stable@kernel.org Signed-off-by: Keith Packard commit 3cff484d4b264ff467a3b45c544cbbbab69f0bf8 Author: Andrew Lunn Date: Sun May 15 13:32:54 2011 +0200 ARM: dove: Consolidate mpp code with platform mpp. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 554cdaefd1cf7bb54b209c4e68c7cec87ce442a9 Author: Andrew Lunn Date: Sun May 15 13:32:53 2011 +0200 ARM: orion5x: Refactor mpp code to use common orion platform mpp. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit b2f427a1088a9ad4f86855f4df1fc059bebb441f Author: Andrew Lunn Date: Sun May 15 13:32:52 2011 +0200 ARM: orion: Refactor the MPP code common in the orion platform mv78xx0 and kirkwood use identical mpp code. It should also be possible to rewrite the orion5x mpp to use this platform code. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 44350061905b2a502579d3827eacaf8efa393aad Author: Andrew Lunn Date: Sun May 15 13:32:51 2011 +0200 ARM: orion: Consolidate setup of the crypto engine. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 9e613f8a7904f2b7516eed08f413463c579325bd Author: Andrew Lunn Date: Sun May 15 13:32:50 2011 +0200 ARM: orion: Consolidate SATA platform setup. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 4fcd3f374a928081d391cd9a570afe3b2c692fdc Author: Andrew Lunn Date: Sun May 15 13:32:49 2011 +0200 ARM: orion: Consolidate USB platform setup code. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit ee9627234dae8d1b8059b2ac39c961ee0932b803 Author: Andrew Lunn Date: Sun May 15 13:32:48 2011 +0200 ARM: orion: Consolidate the XOR platform setup code. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 5e00d3783dd362a34c9816bb582103c9833e4643 Author: Andrew Lunn Date: Sun May 15 13:32:47 2011 +0200 ARM: orion: Consolidate the platform data setup for the watchdog. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 980f9f601ad456dc5a699bf526b6bd894957bad3 Author: Andrew Lunn Date: Sun May 15 13:32:46 2011 +0200 ARM: orion: Consolidate SPI initialization. This change removes the interrupt resource. The driver does not use it. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit aac7ffa3ed121846b61347028828617c5dd1ce46 Author: Andrew Lunn Date: Sun May 15 13:32:45 2011 +0200 ARM: orion: Consolidate I2C initialization. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 7e3819d820c9aa3536d15fe7310c054bef1f5f04 Author: Andrew Lunn Date: Sun May 15 13:32:44 2011 +0200 ARM: orion: Consolidate ethernet platform data Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit f29638868280534ed7e2fdd93b31557232597940 Author: Martin Schwidefsky Date: Tue May 10 10:10:43 2011 +0200 ftrace/s390: mcount offset calculation Do the mcount offset adjustment in the recordmcount.pl/recordmcount.[ch] at compile time and not in ftrace_call_adjust at run time. Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit 4748058c5cbf70b3adfa37204c047fcb29f335c0 Author: Andrew Lunn Date: Sun May 15 13:32:43 2011 +0200 ARM: kirkwood: Add support for RTC interrupts which allows RTC alarms. Tested using the test program in Documentation/rtc.txt Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 521ccb5c4aece609311bfa7157910a8f0c942af5 Author: Martin Schwidefsky Date: Tue May 10 10:10:41 2011 +0200 ftrace/x86: mcount offset calculation Do the mcount offset adjustment in the recordmcount.pl/recordmcount.[ch] at compile time and not in ftrace_call_adjust at run time. Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit 2142c131a3e290ae350f8a0b0d354c0585a96df1 Author: KOSAKI Motohiro Date: Mon May 16 11:53:49 2011 -0700 net: convert to new cpumask API We plan to remove cpu_xx() old api later. Thus this patch convert it. This patch has no functional change. Signed-off-by: KOSAKI Motohiro Signed-off-by: David S. Miller commit 07d8b595f367f4604e6027ad4cba33cbe3f55e10 Author: Martin Schwidefsky Date: Tue May 10 10:10:40 2011 +0200 ftrace/recordmcount: mcount address adjustment Introduce mcount_adjust{,_32,_64} to the C implementation of recordmcount analog to $mcount_adjust in the perl script. The adjustment is added to the address of the relocations against the mcount symbol. If this adjustment is done by recordmcount at compile time the ftrace_call_adjust function can be turned into a nop. Cc: John Reiser Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit f6eaccb30fb4381da05e1e04f7fb9b956ab22826 Author: Andrew Lunn Date: Sun May 15 13:32:42 2011 +0200 ARM: orion: Consolidate the creation of the RTC platform data. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 5173cc057787560c127c6e9737f308c833dc4ff3 Author: Eric Dumazet Date: Mon May 16 08:37:37 2011 +0000 ipv4: more compliant RFC 3168 support Commit 6623e3b24a5e (ipv4: IP defragmentation must be ECN aware) was an attempt to not lose "Congestion Experienced" (CE) indications when performing datagram defragmentation. Stefanos Harhalakis raised the point that RFC 3168 requirements were not completely met by this commit. In particular, we MUST detect invalid combinations and eventually drop illegal frames. Reported-by: Stefanos Harhalakis Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 41b402a201a12efdff4acc990e023a89a409cd41 Author: Steven Rostedt Date: Wed Apr 20 21:13:06 2011 -0400 ftrace/recordmcount: Add helper function get_sym_str_and_relp() The code to get the symbol, string, and relp pointers in the two functions sift_rel_mcount() and nop_mcount() are identical and also non-trivial. Moving this duplicate code into a single helper function makes the code easier to read and more maintainable. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023739.723658553@goodmis.org Signed-off-by: Steven Rostedt commit 37762cb9977626343b3cd1aab9146313c94748c2 Author: Steven Rostedt Date: Wed Apr 20 20:47:34 2011 -0400 ftrace/recordmcount: Remove duplicate code to find mcount symbol The code in sift_rel_mcount() and nop_mcount() to get the mcount symbol number is identical. Replace the two locations with a call to a function that does the work. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023739.488093407@goodmis.org Signed-off-by: Steven Rostedt commit 2895cd2ab81dfb7bc22637bc110857db44a30b4a Author: Steven Rostedt Date: Wed Apr 13 16:43:29 2011 -0400 ftrace/x86: Do not trace .discard.text section The section called .discard.text has tracing attached to it and is currently ignored by ftrace. But it does include a call to the mcount stub. Adding a notrace to the code keeps gcc from adding the useless mcount caller to it. Link: http://lkml.kernel.org/r/20110421023739.243651696@goodmis.org Signed-off-by: Steven Rostedt commit f0201738b61b1adcf6b2c4719c5c415745014c1c Author: Steven Rostedt Date: Tue Apr 12 19:06:39 2011 -0400 ftrace: Avoid recording mcount on .init sections directly The init and exit sections should not be traced and adding a call to mcount to them is a waste of text and instruction cache. Have the macro section attributes include notrace to ignore these functions for tracing from the build. Link: http://lkml.kernel.org/r/20110421023738.953028219@goodmis.org Signed-off-by: Steven Rostedt commit 28a2b45054f2e3f3671e36a6e9efc82756afa31a Author: Andrew Lunn Date: Sun May 15 13:32:41 2011 +0200 ARM: orion: Consolidate the creation of the uart platform data. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 5c60255149eece2a36ec9f5c99817b85f96fe8ec Author: Andrew Lunn Date: Sun May 15 13:32:40 2011 +0200 ARM: orion: Rename some constants to macros to make code more identical Changing eg 0xffffffff to DMA_BIT_MASK(32) etc allows easier side by side comparision of identical code which can be consolidated. Signed-off-by: Andrew Lunn Signed-off-by: Nicolas Pitre commit 85356f802225fedeee8c3e65bdd93b263ace0a8b Author: Steven Rostedt Date: Tue Apr 12 18:59:10 2011 -0400 kbuild/recordmcount: Add RECORDMCOUNT_WARN to warn about mcount callers When mcount is called in a section that ftrace will not modify it into a nop, we want to warn about this. But not warn about this always. Now if the user builds the kernel with the option RECORDMCOUNT_WARN=1 then the build will warn about mcount callers that are ignored and will just waste execution time. Acked-by: Michal Marek Cc: linux-kbuild@vger.kernel.org Link: http://lkml.kernel.org/r/20110421023738.714956282@goodmis.org Signed-off-by: Steven Rostedt commit dfad3d598c4bbbaf137588e22bac1ce624529f7e Author: Steven Rostedt Date: Tue Apr 12 18:53:25 2011 -0400 ftrace/recordmcount: Add warning logic to warn on mcount not recorded There's some sections that should not have mcount recorded and should not have modifications to the that code. But currently they waste some time by calling mcount anyway (which simply returns). As the real answer should be to either whitelist the section or have gcc ignore it fully. This change adds a option to recordmcount to warn when it finds a section that is ignored by ftrace but still contains mcount callers. This is not on by default as developers may not know if the section should be completely ignored or added to the whitelist. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023738.476989377@goodmis.org Signed-off-by: Steven Rostedt commit ffd618fa39284f8cc343894b566dd42ec6e74e77 Author: Steven Rostedt Date: Fri Apr 8 03:58:48 2011 -0400 ftrace/recordmcount: Make ignored mcount calls into nops at compile time There are sections that are ignored by ftrace for the function tracing because the text is in a section that can be removed without notice. The mcount calls in these sections are ignored and ftrace never sees them. The downside of this is that the functions in these sections still call mcount. Although the mcount function is defined in assembly simply as a return, this added overhead is unnecessary. The solution is to convert these callers into nops at compile time. A better solution is to add 'notrace' to the section markers, but as new sections come up all the time, it would be nice that they are delt with when they are created. Later patches will deal with finding these sections and doing the proper solution. Thanks to H. Peter Anvin for giving me the right nops to use for x86. Cc: "H. Peter Anvin" Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023738.237101176@goodmis.org Signed-off-by: Steven Rostedt commit 8abd5724a7f1631ab2276954156c629d4d17149a Author: Steven Rostedt Date: Wed Apr 13 13:31:08 2011 -0400 ftrace/recordmcount: Modify only executable sections PROGBITS is not enough to determine if the section should be modified or not. Only process sections that are marked as executable. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.991485123@goodmis.org Signed-off-by: Steven Rostedt commit 9f087e7612115b7a201d4f3392a95ac7408948ab Author: Steven Rostedt Date: Wed Apr 6 14:10:22 2011 -0400 ftrace: Add .kprobe.text section to whitelist for recordmcount.c The .kprobe.text section is safe to modify mcount to nop and tracing. Add it to the whitelist in recordmcount.c and recordmcount.pl. Cc: John Reiser Cc: Masami Hiramatsu Link: http://lkml.kernel.org/r/20110421023737.743350547@goodmis.org Signed-off-by: Steven Rostedt commit e90b0c8bf211958a296d60369fecd51b35864407 Author: Steven Rostedt Date: Wed Apr 6 13:32:24 2011 -0400 ftrace/trivial: Clean up record mcount to use Linux switch style The Linux style for switch statements is: switch (var) { case x: [...] break; } Not: switch (var) { case x: { [...] } break; Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.523968644@goodmis.org Signed-off-by: Steven Rostedt commit dd5477ff3ba978892014ea5f988cb1bf04aa505e Author: Steven Rostedt Date: Wed Apr 6 13:21:17 2011 -0400 ftrace/trivial: Clean up recordmcount.c to use Linux style comparisons The Linux ftrace subsystem style for comparing is: var == 1 var > 0 and not: 1 == var 0 < var It is considered that Linux developers are smart enough not to do the if (var = 1) mistake. Cc: John Reiser Link: http://lkml.kernel.org/r/20110421023737.290712238@goodmis.org Signed-off-by: Steven Rostedt commit e59347a1d15c0b1d9fdc510520f8fa78d7d19a5b Author: Thomas Gleixner Date: Thu Apr 14 19:17:57 2011 +0200 arm: orion: Use generic irq chip The core interrupt chip is a straight forward conversion. The gpio chip is implemented with two instances of the irq_chip_type which can be switched with the irq_set_type function. That allows us to use the generic callbacks and avoids the conditionals in them. Signed-off-by: Thomas Gleixner Signed-off-by: Nicolas Pitre commit 099fb8ab1e57e5d609ac686cc0ab6d1835a79155 Author: Larry Finger Date: Sat May 14 10:15:17 2011 -0500 rtlwifi: rtl8192c-common: rtl8192ce: Fix for HT40 regression The changes that were made to rtl8192ce when rtl8192cu was added broke HT40. The errors included a typo in rtlwifi, a missing routine in rtl8192ce and a missing callback of that routine in rtl8192c-common. This patch fixes the regression reported in Bug #35082. Signed-off-by: Larry Finger Cc: stable@kernel.org Signed-off-by: John W. Linville commit 349eb8cf45aadd35836fdfde75b3265a01b2aaa1 Author: Johannes Berg Date: Sat May 14 11:56:16 2011 +0200 mac80211: annotate and fix RCU in mesh code This adds proper RCU annotations to the mesh path table code, and fixes a number of bugs in the code that I found while checking the sparse warnings I got as a result of the annotations. Some things like the changes in mesh_path_add() or mesh_pathtbl_init() only serve to shut up sparse, but other changes like the changes surrounding the for_each_mesh_entry() macro fix real RCU bugs in the code. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 1928ecab620907a0953f811316d05f367f3f4dba Author: Johannes Berg Date: Sat May 14 11:00:52 2011 +0200 mac80211: fix and simplify mesh locking The locking in mesh_{mpath,mpp}_table_grow not only has an rcu_read_unlock() missing, it's also racy (though really only technically since it's invoked from a single function only) since it obtains the new size of the table without any locking, so two invocations of the function could attempt the same resize. Additionally, it uses synchronize_rcu() which is rather expensive and can be avoided trivially here. Modify the functions to only use the table lock and use call_rcu() instead of synchronize_rcu(). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit d07c7cf49ae7c488e778c4d668f4cc10bd2fa971 Author: Johannes Berg Date: Sat May 14 11:04:51 2011 +0200 mac80211: add missing rcu_barrier mac80211 uses call_rcu() with functions that are defined in the module, so it must use rcu_barrier() at module exit time. Luckily, this seems to not be a problem in practice as module unload and unregistration takes a long time and probably does multiple synchronize_rcu(). Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 9594b56dbed8cecc4694ed2ab7cf36c66623910e Author: Rafał Miłecki Date: Sat May 14 10:31:46 2011 +0200 bcma: add PCI ID of the card found in Thinkpad X120e Reported-by: Gottfried Haider Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit c29acf201007a6d73223f864f52406eb5ba19933 Author: Rajkumar Manoharan Date: Sat May 14 09:43:28 2011 +0530 mac80211: abort scan_work immediately when the device goes down As long as no delay is required b/w channel change, scan work is proceeding without scheduling a new work. In such case, we can not abort scan work when the card was unplugged. This patch completes the scanning immediately whenever the device goes down. Reviewed-by: Johannes Berg Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 8e621fc90b42fa2ca4ff65dd8d9cb21723e47837 Author: Johannes Berg Date: Sat May 14 01:55:23 2011 +0200 mac80211: verify IBSS in interface combinations Drivers shouldn't attempt to advertise support for more than one IBSS interface since mac80211 doesn't support that. Check and return an error from ieee80211_register_hw() in that case. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit df64962f7d74877624442c059e7878fdf7ec3c22 Author: Christian Lamparter Date: Sat May 14 02:42:38 2011 +0200 carl9170: advertise interface combinations In order to provide multiple interfaces for a single device, the driver will be required to advertise all possible interface configurations to the stack. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit dedb1eb977d75f301b17190cc4b6e7d17dbf17db Author: Rafał Miłecki Date: Sat May 14 00:04:38 2011 +0200 b43: rename b43_wldev's field with ssb_device to sdev We free name "dev" for something generic (like dev abstraction layer). Additionaly code is cleaner now, especially magic dev->dev-dev chains. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit d0df9eecf9f61f70fd847656f5eb113e06e46a03 Author: Javier Cardona Date: Fri May 13 14:16:07 2011 -0700 mac80211: Deactivate mesh path timers when freeing nodes Mesh paths are deleted via mesh_path_del() which properly deactivates the timer associated to a mesh path. But if paths were deleted by mesh_table_free(..., true) timers would not be deactivated. This fixes this case. Reported-by: Johannes Berg Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 011159a0a746e03ae42d559ce5c2a70138da3129 Author: Alexey Dobriyan Date: Sat May 14 00:12:48 2011 +0300 airo: correct proc entry creation interfaces * use proc_mkdir_mode() instead of create_proc_entry(S_IFDIR|...), export proc_mkdir_mode() for that, oh well. * don't supply S_IFREG to proc_create_data(), it's unnecessary Signed-off-by: Alexey Dobriyan Signed-off-by: John W. Linville commit 9368a9a2378ab721f82f59430a135b4ce4ff5109 Author: Christian Lamparter Date: Fri May 13 21:47:23 2011 +0200 p54usb: add zoom 4410 usbid Cc: Reported-by: Mark Davis Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit eecaaba5b2e4ae762b4726fae2e3b22630e137ec Author: Borislav Petkov Date: Mon May 16 15:39:48 2011 +0200 Documentation, ABI: Update L3 cache index disable text Change contact person to AMD kernel mailing list, update text and external references, drop "Users:" tag. Cc: Randy Dunlap Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1305553188-21061-4-git-send-email-bp@amd64.org Acked-by: Greg Kroah-Hartman Signed-off-by: H. Peter Anvin commit 42be450565b0fc4607fae3e3a7da038d367a23ed Author: Frank Arnold Date: Mon May 16 15:39:47 2011 +0200 x86, AMD, cacheinfo: Fix L3 cache index disable checks We provide two slots to disable cache indices, and have a check to prevent both slots to be used for the same index. If the user disables the same index on different subcaches, both slots will hold the same index, e.g. $ echo 2047 > /sys/devices/system/cpu/cpu0/cache/index3/cache_disable_0 $ cat /sys/devices/system/cpu/cpu0/cache/index3/cache_disable_0 2047 $ echo 1050623 > /sys/devices/system/cpu/cpu0/cache/index3/cache_disable_1 $ cat /sys/devices/system/cpu/cpu0/cache/index3/cache_disable_1 2047 due to the fact that the check was looking only at index bits [11:0] and was ignoring writes to bits outside that range. The more correct fix is to simply check whether the index is within the bounds of [0..l3->indices]. While at it, cleanup comments and drop now-unused local macros. Signed-off-by: Frank Arnold Link: http://lkml.kernel.org/r/1305553188-21061-3-git-send-email-bp@amd64.org Signed-off-by: Borislav Petkov Signed-off-by: H. Peter Anvin commit 50e7534427283afd997d58481778c07bea79eb63 Author: Borislav Petkov Date: Mon May 16 15:39:46 2011 +0200 x86, AMD, cacheinfo: Fix fallout caused by max3 conversion 732eacc0542d0aa48797f675888b85d6065af837 converted code around the kernel using nested max() macros to use the new max3 macro but forgot to remove the old line in intel_cacheinfo.c. Fix it. Cc: Hagen Paul Pfeifer Cc: Frank Arnold Signed-off-by: Borislav Petkov Link: http://lkml.kernel.org/r/1305553188-21061-2-git-send-email-bp@amd64.org Signed-off-by: H. Peter Anvin commit f51f87a09119a495527a3f15d76db38b8e24beb8 Merge: 3b8ab88 6dc0c7f Author: John W. Linville Date: Mon May 16 14:21:02 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 72874daa5e9064c4e8d689e6a04b1e96f687f872 Author: Rafael J. Wysocki Date: Tue May 3 19:45:32 2011 +0200 PM: Fix build issue in clock_ops.c for CONFIG_PM_RUNTIME unset Fix a build issue in drivers/base/power/clock_ops.c occuring when CONFIG_PM_RUNTIME is not set. Signed-off-by: Rafael J. Wysocki commit 2064af917b3ba7589070064ca4ed12cecd99a63c Author: Kevin Hilman Date: Fri Apr 29 00:37:26 2011 +0200 PM: Revert "driver core: platform_bus: allow runtime override of dev_pm_ops" The platform_bus_set_pm_ops() operation is deprecated in favor of the new device power domain infrastructre implemented in commit 7538e3db6e015e890825fbd9f8659952896ddd5b (PM: add support for device power domains) Signed-off-by: Kevin Hilman Signed-off-by: Rafael J. Wysocki commit 600b776eb39a13a28b090ba9efceb0c69d4508aa Author: Rafael J. Wysocki Date: Mon May 16 20:15:36 2011 +0200 OMAP1 / PM: Use generic clock manipulation routines for runtime PM Convert OMAP1 to using the new generic clock manipulation routines and a device power domain for runtime PM instead of overriding the platform bus type's runtime PM callbacks. This allows us to simplify OMAP1-specific code and to share some code with other platforms (shmobile in particular). Signed-off-by: Rafael J. Wysocki Acked-by: Kevin Hilman commit 485bf569ba798b4702bc2efbfd3a355fe2c8db04 Author: Shripad Nunjundarao Date: Mon May 16 07:36:59 2011 +0000 be2net: FW download for Lancer Added implementation of FW download feature for Lancer. Signed-off-by: Shripad Nunjundarao Signed-off-by: Sevin Xavier Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 005d569600b404cae0b356e3c4085290ecc17775 Author: Selvin Xavier Date: Mon May 16 07:36:35 2011 +0000 be2net: Stats for Lancer Added Lancer stats implementation. Signed-off-by: Selvin Xavier Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 89a88ab84b946a90839fb66ca3583a2504c11292 Author: Ajit Khaparde Date: Mon May 16 07:36:18 2011 +0000 be2net: Support for version 1 of stats for BE3 Added support to get version 1 of the stats for BE3. Use old stats command for BE2. Signed-off-by: Ajit Khaparde Signed-off-by: Selvin Xavier Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 3b8ab88acaceb505aa06ef3bbf3a73b92470ae78 Author: Yogesh Ashok Powar Date: Fri May 13 11:22:32 2011 -0700 mwifiex: use ieee80211_amsdu_to_8023s routine mwifiex was using its own implementation of converting 802.11n AMSDU to 802.3s. This patch removes mwifiex specific implementation and uses existing ieee80211_amsdu_to_8023s routine. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 8b3becadc82de3b87a5c196239db3fef6caa9c82 Author: Yogesh Ashok Powar Date: Fri May 13 11:22:31 2011 -0700 cfg80211: make stripping of 802.11 header optional from AMSDU Currently the devices that have already stripped IEEE 802.11 header from the AMSDU SKB can not use ieee80211_amsdu_to_8023s routine. This patch enhances ieee80211_amsdu_to_8023s() API by changing mandatory removing of IEEE 802.11 header from AMSDU to optional. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 57cf8043a64b56a10b9f194572548a3dfb62e596 Author: Javier Cardona Date: Fri May 13 10:45:43 2011 -0700 nl80211: Move peer link state definition to nl80211 These definitions need to be exposed now that we can set the peer link states via NL80211_ATTR_STA_PLINK_STATE. They were already being (opaquely) reported by NL80211_STA_INFO_PLINK_STATE. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 108697c44b8e50bea3505c6bf9667da4627cb2d5 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:59:42 2011 +0530 ath9k: make npending frames check as bool we are not doing anything by tracking the number of pending frames. bail out when we first find a pending frame in any one of the 10 queues. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 21e8ee6d207f6d384689571101436eb9070c22ca Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:31:40 2011 +0530 ath9k: make sure main_rssi is positive some times the rssi control descriptor for the main antenna may be negative like that of alternate antenna, hence before incrementing packet counts/rssi of main/alternate antenna make sure both main_rssi and alt_rssi are positive only. this avoids wrong selection of antenna due to diversity Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 3e9a212a9e21266115bad2982016950fb2bf29c2 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:31:23 2011 +0530 ath9k: configure fast_div_bias based on diversity group configure fast diversity bias based on the antenna diversity group and based on main/alt LNA configurations. also configure main antenna and alternate antenna to gain-table 0 for diversity group 2(AR9485) Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit b85c5734f00886ee0f33ef4d0038ed9a278eefce Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:31:09 2011 +0530 ath9k: Implement an API to swap main/ALT LNA's for the diversity group 2(AR9485) we swap the LNA's of main/ALT antenna based on alternate antenna's rssi average in comparision with main antenna's rssi, while for AR9285(antenna diversity group 0)we still follow the older method of looking at the packet count in alternate antenna Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 8afbcc8bfb549a522298fa4a31ee5155c2b5f7a0 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:30:56 2011 +0530 ath9k_hw: define antenna diversity group AR9285 belongs to diversity group 0 and AR9485 belongs to diversity group 2. Based on the diversity group we configure certain antenna diversity paramaters such as lna1_lna2_delta and fast diversity bias values. For AR9485 we have some gain table parameter which selects the gain table 0/1 for main and alternate antenna Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 6bcbc062c23ac769cb775f3d2cf209db9d1a96fe Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:30:41 2011 +0530 ath9k_hw: define modules to get/set Antenna diversity paramaters these are the two important modules that will be called by the antenna diversity algorithm module in the rx. this will continuosly configure the hardware based on the current diversity status obtained from the algorithm Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 842ca780af06d166c87725b68f4fe359c3da7bc0 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:30:27 2011 +0530 ath9k_hw: config diversity based on eeprom contents * enable LNA-diversity, fast-diversity for AR9485 based on the value read from EEPROM content * if antenna diversity/combining is supported, set LNA1 for the main antenna and LNA2 for the alternate antenna based on the new diversity algorithm Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Cc: Luis Rodriguez Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit c6ba9feb4fa33f31f26ac1a2b0a337d79426b822 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:29:53 2011 +0530 ath9k_hw: define registers/macros to support Antenna diversity define few registers and macros to configure/enable Antenna diversity parameters in AR9485 Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 21d2c63a2866a47030803de3db9b4e8759806095 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:29:31 2011 +0530 ath9k_hw: enable Antenna diversity for AR9485 read antenna diversity and combining information from the EEPROM. Enable antenna diversity/combining feature only when both LNA diversity and fast diversity are supported Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Tested-by: Mohammed Shafi Shajakhan Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 69de3721750ea4fae504be9e67f140cafe1c7a89 Author: Mohammed Shafi Shajakhan Date: Fri May 13 20:29:04 2011 +0530 ath9k_hw: make antenna diversity modules chip specific this is necessary to support Antenna diversity and combining in new chip sets such as AR9485, previously Antenna diversity support is available only in AR9285 Cc: Gabriel Tseng Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit bd2281b85d929af0bd192f05135f70dd05f4fd85 Author: Julia Lawall Date: Fri May 13 15:52:10 2011 +0200 net/rfkill/core.c: Avoid leaving freed data in a list The list_for_each_entry loop can fail, in which case the list element is not removed from the list rfkill_fds. Since this list is not accessed by the loop, the addition of &data->list into the list is just moved after the loop. The sematic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E,E1,E2; identifier l; @@ *list_add(&E->l,E1); ... when != E1 when != list_del(&E->l) when != list_del_init(&E->l) when != E = E2 *kfree(E);// Signed-off-by: Julia Lawall Signed-off-by: John W. Linville commit 40b275b69ee660274b77fb612b0db31fd282fc3f Author: Johannes Berg Date: Fri May 13 14:15:49 2011 +0200 mac80211: sparse RCU annotations This adds sparse RCU annotations to most of mac80211, only the mesh code remains to be done. Due the the previous patches, the annotations are pretty simple. The only thing that this actually changes is removing the RCU usage of key->sta in debugfs since this pointer isn't actually an RCU-managed pointer (it only has a single assignment done before the key even goes live). As that is otherwise harmless, I decided to make it part of this patch. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ec034b208dc8aa5dc73ec46c3f27e34c5efbf113 Author: Johannes Berg Date: Fri May 13 13:35:40 2011 +0200 mac80211: fix TX a-MPDU locking During my quest to make mac80211 not have any RCU warnings from sparse, I came across the a-MPDU code again and it wasn't quite clear why it isn't racy. So instead of assigning the tid_tx array with just the spinlock held in ieee80211_start_tx_ba_session use a separate temporary array protected only by the spinlock and protect all assignments to the "live" array by both the spinlock and the mutex so that other code is easily verified to be correct. Due to pointer assignment atomicity I don't think this is a real issue, but I'm not sure, especially on Alpha the current code might be problematic. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 7527a782e187d1214a5b3dc2897ce441033bb4ef Author: Johannes Berg Date: Fri May 13 10:58:57 2011 +0200 cfg80211: advertise possible interface combinations Add the ability to advertise interface combinations in nl80211. This allows the driver to indicate what the combinations are that it supports. "Combinations" of just a single interface are implicit, as previously. Note that cfg80211 will enforce that the restrictions are met, but not for all drivers yet (once all drivers are updated, we can remove the flag and enforce for all). When no combinations are actually supported, an empty list will be exported so that userspace can know if the kernel exported this info or not (although it isn't clear to me what tools using the info should do if the kernel didn't export it). Since some interface types are purely virtual/software and don't fit the restrictions, those are exposed in a new list of pure SW types, not subject to restrictions. This mainly exists to handle AP-VLAN and monitor interfaces in mac80211. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 805d7d23ef9806e47b550ad80270c4cea4ffc984 Author: Stephen Boyd Date: Thu May 12 16:50:05 2011 -0700 iwlwifi: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/net/checksum.h:25, from include/linux/skbuff.h:28, from drivers/net/wireless/iwlwifi/iwl-agn-rs.c:28: In function 'copy_from_user', inlined from 'rs_sta_dbgfs_scale_table_write' at drivers/net/wireless/iwlwifi/iwl-agn-rs.c:3099: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Signed-off-by: Stephen Boyd Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 8220ba3e2e671492b777159d8dac721f95f4a0ec Author: Stephen Boyd Date: Thu May 12 16:50:04 2011 -0700 iwlegacy: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/net/checksum.h:25, from include/linux/skbuff.h:28, from drivers/net/wireless/iwlegacy/iwl-4965-rs.c:28: In function 'copy_from_user', inlined from 'iwl4965_rs_sta_dbgfs_scale_table_write' at drivers/net/wireless/iwlegacy/iwl-4965-rs.c:2616: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Cc: Johannes Berg Signed-off-by: Stephen Boyd Signed-off-by: John W. Linville commit f5ec25deb2471bd49e907ab2f9ef6f860eb7cf95 Author: Chen Gong Date: Mon May 16 11:01:39 2011 -0700 pstore: fix potential logic issue in pstore read interface 1) in the calling of erst_read, the parameter of buffer size maybe overflows and cause crash 2) the return value of erst_read should be checked more strictly Signed-off-by: Chen Gong Signed-off-by: Tony Luck commit 06cf91b4b4aafa50ee0a94c81d2c6922a18af242 Author: Chen Gong Date: Mon May 16 11:00:27 2011 -0700 pstore: fix pstore filesystem mount/remount issue Currently after mount/remount operation on pstore filesystem, the content on pstore will be lost. It is because current ERST implementation doesn't support multi-user usage, which moves internal pointer to the end after accessing it. Adding multi-user support for pstore usage. Signed-off-by: Chen Gong Signed-off-by: Tony Luck commit 8d38d74b648513dd8ed8bd2b67d899208ef4e09e Author: Chen Gong Date: Mon May 16 10:58:57 2011 -0700 pstore: fix one type of return value in pstore the return type of function _read_ in pstore is size_t, but in the callback function of _read_, the logic doesn't consider it too much, which means if negative value (assuming error here) is returned, it will be converted to positive because of type casting. ssize_t is enough for this function. Signed-off-by: Chen Gong Signed-off-by: Tony Luck commit 538dd2e3976a7c572ee927d6bbebe01bf4d6f128 Author: Mahesh Bandewar Date: Fri May 13 15:08:49 2011 +0000 bnx2x: Allow ethtool to enable/disable loopback. This patch updates the bnx2x_set_features() to handle loopback mode. When enabled; it sets internal-MAC loopback. Signed-off-by: Mahesh Bandewar Signed-off-by: David S. Miller commit c5be24ff62d238a3fdd5d15461b420cd72e78a14 Author: David S. Miller Date: Fri May 13 18:01:21 2011 -0400 ipv4: Trivial rt->rt_src conversions in net/ipv4/route.c At these points we have a fully filled in value via the IP header the form of ip_hdr(skb)->saddr Signed-off-by: David S. Miller commit 7c1bfd685bcdc822ab1d7411ea05c82bd2a7b260 Author: Konrad Rzeszutek Wilk Date: Mon May 16 13:47:30 2011 -0400 xen/pci: Fix compiler error when CONFIG_XEN_PRIVILEGED_GUEST is not set. If we have CONFIG_XEN and the other parameters to build an Linux kernel that is non-privileged, the xen_[find|register|unregister]_ device_domain_owner functions should not be compiled. They should use the nops defined in arch/x86/include/asm/xen/pci.h instead. This fixes: arch/x86/pci/xen.c:496: error: redefinition of ‘xen_find_device_domain_owner’ arch/x86/include/asm/xen/pci.h:25: note: previous definition of ‘xen_find_device_domain_owner’ was here arch/x86/pci/xen.c:510: error: redefinition of ‘xen_register_device_domain_owner’ arch/x86/include/asm/xen/pci.h:29: note: previous definition of ‘xen_register_device_domain_owner’ was here arch/x86/pci/xen.c:532: error: redefinition of ‘xen_unregister_device_domain_owner’ arch/x86/include/asm/xen/pci.h:34: note: previous definition of ‘xen_unregister_device_domain_owner’ was here Signed-off-by: Konrad Rzeszutek Wilk Reported-by: Randy Dunlap commit 602a5322a7a1b6b005cb50d423939bb7a8782838 Author: Ben Hutchings Date: Mon May 16 17:32:39 2011 +0100 sfc: Fix TX queue numbering when separate_tx_channels=1 This option appears to have been broken by commit 8313aca38b3937947fffebca6e34bac8e24300c8 ('sfc: Allocate each channel separately, along with its RX and TX queues'). Signed-off-by: Ben Hutchings commit 9d03545d886bedd2c81b8f28ae0cc68c356d02f7 Author: Jarkko Nikula Date: Fri May 13 19:16:52 2011 +0300 ASoC: Fix wrong data type access in a few codec drivers Commit fafd217 ("ASoC: Store a list of widgets in a DAPM mux/mixer kcontrol") changed the control private data type that is passed to snd_soc_cnew when creating dapm mixer and mux controls. Commit did not update a few codec drivers that are using their own put callbacks and thus are accessing a wrong data type. Signed-off-by: Jarkko Nikula Tested-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fa63e477ddb09075f68cd5fe4db8f8045627a787 Author: Mark Brown Date: Sun May 15 18:18:56 2011 -0700 ASoC: Don't restart an already running WM8958 DSP2 Don't want to upset the DSP. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit d7fdae7c6533b9a409158c736781cdd352b76793 Author: Mark Brown Date: Sun May 15 18:02:53 2011 -0700 ASoC: Skip noop reconfiguration of WM8958 DSP2 algorithms If we're setting the currently applied value for one of the DSP algorithm configurations we can just skip all the handling as the control set is a noop. This ensures we do not disrupt a running DSP. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit fb5af53d421d80725172427e9076f6e889603df6 Author: Mark Brown Date: Sun May 15 12:18:38 2011 -0700 ASoC: Add some missing volume update bit sets for wm_hubs devices Signed-off-by: Mark Brown Acked-by: Liam Girdwood Cc: stable@kernel.org commit d0b48af6c2b887354d0893e598d92911ce52620e Author: Mark Brown Date: Sat May 14 17:21:28 2011 -0700 ASoC: Ensure output PGA is enabled for line outputs in wm_hubs Also fix a left/right typo while we're at it. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Date: Sun May 15 21:26:31 2011 +0000 net: ping: dont call udp_ioctl() udp_ioctl() really handles UDP and UDPLite protocols. 1) It can increment UDP_MIB_INERRORS in case first_packet_length() finds a frame with bad checksum. 2) It has a dependency on sizeof(struct udphdr), not applicable to ICMP/PING If ping sockets need to handle SIOCINQ/SIOCOUTQ ioctl, this should be done differently. Signed-off-by: Eric Dumazet CC: Vasiliy Kulikov Acked-by: Vasiliy Kulikov Signed-off-by: David S. Miller commit 8373dc38ca8d4918210710807256a313cd111f0b Author: saeed bishara Date: Mon May 16 15:41:15 2011 +0100 ARM: 6901/1: remove unneeded check of the cache_is_vipt_nonaliasing() when cache_is_vipt_nonaliasing(), we always have pte_exec() true at the end of this function, so no need for the additional check. Acked-by: Catalin Marinas Signed-off-by: Saeed Bishara Signed-off-by: Russell King commit c4d5ee13984f57b2f881635c49045151679f5e8a Author: Michal Marek Date: Mon May 16 16:37:34 2011 +0200 kbuild: make KBUILD_NOCMDDEP=1 handle empty built-in.o Based on a patch by Rabin Vincent. Fix building with KBUILD_NOCMDDEP=1, which currently does not work because it does not build built-in.o with no dependencies: LD fs/notify/built-in.o ld: cannot find fs/notify/dnotify/built-in.o: No such file or directory ld: cannot find fs/notify/inotify/built-in.o: No such file or directory ld: cannot find fs/notify/fanotify/built-in.o: No such file or directory Reported-and-tested-by: Rabin Vincent Signed-off-by: Michal Marek commit 9b940f8e8c32456c8a6428fa4313a4bcca7b4fcb Author: Allison Henderson Date: Mon May 16 10:11:09 2011 -0400 ext4: ext4_ext_convert_to_initialized bug found in extended FSX testing This patch addresses bugs found while testing punch hole with the fsx test. The patch corrects the number of blocks that are zeroed out while splitting an extent, and also corrects the return value to return the number of blocks split out, instead of the number of blocks zeroed out. This patch has been tested in addition to the following patches: [Ext4 punch hole v7] [XFS Tests Punch Hole 1/1 v2] Add Punch Hole Testing to FSX The test ran successfully for 24 hours. Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" commit 0b26859027ce0005ef89520af20351360e51ad76 Author: Amir Goldstein Date: Mon May 16 09:59:13 2011 -0400 ext4: fix oops in ext4_quota_off() If quota is not enabled when ext4_quota_off() is called, we must not dereference quota file inode since it is NULL. Check properly for this. This fixes a bug in commit 21f976975cbe (ext4: remove unnecessary [cm]time update of quota file), which was merged for 2.6.39-rc3. Reported-by: Amir Goldstein Signed-off-by: Amir Goldstein Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit bbf2b37a98d22d5b111f03674dd4f093dd6c0ae5 Author: Artem Bityutskiy Date: Mon May 16 15:15:52 2011 +0300 UBIFS: fix extremely rare mount failure This patch fixes an extremely rare mount failure after a power cut, when mount fails with ENOSPC error because UBIFS could not find the GC LEB. In short, the reason for this failure is that after recovery the GC head LEB contains less free space than it had contained just before the power cut happened. As a result, if the FS is full, 'ubifs_rcvry_gc_commit()' is unable to find a dirty LEB to GC and a free LEB, so mount fails. This patch contains a huge comment with more detailed explanation, please refer that comment. Since this is really really rare and unlikely situation, I do not send this patch to the stable tree, also because it requires a lot of preparation patches which I did before. So sending this to -stable would be too risky. Signed-off-by: Artem Bityutskiy commit 43e07073865ae540e3b463f437f0f837f17714ba Author: Artem Bityutskiy Date: Mon May 16 14:21:51 2011 +0300 UBIFS: simplify LEB recovery function further Further simplify 'ubifs_recover_leb()' by noticing that we have to call 'clean_buf()' in any case, and it is fine to call it if the offset is aligned to 'c->min_io_size'. Thus, we do not have to call it separately from every "if" - just call it once at the end. Signed-off-by: Artem Bityutskiy commit 7c47bfd0dbb20e5d7fa4e37cfd76bb73d39b32b4 Author: Artem Bityutskiy Date: Mon May 16 13:44:48 2011 +0300 UBIFS: always cleanup the recovered LEB Now when we call 'ubifs_recover_leb()' only for LEBs which are potentially corrupted (i.e., only for last buds, not for all of them), we can cleanup every LEB, not only those where we find corruption. The reason - unstable bits. Even though the LEB may look good now, it might contain unstable bits which may hit us a bit later. Signed-off-by: Artem Bityutskiy commit 617992069513c1e789c707c4d75ff03bf7dd0fb0 Author: Artem Bityutskiy Date: Mon May 16 13:41:55 2011 +0300 UBIFS: clean up LEB recovery function This patch cleans up 'ubifs_recover_leb()' function and makes it more readable. Move things which are done only once out of the loop and kill unneeded 'switch' statement. Signed-off-by: Artem Bityutskiy commit e6e4d9ed11fb1fab8b3256a3dc14d71b5e984ac4 Author: Patrick McHardy Date: Mon May 16 14:45:39 2011 +0200 netfilter: nf_ct_sip: fix SDP parsing in TCP SIP messages for some Cisco phones Some Cisco phones do not place the Content-Length field at the end of the SIP message. This is valid, due to a misunderstanding of the specification the parser expects the SDP body to start directly after the Content-Length field. Fix the parser to scan for \r\n\r\n to locate the beginning of the SDP body. Reported-by: Teresa Kang Signed-off-by: Patrick McHardy commit 274ea0e2a4cdf18110e5931b8ecbfef6353e5293 Author: Patrick McHardy Date: Mon May 16 14:42:26 2011 +0200 netfilter: nf_ct_sip: validate Content-Length in TCP SIP messages Verify that the message length of a single SIP message, which is calculated based on the Content-Length field contained in the SIP message, does not exceed the packet boundaries. Signed-off-by: Patrick McHardy commit f29251ff532ca1124d14a03b040ba097edc6e9c0 Merge: 1cf02bb 667a11f Author: Russell King Date: Mon May 16 13:27:09 2011 +0100 Merge branch 'devel-genirq' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6 into devel-stable commit e033ebfb399227e01686260ac271029011bc6b47 Author: David Henningsson Date: Mon May 16 12:09:29 2011 +0200 ALSA: HDA: Use one dmic only for Dell Studio 1558 There are no signs of a dmic at node 0x0b, so the user is left with an additional internal mic which does not exist. This commit removes that non-existing mic. Cc: stable@kernel.org (2.6.32+) BugLink: http://bugs.launchpad.net/bugs/731706 Reported-by: James Page Signed-off-by: David Henningsson Signed-off-by: Takashi Iwai commit 9d510db423303b4f3555074dd7bdd0d692e432a4 Author: Matthew L. Creech Date: Fri May 6 18:58:23 2011 -0400 UBIFS: fix-up free space on mount if flag is set If a UBIFS filesystem is being mounted read-write, or is being remounted from read-only to read-write, check for the "space_fixup" flag and fix all LEBs containing empty space if necessary. Artem: tweaked the patch a bit Signed-off-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit 6554a6578131a217d4ea6d779a62f120081a2e8b Author: Matthew L. Creech Date: Fri May 6 18:58:22 2011 -0400 UBIFS: add the fixup function This patch adds the 'ubifs_fixup_free_space()' function which scans all LEBs in the filesystem for those that are in-use but have one or more empty pages, then re-maps the LEBs in order to erase the empty portions. Afterward it removes the "space_fixup" flag from the UBIFS superblock. Artem: massaged the patch Signed-off-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit 9f58d3503a1368673609db1962e4a584261b62eb Author: Matthew L. Creech Date: Thu May 5 16:33:20 2011 -0400 UBIFS: add a superblock flag for free space fix-up The 'space_fixup' flag can be set in the superblock of a new filesystem by mkfs.ubifs to indicate that any eraseblocks with free space remaining should be fixed-up the first time it's mounted (after which the flag is un-set). This means that the UBIFS image has been flashed by a "dumb" flasher and the free space has been actually programmed (writing all 0xFFs), so this free space cannot be used. UBIFS fixes the free space up by re-writing the contents of all LEBs with free space using the atomic LEB change UBI operation. Artem: improved commit message, add some more commentaries to the code. Signed-off-by: Matthew L. Creech Signed-off-by: Artem Bityutskiy commit e11602ea3e43392904db7a579dc990062ebb7151 Author: Artem Bityutskiy Date: Fri May 6 17:52:32 2011 +0300 UBIFS: share the next_log_lnum helper We'll need to use the 'next_log_lnum()' helper function from log.c in the fixup code, so let's move it to misc.h. IOW, this is a preparation to the following free space fixup changes. Signed-off-by: Artem Bityutskiy commit 91c66083fca36cdf496e927ef8bea19e6b1bbdce Author: Artem Bityutskiy Date: Sun May 15 13:11:00 2011 +0300 UBIFS: expect corruption only in last journal head LEBs This patch improves UBIFS recovery and teaches it to expect corruption only in the last buds. Indeed, currently we just recover all buds, which is incorrect because only the last buds can have corruptions in case of a power cut. So it is inconsistent with the rest of the recovery strategy which tries hard to distinguish between corruptions cause by power cuts and other types of corruptions. This patch also adds one quirk - a bit older UBIFS was could have corruption in the next to last bud because of the way it switched buds: when bud A is full, it first searched for the next bud B, the wrote a reference node to the log about B, and then synchronized the write-buffer of A. So we could end up with buds A and B, where B is the last, but A had corruption. The UBIFS behavior was fixed, though, so currently it always first synchronizes A's write-buffer and only after this adds B to the log. However, to be make sure that we handle unclean (after a power cut) UBIFS images belonging to older UBIFS - we need to add a quirk and keep it for some time: we need to check for the situation described above. Thankfully, it is easy to check for that situation. When UBIFS adds B to the log, it always first unmaps B, then maps it, and then syncs A's write-buffer. Thus, in that situation we can check that B is empty, in which case it is OK to have corruption in A. To check that B is empty it is enough to just read the first few bytes of the bud and compare them with 0xFFs. This quirk may be removed in a couple of years. Signed-off-by: Artem Bityutskiy commit 5f23188e036aabfe9245f9e61adbb4ea27ed8f35 Author: Kukjin Kim Date: Mon May 16 11:43:55 2011 +0100 ARM: 6900/1: Suspend: Fix build error on ARCH_S5PC100 The current mainline codes of ARCH_S5PC100 cannot support suspend to ram. So needs this for preventing build error. Cc: Russell King Signed-off-by: Kukjin Kim Signed-off-by: Russell King commit 0c65622b1f92eb437d00ede920fc43b2ff2d44b7 Author: Archit Taneja Date: Mon May 16 15:17:09 2011 +0530 OMAP: DSS2: DSI: Get line buffer size from DSI_GNQ register The line buffer sizes vary across DSI modules, create a function dsi_get_line_buf_size() using DSI_GNQ register to get the size of line buffer used for the DISPC video port data. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 75d7247c07d27d046323504e2dbca5b3e94fbece Author: Archit Taneja Date: Mon May 16 15:17:08 2011 +0530 OMAP: DSS2: DSI: Get number of DSI data lanes using DSI_GNQ register On OMAP3, the DSI module has 2 data lanes. On OMAP4, DSI1 has 4 data lanes and DSI2 has 2 data lanes. Introduce function dsi_get_num_data_lanes() which returns the number of data lanes on the dsi interface, introduce function dsi_get_num_data_lanes_dssdev() which returns the number of data lanes used by the omap_dss_device connected to the lanes. Use the DSI_GNQ register on OMAP4 to get the number of data lanes, modify dsi.c to use the number of lanes and the extra data lanes on DSI1. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 49dbf5892fc67466ac2780c1d42d8a02726f5538 Author: Archit Taneja Date: Mon May 16 15:17:07 2011 +0530 OMAP: DSS2: DSI: Use system workqueue for delayed work instead of a private workqueue In the previous DSI driver design, a private workqueue was needed to prevent a deadlock as explained in the commit : 0f16aa0ae6b84d7ae72fbe8999e6a94cb78edd4e . In the current design, the workqueue is only used for queueing delayed work in the case where we don't get a FRAMEDONE interrupt for 250 milliseconds. It is safe to remove the private workqueue amd use the system workqueue instead to schedule the delayed work with the new design where the deadlock can't occur. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit b6cbb02ed0b834c6e1f876e9223736965795fd3d Author: Archit Taneja Date: Mon May 16 15:17:06 2011 +0530 OMAP: DSS2: DSI: Remove DISPC pixel clock related info in dsi_dump_clocks() dsi_dump_clocks() prints lck and pck rates for the DISPC channel which it is connected to. Remove this since it is already printed by dispc_dump_clocks() in debugfs. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit fea4a4f9737883ed660bd99b9b5cff9120455094 Author: Takashi Iwai Date: Mon May 16 11:49:12 2011 +0200 ALSA: hda - Add support of auto-parser to cxt5066 codecs Still experimental. Not enabled as default unless model=auto is passed. Signed-off-by: Takashi Iwai commit f9759301c68a274302e434daa135926c25ca51ca Author: Takashi Iwai Date: Mon May 16 11:45:15 2011 +0200 ALSA: hda - Don't create multiple same volume/boost controls in Cxt auto-parser Check the routing more exactly for avoiding the duplicated controls for the very same effect for multiple capture routes in Conexant auto-parser. Signed-off-by: Takashi Iwai commit cf27f29ae2a4a0feed75262361f9f7dff20230b1 Author: Takashi Iwai Date: Mon May 16 11:33:02 2011 +0200 ALSA: hda - Build boost controls from selector widget in Cxt auto-parser When the intermediate selector widget in the capture path provides the boost volume, create the corresponding volume control. Signed-off-by: Takashi Iwai commit 667a11facee70c0bd15cf07946fba71236490e07 Author: Tony Lindgren Date: Mon May 16 02:07:38 2011 -0700 arm: omap2/3: Use generic irq chip Use generic irq chip for omap2 & 3. Note that this patch also leaves out the spurious IRQ warning for omap3. This warning should no longer be needed as the interrupt handlers for various devices have implemented the necessayr read-back of the posted write. Signed-off-by: Tony Lindgren commit db670dac49b5423b39b5e523d28fe32045d71b10 Author: Stephan Baerwolf Date: Wed May 11 18:03:29 2011 +0200 sched: Fix and optimise calculation of the weight-inverse If the inverse loadweight should be zero, function "calc_delta_mine" calculates the inverse of "lw->weight" (in 32bit integer ops). This calculation is actually a little bit impure (because it is inverting something around "lw-weight"+1), especially when "lw->weight" becomes smaller. The correct inverse would be 1/lw->weight multiplied by "WMULT_CONST" for fixcomma-scaling it into integers. (So WMULT_CONST/lw->weight ...) The old, impure algorithm took two divisions for inverting lw->weight, the new, more exact one only takes one and an additional unlikely-if. Signed-off-by: Stephan Baerwolf Signed-off-by: Peter Zijlstra Cc: Linus Torvalds Link: http://lkml.kernel.org/n/tip-0pz0wnyalr4tk4ln11xwumdx@git.kernel.org [ This could explain some aritmetical issues for small shares but nothing concrete has been reported yet so we are not confident enough to queue this up in sched/urgent and for -stable backport. But if anyone finds this commit and sees it to fix some badness then we can certainly change our mind! ] Signed-off-by: Ingo Molnar commit db44fc017d5989302713ab4e7f9e922b648f4b59 Author: Yong Zhang Date: Mon May 9 22:07:05 2011 +0800 sched: Avoid going ahead if ->cpus_allowed is not changed If cpumask_equal(&p->cpus_allowed, new_mask) is true, seems there is no reason to prevent set_cpus_allowed_ptr() return directly. Signed-off-by: Yong Zhang Acked-by: Hillf Danton Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110509140705.GA2219@zhy Signed-off-by: Ingo Molnar commit 61eadef6a9bde9ea62fda724a9cb501ce9bc925a Author: Mike Galbraith Date: Fri Apr 29 08:36:50 2011 +0200 sched, rt: Update rq clock when unthrottling of an otherwise idle CPU If an RT task is awakened while it's rt_rq is throttled, the time between wakeup/enqueue and unthrottle/selection may be accounted as rt_time if the CPU is idle. Set rq->skip_clock_update negative upon throttle release to tell put_prev_task() that we need a clock update. Reported-by: Thomas Giesel Signed-off-by: Mike Galbraith Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1304059010.7472.1.camel@marge.simson.net Signed-off-by: Ingo Molnar commit ec514c487c3d4b652943da7b0afbc094eee08cfa Author: Cheng Xu Date: Sat May 14 14:20:02 2011 +0800 sched: Fix rt_rq runtime leakage bug This patch is to fix the real-time scheduler bug reported at: https://lkml.org/lkml/2011/4/26/13 That is, when running multiple real-time threads on every logical CPUs and then turning off one CPU, the kernel will bug at function __disable_runtime(). Function __disable_runtime() bugs and reports leakage of rt_rq runtime. The root cause is __disable_runtime() assumes it iterates through all the existing rt_rq's while walking rq->leaf_rt_rq_list, which actually contains only runnable rt_rq's. This problem also applies to __enable_runtime() and print_rt_stats(). The patch is based on above analysis, appears to fix the problem, but is only lightly tested. Reported-by: Paul E. McKenney Tested-by: Paul E. McKenney Signed-off-by: Cheng Xu Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/4DCE1F12.6040609@linux.vnet.ibm.com Signed-off-by: Ingo Molnar commit cb14a18465686ea6add51b1008865b8174c28bd7 Author: Artem Bityutskiy Date: Sun May 15 14:51:54 2011 +0300 UBIFS: synchronize write-buffer before switching to the next bud Currently when UBIFS fills up the current bud (which is the last in the journal head) and switches to the next bud, it first writes the log reference node for the next bud and only after this synchronizes the write-buffer of the previous bud. This is not a big deal, but an unclean power cut may lead to a situation when we have corruption in a next-to-last bud, although it is much more logical that we have to have corruption only in the last bud. This patch also removes write-buffer synchronization from 'ubifs_wbuf_seek_nolock()' because this is not needed anymore (we synchronize the write-buffer explicitly everywhere now) and also because this is just prone to various errors. Signed-off-by: Artem Bityutskiy commit c49139d8096dc1c392455dbc3f158b46038fc9d4 Author: Artem Bityutskiy Date: Sun May 15 12:40:46 2011 +0300 UBIFS: remove BUG statement Remove a 'BUG()' statement when we are unable to find a bud and add a similar 'ubifs_assert()' statement instead. Signed-off-by: Artem Bityutskiy commit e76a452640dc110147f7a7da1dcfb1c5026f982d Author: Artem Bityutskiy Date: Sun May 15 12:34:29 2011 +0300 UBIFS: change bud replay function conventions This is a minor preparation patch which changes 'replay_bud()' interface - instead of passing bud lnum, offs, jhead, etc directly, pass a pointer to the bud entry which contains all the information. The bud entry will be also needed in one of the following patches. Signed-off-by: Artem Bityutskiy commit debf12d54182b324a01c4276b003669c94b7b531 Author: Artem Bityutskiy Date: Sun May 15 12:05:54 2011 +0300 UBIFS: substitute the replay tree with a replay list This patch simplifies replay even further - it removes the replay tree and adds the replay list instead. Indeed, we just do not need to use a tree here - all we need to do is to add all nodes to the list and then sort it. Using RB-tree is an overkill - more code and slower. And since we replay buds in order, we expect the nodes to follow in _mostly_ sorted order, so the merge sort becomes much cheaper in average than an RB-tree. Signed-off-by: Artem Bityutskiy commit 074bcb9b5ce698bd7b02ddb469da9cba21fe83fd Author: Artem Bityutskiy Date: Sun May 15 11:37:17 2011 +0300 UBIFS: simplify replay This patch simplifies the replay code and makes it smaller. First of all, we can notice that we do not really need to create bud replay entries and insert them to the replay tree, because the only reason we do this is to set buds lprops correctly at the end. Instead, we can just walk the list of buds at the very end and set lprops for each bud. This allows us to get rid of whole 'insert_ref_node()' function, the 'REPLAY_REF' flag, and several fields in 'struct replay_entry'. Then we can also notice that we do not need the 'flags' 'struct replay_entry' field, because there is only one flag - 'REPLAY_DELETION'. Instead, we can just add a 'deletion' bit fields. As a result, this patch deletes much more lines that in adds. Signed-off-by: Artem Bityutskiy commit af1dd412646a58b29522f93f7befa944d7d361c0 Author: Artem Bityutskiy Date: Sun May 15 11:14:57 2011 +0300 UBIFS: store free and dirty space in the bud replay entry This is just a small preparation patch which adds 'free' and 'drity' fields to 'struct bud_entry'. They will be used to set bud lprops. Signed-off-by: Artem Bityutskiy commit 12f338914e7f2a9ab0def09564b9e78ab45a474f Author: Artem Bityutskiy Date: Sat May 14 17:37:47 2011 +0300 UBIFS: remove unnecessary stack variable This is patch removes an unnecessary 'offs' variable from 'ubifs_wbuf_write_nolock()' - we can just keep 'wbuf->offs' up-to-date instead. This patch is very minor the only motivation for it was that it is cleaner to keep wbuf->offs up-to-date by the time we call 'ubifs_leb_write()'. Signed-off-by: Artem Bityutskiy commit 7703f09ded1b8719d2defe0f61215b4a08702ffa Author: Artem Bityutskiy Date: Fri May 13 16:02:19 2011 +0300 UBIFS: double check that buds are replied in order Commit 52c6e6f990669deac3f370f1603815adb55a1dbd provides misleading infomation in the commit messages - buds are replied in order. And the real reason why that fix helped is probably because it made sure we seek head even in read-only mode (so deferred recovery will have seeked heads). This patch adds an assertion which will fire if we reply buds out of order. Signed-off-by: Artem Bityutskiy commit e9ef7b5f25d31c5660fb4a87f4b40ac48070fcb7 Author: Artem Bityutskiy Date: Fri May 13 13:22:19 2011 +0300 UBIFS: make 2 functions static This is a minor change which makes 2 functions static because they are not used outside the gc.c file: 'data_nodes_cmp()' and 'nondata_nodes_cmp()'. Signed-off-by: Artem Bityutskiy commit 7a9c3e399389723f01be3dab50991604d2bc0409 Author: Artem Bityutskiy Date: Fri May 13 13:02:00 2011 +0300 UBIFS: improve commentary This is a tiny clean-up patch which improves replay commentaries. Signed-off-by: Artem Bityutskiy commit c839e29768059c56ef233586e66a2a66edbe93a3 Author: Artem Bityutskiy Date: Fri May 13 12:26:54 2011 +0300 UBIFS: improve debugging messages Print a bit more information is some recovery and replay paths. Signed-off-by: Artem Bityutskiy commit 12346037a71809197b22e223c3a719190a26172d Author: Artem Bityutskiy Date: Fri May 6 21:23:25 2011 +0300 UBIFS: dump more in the lprops debugging check Signed-off-by: Artem Bityutskiy commit 34bdc3e2578cae3162e481203a2980d55e184a73 Author: Artem Bityutskiy Date: Fri May 6 20:58:08 2011 +0300 UBIFS: simplify lprops debugging check Now we return all errors from 'scan_check_cb()' directly, so we do not need 'struct scan_check_data' any more, and this patch removes it. Signed-off-by: Artem Bityutskiy commit dcc50c8ee334d570cef84fc956084d567f32a8a3 Author: Artem Bityutskiy Date: Fri May 6 20:47:14 2011 +0300 UBIFS: simplify error path in lprops debugging check Simplify error path in 'scan_check_cb()' and stop using the special 'data->err' field, but instead return the error code directly. Signed-off-by: Artem Bityutskiy commit 8ca5175b02b77178a70cbb9fd7020c4938e3d3a6 Author: Artem Bityutskiy Date: Fri May 6 20:41:48 2011 +0300 UBIFS: improve debugging lprops scanning a little When doing the lprops extra check ('dbg_check_lprops()') we scan whole media. We even scan empty and freeable LEBs which may contain garbage, which we handle after scanning. This patch teach the lprops checking function ('scan_check_cb()') to avoid scanning for free and freeable LEBs and save time. Signed-off-by: Artem Bityutskiy commit bd6356bdafc853201168f718f0059fbe11191461 Merge: 3185847 4b42120 Author: Kukjin Kim Date: Mon May 16 16:29:50 2011 +0900 Merge branch 'dev/removing-s5p6442' into for-next commit b23b64516500df6b70fcafb820970f18538252cf Author: Andy Lutomirski Date: Mon May 16 15:12:47 2011 +1000 crypto: aesni-intel - Merge with fpu.ko Loading fpu without aesni-intel does nothing. Loading aesni-intel without fpu causes modes like xts to fail. (Unloading aesni-intel will restore those modes.) One solution would be to make aesni-intel depend on fpu, but it seems cleaner to just combine the modules. This is probably responsible for bugs like: https://bugzilla.redhat.com/show_bug.cgi?id=589390 Signed-off-by: Andy Lutomirski Signed-off-by: Herbert Xu commit 4b42120df72aeebd3967c952804cb1af53b91cc5 Author: Kukjin Kim Date: Wed May 11 16:28:45 2011 +0900 ASoC: Remove to support sound for S5P6442 According to removing ARCH_S5P6442, we don't need to support sound for S5P6442. Acked-by: Jassi Brar Cc: Mark Brown Signed-off-by: Kukjin Kim commit 25709f6d83cc23d6f2912194c77ebf850310223e Author: Jin Park Date: Thu May 12 14:58:38 2011 +0900 ASoC: codecs: max98088: Added digital mute function in DAI1 and DAI2 Added digital mute function in DAI1 and DAI2. Signed-off-by: Jin Park Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 938b4fbc916667cbe0410c325e7163c99a08c05f Author: Jin Park Date: Thu May 12 14:58:37 2011 +0900 ASoC: codecs: max98088: Moved the EX Limiter Mode from dapm widget to control Moved the EX Limiter Mode from dapm widget to control, because it was not required DAPM route. Signed-off-by: Jin Park Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 770939c37feb4b9c88f4de8482ff922af64d20ee Author: Jin Park Date: Thu May 12 14:58:36 2011 +0900 ASoC: codecs: max98088: Fixed invalid register definitions in mixer controls Fixed invalid register definitions in mixer controls such as left speaker mixer, left hp mixer and left rec mixer. Signed-off-by: Jin Park Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fb0b760605d1f3bb7afc83ffd7a770f92bb62fca Author: Randy Dunlap Date: Wed May 11 15:04:34 2011 -0700 drm: fix nouveau_acpi build Fix build errors when CONFIG_ACPI is enabled but MXM_WMI is not enabled by selecting both MXM_WMI and ACPI_WMI (the latter just for kconfig dependencies): nouveau_acpi.c:(.text+0x2400c8): undefined reference to `mxm_wmi_call_mxmx' nouveau_acpi.c:(.text+0x2400cf): undefined reference to `mxm_wmi_call_mxds' nouveau_acpi.c:(.text+0x2400fe): undefined reference to `mxm_wmi_call_mxmx' nouveau_acpi.c:(.text+0x2402ba): undefined reference to `mxm_wmi_supported Signed-off-by: Randy Dunlap Signed-off-by: Dave Airlie commit 46f2b6073430e14561f3aea1cee19b35223e0c04 Merge: 69f7876 b4fa9d0 Author: Dave Airlie Date: Mon May 16 11:53:27 2011 +1000 Merge remote branch 'nouveau/drm-nouveau-next' of /ssd/git/drm-nouveau-next into drm-core-next * 'nouveau/drm-nouveau-next' of /ssd/git/drm-nouveau-next: (55 commits) drm/nouveau: make cursor_set implementation consistent with other drivers drm/nva3/clk: better pll calculation when no fractional fb div available drm/nouveau/pm: translate ramcfg strap through ram restrict table drm/nva3/pm: allow use of divisor 16 drm/nvc0/pm: parse clock for pll 0x0a (0x137020) from perf table drm/nvc0/pm: correct core/mem/shader perflvl parsing drm/nouveau/pm: remove memtiming support check when assigning to perflvl drm/nva3: support for memory timing map table drm/nouveau: Associate memtimings with performance levels on cards <= nv98 drm/nva3/pm: initial pass at set_clock() hook drm/nvc0/gr: calculate some more of our magic numbers drm/nv50: respect LVDS link count from EDID on SPWG panels drm/nouveau: recognise DCB connector type 0x41 as LVDS drm/nouveau: fix uninitialised variable warning drm/nouveau: Fix a crash at card takedown for NV40 and older cards drm/nouveau: Free nv04 instmem ramin heap at card takedown drm/nva3: somewhat improve clock reporting drm/nouveau: pull refclk from vbios on limits 0x40 boards drm/nv40/gr: oops, fix random bits getting set in engine obj drm/nv50: improve nv50_pm_get_clock() ... commit b4fa9d0f6563756036f61c74fb38e3e97a1defd4 Author: Marcin Slusarz Date: Sun May 1 23:49:04 2011 +0200 drm/nouveau: make cursor_set implementation consistent with other drivers When xorg state tracker wants to hide the cursor it calls set_cursor with NULL buffer_handle and size=0x0, but nouveau refuses to hide it because size is not 64x64... which is a bit odd. Both radeon and intel check buffer_handle before validating size of cursor, so make nouveau implementation consistent with them. Signed-off-by: Marcin Slusarz Signed-off-by: Ben Skeggs commit 52eba8dd5e830a836425e92d002bc51e42d3280e Author: Ben Skeggs Date: Thu Apr 28 02:34:21 2011 +1000 drm/nva3/clk: better pll calculation when no fractional fb div available The core/mem/shader clocks don't support the fractional feedback divider, causing our calculated clocks to be off by quite a lot in some cases. To solve this we will switch to a search-based algorithm when fN is NULL. For my NVA8 at PL3, this actually generates identical cooefficients to the binary driver. Hopefully that's a good sign, and that does not break VPLL calculation for someone.. Signed-off-by: Ben Skeggs commit 96d1fcf8b5a3a9c66fddeaa9fb71e4e68ee2e08b Author: Ben Skeggs Date: Wed Apr 20 14:36:13 2011 +1000 drm/nouveau/pm: translate ramcfg strap through ram restrict table Hopefully this is how we're supposed to correctly handle when the RAMCFG strap is above the number of entries in timing-related tables. It's rather difficult to confirm without finding a configuration where the ram restrict table doesn't map 8-15 back onto 0-7 anyway. There's not a single vbios in the repo which is configured differently.. In any case, this is probably still better than potentially reading outside of the bounds of various tables.. Signed-off-by: Ben Skeggs commit bfb61f43b37158d432a1897bc2a4bbbd41215fae Author: Ben Skeggs Date: Wed Apr 20 14:15:49 2011 +1000 drm/nva3/pm: allow use of divisor 16 Signed-off-by: Ben Skeggs commit 047d2df54cb866f13014cb566eac61449bf89a29 Author: Ben Skeggs Date: Wed Apr 20 13:21:40 2011 +1000 drm/nvc0/pm: parse clock for pll 0x0a (0x137020) from perf table Signed-off-by: Ben Skeggs commit 40f6193b8fe3c29f49c675f22c643e9ea9e8950f Author: Ben Skeggs Date: Wed Apr 20 13:15:02 2011 +1000 drm/nvc0/pm: correct core/mem/shader perflvl parsing We need to parse some of these other entries still, but I've yet to determine exactly which PLLs the rest map to. Signed-off-by: Ben Skeggs commit 730673b6657d61d7380556876551b8e0af251dc0 Author: Ben Skeggs Date: Wed Apr 20 11:34:39 2011 +1000 drm/nouveau/pm: remove memtiming support check when assigning to perflvl Really not necessary here, we want to be able to see if/how we managed to match a timingset to a performance level, even if we can't currently program it. Signed-off-by: Ben Skeggs commit fcfc768806f2ed8ad56d9fd3f0c6af1cdb5e10e2 Author: Ben Skeggs Date: Wed Apr 20 11:31:04 2011 +1000 drm/nva3: support for memory timing map table Signed-off-by: Ben Skeggs commit e614b2e7ca9f9946cede13b34c950b92af6fa7ef Author: Martin Peres Date: Thu Apr 14 00:46:19 2011 +0200 drm/nouveau: Associate memtimings with performance levels on cards <= nv98 v2 (Ben Skeggs): fix ramcfg strap, and remove bogus handling of perf 0x40 Signed-off-by: Martin Peres Signed-off-by: Ben Skeggs commit dac55b58253fe4ced44979543bde35d25eaf56dc Author: Ben Skeggs Date: Fri Apr 15 11:16:55 2011 +1000 drm/nva3/pm: initial pass at set_clock() hook I still discourage anyone from actually doing this yet. Signed-off-by: Ben Skeggs commit aa58c4056355afd349aa4a0092de5141a425142a Author: Ben Skeggs Date: Mon Apr 18 12:52:47 2011 +1000 drm/nvc0/gr: calculate some more of our magic numbers Again, doesn't quite match NVIDIA's, but not sure it really matters. This will however, match the same rules we use to calculate the other related grctx magics. Signed-off-by: Ben Skeggs commit b23b9e7109e74a2cb10705396148624016ad8f8f Author: Ben Skeggs Date: Mon Apr 18 10:49:03 2011 +1000 drm/nv50: respect LVDS link count from EDID on SPWG panels Signed-off-by: Ben Skeggs commit 8c3f6bb970413c6a537736f409a1bc9d8abd671c Author: Ben Skeggs Date: Mon Apr 18 09:57:48 2011 +1000 drm/nouveau: recognise DCB connector type 0x41 as LVDS After looking at a number of different logs, it appears 0x41 likely indicates the presense of an LVDS panel following the SPWG spec (http://www.spwg.org/) Signed-off-by: Ben Skeggs commit eea55c89e504a4affe66367ba3ecbae16296d9ef Author: Ben Skeggs Date: Mon Apr 18 08:57:51 2011 +1000 drm/nouveau: fix uninitialised variable warning Looks like a false positive to me, but, anyways! Reported-by: Jimmy Rentz Signed-off-by: Ben Skeggs commit 976661093dab143f164b81f15133724fa2a4bb86 Author: Jimmy Rentz Date: Sun Apr 17 16:15:09 2011 -0400 drm/nouveau: Fix a crash at card takedown for NV40 and older cards NV40 and older cards (pre NV50) reserve a vram bo for the vga memory at card init. This bo is then freed at card shutdown. The problem is that the ttm bo vram manager was already freed. So a crash occurs when the vga bo is freed. The fix is to free the vga bo prior to freeing the ttm bo vram manager. There might be other solutions but this seemed the simplest to me. Signed-off-by: Jimmy Rentz Signed-off-by: Ben Skeggs commit 2abdb057e45ea9b558653a97d979053cfdd1a04a Author: Jimmy Rentz Date: Sun Apr 17 16:15:03 2011 -0400 drm/nouveau: Free nv04 instmem ramin heap at card takedown Add a missing nv04 instmem ramin heap shutdown call. Signed-off-by: Jimmy Rentz Signed-off-by: Ben Skeggs commit 215f902e1555e0fa94c1de547dcd246c6f5306e2 Author: Ben Skeggs Date: Thu Apr 14 15:02:03 2011 +1000 drm/nva3: somewhat improve clock reporting Definitely not 100% correct, but, for the configurations I've seen used it'll read back the correct clocks now. Signed-off-by: Ben Skeggs commit ce521846b9bde836d010416b6120a694b5f06e96 Author: Ben Skeggs Date: Thu Apr 14 11:25:26 2011 +1000 drm/nouveau: pull refclk from vbios on limits 0x40 boards Signed-off-by: Ben Skeggs commit 3acf67f66e40633c8235d126bf3a7e59d27c6107 Author: Ben Skeggs Date: Wed Apr 13 18:33:15 2011 +1000 drm/nv40/gr: oops, fix random bits getting set in engine obj Signed-off-by: Ben Skeggs commit 619d4f7e219f4e65137b66ac878cd1eba8e51e10 Author: Emil Velikov Date: Mon Apr 11 20:43:23 2011 +0100 drm/nv50: improve nv50_pm_get_clock() Many of the nv50 cards have their shader and/or memory pll disabled at some stage. This patch addresses those cases, so that the function returns the correct frequency. When the shader pll is disabled, the blob reports 2*core clock Whereas for memory, the data stored in the vbios. This action is incorrect as some vbioses store a clock value that is less than the refference clock of the pll. Thus we are reporting the reff_clk as it is the frequency the pll actually operates v2 - Convert NV_INFO() messages to NV_DEBUG() Provide more information in the actuall message Signed-off-by: Emil Velikov Signed-off-by: Ben Skeggs commit 1f962797fb1343f02cbacb94d80c4560d47b67a9 Author: Martin Peres Date: Tue Apr 12 00:55:44 2011 +0200 drm/nouveau/pm: fix compilation failure when CONFIG_POWER_SUPPLY is not set Signed-off-by: Martin Peres Reported-by: Stratos Psomadakis Signed-off-by: Ben Skeggs commit 1233bd8d31902c09f22691294082c7825f71d13b Author: Ben Skeggs Date: Wed Apr 13 13:55:17 2011 +1000 drm/nvc0/fifo: stick user area into a gpuobj rather than a bo Contents will now be preserved across a suspend, unlike a pinned bo Signed-off-by: Ben Skeggs commit 1d97f4acd31f605452ed042bbd9ff5802e37d477 Author: Ben Skeggs Date: Wed Apr 13 12:55:36 2011 +1000 drm/nvc0/gr: no need to store context in graph_fini() PFIFO kickoff should have handled this for us. Signed-off-by: Ben Skeggs commit 0638df425f65d1f413b36e53acd1fb689679cabe Author: Ben Skeggs Date: Tue Apr 12 19:38:06 2011 +1000 drm/nvc0/fifo: restore context table on resume Signed-off-by: Ben Skeggs commit 7a5c23de36002d611609650e49ef0ebd46f5c141 Author: Ben Skeggs Date: Tue Apr 12 18:51:39 2011 +1000 drm/nvc0/fifo: kick channels off during suspend Signed-off-by: Ben Skeggs commit fe799114e2f0de37c3ddf900d15fa5e85936deba Author: Ben Skeggs Date: Tue Apr 12 18:50:36 2011 +1000 drm/nvc0/gr: better handling of fuc firmware Allows per-chipset firmware to be installed, and keeps a copy in memory for suspend/resume purposes. Signed-off-by: Ben Skeggs commit 9548258fbce1e8d6fcd96bba299386f5666840ae Author: Ben Skeggs Date: Tue Apr 12 15:20:22 2011 +1000 drm/nv50: support PMPEG on original nv50 Signed-off-by: Ben Skeggs commit 93187450fade03e5de977af9a879683edda64a97 Author: Ben Skeggs Date: Tue Apr 12 15:19:54 2011 +1000 drm/nv50: rename nv84_mpeg to nv50_mpeg In preparation for adding 0x50 support. Signed-off-by: Ben Skeggs commit c0924326c8306249aaae27016b80f3c07bb51705 Author: Ben Skeggs Date: Mon Apr 4 16:10:00 2011 +1000 drm/nv84: add support for PMPEG Signed-off-by: Ben Skeggs commit a02ccc7f97d9e9121aa641aca33ba2a2978aef31 Author: Ben Skeggs Date: Mon Apr 4 16:08:24 2011 +1000 drm/nv40/vpe: add support for PMPEG Signed-off-by: Ben Skeggs commit d5a27370b507be810bd32a01fe493adef7ad85d9 Author: Ben Skeggs Date: Fri Apr 1 16:10:08 2011 +1000 drm/nvc0: implement support for copy engines Signed-off-by: Ben Skeggs commit 7ff5441e55feb1f6f38c39f32f31aa8a0e8f4b69 Author: Ben Skeggs Date: Fri Mar 18 10:25:59 2011 +1000 drm/nva3: implement support for copy engine Signed-off-by: Ben Skeggs commit a82dd49f14742e2529f79feb6360e0993277e788 Author: Ben Skeggs Date: Fri Apr 1 13:56:05 2011 +1000 drm/nouveau: remove remnants of nouveau_pgraph_engine Signed-off-by: Ben Skeggs commit 92abe7499239f7b570194b34c50e3772783e2640 Author: Ben Skeggs Date: Fri Apr 1 13:26:35 2011 +1000 drm/nouveau: fix suspend failure path to reinitialise all engines Signed-off-by: Ben Skeggs commit 39a654d5b90b69acb9423fd9569c9a468737bcb8 Author: Ben Skeggs Date: Fri Apr 1 13:17:25 2011 +1000 drm/nouveau: remove remnants of nouveau_pgraph_engine from nouveau_channel The nouveau_wait_for_idle() call should hopefully not have been actually necessary, we *do* wait for the channel to go idle already. If it's an issue somehow, the chipset-specific hooks can wait for idle themselves before taking the lock. Signed-off-by: Ben Skeggs commit 96c50082904c7cefa3b01356f62268ee6d9e9f38 Author: Ben Skeggs Date: Fri Apr 1 13:10:45 2011 +1000 drm/nouveau: move set_tile_region to nouveau_exec_engine In the very least VPE (PMPEG and friends) also has this style of tile region regs, lets make them just work if/when they get added. Signed-off-by: Ben Skeggs commit 4976986bd4f51368890f57b964176ec532972543 Author: Ben Skeggs Date: Fri Apr 1 13:03:56 2011 +1000 drm/nv04/gr: move to exec engine interfaces Like nv10-nv50, needs cleanup. Signed-off-by: Ben Skeggs commit d11db279014e881da9f5259c963501b33a413929 Author: Ben Skeggs Date: Fri Apr 1 12:50:55 2011 +1000 drm/nv10/gr: move to exec engine interfaces Like nv20-nv50, needs cleanup. Signed-off-by: Ben Skeggs commit a0b1de84fed49a055a3ecbfab67ff9cdea81aa6f Author: Ben Skeggs Date: Fri Apr 1 12:32:03 2011 +1000 drm/nv20-nv30/gr: move to exec engine interface A bit of cleanup done along the way, but, like nv40/nv50, needs more. Signed-off-by: Ben Skeggs commit 39c8d368273bca9b5f309f9feadfc8575c9fd993 Author: Ben Skeggs Date: Fri Apr 1 11:33:21 2011 +1000 drm/nv40/gr: move to exec engine interfaces Like nv50, this needs a good cleanup. Signed-off-by: Ben Skeggs commit 7a45cd19c95a383d81a7b2f5297958c0c16b5a08 Author: Ben Skeggs Date: Fri Apr 1 10:59:53 2011 +1000 drm/nvc0/gr: move to exec engine interfaces Much nicer to do that nv50, the code was pretty much written to expect such a change in the future. Signed-off-by: Ben Skeggs commit 2703c21a82301f5c31ba5679e2d56422bd4cd404 Author: Ben Skeggs Date: Fri Apr 1 09:50:18 2011 +1000 drm/nv50/gr: move to exec engine interfaces This needs a massive cleanup, but to catch bugs from the interface changes vs the engine code cleanup, this will be done later. Signed-off-by: Ben Skeggs commit 6dfdd7a61e8fc25552d9de1cb25272324dfc4c13 Author: Ben Skeggs Date: Thu Mar 31 15:40:43 2011 +1000 drm/nouveau: working towards a common way to represent engines There's lots of more-or-less independant engines present on NVIDIA GPUs these days, and we generally want to perform the same operations on them. Implementing new ones requires hooking into lots of different places, the aim of this work is to make this simpler and cleaner. NV84:NV98 PCRYPT moved over as a test. Signed-off-by: Ben Skeggs commit 2d7b919c9b0ca3df1da2498bb0cede25ddd97e00 Author: Ben Skeggs Date: Thu Mar 31 13:55:49 2011 +1000 drm/nouveau: remove some unused members from dev_priv Signed-off-by: Ben Skeggs commit 4ea52f8974392b39ffb192fd31de80dc65b52657 Author: Ben Skeggs Date: Thu Mar 31 13:44:16 2011 +1000 drm/nouveau: move engine object creation into per-engine hooks Signed-off-by: Ben Skeggs commit 475feffabe7d42d3333bf9a17167f38f3c467d11 Author: Ben Skeggs Date: Thu Mar 31 10:39:44 2011 +1000 drm/nouveau: use static vidshift of 2 on volt 0x30 tables Explanation is in the commit. If anyone has an example of where this is *not* the case, please report it! Signed-off-by: Ben Skeggs commit 50066f8117d79163b96d3bf778c41961be1fe5cd Author: Roy Spliet Date: Sun Mar 27 18:13:11 2011 +0200 drm/nouveau: improve memtiming table parsing Improves the parsing of the memory timing table on NV50-NV98revA1 chipsets. Added stepping to drm_nouveau_private to make sure newer NV98 (105M) is zero rather than incorrect. Signed-off-by: Roy Spliet Signed-off-by: Ben Skeggs commit 7795bee0c437aff7fb188afe750fe79a7a971a2c Author: Ben Skeggs Date: Tue Mar 29 09:28:24 2011 +1000 drm/nvc0: decode gpc/hubclient on vm fault Signed-off-by: Ben Skeggs commit e2966632ae37abdb03a09bc941ee6d7556cd3624 Author: Ben Skeggs Date: Tue Mar 29 08:57:34 2011 +1000 drm/nvc0: more vm fault reasons Signed-off-by: Ben Skeggs commit 7a313473624d92c03d20715642ba6677cc3541d0 Author: Ben Skeggs Date: Tue Mar 29 00:52:59 2011 +1000 drm/nvc0: more vm fault engines Signed-off-by: Ben Skeggs commit 0b89a072f942412c45d00f74e7e789e019e5de2c Author: Emil Velikov Date: Sat Mar 19 23:31:54 2011 +0000 drm/nouveau: Fix missing whitespace checkpatch.pl errors. This patch fixes messages such as ERROR: space required after that ',' ERROR: spaces required around that '=' Signed-off-by: Emil Velikov Signed-off-by: Francisco Jerez commit f9ec8f6c8dea942bc4be5cc1f34c99df7a4d78ee Author: Emil Velikov Date: Sat Mar 19 23:31:53 2011 +0000 drm/nouveau: Fix brace placement checkpatch.pl errors. Fix 'ERROR: that open brace { should be on the previous line' Fix 'ERROR: else should follow close brace }' Signed-off-by: Emil Velikov Signed-off-by: Francisco Jerez commit f212949ced2397b5f00e987bb5d4bb34dc69cc8d Author: Emil Velikov Date: Sat Mar 19 23:31:52 2011 +0000 drm/nouveau: Clean up trailing whitespace and C99-style comments. Fix 'ERROR: trailing whitespace', Fix 'ERROR: do not use C99 // comments' Signed-off-by: Emil Velikov Signed-off-by: Francisco Jerez commit 71298e2f0b6fb6dce9f2b2e999652edf1f643d9e Author: Emil Velikov Date: Sat Mar 19 23:31:51 2011 +0000 drm/nouveau: Fix indentation-related checkpatch.pl error messages. Fix 'ERROR: code indent should use tabs where possible' Fix 'ERROR: space required before the open parenthesis (' Signed-off-by: Emil Velikov Signed-off-by: Francisco Jerez commit 01e542c65de11a47e726ebef63f5e59b4a74568d Author: Martin Peres Date: Sat Mar 19 22:44:35 2011 +0100 drm/nouveau: name the boot perflvl "boot" Signed-off-by: Martin Peres Signed-off-by: Ben Skeggs commit 69f7876b2ab61e8114675d6092ad0b482e233612 Merge: 0eacdba 645c62a Author: Dave Airlie Date: Mon May 16 10:45:40 2011 +1000 Merge remote branch 'keithp/drm-intel-next' of /ssd/git/drm-next into drm-core-next * 'keithp/drm-intel-next' of /ssd/git/drm-next: (301 commits) drm/i915: split PCH clock gating init drm/i915: add Ivybridge clock gating init function drm/i915: Update the location of the ringbuffers' HWS_PGA registers for IVB. drm/i915: Add support for fence registers on Ivybridge. drm/i915: Use existing function instead of open-coding fence reg clear. drm/i915: split clock gating init into per-chipset functions drm/i915: set IBX pch type explicitly drm/i915: add Ivy Bridge PCI IDs and driver feature structs drm/i915: add PantherPoint PCH ID agp/intel: add Ivy Bridge support drm/i915: ring support for Ivy Bridge drm/i915: page flip support for Ivy Bridge drm/i915: interrupt & vblank support for Ivy Bridge drm/i915: treat Ivy Bridge watermarks like Sandy Bridge drm/i915: manual FDI training for Ivy Bridge drm/i915: add swizzle/tiling support for Ivy Bridge drm/i915: Ivy Bridge has split display and pipe control drm/i915: add IS_IVYBRIDGE macro for checks drm/i915: add IS_GEN7 macro to cover Ivy Bridge and later drm/i915: split enable/disable vblank code into chipset specific functions ... commit 534ea99b063de7c30262a8e22f0ab44dd7d11a71 Author: Shan Wei Date: Fri May 13 21:08:47 2011 +0000 net: drivers: kill two unused macro definitions Signed-off-by: Shan Wei Reviewed-by: Jiri Pirko Signed-off-by: David S. Miller commit 3f874adc4ae80828b79e8aac6891c108c1f6be6d Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:08 2011 +0000 caif: remove unesesarry exports Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 33b2f5598b4ee68021364a7b795c09ad66bc0aa8 Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:07 2011 +0000 caif: Bugfix debugfs directory name must be unique. Race condition caused debugfs_create_dir() to fail due to duplicate name. Use atomic counter to create unique directory name. net_ratelimit() is introduced to limit debug printouts. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit c85c2951d4da1236e32f1858db418221e624aba5 Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:06 2011 +0000 caif: Handle dev_queue_xmit errors. Do proper handling of dev_queue_xmit errors in order to avoid double free of skb and leaks in error conditions. In cfctrl pending requests are removed when CAIF Link layer goes down. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit bee925db9a77a5736596dcf6f91d0879f5ee915b Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:05 2011 +0000 caif: prepare support for namespaces Use struct net to reference CAIF configuration object instead of static variables. Refactor functions caif_connect_client, caif_disconnect_client and squach files cfcnfg.c and caif_config_utils. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit b3ccfbe4098a5542177d0f34e8979f32e7d606e1 Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:04 2011 +0000 caif: Protected in-flight packets using dev or sock refcont. CAIF Socket Layer and ip-interface registers reference counters in CAIF service layer. The functions sock_hold, sock_put and dev_hold, dev_put are used by CAIF Stack to protect from freeing memory while packets are in-flight. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 43e3692101086add8719c3b8b50b05c9ac5b14e1 Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:03 2011 +0000 caif: Move refcount from service layer to sock and dev. Instead of having reference counts in caif service layers, we hook into existing refcount handling in socket layer and netdevice. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit cb3cb423a0f3c627639535e5d87977ae662d779f Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:02 2011 +0000 caif: Add ref-count to framing layer Introduce Per-cpu reference for lower part of CAIF Stack. Before freeing payload is disabled, synchronize_rcu() is called, and then ref-count verified to be zero. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit f36214408470ecf6a052e76b72d05b2328b60fcf Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:01 2011 +0000 caif: Use RCU and lists in cfcnfg.c for managing caif link layers RCU lists are used for handling the link layers instead of array. When generating CAIF phy-id, ifindex is used as base. Legal range is 1-6. Introduced set_phy_state() for managing CAIF Link layer state. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit bd30ce4bc0b7dc859c1d1cba7ad87e08642418b0 Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:44:00 2011 +0000 caif: Use RCU instead of spin-lock in caif_dev.c RCU read_lock and refcount is used to protect in-flight packets. Use RCU and counters to manage freeing lower part of the CAIF stack if CAIF-link layer is removed. Old solution based on delaying removal of device is removed. When CAIF link layer goes down the use of CAIF link layer is disabled (by calling caif_set_phy_state()), but removal and freeing of the lower part of the CAIF stack is done when Link layer is unregistered. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 0b1e9738deb30f4c35c0add43a52dcd0608b227e Author: sjur.brandeland@stericsson.com Date: Fri May 13 02:43:59 2011 +0000 caif: Use rcu_read_lock in CAIF mux layer. Replace spin_lock with rcu_read_lock when accessing lists to layers and cache. While packets are in flight rcu_read_lock should not be held, instead ref-counters are used in combination with RCU. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit f7391fce6a1553ed3375ee4d73f2deaa3fd69732 Author: Mark Brown Date: Wed May 11 19:25:42 2011 +0200 ASoC: Reintroduce do_spi_write() There is an unfortunate difference in return values between spi_write() and i2c_master_send() so we need an adaptor function to translate. Reported-by: Lars-Peter Clausen Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 9b842cd86843db0f6ba4badb30282044afaed6c9 Author: Takashi Iwai Date: Sun May 15 12:35:04 2011 +0200 ALSA: hda - Don't use auto-parser for cxt5045 / 5051 as default Just for safety reason (for avoiding any possible regressions), don't enable auto-parser as default for cxt5045 and 5051, as well as 5047. Signed-off-by: Takashi Iwai commit 1387cde51d0946eb3d8091b63f025c40cc1acdf4 Author: Takashi Iwai Date: Sun May 15 12:21:20 2011 +0200 ALSA: hda - Enable codec->pin_amp_workaround always for Conexant auto-parser It can (must for some) be used for all Conexnat codecs safely. Signed-off-by: Takashi Iwai commit 22ce5f74a954d02e56352ecfa45f8d7c817693e7 Author: Takashi Iwai Date: Sun May 15 12:19:29 2011 +0200 ALSA: hda - Search ADC NIDs dynamically in Conexant auto-parser Instead of giving fixed arrays, look for ADC nids dynamically in the tree in Conexant auto-parser code. Signed-off-by: Takashi Iwai commit fdb62b500d27b2a2d6a111769e5c44c1c9f4d909 Author: Ondrej Zary Date: Sat May 14 22:51:01 2011 +0200 ALSA: fm801: clean-up radio-related Kconfig Remove TEA575X_RADIO define from fm801.c. Also update Kconfig help text to include all supported cards. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 215ef98677c3e43cefd2159d76543f368a7f87b9 Author: Julia Lawall Date: Sat May 14 22:22:38 2011 -0700 Input: atmel_tsadcc - correct call to input_free_device This error handling code can be reached before ts_dev->input is initialized, so it is safer to always use the original name, input_dev. Signed-off-by: Julia Lawall Signed-off-by: Dmitry Torokhov commit 1b1cb1f78a5e9d54c13e176020c3e8ded5d081ce Author: Eric Dumazet Date: Fri May 13 22:59:19 2011 +0000 net: ping: small changes ping_table is not __read_mostly, since it contains one rwlock, and is static to ping.c ping_port_rover & ping_v4_lookup are static Signed-off-by: Eric Dumazet Acked-by: Vasiliy Kulikov Signed-off-by: David S. Miller commit 89c64d755fbf04d7541d526931dc4b38301946d1 Merge: 4dc6ec2 4f6290c Author: David S. Miller Date: Sun May 15 01:08:23 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 6976a6f2acde2b0443cd64f1d08af90630e4ce81 Author: Allison Henderson Date: Sun May 15 00:19:41 2011 -0400 ext4: don't dereference null pointer when make_indexed_dir() fails Fix for a null pointer bug found while running punch hole tests Signed-off-by: Allison Henderson Signed-off-by: "Theodore Ts'o" commit 4dc6ec26fe7d9f89349d4c0c654e2f07420f4b27 Merge: 7be799a ca06c6e Author: David S. Miller Date: Sat May 14 22:47:51 2011 -0400 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit 4f6290cf610a7a48b39603ff7822746463453e01 Author: Don Skidmore Date: Sat May 14 06:36:35 2011 +0000 ixgbe: Add support for new 82599 adapter This patch adds support for a new adapter in the 82599 family. Included in that support is a new media_type ixgbe_media_type_fiber_lco. Signed-of-by: Don Skidmore Signed-off-by: Jeff Kirsher commit c050999e2c00b189a21df3ee9ad8d27c85ce9c34 Author: Emil Tantilov Date: Sat May 7 06:49:18 2011 +0000 ixgbe: fix sparse warning error: bad constant expression Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 34cecbbfad5a01050604d5b12fd7d7fb02597dbe Author: Alexander Duyck Date: Fri Apr 22 04:08:14 2011 +0000 ixgbe: cleanup some minor issues in ixgbe_down() This patch cleans up two minor issues in ixgbe_down. Specifically it addresses the fact that the VFs should not be pinged until after interrupts are disabled otherwise they might still get a response. It also drops the use of the txdctl temporary variable since the only bit we should be writing to the TXDCTL registers during a shutdown is the flush bit. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit f0f9778d043481f3cded693849e3b88b01fbc69b Author: Alexander Duyck Date: Fri Apr 22 04:08:09 2011 +0000 ixgbe: Merge over-temp task into service task This change merges the over-temp task into the service task. As a result all tasklets are finally combined into once single tasklet for easier management. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit d034acf1851c15c3da56d31e7eb4151e40ed0119 Author: Alexander Duyck Date: Wed Apr 27 09:25:34 2011 +0000 ixgbe: Merge ATR reinit into the service task This change merges the ATR table reinitialization into the service task. This is yet another opportunity to avoid any race conditions as we don't want to be attempting to reinitialize the table during a possible reset. In addition this change adds a counter for table reinitialization so that it can be tracked as part of the regular statistics. Signed-off-by: Alexander Duyck Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit c83c6cbdbff360e5323748720dfb2b000c0ae491 Author: Alexander Duyck Date: Wed Apr 27 09:21:16 2011 +0000 ixgbe: merge reset task into service task This change is meant to further help to reduce possible configuration collisions between the various tasklets. This change combines the device reset with the service task. As a result it is now not possible to be updating the link on the device while also resetting the part. Signed-off-by: Alexander Duyck Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 93c52dd0033be3cb91376916b8461fcb94ef0c22 Author: Alexander Duyck Date: Fri Apr 22 04:07:54 2011 +0000 ixgbe: Merge watchdog functionality into service task This patch is meant to merge the functionality of the ixgbe watchdog task into the service task. By doing this all link state functionality will be controlled by a single task. As a result the reliability of the interface will be improved as the likelihood of any race conditions is further reduced. Signed-off-by: Alexander Duyck Signed-off-by: Jeff Kirsher commit 7086400d87a06588c13270949db9134afc9553ba Author: Alexander Duyck Date: Wed Apr 27 09:13:56 2011 +0000 ixgbe: Combine SFP and multi-speed fiber task into single service task This change is meant to address several race conditions with multi-speed fiber SFP+ modules in 82599 adapters. Specifically issues have been seen in which both the SFP configuration and the multi-speed fiber configuration are running simultaneously which will result in the device getting into an erroneous link down state. Signed-off-by: Alexander Duyck Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit e606bfe74de63d6c3778c145ee0673d96ab257c9 Author: Alexander Duyck Date: Fri Apr 22 04:07:43 2011 +0000 ixgbe: move flags and state into the same cacheline This change moves flags and state into the same cacheline. The reason for this change is because both are frequently read around the same time and infrequently written. By combining them into the same cacheline this should help to reduce memory utilization. Signed-off-by: Alexander Duyck Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 51275d37a85bc82bda7e5b179ee520e85e66e782 Author: Emil Tantilov Date: Fri Apr 8 01:23:59 2011 +0000 ixgbe: force unlock on timeout The semaphore can be in locked state upon driver load, particularly on 82598 if a machine is rebooted due to panic and the semaphore was acquired just prior to the panic. This patch unlocks the semaphore if it times out. Signed-off-by: Emil Tantilov Signed-off-by: Jeff Kirsher commit a1cbb15c13971bd5d41626e9e5ced9f9de132c47 Author: Greg Rose Date: Fri May 13 01:33:48 2011 +0000 ixgbe: Add macvlan support for VF Add infrastructure in the PF driver to support macvlan in the VF driver. Signed-off-by: Greg Rose Tested-by: Sibai Li Signed-off-by: Jeff Kirsher commit 46ec20ff7d6f9f011e06d58e4e87153ed8c893ed Author: Greg Rose Date: Fri May 13 01:33:42 2011 +0000 ixgbevf: Add macvlan support in the set rx mode op Implement setup of unicast address list in the VF driver's set_rx_mode netdev op. Unicast addresses are sent to the PF via a mailbox message and the PF will check if it has room in the RAR table and if so set the filter for the VF. Signed-off-by: Greg Rose Tested-by: Sibai Li Signed-off-by: Jeff Kirsher commit d64a6f4dca0b45495dd5be8116b618d9cc004eea Author: Bruce Allan Date: Fri May 13 07:19:58 2011 +0000 e1000e: minor comment cleanups Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit ca06c6eb9a31ae782e74596231fb23df4fc5e46d Author: Marek Lindner Date: Sat May 14 20:01:22 2011 +0200 batman-adv: reset broadcast flood protection on error The broadcast flood protection should be reset to its original value if the primary interface could not be retrieved. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 6d5808d4ae1b0851c3b732d9ec2860d5f7804294 Author: Sven Eckelmann Date: Wed May 11 20:59:06 2011 +0200 batman-adv: Add missing hardif_free_ref in forw_packet_free add_bcast_packet_to_list increases the refcount for if_incoming but the reference count is never decreased. The reference count must be increased for all kinds of forwarded packets which have the primary interface stored and forw_packet_free must decrease them. Also purge_outstanding_packets has to invoke forw_packet_free when a work item was really cancelled. This regression was introduced in 32ae9b221e788413ce68feaae2ca39e406211a0a. Reported-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit 60ba5369135e05f040ea1f6b8130c7b082ed53c8 Author: Russell King Date: Sat May 7 08:48:24 2011 +0100 ARM: Update mach-types Signed-off-by: Russell King commit 5be6f62b0059a3344437b4c2877152c58cb3fdeb Author: Dave Martin Date: Mon Apr 18 14:48:23 2011 +0100 ARM: 6883/1: ptrace: Migrate to regsets framework This patch migrates the implementation of the ptrace interface for the core integer registers, legacy FPA registers and VFP registers to use the regsets framework. As an added bonus, all this stuff gets included in coredumps at no extra cost. Without this patch, coredumps contained no VFP state. Third-party extension register sets (iwmmx, crunch) are not migrated by this patch, and continue to use the old implementation; these should be migratable without much extra work. Signed-off-by: Dave Martin Acked-by: Will Deacon Signed-off-by: Russell King commit 4c3b512c6b054e8c0bf14b1d61b20d4569de0a21 Author: Dave Martin Date: Mon Apr 18 14:48:22 2011 +0100 ARM: 6882/1: ELF: Define new core note type for VFP registers The VFP registers are not currently included in coredumps, and there's no existing note type where they can sensibly be included, so this patch defines a dedicated note type for them. Signed-off-by: Dave Martin Acked-by: Will Deacon Signed-off-by: Russell King commit 0144261fa677e9490eb112231de30c95af1679d2 Author: Igor Plyatov Date: Thu May 12 22:15:51 2011 +0400 pata_at91: SMC settings calculation bugfixes, support for t6z and IORDY * New code correctly calculates SMC registers values, adjusts calculated to admissible ranges, enlarges cycles when required and converts values into SMC's format. * Support for TDF cycles (ATA t6z) and IORDY line added. * Eliminate need in the initial_timing structure. * Code cleanup. Signed-off-by: Igor Plyatov Signed-off-by: Jeff Garzik commit af649a1b56032a84b75825a94204a8f8f0120698 Author: James Bottomley Date: Sun Apr 24 14:31:33 2011 -0500 libata-sff: prevent irq descriptions for dummy ports This is a cosmetic change to prevent libata-sff adding irq descriptions to dummy ports, since the information, while largely unused, is erroneous. Signed-off-by: James Bottomley Signed-off-by: Jeff Garzik commit 9281b16caac1276817b77033c5b8a1f5ca30102c Author: James Bottomley Date: Sun Apr 24 14:30:14 2011 -0500 pata_cm64x: fix boot crash on parisc The old IDE cmd64x checks the status of the CNTRL register to see if the ports are enabled before probing them. pata_cmd64x doesn't do this, which causes a HPMC on parisc when it tries to poke at the secondary port because apparently the BAR isn't wired up (and a non-responding piece of memory causes a HPMC). Fix this by porting the CNTRL register port detection logic from IDE cmd64x. In addition, following converns from Alan Cox, add a check to see if a mobility electronics bridge is the immediate parent and forgo the check if it is (prevents problems on hotplug controllers). Signed-off-by: James Bottomley Signed-off-by: Jeff Garzik commit a18f22a968de17b29f2310cdb7ba69163e65ec15 Merge: a1c57e0 798778b Author: Thomas Gleixner Date: Sat May 14 12:06:36 2011 +0200 Merge branch 'consolidate-clksrc-i8253' of master.kernel.org:~rmk/linux-2.6-arm into timers/clocksource Conflicts: arch/ia64/kernel/cyclone.c arch/mips/kernel/i8253.c arch/x86/kernel/i8253.c Reason: Resolve conflicts so further cleanups do not conflict further Signed-off-by: Thomas Gleixner commit 798778b8653f64b7b2162ac70eca10367cff6ce8 Author: Russell King Date: Sun May 8 19:03:03 2011 +0100 clocksource: convert mips to generic i8253 clocksource Convert MIPS i8253 clocksource code to use generic i8253 clocksource. Acked-by: John Stultz Acked-by: Thomas Gleixner Cc: Ralf Baechle Signed-off-by: Russell King commit 82491451dd25a3abe8496ddbd04ddb3f77d285c2 Author: Russell King Date: Sun May 8 18:55:19 2011 +0100 clocksource: convert x86 to generic i8253 clocksource Convert x86 i8253 clocksource code to use generic i8253 clocksource. Acked-by: John Stultz Acked-by: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Ingo Molnar Signed-off-by: Russell King commit 8c414ff3f4dcdde228c6a668385218290d73a265 Author: Russell King Date: Sun May 8 18:50:20 2011 +0100 clocksource: convert footbridge to generic i8253 clocksource Convert the footbridge isa-timer code to use generic i8253 clocksource. Acked-by: John Stultz Acked-by: Thomas Gleixner Signed-off-by: Russell King commit 89c0b8e2520e12d69dafc663dfbd39f8180438ea Author: Russell King Date: Sun May 8 18:47:58 2011 +0100 clocksource: add common i8253 PIT clocksource This is based upon both arch/arm/mach-footbridge/isa-timer.c and arch/x86/kernel/i8253.c. Acked-by: John Stultz Acked-by: Thomas Gleixner Cc: "H. Peter Anvin" Cc: Ingo Molnar Cc: Ralf Baechle Signed-off-by: Russell King commit 47a8467cc0907e2fd3e6f4d02465dfb64494133e Author: Ben Hutchings Date: Sat May 14 02:35:25 2011 +0100 sfc: Fix return value from efx_ethtool_set_rx_ntuple() ethtool_ops::set_rx_ntuple is supposed to return 0 on success, but it currently returns the filter ID when it inserts or modifies a filter. Signed-off-by: Ben Hutchings commit 645c62a5e95a5f9a8e0d0627446bbda4ee042024 Author: Jesse Barnes Date: Wed May 11 09:49:31 2011 -0700 drm/i915: split PCH clock gating init Ibex Peak and CougarPoint already require a different setting (added here), and future chips will likely follow that precedent. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 28963a3eb5e2ae861995c2f7c15c7de982b3ce0e Author: Jesse Barnes Date: Wed May 11 09:42:30 2011 -0700 drm/i915: add Ivybridge clock gating init function Some of the bits have changed, including one we were setting that enables a VGA test mode, preventing pipe B from working at all. So add a new IVB specific function with the right bits. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 4593010b68247e6bed746da4e15f66f06e239e28 Author: Eric Anholt Date: Fri May 6 17:12:35 2011 -0700 drm/i915: Update the location of the ringbuffers' HWS_PGA registers for IVB. They have been moved from the ringbuffer groups to their own group it looks like. Fixes GPU hangs on gnome startup. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 25aebfc30bc40f01813aad7a0f62f2fda44efb8a Author: Eric Anholt Date: Fri May 6 13:55:53 2011 -0700 drm/i915: Add support for fence registers on Ivybridge. The registers are the same as on Sandybridge. Fixes scrambled display in X when it does software drawing to the GTT, and scans the results out as tiled. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 10ed13e4a5143000bca816982ea6e68e2a4ac050 Author: Eric Anholt Date: Fri May 6 13:53:49 2011 -0700 drm/i915: Use existing function instead of open-coding fence reg clear. This is once less place to miss a new INTEL_INFO(dev)->gen update now. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Keith Packard commit 6067aaeadb5b3df26f27ac827256b1ef01e674f5 Author: Jesse Barnes Date: Thu Apr 28 15:04:31 2011 -0700 drm/i915: split clock gating init into per-chipset functions This helps contain the mess to init_display() instead. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 90711d50d0bc3dde0c2bd214abda8cdaf62f7b2e Author: Jesse Barnes Date: Thu Apr 28 14:48:02 2011 -0700 drm/i915: set IBX pch type explicitly This is a little less confusing than relying on the implicit zeroing of the dev_priv. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit c76b615c43a1189c32058ff3ab5634fc3fa97ae5 Author: Jesse Barnes Date: Thu Apr 28 14:32:07 2011 -0700 drm/i915: add Ivy Bridge PCI IDs and driver feature structs There are several variants, set feature bits appropriately for both mobile and desktop parts. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit c792513bd1760c364b36391028512fbf2a4eb903 Author: Jesse Barnes Date: Thu Apr 7 12:33:56 2011 -0700 drm/i915: add PantherPoint PCH ID We can treat PantherPoint as CougarPoint as far as display goes. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 246d08b8f94a5545077611ab5bfb9d47014ede75 Author: Jesse Barnes Date: Thu Feb 17 11:50:19 2011 -0800 agp/intel: add Ivy Bridge support Just use the Sandy Bridge routines. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 65d3eb1e065c5e558a584fabe583daa5fdd63b75 Author: Jesse Barnes Date: Wed Apr 6 14:54:44 2011 -0700 drm/i915: ring support for Ivy Bridge Use Sandy Bridge paths in a few places. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 51d56126a25280c2dfca6bd7f68a4e8183b679b1 Author: Jesse Barnes Date: Wed Apr 6 12:28:05 2011 -0700 drm/i915: page flip support for Ivy Bridge Treat Ivy Bridge like previous chips as far as flip submission is concerned. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit b1f14ad01ab09f5e22fb1240a6a158a23527ff14 Author: Jesse Barnes Date: Wed Apr 6 12:13:38 2011 -0700 drm/i915: interrupt & vblank support for Ivy Bridge Add new interrupt handling functions for Ivy Bridge. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit fe100d4da1ba8e0be9f38979da1817145e68f866 Author: Jesse Barnes Date: Thu Apr 28 14:29:45 2011 -0700 drm/i915: treat Ivy Bridge watermarks like Sandy Bridge Not fully tested. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 357555c00f8414057f0c12ee3f479f197264123d Author: Jesse Barnes Date: Thu Apr 28 15:09:55 2011 -0700 drm/i915: manual FDI training for Ivy Bridge A0 stepping chips need to use manual training, but the bits have all moved. So fix things up so we can at least train FDI for VGA links. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 37808944e4d97b651de7f18a868513542de87aa0 Author: Jesse Barnes Date: Wed Apr 6 12:16:16 2011 -0700 drm/i915: add swizzle/tiling support for Ivy Bridge Treat it like Ironlake and Sandy Bridge. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit eceae4817e01a16f1487d8b47ac2f56c68f3b330 Author: Jesse Barnes Date: Wed Apr 6 12:15:08 2011 -0700 drm/i915: Ivy Bridge has split display and pipe control Ivy Bridge has a similar split display controller to Sandy Bridge, so use HAS_PCH_SPLIT. And gen7 also has the pipe control instruction, so use HAS_PIPE_CONTROL as well. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 4b65177b27ede9dee3186bc3a58c737997ee4749 Author: Jesse Barnes Date: Thu Apr 28 14:33:09 2011 -0700 drm/i915: add IS_IVYBRIDGE macro for checks Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 85436696fefd55afdf8f4ce26ac044be72f2d492 Author: Jesse Barnes Date: Wed Apr 6 12:11:14 2011 -0700 drm/i915: add IS_GEN7 macro to cover Ivy Bridge and later Note: IS_GEN* are for render related checks. Display and other checks should use IS_MOBILE, IS_$CHIPSET or test for specific features. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit f796cf8f517f13826bb691432b03c7b5da13e530 Author: Jesse Barnes Date: Thu Apr 7 13:58:17 2011 -0700 drm/i915: split enable/disable vblank code into chipset specific functions This makes the Ironlake+ code trivial and generally simplifies things. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 4697995b98417c6da9ab2708a36f5e2bc926c8ac Author: Jesse Barnes Date: Thu Apr 7 13:53:55 2011 -0700 drm/i915: split irq handling into per-chipset functions Set the IRQ handling functions in driver load so they'll just be used directly, rather than branching over most of the code in the chipset functions. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 674cf967614f31826f45d30c8f8f8e050cc3eef2 Author: Jesse Barnes Date: Thu Apr 28 14:27:04 2011 -0700 drm/i915: make FDI training a display function Rather than branching in ironlake_pch_enable, add a new train_fdi function to the display function pointer struct and use it instead. Signed-off-by: Jesse Barnes Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit b513d44751bfb609a3c20463f764c8ce822d63e9 Author: Sarah Sharp Date: Fri May 13 13:10:01 2011 -0700 xhci: Fix full speed bInterval encoding. Dmitry's patch dfa49c4ad120a784ef1ff0717168aa79f55a483a USB: xhci - fix math in xhci_get_endpoint_interval() introduced a bug. The USB 2.0 spec says that full speed isochronous endpoints' bInterval must be decoded as an exponent to a power of two (e.g. interval = 2^(bInterval - 1)). Full speed interrupt endpoints, on the other hand, don't use exponents, and the interval in frames is encoded straight into bInterval. Dmitry's patch was supposed to fix up the full speed isochronous to parse bInterval as an exponent, but instead it changed the *interrupt* endpoint bInterval decoding. The isochronous endpoint encoding was the same. This caused full speed devices with interrupt endpoints (including mice, hubs, and USB to ethernet devices) to fail under NEC 0.96 xHCI host controllers: [ 100.909818] xhci_hcd 0000:06:00.0: add ep 0x83, slot id 1, new drop flags = 0x0, new add flags = 0x99, new slot info = 0x38100000 [ 100.909821] xhci_hcd 0000:06:00.0: xhci_check_bandwidth called for udev ffff88011f0ea000 ... [ 100.910187] xhci_hcd 0000:06:00.0: ERROR: unexpected command completion code 0x11. [ 100.910190] xhci_hcd 0000:06:00.0: xhci_reset_bandwidth called for udev ffff88011f0ea000 When the interrupt endpoint was added and a Configure Endpoint command was issued to the host, the host controller would return a very odd error message (0x11 means "Slot Not Enabled", which isn't true because the slot was enabled). Probably the host controller was getting very confused with the bad encoding. Signed-off-by: Sarah Sharp Cc: Dmitry Torokhov Reported-by: Thomas Lindroth Tested-by: Thomas Lindroth Cc: stable Signed-off-by: Greg Kroah-Hartman commit ee4f6b4b89665b92ead67deaa2e5d2ffa1af2b5f Author: J Freyensee Date: Fri May 6 16:56:50 2011 -0700 n_tracerouter and n_tracesink ldisc additions. The n_tracerouter and n_tracesink line discpline drivers use the Linux tty line discpline framework to route trace data coming from a tty port (say UART for example) to the trace sink line discipline driver and to another tty port(say USB). Those these two line discipline drivers can be used together, independently from pti.c, they are part of the original implementation solution of the MIPI P1149.7, compact JTAG, PTI solution for Intel mobile platforms starting with the Medfield platform. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit 0b61d2acb1ea48d8eba798ed92759b7f1b0f4209 Author: J Freyensee Date: Fri May 6 16:56:49 2011 -0700 Intel PTI implementaiton of MIPI 1149.7. The PTI (Parallel Trace Interface) driver directs trace data routed from various parts in the system out through an Intel Penwell PTI port and out of the mobile device for analysis with a debugging tool (Lauterbach or Fido). Though n_tracesink and n_tracerouter line discipline drivers are used to extract modem tracing data to the PTI driver and other parts of an Intel mobile solution, the PTI driver can be used independent of n_tracesink and n_tracerouter. You should select this driver if the target kernel is meant for an Intel Atom (non-netbook) mobile device containing a MIPI P1149.7 standard implementation. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit cb9e84c4123088f4641009f5217b7d32b307992f Author: J Freyensee Date: Fri May 6 16:56:48 2011 -0700 Kernel documentation for the PTI feature. This provides Kernel documentation for the PTI feature and setting line discipline drivers on top of tty's for Linux mobile solutions. Signed-off-by: J Freyensee Signed-off-by: Greg Kroah-Hartman commit 7d74f492e4dd0034a61458eb80f70b1d2862ed07 Author: J Freyensee Date: Fri May 6 16:56:47 2011 -0700 export kernel call get_task_comm(). This allows drivers who call this function to be compiled modularly. Otherwise, a driver who is interested in this type of functionality has to implement their own get_task_comm() call, causing code duplication in the Linux source tree. Signed-off-by: J Freyensee Acked-by: David Rientjes Signed-off-by: Greg Kroah-Hartman commit c42d2237143fcf35cff642cefe2bcf7786aae312 Author: Stephen Boyd Date: Thu May 12 16:50:07 2011 -0700 debugfs: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/linux/uaccess.h:5, from include/linux/highmem.h:7, from include/linux/pagemap.h:10, from fs/debugfs/file.c:18: In function 'copy_from_user', inlined from 'write_file_bool' at fs/debugfs/file.c:435: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Signed-off-by: Stephen Boyd Signed-off-by: Greg Kroah-Hartman commit 82a3242e11d9e63c8195be46c954efaefee35e22 Author: Greg Kroah-Hartman Date: Thu May 12 16:01:02 2011 -0700 sysfs: remove "last sysfs file:" line from the oops messages On some arches (x86, sh, arm, unicore, powerpc) the oops message would print out the last sysfs file accessed. This was very useful in finding a number of sysfs and driver core bugs in the 2.5 and early 2.6 development days, but it has been a number of years since this file has actually helped in debugging anything that couldn't also be trivially determined from the stack traceback. So it's time to delete the line. This is good as we need all the space we can get for oops messages at times on consoles. Acked-by: Phil Carmody Acked-by: Ingo Molnar Cc: Andrew Morton Cc: Thomas Gleixner Signed-off-by: Greg Kroah-Hartman commit 2efeaeb00f26c13ac14b8d53684a8bbd3c343ce6 Merge: 472b912 43b416e Author: Greg Kroah-Hartman Date: Fri May 13 16:03:10 2011 -0700 Merge branch 'for-next' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb into usb-next * 'for-next' of master.kernel.org:/pub/scm/linux/kernel/git/balbi/usb: MAINTAINERS: tree moved to kernel.org usb: musb: Calling VBUS pulsing API when SRP is initiated. usb: otg: TWL6030: OMAP4430: Adding SRP VBUS pulsing API usb: musb: host: remove duplicate check in musb_ep_program() usb: musb: export musb_interrupt symbol usb: musb: allow musb and glue layers to be modules usb: musb: drop unneeded musb_debug trickery commit 472b91274a6c6857877b5caddb875dcb5ecdfcb8 Author: Felipe Balbi Date: Fri May 13 16:53:48 2011 +0300 usb: gadget: rndis: don't test against req->length composite.c always sets req->length to zero and expects function driver's setup handlers to return the amount of bytes to be used on req->length. If we test against req->length w_length will always be greater than req->length thus making us always stall that particular SEND_ENCAPSULATED_COMMAND request. Tested against a Windows XP SP3. Signed-off-by: Felipe Balbi Cc: stable Signed-off-by: Greg Kroah-Hartman commit bf1f0a05d472e33dda8e5e69525be1584cdbd03a Author: Jean-Christophe PLAGNIOL-VILLARD Date: Fri May 13 17:03:02 2011 +0200 usb/gadget: at91sam9g20 fix end point max packet size on 9g20 they are the same as the 9260 Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Acked-by: Nicolas Ferre Cc: stable Signed-off-by: Greg Kroah-Hartman commit b0795bbf6dc6bd0a7a37d9d1ef4558e9e2b0acd6 Author: Julia Lawall Date: Fri May 13 17:30:46 2011 +0200 drivers/usb/serial/opticon.c: Release resources on kmalloc failure Several resources have been allocated before this kmalloc failure, and thus they should be released in this error handling code, as done in nearby error handling code. The semantic match that finds this problem is: (http://coccinelle.lip6.fr/) // @r exists@ local idexpression urb; statement S; position p1,p2; @@ urb = usb_alloc_urb@p1(...); ... when != urb if (urb == NULL) S ... when != urb ( return <+...urb...+>; | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ cocci.print_main("",p1) cocci.print_secs("",p2) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 2328ceaea4fb917f8b861b18151b2245233b083f Author: Jingoo Han Date: Fri May 13 21:26:23 2011 +0900 USB: s3c-hsotg: return proper error if clk_get fails Return PTR_ERR(hsotg->clk) instead of -EINVAL if clk_get fails Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit 66e5c643488a26d2a6b737bdbd92fc72f13cdeac Author: Jingoo Han Date: Fri May 13 21:26:15 2011 +0900 USB: s3c-hsotg: fix checkpatch warnings This patch fixes the checkpatch warnings listed below: WARNING: braces {} are not necessary for any arm of this statement WARNING: please, no space before tabs Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit d6167660b284447c710d9067754c69feab229892 Author: Jingoo Han Date: Fri May 13 21:27:13 2011 +0900 USB: s3c-hsudc: fix checkpatch error and warning This patch fixes the checkpatch error and warning listed below: ERROR: code indent should use tabs where possible WARNING: please, no spaces at the start of a line Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit 004c127ef071e33df99708c2778fdb15564962ce Author: Jingoo Han Date: Fri May 13 21:27:24 2011 +0900 USB: s3c-hsudc: use IS_ERR() instead of NULL check clk_get() returns ERR_PTR() on error, not NULL. Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit 7be799a70ba3dd90a59e8d2c72bbe06020005b3f Author: David S. Miller Date: Fri May 13 17:31:02 2011 -0400 ipv4: Remove rt->rt_dst reference from ip_forward_options(). At this point iph->daddr equals what rt->rt_dst would hold. Signed-off-by: David S. Miller commit 8e36360ae876995e92d3a7538dda70548e64e685 Author: David S. Miller Date: Fri May 13 17:29:41 2011 -0400 ipv4: Remove route key identity dependencies in ip_rt_get_source(). Pass in the sk_buff so that we can fetch the necessary keys from the packet header when working with input routes. Signed-off-by: David S. Miller commit 22f728f8f311659b068e73ed92833c205651a47f Author: David S. Miller Date: Fri May 13 17:21:27 2011 -0400 ipv4: Always call ip_options_build() after rest of IP header is filled in. This will allow ip_options_build() to reliably look at the values of iph->{daddr,saddr} Signed-off-by: David S. Miller commit 0374d9ceb02eb12fcd65be9dd5df9c911ef93424 Author: David S. Miller Date: Fri May 13 17:15:50 2011 -0400 ipv4: Kill spurious write to iph->daddr in ip_forward_options(). This code block executes when opt->srr_is_hit is set. It will be set only by ip_options_rcv_srr(). ip_options_rcv_srr() walks until it hits a matching nexthop in the SRR option addresses, and when it matches one 1) looks up the route for that nexthop and 2) on route lookup success it writes that nexthop value into iph->daddr. ip_forward_options() runs later, and again walks the SRR option addresses looking for the option matching the destination of the route stored in skb_rtable(). This route will be the same exact one looked up for the nexthop by ip_options_rcv_srr(). Therefore "rt->rt_dst == iph->daddr" must be true. All it really needs to do is record the route's source address in the matching SRR option adddress. It need not write iph->daddr again, since that has already been done by ip_options_rcv_srr() as detailed above. Signed-off-by: David S. Miller commit 48e20467227fe540e6bbf3d98df98c2c0fca10f3 Author: Alexey Dobriyan Date: Fri May 13 16:50:49 2011 -0400 olympic: convert to seq_file ->read_proc interface is going away, switch to seq_file. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0696c3a8acd3b7c3186dd231d65d97e05a75189f Author: Peter Pan(潘卫平) Date: Thu May 12 15:46:56 2011 +0000 net:set valid name before calling ndo_init() In commit 1c5cae815d19 (net: call dev_alloc_name from register_netdevice), a bug of bonding was involved, see example 1 and 2. In register_netdevice(), the name of net_device is not valid until dev_get_valid_name() is called. But dev->netdev_ops->ndo_init(that is bond_init) is called before dev_get_valid_name(), and it uses the invalid name of net_device. I think register_netdevice() should make sure that the name of net_device is valid before calling ndo_init(). example 1: modprobe bonding ls /proc/net/bonding/bond%d ps -eLf root 3398 2 3398 0 1 21:34 ? 00:00:00 [bond%d] example 2: modprobe bonding max_bonds=3 [ 170.100292] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) [ 170.101090] bonding: Warning: either miimon or arp_interval and arp_ip_target module parameters must be specified, otherwise bonding will not detect link failures! see bonding.txt for details. [ 170.102469] ------------[ cut here ]------------ [ 170.103150] WARNING: at /home/pwp/net-next-2.6/fs/proc/generic.c:586 proc_register+0x126/0x157() [ 170.104075] Hardware name: VirtualBox [ 170.105065] proc_dir_entry 'bonding/bond%d' already registered [ 170.105613] Modules linked in: bonding(+) sunrpc ipv6 uinput microcode ppdev parport_pc parport joydev e1000 pcspkr i2c_piix4 i2c_core [last unloaded: bonding] [ 170.108397] Pid: 3457, comm: modprobe Not tainted 2.6.39-rc2+ #14 [ 170.108935] Call Trace: [ 170.109382] [] warn_slowpath_common+0x6a/0x7f [ 170.109911] [] ? proc_register+0x126/0x157 [ 170.110329] [] warn_slowpath_fmt+0x2b/0x2f [ 170.110846] [] proc_register+0x126/0x157 [ 170.111870] [] proc_create_data+0x82/0x98 [ 170.112335] [] bond_create_proc_entry+0x3f/0x73 [bonding] [ 170.112905] [] bond_init+0x77/0xa5 [bonding] [ 170.113319] [] register_netdevice+0x8c/0x1d3 [ 170.113848] [] bond_create+0x6c/0x90 [bonding] [ 170.114322] [] bonding_init+0x763/0x7b1 [bonding] [ 170.114879] [] do_one_initcall+0x76/0x122 [ 170.115317] [] ? 0xf94f3fff [ 170.115799] [] sys_init_module+0x1286/0x140d [ 170.116879] [] sysenter_do_call+0x12/0x28 [ 170.117404] ---[ end trace 64e4fac3ae5fff1a ]--- [ 170.117924] bond%d: Warning: failed to register to debugfs [ 170.128728] ------------[ cut here ]------------ [ 170.129360] WARNING: at /home/pwp/net-next-2.6/fs/proc/generic.c:586 proc_register+0x126/0x157() [ 170.130323] Hardware name: VirtualBox [ 170.130797] proc_dir_entry 'bonding/bond%d' already registered [ 170.131315] Modules linked in: bonding(+) sunrpc ipv6 uinput microcode ppdev parport_pc parport joydev e1000 pcspkr i2c_piix4 i2c_core [last unloaded: bonding] [ 170.133731] Pid: 3457, comm: modprobe Tainted: G W 2.6.39-rc2+ #14 [ 170.134308] Call Trace: [ 170.134743] [] warn_slowpath_common+0x6a/0x7f [ 170.135305] [] ? proc_register+0x126/0x157 [ 170.135820] [] warn_slowpath_fmt+0x2b/0x2f [ 170.137168] [] proc_register+0x126/0x157 [ 170.137700] [] proc_create_data+0x82/0x98 [ 170.138174] [] bond_create_proc_entry+0x3f/0x73 [bonding] [ 170.138745] [] bond_init+0x77/0xa5 [bonding] [ 170.139278] [] register_netdevice+0x8c/0x1d3 [ 170.139828] [] bond_create+0x6c/0x90 [bonding] [ 170.140361] [] bonding_init+0x763/0x7b1 [bonding] [ 170.140927] [] do_one_initcall+0x76/0x122 [ 170.141494] [] ? 0xf94f3fff [ 170.141975] [] sys_init_module+0x1286/0x140d [ 170.142463] [] sysenter_do_call+0x12/0x28 [ 170.142974] ---[ end trace 64e4fac3ae5fff1b ]--- [ 170.144949] bond%d: Warning: failed to register to debugfs Signed-off-by: Weiping Pan Reviewed-by: Jiri Pirko Signed-off-by: David S. Miller commit 8eb572942ca02890f590d9251233038e27dd3842 Author: Ben Widawsky Date: Wed May 11 15:10:58 2011 -0700 drm/i915: forcewake debugfs fix Forcewake needs to register itself with drm to use the remove function. The file also should be read only. Signed-off-by: Ben Widawsky Signed-off-by: Keith Packard commit 64c7f304b81a9a92dc7046c97a10427a5997dc07 Author: Giuseppe CAVALLARO Date: Thu May 12 20:28:05 2011 +0000 stmmac: fix autoneg in set_pauseparam This patch fixes a bug in the set_pauseparam function that didn't well manage the ANE field and returned broken values when use ethtool -A|-a. Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 1334cb60826377de8f75adb9902c25302222f4fe Author: David Decotigny Date: Thu May 12 20:28:04 2011 +0000 stmmac: don't go through ethtool to start auto-negotiation The driver used to call phy's ethtool configuration routine to start auto-negotiation. This change has it call directly phy's routine to start auto-negotiation. The initial version was hiding phy_start_aneg() return value, this patch returns it (<0 upon error). Tested: module compiles, tested on STM HDK7108 STB. Signed-off-by: David Decotigny Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 5310cbce900094dce5df4a671b411e15319a75d4 Author: Julia Lawall Date: Fri May 13 04:15:39 2011 +0000 drivers/isdn/hisax: Drop unused list The file st5481_init.c locally defines and initializes the adapter_list variable, but does not use it for anything. Removing the list makes it possible to remove the list field from the st5481_adapter data structure. In the function probe_st5481, it also makes it possible to free the locally allocated adapter value on an error exit. Signed-off-by: Julia Lawall Signed-off-by: David S. Miller commit c319b4d76b9e583a5d88d6bf190e079c4e43213d Author: Vasiliy Kulikov Date: Fri May 13 10:01:00 2011 +0000 net: ipv4: add IPPROTO_ICMP socket kind This patch adds IPPROTO_ICMP socket kind. It makes it possible to send ICMP_ECHO messages and receive the corresponding ICMP_ECHOREPLY messages without any special privileges. In other words, the patch makes it possible to implement setuid-less and CAP_NET_RAW-less /bin/ping. In order not to increase the kernel's attack surface, the new functionality is disabled by default, but is enabled at bootup by supporting Linux distributions, optionally with restriction to a group or a group range (see below). Similar functionality is implemented in Mac OS X: http://www.manpagez.com/man/4/icmp/ A new ping socket is created with socket(PF_INET, SOCK_DGRAM, PROT_ICMP) Message identifiers (octets 4-5 of ICMP header) are interpreted as local ports. Addresses are stored in struct sockaddr_in. No port numbers are reserved for privileged processes, port 0 is reserved for API ("let the kernel pick a free number"). There is no notion of remote ports, remote port numbers provided by the user (e.g. in connect()) are ignored. Data sent and received include ICMP headers. This is deliberate to: 1) Avoid the need to transport headers values like sequence numbers by other means. 2) Make it easier to port existing programs using raw sockets. ICMP headers given to send() are checked and sanitized. The type must be ICMP_ECHO and the code must be zero (future extensions might relax this, see below). The id is set to the number (local port) of the socket, the checksum is always recomputed. ICMP reply packets received from the network are demultiplexed according to their id's, and are returned by recv() without any modifications. IP header information and ICMP errors of those packets may be obtained via ancillary data (IP_RECVTTL, IP_RETOPTS, and IP_RECVERR). ICMP source quenches and redirects are reported as fake errors via the error queue (IP_RECVERR); the next hop address for redirects is saved to ee_info (in network order). socket(2) is restricted to the group range specified in "/proc/sys/net/ipv4/ping_group_range". It is "1 0" by default, meaning that nobody (not even root) may create ping sockets. Setting it to "100 100" would grant permissions to the single group (to either make /sbin/ping g+s and owned by this group or to grant permissions to the "netadmins" group), "0 4294967295" would enable it for the world, "100 4294967295" would enable it for the users, but not daemons. The existing code might be (in the unlikely case anyone needs it) extended rather easily to handle other similar pairs of ICMP messages (Timestamp/Reply, Information Request/Reply, Address Mask Request/Reply etc.). Userspace ping util & patch for it: http://openwall.info/wiki/people/segoon/ping For Openwall GNU/*/Linux it was the last step on the road to the setuid-less distro. A revision of this patch (for RHEL5/OpenVZ kernels) is in use in Owl-current, such as in the 2011/03/12 LiveCD ISOs: http://mirrors.kernel.org/openwall/Owl/current/iso/ Initially this functionality was written by Pavel Kankovsky for Linux 2.4.32, but unfortunately it was never made public. All ping options (-b, -p, -Q, -R, -s, -t, -T, -M, -I), are tested with the patch. PATCH v3: - switched to flowi4. - minor changes to be consistent with raw sockets code. PATCH v2: - changed ping_debug() to pr_debug(). - removed CONFIG_IP_PING. - removed ping_seq_fops.owner field (unused for procfs). - switched to proc_net_fops_create(). - switched to %pK in seq_printf(). PATCH v1: - fixed checksumming bug. - CAP_NET_RAW may not create icmp sockets anymore. RFC v2: - minor cleanups. - introduced sysctl'able group range to restrict socket(2). Signed-off-by: Vasiliy Kulikov Signed-off-by: David S. Miller commit b376704bf57e1b731fe2dd6e9aa83a1d42a45ef9 Merge: 1159024 9439064 Author: John W. Linville Date: Fri May 13 15:18:35 2011 -0400 Merge branch 'for-linville' of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx commit 1159024d4c0aafecaa0c6635c55153b4b39cc1c8 Author: John W. Linville Date: Fri May 13 09:23:47 2011 -0400 ssb: fix pcicore build breakage drivers/ssb/main.c:1336: error: 'SSB_PCICORE_BCAST_ADDR' undeclared (first use in this function) drivers/ssb/main.c:1337: error: 'SSB_PCICORE_BCAST_DATA' undeclared (first use in this function) drivers/ssb/main.c:1349: error: 'struct ssb_pcicore' has no member named 'dev' Reported-by: Randy Dunlap Signed-off-by: John W. Linville commit 6dc0c7fc7cc0f5ec3d92a3076dfe45028540e526 Author: Wey-Yi Guy Date: Wed May 11 08:33:55 2011 -0700 iwlagn: remove unused old_assoc parameter old_assoc not used, remove it Signed-off-by: Wey-Yi Guy commit 51b7ef058c44c15af20ab4f7aed1dbb959cbd06d Author: Johannes Berg Date: Wed May 11 08:17:20 2011 -0700 iwlagn: change default beacon interval When the PAN context is active, but unused, it may still block scans that take more dwell time than its beacon interval (which is odd). Work around this problem by using a default beacon interval of 200 so scans will fit between. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 70817b5e14760dad49a067fc3dd137bccd3c2960 Author: Johannes Berg Date: Wed May 11 03:29:25 2011 -0700 iwlagn: remove set but unused vars gcc is warning that a few variables in rate scaling are set but never otherwise used. This pointed out a few simplifications. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3083d03c215a2d1642dd12ede7ad61e24601b583 Author: Wey-Yi Guy Date: Fri May 6 17:06:44 2011 -0700 iwlagn: alwasy send RXON with disassociate falge before associate Before send the RXON command with associated flag set, always do disassociate first to make sure uCode is in the correct state. Signed-off-by: Wey-Yi Guy commit dd5c940b42c1734e501d9494f7b99566b50a5a87 Author: Wey-Yi Guy Date: Fri May 6 17:06:43 2011 -0700 iwlagn: clear STATUS_HCMD_ACTIVE bit if fail enqueue If fail to enqueue host command, clear the STATUS_hcmD_ACTIVE bit Signed-off-by: Wey-Yi Guy commit 6489854b9cbc2faa6709532e61c3ea221cf8583b Author: Wey-Yi Guy Date: Tue May 3 18:05:13 2011 -0700 iwlagn: add testmode set fixed rate command Add support in testmode for setting fixed rate Signed-off-by: Wey-Yi Guy commit 4babc358c0a1bced6bed2c9d6c77fc8803b8a22f Author: Wey-Yi Guy Date: Tue May 3 18:05:12 2011 -0700 iwlagn: add eeprom command to testmode Add the capability to dump eeprom through testmode request Signed-off-by: Wey-Yi Guy commit 7a4e5281d1b3335a3dc90841415390473cccebf3 Author: Wey-Yi Guy Date: Fri May 6 10:21:28 2011 -0700 iwlagn: add testmode trace command Adding testmode trace/debug capability Signed-off-by: Wey-Yi Guy commit 5065054790b111bf677b1eccf3f8f76f20cc0ae6 Author: Wey-Yi Guy Date: Wed May 4 16:56:52 2011 -0700 iwlagn: more ucode error log info No functional changes, just logging more information when uCode crash, also change change the format. Signed-off-by: Wey-Yi Guy commit 4ce7cc2b09553a91d4aea014c39674685715173a Author: Johannes Berg Date: Fri May 13 11:57:40 2011 -0700 iwlagn: support multiple TBs per command The current "huge" command handling is a bit confusing, and very limited since only one command may be huge at a time. Additionally, we often copy data around quite pointlessly since we could instead map the existing scan buffer for example and use it directly. This patch makes that possible. The first change is that multiple buffers may be given to each command (this change was prepared earlier so callsites don't need to change). Each of those can be mapped attached to a TB in the TFD, and the command header can use a TB (the first one) in the TFD as well. Doing this allows getting rid of huge commands in favour of mapping existing buffers. The beacon transmission is also optimised to not copy the SKB at all but use multiple TBs. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit f20190302e3e697a166cc28ebef43058749dedda Author: KOSAKI Motohiro Date: Thu May 12 18:45:09 2011 +0000 convert old cpumask API into new one Adapt new API. Signed-off-by: KOSAKI Motohiro Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 9f6298a6ca38e251aa72a6035a8a36a52cf94536 Author: Ursula Braun Date: Thu May 12 18:45:08 2011 +0000 af_iucv: get rid of compile warning -Wunused-but-set-variable generates compile warnings. The affected variables are removed. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 5db79c0679e542a156de54e97be8901aeaa7638a Author: Ursula Braun Date: Thu May 12 18:45:07 2011 +0000 iucv: get rid of compile warning -Wunused-but-set-variable generates a compile warning. The affected variable is removed. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit ff2aed7da18781bb32ce675e4621475e4baae08f Author: Ursula Braun Date: Thu May 12 18:45:06 2011 +0000 ctcm: get rid of compile warning -Wunused-but-set-variable generates compile warnings. The affected variables are removed. Signed-off-by: Ursula Braun Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 424f73b3ecc41367336ce75cc489c1e373c421fc Author: Heiko Carstens Date: Thu May 12 18:45:05 2011 +0000 lcs: get rid of compile warning -Wunused-but-set-variable generates a compile warning for lcs' tasklet function. Invoked functions contain already error handling; thus additional return code checking is not needed here. Signed-off-by: Heiko Carstens Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 38ed18ff5ed170a68f334c2362735c1268cec81b Author: Heiko Carstens Date: Thu May 12 18:45:04 2011 +0000 claw: remove unused return code handling Remove unused return code handling. The claw driver is mostly dead, so just make sure it keeps compiling without warnings. Signed-off-by: Heiko Carstens Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 3e70b3b8141c1a09e3a8809d94a0157756cb8f60 Author: Sebastian Ott Date: Thu May 12 18:45:03 2011 +0000 qeth: add owner to ccw driver Fill in the owner of qeth's ccw device driver. Signed-off-by: Sebastian Ott Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 1da74b1c10062eff5f67accb3bcb27fa329a55d6 Author: Frank Blaschka Date: Thu May 12 18:45:02 2011 +0000 qeth: add OSA concurrent hardware trap This patch improves FFDC (first failure data capture) by requesting a hardware trace in case the device driver, the hardware or a user detects an error. Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit c5e631a8d4e305a68465b7334efe9875be8b7033 Author: Frank Blaschka Date: Thu May 12 18:45:01 2011 +0000 qeth: convert to hw_features part 2 Set rx csum default to hw checksumming again. Remove sysfs interface for rx csum (checksumming) and TSO (large_send). With the new hw_features it does not work to keep the old sysfs interface in parallel. Convert options.checksum_type to new hw_features. Signed-off-by: Frank Blaschka Signed-off-by: David S. Miller commit 32f5469b5ed27b6403a91b6ca9bc64d144ae3a5d Author: Anirban Chakraborty Date: Thu May 12 12:48:35 2011 +0000 qlcnic: Bumped up version number to 5.0.18 Update driver version number Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit b3c687317ff5d65017ee431de9ccf80ec1552e3e Author: Anirban Chakraborty Date: Thu May 12 12:48:34 2011 +0000 qlcnic: Take FW dump via ethtool Driver checks if the previous dump has been cleared before taking the dump. It doesn't take the dump if it is not cleared. Changes from v2: Added lock to protect dump data structures from being mangled while dumping or setting them via ethtool. Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 18f2f616be88736f5daf31d9d40e027abbd607ed Author: Anirban Chakraborty Date: Thu May 12 12:48:33 2011 +0000 qlcnic: FW dump support Added code to take FW dump. o Driver queries FW at the init time and gets the dump template o It takes FW dump as per the dump template o Level of FW dump (and its size) is configured via dump flag Signed-off-by: Sritej Velaga Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 1dbf53a28262aa89ecbe653e8a9127c0baef9bc4 Author: Sathya Perla Date: Thu May 12 19:32:16 2011 +0000 be2net: fix mbox polling for signal reception Sending mbox cmds require multiple steps of writing to the DB register and polling for an ack. Gettting interrupted in the middle by a signal breaks the mbox protocol. Use msleep() to not get interrupted. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 6ed35eea3b96977d76d61b5862a3209044cb4b1f Author: Sathya Perla Date: Thu May 12 19:32:15 2011 +0000 be2net: handle signal reception while waiting for POST If waiting on POST returns prematurely (due to a signal), abort polling and return an error. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 29dd54b72ba8c5ad0dd6dd33584449b5953f700b Author: Anirban Chakraborty Date: Thu May 12 12:48:32 2011 +0000 ethtool: Added support for FW dump Added code to take FW dump via ethtool. Dump level can be controlled via setting the dump flag. A get function is provided to query the current setting of the dump flag. Dump data is obtained from the driver via a separate get function. Changes from v3: Fixed buffer length issue in ethtool_get_dump_data function. Updated kernel doc for ethtool_dump struct and get_dump_flag function. Changes from v2: Provided separate commands for get flag and data. Check for minimum of the two buffer length obtained via ethtool and driver and use that for dump buffer Pass up the driver return error codes up to the caller. Added kernel doc comments. Signed-off-by: Anirban Chakraborty Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit bdc220da3209d50b8c295490dec94845c88670a2 Author: Joe Perches Date: Mon May 9 17:42:46 2011 +0000 netdevice.h: Align struct net_device members Save a bit of space. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 10ca72014741554ad37c149ff0d9e93c1e3d5b7d Author: Ondrej Zary Date: Thu May 12 22:18:22 2011 +0200 ALSA: tea575x: use better card and bus names Provide real card and bus_info instead of hardcoded values. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 3d11ba5593b801b1db85e9680d585713e6039112 Author: Ondrej Zary Date: Thu May 12 22:18:09 2011 +0200 ALSA: tea575x: remove unused card from struct struct snd_card *card is present in struct snd_tea575x but never used. Remove it. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit ea27316e4cd13b25727715c0db8adb0b1661f5e7 Author: Ondrej Zary Date: Thu May 12 22:17:56 2011 +0200 ALSA: tea575x: remove freq_fixup from struct freq_fixup is a constant, no need to hold it in struct snd_tea575x and set in each driver. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit fa5dadcbe00fd6c86a149df886d4ae2cc30c33ef Author: Takashi Iwai Date: Fri May 13 19:33:18 2011 +0200 ALSA: hda - Add support of auto-parser to cxt5047 / CX20551 Waikiki Similarly like other Conexant codecs, now model=auto is supported for cxt5047. But the auto-parser mode isn't activated as default yet, since BIOS pin-configs seem often broken on machines with this codec. User need to pass model=auto explicitly. Signed-off-by: Takashi Iwai commit 4c42db0f04e55d48f0ea9f424144a5211b7a155c Author: Johannes Berg Date: Wed May 4 07:50:48 2011 -0700 iwlagn: remove unused pad argument The pad argument to iwlagn_txq_free_tfd isn't used, remove it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 214d14d4d323aab5d455b409e279f9e1e6631123 Author: Johannes Berg Date: Wed May 4 07:50:44 2011 -0700 iwlagn: clean up TXQ indirection All of these functions no longer need to be accessed indirectly since they're shared in all AGN devices. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3fa507386dc4cdf731344cb9361e9cca373cedb9 Author: Johannes Berg Date: Wed May 4 07:50:38 2011 -0700 iwlagn: prepare for multi-TB commands In a subsequent patch, I want to make commands use multiple TBs in a TFD. This is a simple change to prepare the data structures for this, with as of now still just a single TB supported. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 5c9887e08761eecd4dafbdff354ef7c703efb201 Author: Takashi Iwai Date: Fri May 13 18:36:37 2011 +0200 ALSA: hda - Parse more deep input-source routes in Conexant auto-parser Handle not only a single-depth input-route but two-level depth routes (PIN->MUX->ADC), too. Signed-off-by: Takashi Iwai commit 19e274630c9e23a84d5940af83cf5db35103f968 Author: Tejun Heo Date: Thu May 12 10:47:23 2011 +0200 job control: reorganize wait_task_stopped() wait_task_stopped() tested task_stopped_code() without acquiring siglock and, if stop condition existed, called wait_task_stopped() and directly returned the result. This patch moves the initial task_stopped_code() testing into wait_task_stopped() and make wait_consider_task() fall through to wait_task_continue() on 0 return. This is for the following two reasons. * Because the initial task_stopped_code() test is done without acquiring siglock, it may race against SIGCONT generation. The stopped condition might have been replaced by continued state by the time wait_task_stopped() acquired siglock. This may lead to unexpected failure of WNOHANG waits. This reorganization addresses this single race case but there are other cases - TASK_RUNNING -> TASK_STOPPED transition and EXIT_* transitions. * Scheduled ptrace updates require changes to the initial test which would fit better inside wait_task_stopped(). Signed-off-by: Tejun Heo Reviewed-by: Oleg Nesterov Signed-off-by: Oleg Nesterov commit f6100bb4b849c45caa8d6b3706756d3b8a560c92 Author: Takashi Iwai Date: Fri May 13 18:26:39 2011 +0200 ALSA: hda - Clean up input-mux handling in Conexant auto-parser Keep the registered input-pins in imux_pins[], and fix the inconsistent use of sepc->auto_mic_ext. Signed-off-by: Takashi Iwai commit eaeee242c531cd4b0a4a46e8b5dd7ef504380c42 Author: Artem Bityutskiy Date: Fri May 6 17:08:56 2011 +0300 UBIFS: fix a rare memory leak in ro to rw remounting path When re-mounting from R/O mode to R/W mode and the LEB count in the superblock is not up-to date, because for the underlying UBI volume became larger, we re-write the superblock. We allocate RAM for these purposes, but never free it. So this is a memory leak, although very rare one. Signed-off-by: Artem Bityutskiy Cc: stable@kernel.org commit c1f1f91d2183b91c684900b529b6c336ad3dd27c Author: Artem Bityutskiy Date: Thu May 5 14:16:32 2011 +0300 UBIFS: fix inode size debugging check failure This patch fixes a problem with the following symptoms: UBIFS: deferred recovery completed UBIFS error (pid 15676): dbg_check_synced_i_size: ui_size is 11481088, synced_i_size is 11459081, but inode is clean UBIFS error (pid 15676): dbg_check_synced_i_size: i_ino 128, i_mode 0x81a4, i_size 11481088 It happens when additional debugging checks are enabled and we are recovering from a power cut. When we fixup corrupted inode size during recovery, we change them in-place and we change ui_size as well, but not synced_i_size, which causes this failure. This patch makes sure we change both fields and fixes the issue. Signed-off-by: Artem Bityutskiy commit 45cd5cddbfbdf0993dbc76d06ed77d0bf547b421 Author: Artem Bityutskiy Date: Mon May 2 22:34:39 2011 +0300 UBIFS: fix debugging FS checking failure When the debugging self-checks are enabled, we go trough whole file-system after mount and check/validate every single node referred to by the index. This is implemented by the 'dbg_check_filesystem()' function. However, this function fails if we mount "unclean" file-system, i.e., if we mount the file-system after a power cut. It fails with the following symptoms: UBIFS DBG (pid 8171): ubifs_recover_size: ino 937 size 3309925 -> 3317760 UBIFS: recovery deferred UBIFS error (pid 8171): check_leaf: data node at LEB 1000:0 is not within inode size 3309925 The reason of failure is that recovery fixed up the inode size in memory, but not on the flash so far. So the value on the flash is incorrect so far, and would be corrected when we re-mount R/W. But 'check_leaf()' ignores this fact and tries to validate the size of the on-flash inode, which is incorrect, so it fails. This patch teaches the checking code to look at the VFS inode cache first, and if there is the inode in question, use that inode instead of the inode on the flash media. This fixes the issue. Signed-off-by: Artem Bityutskiy commit 69f8a75a7d9db05a7ee708514d605ab74956c73e Author: Artem Bityutskiy Date: Mon May 2 21:51:17 2011 +0300 UBIFS: remove an unneeded check In 'ubifs_recover_size()' we have an "if (!e->inode && c->ro_mount)" statement. But if 'c->ro_mount' is true, then '!e->inode' must always be true as well. So we can remove the unnecessary '!e->inode' test and put an 'ubifs_assert(!e->inode)' instead. This patch also removes an extra trailing white-space in a debugging print, as well as adds few empty lines to 'ubifs_recover_size()' to make it a bit more readable. Signed-off-by: Artem Bityutskiy commit 4c9545200a3bd9e87b36475c263034a38be02e44 Author: Artem Bityutskiy Date: Mon May 2 21:43:54 2011 +0300 UBIFS: fix debugging message When recovering the inode size, one of the debugging messages was printed incorrecly, this patches fixes it. Signed-off-by: Artem Bityutskiy commit fe79c05f03777acf87acc54fa3ad357ed5ee3b81 Author: Artem Bityutskiy Date: Fri Apr 29 16:35:46 2011 +0300 UBIFS: refactor ubifs_rcvry_gc_commit This commits refactors and cleans up 'ubifs_rcvry_gc_commit()' which was quite untidy, also removes the commentary which was not 100% correct. Signed-off-by: Artem Bityutskiy commit 447442139c764fd75cf892905d0feb08a9b983ed Author: Artem Bityutskiy Date: Wed Apr 27 14:52:35 2011 +0300 UBIFS: split ubifs_rcvry_gc_commit Split the 'ubifs_rcvry_gc_commit()' function and introduce a 'grab_empty_leb()' heler. This cleans 'ubifs_rcvry_gc_commit()' a little and makes it a bit less of spagetti. Also, add a commentary which explains why it is crucial to first search for an empty LEB and then run commit. Signed-off-by: Artem Bityutskiy commit ec0681426526b23d3e12cf247d64676806c30b7f Author: Artem Bityutskiy Date: Tue Apr 26 10:21:54 2011 +0300 UBIFS: dump the stack on errors in failure mode too When UBIFS is in the failure mode (used for power cut emulation testing) we for some reasons do not dump the stack in many places, e.g., in assertions. Probably at early days we had too many of them and disabled this to make the development easier, but then never enabled. Nowadays I sometimes observe assertion failures during power cut testing, but the useful stackdump is not printed, which is bad. This patch makes UBIFS always print the stackdump when debugging is enabled. Signed-off-by: Artem Bityutskiy commit 6d5904e062d5cb28b705d49a35682e0871b3f382 Author: Artem Bityutskiy Date: Tue Apr 26 10:17:00 2011 +0300 UBIFS: print useful debugging messages when cannot recover gc_lnum If we fail to recover the gc_lnum we just return an error and it then it is difficult to figure out why this happened. This patch adds useful debugging information which should make it easier to debug the failure. Signed-off-by: Artem Bityutskiy commit bcdca3e10ac22c208955a63c907a0988550bc666 Author: Artem Bityutskiy Date: Tue Apr 26 10:07:50 2011 +0300 UBIFS: remove dead GC LEB recovery piece of code This patch removes a piece of code in 'ubifs_rcvry_gc_commit()' which is never executed. We call 'ubifs_find_dirty_leb()' function with min_space = wbuf->offs, so if it returns us an LEB, it is guaranteed to have at lease 'wbuf->offs' bytes of free+dirty space. So we can remove the subsequent code which deals with "returned LEB has less than 'wbuf->offs' bytes of free+dirty space". This simplifies 'ubifs_rcvry_gc_commit()' a little. Signed-off-by: Artem Bityutskiy commit 2405f5948119cdc1c28697fd3110124dad974898 Author: Artem Bityutskiy Date: Tue Apr 26 09:49:32 2011 +0300 UBIFS: remove duplicated code We have duplicated code in 'ubifs_garbage_collect()' and 'ubifs_rcvry_gc_commit()', which is about handling the special case of free LEB. In both cases we just want to garbage-collect the LEB using 'ubifs_garbage_collect_leb()'. This patch teaches 'ubifs_garbage_collect_leb()' to handle free LEB's so that the caller does not have to do this and the duplicated code is removed. Signed-off-by: Artem Bityutskiy commit 2cd0a60cf49db4722445337b90fb06c9672f1128 Author: Artem Bityutskiy Date: Sun Apr 24 15:35:11 2011 +0300 UBIFS: remove strange commentary Remove the following commentary from 'ubifs_file_mmap()': /* 'generic_file_mmap()' takes care of NOMMU case */ I do not understand what it means, and I could not find anything relater to NOMMU in 'generic_file_mmap()'. Signed-off-by: Artem Bityutskiy commit 341e262f903afbb8c23133ed6e193ea6254f73c4 Author: Artem Bityutskiy Date: Fri Apr 22 12:11:12 2011 +0300 UBIFS: do not change debugfs file position This patch is a tiny improvement which removes few bytes of code. UBIFS debugfs files are non-seekable and the file position is ignored, so do not increase it in the write handler. Signed-off-by: Artem Bityutskiy commit 1321657d8f843641529eff26e25722158cc29349 Author: Artem Bityutskiy Date: Sun Apr 24 10:53:17 2011 +0300 UBIFS: fix oops in lprops dump function The 'dbg_dump_lprop()' is trying to detect journal head LEBs when printing, so it looks at the write-buffers. However, if we are in R/O mode, we de-allocate the write-buffers, so 'dbg_dump_lprop()' oopses. This patch fixes the issue. Note, this patch is not critical, it is only about the debugging code path, and it is unlikely that anyone but UBIFS developers would ever hit this issue. Signed-off-by: Artem Bityutskiy commit 3b2f9a019e655f3407e4e69cdbaf8b75699b79a4 Author: Artem Bityutskiy Date: Thu Apr 21 15:11:33 2011 +0300 UBIFS: use ro_mount instead of MS_RDONLY We have our own flags indicating R/O mode, and c->ro_mode is equivalent to MS_RDONLY. Let's be consistent and use UBIFS flags everywhere. This patch is just a minor cleanup. Additionally, add a comment that we are surprised with VFS behavior - as a reminder to look at this some day. Signed-off-by: Artem Bityutskiy commit 1a29af8bd740b2720caeafbffece1c0be6a9d06d Author: Artem Bityutskiy Date: Wed Apr 20 17:06:17 2011 +0300 UBIFS: use EROFS when emulating failures When the debugging failure emulation is enabled and UBIFS decides to emulate an I/O error, it uses EIO error code. In which case UBIFS switches into R/O mode later on. The for the user-space is that when a failure is emulated, the file-system sometimes returns EIO and sometimes EROFS. This makes it more difficult to implement user-space tests for the failure mode. Let's be consistent and return EROFS in all the cases. This patch is an improvement for the debugging code and does not affect the functionality at all. Signed-off-by: Artem Bityutskiy commit 14ffd5d0b051b0b937df0cf3580a92f428ff70b1 Author: Sedat Dilek Date: Mon Apr 4 01:55:39 2011 +0200 UBIFS: make xattr operations names consistent This is just a tiny clean-up patch. The variable name for empty address space operations is "empty_aops". Let's use consistent names for empty inode and file operations: "empty_iops" and "empty_fops", instead of inconsistent "none_inode_operations" and "none_file_operations". Artem: re-write the commit message. Signed-off-by: Sedat Dilek Signed-off-by: Artem Bityutskiy commit cdd8ad6e9e78b295e71265762926342523579d10 Author: Artem Bityutskiy Date: Tue Apr 5 15:43:44 2011 +0300 UBIFS: introduce lsave debugging Try to improve UBIFS testing coverage by randomly picking LEBs to store in lsave, rather than picking them optimally. Create a debugging version of 'populate_lsave()' for these purposes and enable it when general debugging self-checks are enabled. Signed-off-by: Artem Bityutskiy commit bc3f07f0906e867270fdc2006b0bbcb130a722c1 Author: Artem Bityutskiy Date: Tue Apr 5 13:52:20 2011 +0300 UBIFS: make force in-the-gaps to be a general self-check UBIFS can force itself to use the 'in-the-gaps' commit method - the last resort method which is normally invoced very very rarely. Currently this "force int-the-gaps" debugging feature is a separate test mode. But it is a bit saner to make it to be the "general" self-test check instead. This patch is just a clean-up which should make the debugging code look a bit nicer and easier to use - we have way too many debugging options. Signed-off-by: Artem Bityutskiy commit f1bd66afb14c25095cf6ff499c1388db423acc9e Author: Artem Bityutskiy Date: Tue Mar 29 18:36:21 2011 +0300 UBIFS: improve space checking debugging feature This patch improves the 'dbg_check_space_info()' function which checks whether the amount of space before re-mounting and after re-mounting is the same (remounting from R/O to R/W modes and vice-versa). The problem is that 'dbg_check_space_info()' does not save the budgeting information before re-mounting, so when an error is reported, we do not know why the amount of free space changed. This patches makes the following changes: 1. Teaches 'dbg_dump_budg()' function to accept a 'struct ubifs_budg_info' argument and print out the this argument. This way we may ask it to print any saved budgeting info, no only the current one. 2. Accordingly changes all the callers of 'dbg_dump_budg()' to comply with the changed interface. 3. Introduce a 'saved_bi' (saved budgeting info) field to 'struct ubifs_debug_info' and save the budgeting info before re-mounting there. 4. Change 'dbg_check_space_info()' and make it print both old and new budgeting information. 5. Additionally, save 'c->igx_gc_cnt' and print it if and error happens. This value contributes to the amount of free space, so we have to print it. Signed-off-by: Artem Bityutskiy commit 8c3067e445fb25119761356c88abc39dacfb9524 Author: Artem Bityutskiy Date: Wed Mar 30 13:18:58 2011 +0300 UBIFS: rearrange the budget dump Re-arrange the budget dump and make sure we first dump all the 'struct ubifs_budg_info' fields, and then the other information. Additionally, print the 'uncommitted_idx' variable. This change is required for to the following dumping function enhancement where it will be possible to dump saved 'struct ubifs_budg_info' objects, not only the current one. Signed-off-by: Artem Bityutskiy commit 8ff83089f8bcbd9a2e898b68f1a46487c8b6e38c Author: Artem Bityutskiy Date: Tue Mar 29 18:19:50 2011 +0300 UBIFS: simplify dbg_dump_budg calling conventions The current 'dbg_dump_budg()' calling convention is that the 'c->space_lock' spinlock is held. However, none of the callers actually use it from contects which have 'c->space_lock' locked, so all callers have to explicitely lock and unlock the spinlock. This is not very sensible convention. This patch changes it and makes 'dbg_dump_budg()' lock the spinlock instead of imposing this to the callers. This simplifies the code a little. Signed-off-by: Artem Bityutskiy commit b137545c44fc0c80fb778abb0c582bda5601e8f8 Author: Artem Bityutskiy Date: Tue Mar 29 18:04:05 2011 +0300 UBIFS: introduce a separate structure for budgeting info This patch separates out all the budgeting-related information from 'struct ubifs_info' to 'struct ubifs_budg_info'. This way the code looks a bit cleaner. However, the main driver for this is that we want to save budgeting information and print it later, so a separate data structure for this is helpful. This patch is a preparation for the further debugging output improvements. Signed-off-by: Artem Bityutskiy commit cc64f774b4acd4954abe54f5919f50d78aba1e5f Author: Artem Bityutskiy Date: Fri Mar 25 15:37:35 2011 +0200 UBIFS: use __packed instead of __attribute__((packed)) There was an attempt to standartize various "__attribute__" and other macros in order to have potentially portable and more consistent code, see commit 82ddcb040570411fc2d421d96b3e69711c670328. Note, that commit refers Rober Love's blog post, but the URL is broken, the valid URL is: http://blog.rlove.org/2005/10/with-little-help-from-your-compiler.html Moreover, nowadays checkpatch.pl warns about using __attribute__((packed)): "WARNING: __packed is preferred over __attribute__((packed))" It is not a big deal for UBIFS to use __packed, so let's do it. Signed-off-by: Artem Bityutskiy commit c43615702f9c5957981693a4d966ed81d8fc1ecc Author: Artem Bityutskiy Date: Fri Mar 25 15:27:40 2011 +0200 UBIFS: fix minor stylistic issues Fix several minor stylistic issues: * lines longer than 80 characters * space before closing parenthesis ')' * spaces in the indentations Signed-off-by: Artem Bityutskiy commit 1bbfc848a915081237660d898bbcf50e4a8fc59f Author: Artem Bityutskiy Date: Mon Mar 21 16:26:42 2011 +0200 UBIFS: make debugfs files non-seekable Turn the debufs files UBIFS maintains into non-seekable. Indeed, none of them is supposed to be seek'ed. Do this by making the '.lseek()' handler to be 'no_llseek()' and by using 'nonseekable_open()' in the '.open()' operation. This does mean an API break but this debugging API is only used by a couple of test scripts which do not rely in the 'llseek()' operation. Signed-off-by: Artem Bityutskiy commit 1f8458a26293b692955f8dff671a3ed50dd9c603 Author: Takashi Iwai Date: Fri May 13 17:22:05 2011 +0200 ALSA: hda - Add auto-parser support to cxt5045 / CX20549 Venice Signed-off-by: Takashi Iwai commit 6764bcef4cb964456615565ff974ed917de3c12d Author: Takashi Iwai Date: Fri May 13 16:52:25 2011 +0200 ALSA: hda - Add auto-parser support to cxt5051 / CX20561 Hermosa Extend the existing auto-parser for CX2064x for cxt5051 codec. Now the auto-parser supports ADC-switching for this codec. Signed-off-by: Takashi Iwai commit 0ad1b5b619e4f053dfdcef9dfc68cc5142d86961 Author: Takashi Iwai Date: Fri May 13 16:43:12 2011 +0200 ALSA: hda - Check AMP CAP at initialization of Conexant auto-parser Some codecs have no mute caps in audio I/O widgets. Signed-off-by: Takashi Iwai commit da33986651e137b1ea2ec21794e32bc5c57b03d0 Author: Takashi Iwai Date: Fri May 13 16:24:15 2011 +0200 ALSA: hda - Turn on EAPD dynamically per jack plug in Conexant auto mode Instead of keeping always EAPD on, turn on/off appropriately at jack plugging in Conexant auto-parser mode. Signed-off-by: Takashi Iwai commit 2557f7427d4bd1fc00166556e3047c5f3ed91958 Author: Takashi Iwai Date: Fri May 13 16:18:37 2011 +0200 ALSA: hda - Fix auto-mic for CX2064x codecs The wrong id is assigned for external/internal mics in the auto-mic selection parser. Signed-off-by: Takashi Iwai commit a7c57cf7d4327c41510f8cbf45b1b970e02c34f8 Author: Linus Walleij Date: Tue Apr 19 08:31:32 2011 +0800 dmaengine/dw_dmac: implement pause and resume in dwc_control Some peripherals like amba-pl011 needs pause to be implemented in DMA controller drivers. This also returns correct status from dwc_tx_status() in case chan is paused. Signed-off-by: Linus Walleij Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit 69cea5a00d3135677939fce1fefe54ed522055a0 Author: Viresh Kumar Date: Fri Apr 15 16:03:35 2011 +0530 dmaengine/dw_dmac: Replace spin_lock* with irqsave variants and enable submission from callback dmaengine routines can be called from interrupt context and with interrupts disabled. Whereas spin_unlock_bh can't be called from such contexts. So this patch converts all spin_*_bh routines to irqsave variants. Also, spin_lock() used in tasklet is converted to irqsave variants, as tasklet can be interrupted, and dma requests from such interruptions may also call spin_lock. Now, submission from callbacks are permitted as per dmaengine framework. So we shouldn't hold any locks while calling callbacks. As locks were taken by parent routines, so releasing them before calling callbacks doesn't look clean enough. So, locks are taken inside all routine now, whereever they are required. And dwc_descriptor_complete is always called without taking locks. Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit 69dc14b51c1aad9d82afd8f96bf4e4835089bffc Author: Viresh Kumar Date: Mon Apr 18 14:54:56 2011 +0530 dmaengine/dw_dmac: Divide one sg to many desc, if sg len is greater than DWC_MAX_COUNT If len passed in sg for slave_sg transfers is greater than DWC_MAX_COUNT, then driver programmes controller incorrectly. This patch adds code to handle this situation by allocation more than one desc for same sg. Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit abf53902dcc6d44d2e06b09817fa67857aa686fe Author: Viresh Kumar Date: Fri Apr 15 16:03:35 2011 +0530 dmaengine/dw_dmac: set residue as total len in dwc_tx_status if status is !DMA_SUCCESS If transfer status is !=DMA_SUCCESS, return total transfer len as residue, instead of zero. Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit 5fedefb87bd0a64281d28edd295f29e3b989d78c Author: Viresh Kumar Date: Fri Apr 15 16:03:35 2011 +0530 dmaengine/dw_dmac: don't call callback routine in case dmaengine_terminate_all() is called If dmaengine_terminate_all() is called for dma channel, then it doesn't make much sense to call registered callback routine. While in case of success or failure it must be called. Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit 496b318eb65558c1a3a4fe882cb9da6d1dc6493a Author: Laszlo Ersek Date: Fri May 13 09:45:40 2011 -0400 xen/blkback: fix xenbus_transaction_start() hang caused by double xenbus_transaction_end() vbd_resize() up_read()'s xs_state.suspend_mutex twice in a row via double xenbus_transaction_end() calls. The next down_read() in xenbus_transaction_start() (at eg. the next resize attempt) hangs. Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=618317 Acked-by: Jan Beulich Acked-by: Ian Campbell Signed-off-by: Laszlo Ersek Signed-off-by: Konrad Rzeszutek Wilk commit 73c5de0051533cbdf2bb656586c3eb21a475aa7d Author: Arne Jansen Date: Tue Apr 12 12:07:57 2011 +0200 btrfs: quasi-round-robin for chunk allocation In a multi device setup, the chunk allocator currently always allocates chunks on the devices in the same order. This leads to a very uneven distribution, especially with RAID1 or RAID10 and an uneven number of devices. This patch always sorts the devices before allocating, and allocates the stripes on the devices with the most available space, as long as there is enough space available. In a low space situation, it first tries to maximize striping. The patch also simplifies the allocator and reduces the checks for corner cases. The simplification is done by several means. First, it defines the properties of each RAID type upfront. These properties are used afterwards instead of differentiating cases in several places. Second, the old allocator defined a minimum stripe size for each block group type, tried to find a large enough chunk, and if this fails just allocates a smaller one. This is now done in one step. The largest possible chunk (up to max_chunk_size) is searched and allocated. Because we now have only one pass, the allocation of the map (struct map_lookup) is moved down to the point where the number of stripes is already known. This way we avoid reallocation of the map. We still avoid allocating stripes that are not a multiple of STRIPE_SIZE. commit a9c9bf68276c36898e23db770a65bd9b75bfac58 Author: Arne Jansen Date: Tue Apr 12 11:01:20 2011 +0200 btrfs: heed alloc_start currently alloc_start is disregarded if the requested chunk size is bigger than (device size - alloc_start), but smaller than the device size. The only situation where I see this could have made sense was when a chunk equal the size of the device has been requested. This was possible as the allocator failed to take alloc_start into account when calculating the request chunk size. As this gets fixed by this patch, the workaround is not necessary anymore. commit bcd53741cc2af4342ac3ff6983bddc4a1b63b9b4 Author: Arne Jansen Date: Tue Apr 12 10:43:21 2011 +0200 btrfs: move btrfs_cmp_device_free_bytes to super.c this function won't be used here anymore, so move it super.c where it is used for df-calculation commit 43b416e5f6a3ce269571cfe25c8f1e8e9316c5b0 Author: Felipe Balbi Date: Fri May 13 15:21:47 2011 +0300 MAINTAINERS: tree moved to kernel.org Thanks for kernel.org to give me an account on that server. Signed-off-by: Felipe Balbi commit 9439064cd9fce8a4db716a748dbf581eb234f9c7 Author: Eliad Peller Date: Fri May 13 11:57:13 2011 +0300 wl12xx: enter/exit psm on wowlan suspend/resume When operating as station, enter psm before suspending the device into wowlan state. Add a new completion event to signal when psm was entered successfully. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit f795ea8b2f047409c59e891d6e5e86a925048bf4 Author: Eliad Peller Date: Fri May 13 11:57:12 2011 +0300 wl12xx_sdio: declare support for NL80211_WOW_TRIGGER_ANYTHING trigger Since wowlan requires the ability to stay awake while the host is suspended, declare support for NL80211_WOW_TRIGGER_ANYTHING if the MMC_PM_KEEP_POWER capability is being supported. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit f44e58681aec420b132a54823d8911293a644d4e Author: Eliad Peller Date: Fri May 13 11:57:11 2011 +0300 wl12xx: prevent scheduling while suspending (WoW enabled) When WoW is enabled, the interface will stay up and the chip will be powered on, so we have to flush/cancel any remaining work, and prevent the irq handler from scheduling a new work until the system is resumed. Add 2 new flags: * WL1271_FLAG_SUSPENDED - the system is (about to be) suspended. * WL1271_FLAG_PENDING_WORK - there is a pending irq work which should be scheduled when the system is being resumed. In order to wake-up the system while getting an irq, we initialize the device as wakeup device, and calling pm_wakeup_event() upon getting the interrupt (while the system is about to be suspended) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 039bdb1494d1d514987ce596a4898494021c7af2 Author: Eliad Peller Date: Fri May 13 11:57:10 2011 +0300 wl12xx_sdio: set MMC_PM_KEEP_POWER flag on suspend if a wow trigger was configured, set the MMC_PM_KEEP_POWER flag on suspend, so our power will be kept while the system is suspended. We needed to set this flag on each suspend attempt (when we want to keep power) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 402e48616078c1e56f55a69d314b77f1d750d6ad Author: Eliad Peller Date: Fri May 13 11:57:09 2011 +0300 wl12xx: declare suspend/resume callbacks (for wowlan) Additionally, add wow_enabled field to wl, to indicate whether wowlan was configured. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 2c0f24636c80aa09990c507c0cede39add4b4724 Author: Eliad Peller Date: Fri May 13 11:57:08 2011 +0300 wl12xx_sdio: set interrupt as wake_up interrupt set the sdio interrupt as wake_up interrupt, so we will be able to wake up the suspended system (Wake-On-Wireless) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 8620543eda01a2d26ea1dd831f159e06da8163ad Author: Hema HK Date: Tue Mar 22 16:54:22 2011 +0530 usb: musb: Calling VBUS pulsing API when SRP is initiated. Call VBUS pulsing API when there is SRP initiation from user space. Signed-off-by: Hema HK Signed-off-by: Felipe Balbi commit 603ab524ed95f566b0f25566484d4f449e433d74 Author: Hema HK Date: Tue Mar 22 16:54:21 2011 +0530 usb: otg: TWL6030: OMAP4430: Adding SRP VBUS pulsing API Implement the start_srp API to generate the VBUS pulsing and assign it to otg_transciever function pointer. This will be used by the link driver when there is SRP initiation from user. Signed-off-by: Hema HK Signed-off-by: Felipe Balbi commit 91d94af56a52ffc059523fdad71287232c040697 Author: Tony Lindgren Date: Fri May 13 04:41:32 2011 -0700 omap: Remove support for omap2evm The board support has never been merged for it as noticed by Russell King . So let's remove the related dead code. Cc: linux-fbdev@vger.kernel.org Cc: alsa-devel@alsa-project.org Cc: Paul Mundt Acked-by: Jarkko Nikula Acked-by: Tomi Valkeinen Acked-by: Mark Brown Acked-by: Liam Girdwood Signed-off-by: Tony Lindgren commit c51e36dc11e44aa960744ec1c36fb2ab8d68b218 Author: Sergei Shtylyov Date: Sat May 7 19:44:13 2011 +0400 usb: musb: host: remove duplicate check in musb_ep_program() musb_ep_program() contains obviously duplicate check for 'dma_channel' in its IN/receive path -- removing it allows to save one level of indentation. While at it, improve the comment style... Signed-off-by: Sergei Shtylyov Signed-off-by: Felipe Balbi commit 981430a1704123b569865997bdde4f1de1afca7e Author: Felipe Balbi Date: Wed May 11 13:02:23 2011 +0300 usb: musb: export musb_interrupt symbol currently that's used by another module (am35x) which, granted, it shouldn't be using that, but in order to avoid compile errors, let's export that symbol temporarily until re-factoring work is done on that driver. Signed-off-by: Felipe Balbi commit 1376d92f9e14209e8c0d549ed143edc70ba6dbb7 Author: Felipe Balbi Date: Wed May 11 12:47:59 2011 +0300 usb: musb: allow musb and glue layers to be modules This in part reverts commit 7a180e70cfc56e131bfe4796773df2acfc7d4180. (usb: musb: temporarily make it bool) and while at that we also allow glue layers to be compiled as modules. There are still some other changes needed until we can have a fully functional build with this setup, but we're getting there. Signed-off-by: Felipe Balbi commit 5c8a86e10a7c164f44537fabdc169fd8b4e7a440 Author: Felipe Balbi Date: Wed May 11 12:44:08 2011 +0300 usb: musb: drop unneeded musb_debug trickery We have a generic way of enabling/disabling different debug messages on a driver called DYNAMIC_PRINTK. Anyone interested in enabling just part of the debug messages, please read the documentation under: Documentation/dynamic-debug-howto.txt for information on how to use that great infrastructure. Signed-off-by: Felipe Balbi commit f2741d9898269e565c220ec295a8f5c3756c7585 Author: Steven Whitehouse Date: Fri May 13 12:11:17 2011 +0100 GFS2: Move all locking inside the inode creation function Now that there are no longer any exceptions to the normal inode creation code path, we can move the parts of the locking code which were duplicated in mkdir/mknod/create/symlink into the inode create function. Signed-off-by: Steven Whitehouse commit d491297752c3a36f6cfabd4cd578c0cfa2098044 Author: Sanjeev Premi Date: Wed May 11 19:25:35 2011 +0530 ASoC: omap-mcbsp: Remove restrictive checks for cpu type Current checks for cpu type were too restrictive leading to failures for other silicons in same family. The problem was found while testing audio playback on AM37x and AM35x processors. But should exist on OMAP36xx as well. Signed-off-by: Sanjeev Premi cc: Mark Brown cc: Liam Girdwood cc: Jarkko Nikula Acked-by: Jarkko Nikula Acked-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit b417382419c67fda6463e02eafb8efebd5f8759e Author: Peter Ujfalusi Date: Thu May 12 13:04:55 2011 +0300 ASoC: omap-pcm: Period wakeup disabling on OMAP2+ Allow disabling ALSA period wakeup interrupts. This can only be done on OMAP2+ (2/3/4), since there we can chain the DMA. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Acked-by: Jarkko Nikula Signed-off-by: Liam Girdwood commit 63405ce85a4d902bd64ccb4477473d661ae52c95 Author: Liam Girdwood Date: Thu May 12 18:49:15 2011 +0100 MAINTAINERS: ASoC and Regulator email address change. Update my email address to new employer. Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 1f71a3ba8f845d2b2538e79bafb99ac835c84ea6 Author: Liam Girdwood Date: Mon Mar 28 19:23:23 2011 +0100 ASoC: twl6040 - fix LINEGAIN volume control Fix the TWL6040 LINEGAIN volume control to match the TRM. Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 160b4026dc3e75c0693d0123eca805e88cd200b6 Author: Steven Whitehouse Date: Fri May 13 10:34:59 2011 +0100 GFS2: Clean up symlink creation This moves the symlink specific parts of inode creation into the function where we initialise the rest of the dinode. As a result we have one less place where we need to look up the inode's buffer. Signed-off-by: Steven Whitehouse commit e2d0a13bba051d7a9618b0952d91fac68175a71a Author: Steven Whitehouse Date: Fri May 13 09:55:55 2011 +0100 GFS2: Clean up mkdir This moves the initialisation of the directory into the inode creation functions to avoid having to duplicate the lookup of the inode's buffer. Signed-off-by: Steven Whitehouse commit 72a8f97bf2dfe1b0f02ba8dbaed7d6b76657aae3 Author: David S. Miller Date: Thu May 12 23:03:46 2011 -0400 ipv4: Fix 'iph' use before set. I swear none of my compilers warned about this, yet it is so obvious. > net/ipv4/ip_forward.c: In function 'ip_forward': > net/ipv4/ip_forward.c:87: warning: 'iph' may be used uninitialized in this function Reported-by: Stephen Rothwell Signed-off-by: David S. Miller commit 5c5095494fb545f53b80cbb7539679a10a3472a6 Merge: 4d586b8 def5768 Author: David S. Miller Date: Thu May 12 23:01:55 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-next-2.6 commit def57687e9579b7a797681990dff763c411f5347 Author: David S. Miller Date: Thu May 12 19:34:30 2011 -0400 ipv4: Elide use of rt->rt_dst in ip_forward() No matter what kind of header mangling occurs due to IP options processing, rt->rt_dst will always equal iph->daddr in the packet. So we can safely use iph->daddr instead of rt->rt_dst here. Signed-off-by: David S. Miller commit c30883bdff0b3544900a5c4aba18b8985436878f Author: David S. Miller Date: Thu May 12 19:30:58 2011 -0400 ipv4: Simplify iph->daddr overwrite in ip_options_rcv_srr(). We already copy the 4-byte nexthop from the options block into local variable "nexthop" for the route lookup. Re-use that variable instead of memcpy()'ing again when assigning to iph->daddr after the route lookup succeeds. Signed-off-by: David S. Miller commit 10949550bd1e50cc91c0f5085f7080a44b0871fe Author: David S. Miller Date: Thu May 12 19:26:57 2011 -0400 ipv4: Kill spurious opt->srr check in ip_options_rcv_srr(). All call sites conditionalize the call to ip_options_rcv_srr() with a check of opt->srr, so no need to check it again there. Signed-off-by: David S. Miller commit b2a103e6d0afa432dff66b36473c5a55b6b0376c Author: Michał Mirosław Date: Sat May 7 03:22:17 2011 +0000 bonding: convert to ndo_fix_features This should also fix updating of vlan_features and propagating changes to VLAN devices on the bond. Side effect: it allows user to force-disable some offloads on the bond interface. Note: NETIF_F_VLAN_CHALLENGED is managed by bond_fix_features() now. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit afe12cc86b0ba545a01ad8716539ab07ab6e9e89 Author: Michał Mirosław Date: Sat May 7 03:22:17 2011 +0000 net: introduce netdev_change_features() It will be needed by bonding and other drivers changing vlan_features after ndo_init callback. As a bonus, this includes kernel-doc for netdev_update_features(). Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6c60408e33aba6d1d7241bc9be3b8d1b39509291 Author: Alexey Orishko Date: Fri May 6 03:01:30 2011 +0000 CDC NCM: Add mising short packet in cdc_ncm driver Changes: - while making NTB, driver shall check if device dwNtbOutMaxSize is higher than host value and shall add a short packet if this is the case - previous temporary patch for this issue is replaced by this one Signed-off-by: Alexey Orishko Signed-off-by: David S. Miller commit c92f5ca2e5120796c56455e0a4b7cc0dfd6ceb49 Author: Julian Anastasov Date: Tue May 10 12:46:05 2011 +0000 ipvs: Remove all remaining references to rt->rt_{src,dst} Remove all remaining references to rt->rt_{src,dst} by using dest->dst_saddr to cache saddr (used for TUN mode). For ICMP in FORWARD hook just restrict the rt_mode for NAT to disable LOCALNODE. All other modes do not allow IP_VS_RT_MODE_RDR, so we should be safe with the ICMP forwarding. Using cp->daddr as replacement for rt_dst is safe for all modes except BYPASS, even when cp->dest is NULL because it is cp->daddr that is used to assign cp->dest for sync-ed connections. Signed-off-by: Julian Anastasov Signed-off-by: David S. Miller commit 44e3125ccd521585e73e6dd228b283ab26993c68 Author: David S. Miller Date: Mon May 9 14:38:06 2011 -0700 ipvs: Eliminate rt->rt_dst usage in __ip_vs_get_out_rt(). We can simply track what destination address is used based upon which code block is taken at the top of the function. Signed-off-by: David S. Miller commit e58b34425bfcb08c6bc8c520b82c37ffcec87072 Author: David S. Miller Date: Thu May 12 18:22:34 2011 -0400 ipvs: Use IP_VS_RT_MODE_* instead of magic constants. [ Add some cases I missed, from Julian Anastasov ] Signed-off-by: David S. Miller commit 06c03c02ea528af0cbce50ce45ddd6a361864550 Author: Mahesh Bandewar Date: Sun May 8 06:51:48 2011 +0000 tg3: Allow ethtool to enable/disable loopback. This patch adds tg3_set_features() to handle loopback mode. Currently the capability is added for the devices which support internal MAC loopback mode. So when enabled, it enables internal-MAC loopback. Signed-off-by: Mahesh Bandewar Signed-off-by: David S. Miller commit cbfd1526f6076ece92b4e2dcc0a2f1e89041b3bd Author: Amit Virdi Date: Thu May 12 01:04:40 2011 +0000 net/irda/ircomm_tty.c: Use flip buffers to deliver data use tty_insert_flip_string and tty_flip_buffer_push to deliver incoming data packets from the IrDA device instead of delivering the packets directly to the line discipline. Following later approach resulted in warning "Sleeping function called from invalid context". Signed-off-by: Amit Virdi Acked-by: Alan Cox Signed-off-by: David S. Miller commit 5185432277ddf5bd91ad5af29cd1945f25ed10fc Author: Konrad Rzeszutek Wilk Date: Thu May 12 18:02:28 2011 -0400 xen/blkback: Align the tabs on the structure. The recent changes caused this field of the structure to be offset a bit. Signed-off-by: Konrad Rzeszutek Wilk commit cca537af7d6defe8001c2229da738f8a3c934fc0 Author: Konrad Rzeszutek Wilk Date: Thu May 12 17:23:30 2011 -0400 xen/blkback: if log_stats is enabled print out the data. And not depend on the driver being built with -DDEBUG flag. Signed-off-by: Konrad Rzeszutek Wilk commit 5a577e38724226e06337bc8361f492b6bb76b9a5 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:58:21 2011 -0400 xen/blkback: Add the prefix XEN in the common.h. Signed-off-by: Konrad Rzeszutek Wilk commit 3d814731ba67f9514bdf380c1b95dd852ac82a2f Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:53:56 2011 -0400 xen/blkback: Prefix 'vbd' with 'xen' in structs and functions. Signed-off-by: Konrad Rzeszutek Wilk commit 30fd150202fb2d08a62f9c2966a4b1fcf2e861e7 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:47:48 2011 -0400 xen/blkback: Change structure name blkif_st to xen_blkif. No need for that '_st' and xen_blkif is more apt. Signed-off-by: Konrad Rzeszutek Wilk commit 325a64860472765ecaeaa0081e9ddd67671183d4 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:37:04 2011 -0400 xen/blkback: Remove the unused typedefs. Signed-off-by: Konrad Rzeszutek Wilk commit 452a6b2bb6de677acdd2ccb8b39cf6e8fe06f306 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:31:51 2011 -0400 xen/blkback: Move include/xen/blkif.h into drivers/block/xen-blkback/common.h Not point of the blkif.h file. It is not used by the frontend. Signed-off-by: Konrad Rzeszutek Wilk commit b0f801273f7359a7d91fc94f5c6bf216bc17aaa1 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:23:06 2011 -0400 xen/blkback: Fixing some more of the cleanpatch.pl warnings. Signed-off-by: Konrad Rzeszutek Wilk commit 03e0edf946a08f498788bb6e8ab58453d98f25b9 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:19:23 2011 -0400 xen/blkback: Checkpatch.pl recommend against multiple assigments. CHECK: multiple assignments should be avoided Signed-off-by: Konrad Rzeszutek Wilk commit 41ca4d388560d2048c7b64ff5ca7dc3bac0d0812 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:14:15 2011 -0400 xen/blkback: Fix checkpatch.pl warnings about more than 80 lines. Break up the macro usage. Signed-off-by: Konrad Rzeszutek Wilk commit a4c348580e65c95d4b278bb6f154f622df12b893 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:10:55 2011 -0400 xen/blkback: Flesh out the description in the Kconfig. with more details. Signed-off-by: Konrad Rzeszutek Wilk commit 7f267051bd7a280265b1b5ead58e9c6e4e1ac3a4 Author: Yi Zou Date: Mon May 9 11:53:27 2011 +0000 net: group FCoE related feature flags Michał Mirosław's patch (http://patchwork.ozlabs.org/patch/94421/) fixes the issue (http://patchwork.ozlabs.org/patch/94188/) about not populating FCoE related flags correctly on vlan devices. However, only NETIF_F_FCOE_CRC is part of the NETIF_F_ALL_TX_OFFLOADS right now, where weed NETIF_F_FCOE_MTU and NETIF_F_FSO as well. Therefore, add NETIF_F_ALL_FCOE to indicate feature flags used by FCoE TX offloads. These include NETIF_F_FCOE_CRC, NETIF_F_FCOE_MTU, and NETIF_F_FSO and add them to be part of NETIF_F_ALL_TX_OFFLOADS. This would eventually make sure all FCoE needed flags are populated properly to vlan devices. Signed-off-by: Yi Zou Signed-off-by: David S. Miller commit f0a619ccfb8a2ec8ff083a02299cfd076c362b27 Author: Michał Mirosław Date: Fri May 6 07:56:29 2011 +0000 net: Fix vlan_features propagation Fix VLAN features propagation for devices which change vlan_features. For this to work, driver needs to make sure netdev_features_changed() gets called after the change (it is e.g. after ndo_set_features()). Side effect is that a user might request features that will never be enabled on a VLAN device. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 864b5418ebc16893cfd27ff3cda254eff0f56d6f Author: Franco Fichtner Date: Thu May 12 06:42:04 2011 +0000 ethtool: bring back missing comma in netdev features strings The issue was introduced in commit eed2a12f1ed9aabf. Signed-off-by: Franco Fichtner Acked-by: Michał Mirosław Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit f607a158004d75c9005423ce1ba70dc6ec3dd9c2 Author: Eric Dumazet Date: Thu May 12 17:46:56 2011 -0400 garp: remove last synchronize_rcu() call When removing last vlan from a device, garp_uninit_applicant() calls synchronize_rcu() to make sure no user can still manipulate struct garp_applicant before we free it. Use call_rcu() instead, as a step to further net_device dismantle optimizations. Add the temporary garp_cleanup_module() function to make sure no pending call_rcu() are left at module unload time [ this will be removed when kfree_rcu() is available ] Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit e154b639bbe53dc91d1873cd37d162bb2fe87aab Author: Shreyas Bhatewara Date: Tue May 10 06:13:56 2011 +0000 vmxnet3: Use single tx queue when CONFIG_PCI_MSI not defined Resending this patch with few changes. Avoid multiple queues when MSI or MSI-X not available Limit number of Tx queues to 1 if MSI/MSI-X support is not configured in the kernel. This will make number of tx and rx queues equal when MSI/X is not configured thus providing better performance. Signed-off-by: Bhavesh Davda Signed-off-by: Shreyas N Bhatewara Signed-off-by: David S. Miller commit afd7614c00e364f8f1327e73ad291b02f6d4d1a6 Author: Joe Perches Date: Thu May 12 09:19:10 2011 +0000 sctp: sctp_sendmsg: Don't test known non-null sinfo It's already known non-null above. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 517aa0bcda9b092a4c3fab7bf93f0cebe372ece0 Author: Joe Perches Date: Thu May 12 11:27:20 2011 +0000 sctp: sctp_sendmsg: Don't initialize default_sinfo This variable only needs initialization when cmsgs.info is NULL. Use memset to ensure padding is also zeroed so kernel doesn't leak any data. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 1769192a3c50778e03352a3d95faec830d47ba55 Author: Eric Dumazet Date: Wed May 11 18:22:36 2011 +0000 l2tp: fix potential rcu race While trying to remove useless synchronize_rcu() calls, I found l2tp is indeed incorrectly using two of such calls, but also bumps tunnel refcount after list insertion. tunnel refcount must be incremented before being made publically visible by rcu readers. This fix can be applied to 2.6.35+ and might need a backport for older kernels, since things were shuffled in commit fd558d186df2c (l2tp: Split pppol2tp patch into separate l2tp and ppp parts) Signed-off-by: Eric Dumazet CC: Paul E. McKenney CC: James Chapman Reviewed-by: Paul E. McKenney Signed-off-by: David S. Miller commit ae15a3b4d1374b733016ce4b4148b2ba42bbeb0f Author: Daniel Kiper Date: Wed May 4 20:17:21 2011 +0200 arch/x86/xen/setup: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit ad3062a0f438a5f436dae267f795c0a9686f11d2 Author: Daniel Kiper Date: Wed May 4 20:15:18 2011 +0200 arch/x86/xen/enlighten: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 251511a18dcfe1868e3edfdc490777dcfaa1f851 Author: Daniel Kiper Date: Wed May 4 20:16:07 2011 +0200 arch/x86/xen/irq: Cleanup code/data sections definitions Cleanup code/data sections definitions accordingly to include/linux/init.h. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit bdf516748ed73f6219f5e4065a8fe2f333520687 Author: Ian Campbell Date: Mon Apr 4 13:39:53 2011 +0100 xen: tidy up whitespace in drivers/xen/Makefile Various merges over time have led to rather a mish-mash of indentation. Signed-off-by: Ian Campbell Cc: Jeremy Fitzhardinge Cc: xen-devel@lists.xensource.com Signed-off-by: Konrad Rzeszutek Wilk commit fe44870bcdf614e4abb35657c68081cda35ba741 Author: Luciano Coelho Date: Thu May 12 16:50:41 2011 +0300 wl12xx: remove unused flag WL1271_FLAG_IDLE_REQUESTED This flag is not used anymore, remove it from the list. Signed-off-by: Luciano Coelho commit 683c002447c12742f5151691083f68524f33b13a Author: Luciano Coelho Date: Thu May 12 17:07:55 2011 +0300 wl12xx: prevent sched_scan when not idle or not in station mode The current firmware only supports scheduled scan in station mode and when idle. To prevent the firmware from crashing, return -EOPNOTSUPP when sched_scan start is called in an invalid state. Signed-off-by: Luciano Coelho commit d3eff81de6048d8af8f95f52f0f06625980f2efb Author: Luciano Coelho Date: Tue May 10 14:47:45 2011 +0300 wl12xx: export scheduled scan state in debugfs Add the sched_scanning value to the driver_status debugfs entry. Signed-off-by: Luciano Coelho commit 33c2c06cd2d766387cf919d0afd432cc5796c369 Author: Luciano Coelho Date: Tue May 10 14:46:02 2011 +0300 wl12xx: implement scheduled scan driver operations and reporting This patch adds the mac80211 operations for scheduled scan and the scheduled scan results reporting. Signed-off-by: Luciano Coelho commit 95feadca6dca909ae0f6e65665b782c7ca9d5122 Author: Luciano Coelho Date: Tue May 10 14:38:59 2011 +0300 wl12xx: add scheduled scan structures and commands Add firmware command structures, definitions and code to to configure, start and stop scheduled scans. Signed-off-by: Luciano Coelho commit 6394c01b61f8ab66a6af1a24ff05f2429130afcd Author: Luciano Coelho Date: Tue May 10 14:28:27 2011 +0300 wl12xx: listen to scheduled scan events Subscribe and listen to PERIODIC_SCAN_REPORT_EVENT_ID and PERIODIC_SCAN_COMPLETE_EVENT_ID in preparation for the scheduled scan implementation. Signed-off-by: Luciano Coelho commit 3a9d60e5bd72f9533b05d39278fec50b181dbdd2 Author: Luciano Coelho Date: Tue May 10 14:06:31 2011 +0300 wl12xx: add configuration values for scheduled scan Add the structures and values for driver-configured scheduled scan parameters. Signed-off-by: Luciano Coelho commit fcd23b6305e98f5ad3ddd7ff3f5081c75fcd4367 Author: Shahar Levi Date: Wed May 11 12:12:56 2011 +0300 wl12xx: add IEEE80211_HW_SPECTRUM_MGMT bit to the hw flags Set the spectrum management bit in the hw flags so that mac80211 will set the WLAN_CAPABILITY_SPECTRUM_MGMT bit in association requests (which in practice means that we support 802.11h spectrum management). [Reworded the commit log -- Luca.] Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit bc76b94051983b94c8ba04fbfbc59651b9925fa7 Author: Shahar Levi Date: Wed May 11 11:14:22 2011 +0300 wl12xx: Don't filter beacons that include changed HT IEs This patch adds a beacon filter rule to pass up the beacons that contain changed HT information elements. These beacons need to be passed to mac80211 so that it can act on such changes. [Reworded commit log -- Luca.] Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit 889cb360b4f48c1334311093161f06f7b4bd77d2 Author: Eliad Peller Date: Sun May 1 09:56:45 2011 +0300 wl12xx: simplify wl1271_ssid_set() Simplify wl1271_ssid_set by re-using cfg80211_find_ie instead of reimplementing it. Additionally, add a length check to prevent a potential buffer overflow. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 21dccddf45aae2d9f973696ce06115da0d1012b6 Author: Jan Andersson Date: Tue May 10 23:13:33 2011 +0000 sparc: add {read,write}*_be routines This patch adds {read,write}*_be big endian memory access routines to the io.h header used on SPARC32 and SPARC64. Tested on SPARC32 (LEON) Signed-off-by: Jan Andersson Signed-off-by: David S. Miller commit b9fc02968c5dd3c0461b4bb126499a17b13fb86e Author: Konrad Rzeszutek Wilk Date: Wed May 11 16:26:59 2011 -0400 xen/blkback: Fix spelling mistakes. Signed-off-by: Konrad Rzeszutek Wilk commit 68c88dd7d3caf1737112238fbe91cccd8e7a69fc Author: Konrad Rzeszutek Wilk Date: Wed May 11 16:23:39 2011 -0400 xen/blkback: Move blkif_get_x86_[32|64]_req to common.h in block/xen-blkback dir. From the blkif.h header, which was exposed to the frontend. Signed-off-by: Konrad Rzeszutek Wilk commit 72468bfcb815bc9875a870973469f68e20c78717 Author: Konrad Rzeszutek Wilk Date: Wed May 11 16:21:08 2011 -0400 xen/blkback: Removing the debug_lvl option. It is not really used for anything. Signed-off-by: Konrad Rzeszutek Wilk commit 22b20f2dffd09edd66127f2022c26d0039bad88e Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:43:12 2011 -0400 xen/blkback: Use the DRV_PFX in the pr_.. macros. To make it easier to read. Signed-off-by: Konrad Rzeszutek Wilk commit 1afbd730a33c6e4ca780a70351e8929dd4c40636 Author: Konrad Rzeszutek Wilk Date: Wed May 11 16:15:24 2011 -0400 xen/blkback: Make the DPRINTK uniform. Signed-off-by: Konrad Rzeszutek Wilk commit ebe8190659244ec21b5f16950cf7b156f5b7eb01 Author: Konrad Rzeszutek Wilk Date: Thu May 12 16:42:31 2011 -0400 xen/blkback: Change printk/DPRINTK to pr_.. type variant. And also make them uniform and prefix the message with 'xen-blkback'. Signed-off-by: Konrad Rzeszutek Wilk commit a236c71766a5f69edf189e2eaeb0aa587c8c5684 Author: Andrew Morton Date: Thu May 12 12:45:31 2011 -0700 drivers/base/memory.c: fix warning due to "memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION" drivers/base/memory.c: In function 'memory_block_change_state': drivers/base/memory.c:281: warning: unused variable 'i' less beer, more testing Cc: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit a0885924326f79e157847010a9aaf49b058b30dc Author: huajun li Date: Tue May 3 21:11:00 2011 +0800 xhci: move the common code to a function to get max ports and port array There are several functions using same code to get max ports and port array, this patch moves the common code to a function in order to reuse them easily. Signed-off-by: Huajun Li Signed-off-by: Sarah Sharp commit 18aecc2b645bbb07851b196452a2af314222069b Author: Chris Metcalf Date: Wed May 4 14:38:26 2011 -0400 arch/tile: finish enabling support for TILE-Gx 64-bit chip This support was partially present in the existing code (look for "__tilegx__" ifdefs) but with this change you can build a working kernel using the TILE-Gx toolchain and ARCH=tilegx. Most of these files are new, generally adding a foo_64.c file where previously there was just a foo_32.c file. The ARCH=tilegx directive redirects to arch/tile, not arch/tilegx, using the existing SRCARCH mechanism in the top-level Makefile. Changes to existing files: - and changed to factor the include of in the common header. - and arch/tile/kernel/compat.c changed to remove the "const" markers I had put on compat_sys_execve() when trying to match some recent similar changes to the non-compat execve. It turns out the compat version wasn't "upgraded" to use const. - and were previously included accidentally, with the 32-bit contents. Now they have the proper 64-bit contents. Finally, I had to hack the existing hacky drivers/input/input-compat.h to add yet another "#ifdef" for INPUT_COMPAT_TEST (same as x86_64). Signed-off-by: Chris Metcalf Acked-by: Dmitry Torokhov [drivers/input] commit be84cb43833ee40a42e08f5425d20310f16229c7 Author: Chris Metcalf Date: Mon May 9 13:12:30 2011 -0400 compat: fixes to allow working with tile arch The existing mechanism doesn't really provide enough to create the 64-bit "compat" ABI properly in a generic way, since the compat ABI is a mix of things were you can re-use the 64-bit versions of syscalls and things where you need a compat wrapper. To provide this in the most direct way possible, I added two new macros to go along with the existing __SYSCALL and __SC_3264 macros: __SC_COMP and SC_COMP_3264. These macros take an additional argument, typically a "compat_sys_xxx" function, which is passed to __SYSCALL if you define __SYSCALL_COMPAT when including the header, resulting in a pointer to the compat function being placed in the generated syscall table. The change also adds some missing definitions to so that it actually has declarations for all the compat syscalls, since the "[nr] = ##call" approach requires proper C declarations for all the functions included in the syscall table. Finally, compat.c defines compat_sys_sigpending() and compat_sys_sigprocmask() even if the underlying architecture doesn't request it, which tries to pull in undefined compat_old_sigset_t defines. We need to guard those compat syscall definitions with appropriate __ARCH_WANT_SYS_xxx ifdefs. Acked-by: Arnd Bergmann Signed-off-by: Chris Metcalf commit 8c5950881c3b5e6e350e4b0438a8ccc513d90df9 Author: Konrad Rzeszutek Wilk Date: Fri Apr 1 15:18:48 2011 -0400 xen/p2m: Create entries in the P2M_MFN trees's to track 1-1 mappings .. when applicable. We need to track in the p2m_mfn and p2m_mfn_p the MFNs and pointers, respectivly, for the P2M entries that are allocated for the identity mappings. Without this, a PV domain with an E820 that triggers the 1-1 mapping to kick in, won't be able to be restored as the P2M won't have the identity mappings. Signed-off-by: Konrad Rzeszutek Wilk commit 0f16d0dfcdb5aab97d9e368f008b070b5b3ec6d3 Author: Daniel Kiper Date: Wed May 11 22:34:38 2011 +0200 xen/setup: Fix for incorrect xen_extra_mem_start initialization under 32-bit git commit 24bdb0b62cc82120924762ae6bc85afc8c3f2b26 (xen: do not create the extra e820 region at an addr lower than 4G) does not take into account that ifdef CONFIG_X86_32 instead of e820_end_of_low_ram_pfn() find_low_pfn_range() is called (both calls are from arch/x86/kernel/setup.c). find_low_pfn_range() behaves correctly and does not require change in xen_extra_mem_start initialization. Additionally, if xen_extra_mem_start is initialized in the same way as ifdef CONFIG_X86_64 then memory hotplug support for Xen balloon driver (under development) is broken. Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 15bfc094517db2ddf38ca7ed47f3a1c0ad24f7c4 Author: Konrad Rzeszutek Wilk Date: Tue Apr 12 07:57:15 2011 -0400 xen/setup: Ignore E820_UNUSABLE when setting 1-1 mappings. When we parse the raw E820, the Xen hypervisor can set "E820_RAM" to "E820_UNUSABLE" if the mem=X argument is used. As such we should _not_ consider the E820_UNUSABLE as an 1-1 identity mapping, but instead use the same case as for E820_RAM. Signed-off-by: Konrad Rzeszutek Wilk commit 7899891c7d161752f29abcc9bc0a9c6c3a3af26c Author: Tian, Kevin Date: Thu May 12 10:56:08 2011 +0800 xen mmu: fix a race window causing leave_mm BUG() There's a race window in xen_drop_mm_ref, where remote cpu may exit dirty bitmap between the check on this cpu and the point where remote cpu handles drop request. So in drop_other_mm_ref we need check whether TLB state is still lazy before calling into leave_mm. This bug is rarely observed in earlier kernel, but exaggerated by the commit 831d52bc153971b70e64eccfbed2b232394f22f8 ("x86, mm: avoid possible bogus tlb entries by clearing prev mm_cpumask after switching mm") which clears bitmap after changing the TLB state. the call trace is as below: --------------------------------- kernel BUG at arch/x86/mm/tlb.c:61! invalid opcode: 0000 [#1] SMP last sysfs file: /sys/devices/system/xen_memory/xen_memory0/info/current_kb CPU 1 Modules linked in: 8021q garp xen_netback xen_blkback blktap blkback_pagemap nbd bridge stp llc autofs4 ipmi_devintf ipmi_si ipmi_msghandler lockd sunrpc bonding ipv6 xenfs dm_multipath video output sbs sbshc parport_pc lp parport ses enclosure snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device serio_raw bnx2 snd_pcm_oss snd_mixer_oss snd_pcm snd_timer iTCO_wdt snd soundcore snd_page_alloc i2c_i801 iTCO_vendor_support i2c_core pcs pkr pata_acpi ata_generic ata_piix shpchp mptsas mptscsih mptbase [last unloaded: freq_table] Pid: 25581, comm: khelper Not tainted 2.6.32.36fixxen #1 Tecal RH2285 RIP: e030:[] [] leave_mm+0x15/0x46 RSP: e02b:ffff88002805be48 EFLAGS: 00010046 RAX: 0000000000000000 RBX: 0000000000000001 RCX: ffff88015f8e2da0 RDX: ffff88002805be78 RSI: 0000000000000000 RDI: 0000000000000001 RBP: ffff88002805be48 R08: ffff88009d662000 R09: dead000000200200 R10: dead000000100100 R11: ffffffff814472b2 R12: ffff88009bfc1880 R13: ffff880028063020 R14: 00000000000004f6 R15: 0000000000000000 FS: 00007f62362d66e0(0000) GS:ffff880028058000(0000) knlGS:0000000000000000 CS: e033 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000003aabc11909 CR3: 000000009b8ca000 CR4: 0000000000002660 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 00000000000000 00 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process khelper (pid: 25581, threadinfo ffff88007691e000, task ffff88009b92db40) Stack: ffff88002805be68 ffffffff8100e4ae 0000000000000001 ffff88009d733b88 <0> ffff88002805be98 ffffffff81087224 ffff88002805be78 ffff88002805be78 <0> ffff88015f808360 00000000000004f6 ffff88002805bea8 ffffffff81010108 Call Trace: [] drop_other_mm_ref+0x2a/0x53 [] generic_smp_call_function_single_interrupt+0xd8/0xfc [] xen_call_function_single_interrupt+0x13/0x28 [] handle_IRQ_event+0x66/0x120 [] handle_percpu_irq+0x41/0x6e [] __xen_evtchn_do_upcall+0x1ab/0x27d [] xen_evtchn_do_upcall+0x33/0x46 [] xen_do_hyper visor_callback+0x1e/0x30 [] ? _spin_unlock_irqrestore+0x15/0x17 [] ? xen_restore_fl_direct_end+0x0/0x1 [] ? flush_old_exec+0x3ac/0x500 [] ? load_elf_binary+0x0/0x17ef [] ? load_elf_binary+0x0/0x17ef [] ? load_elf_binary+0x398/0x17ef [] ? need_resched+0x23/0x2d [] ? process_measurement+0xc0/0xd7 [] ? load_elf_binary+0x0/0x17ef [] ? search_binary_handler+0xc8/0x255 [] ? do_execve+0x1c3/0x29e [] ? sys_execve+0x43/0x5d [] ? __call_usermodehelper+0x0/0x6f [] ? kernel_execve+0x68/0xd0 [] ? __call_usermodehelper+0x0/0x6f [] ? xen_restore_fl_direct_end+0x0/0x1 [] ? ____call_usermodehelper+0x113/0x11e [] ? child_rip+0xa/0x20 [] ? __call_usermodehelper+0x0/0x6f [] ? int_ret_from_sys_call+0x7/0x1b [] ? retint_restore_args+0x5/0x6 [] ? child_rip+0x0/0x20 Code: 41 5e 41 5f c9 c3 55 48 89 e5 0f 1f 44 00 00 e8 17 ff ff ff c9 c3 55 48 89 e5 0f 1f 44 00 00 65 8b 04 25 c8 55 01 00 ff c8 75 04 <0f> 0b eb fe 65 48 8b 34 25 c0 55 01 00 48 81 c6 b8 02 00 00 e8 RIP [] leave_mm+0x15/0x46 RSP ---[ end trace ce9cee6832a9c503 ]--- Tested-by: Maoxiaoyun Signed-off-by: Kevin Tian [v1: Fleshed out the git description a bit] Signed-off-by: Konrad Rzeszutek Wilk commit 6b86bd62a505a4a9739474f00f8088395b7a80ba Author: Johannes Berg Date: Thu May 12 13:38:50 2011 +0200 mac80211: mesh: move some code to make it static There's no need to have table functions in one file and all users in another, move the functions to the right file and make them static. Also move a static variable to the beginning of the file to make it easier to find. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 85a9994a0a6cba1a6cc6af4bd3ebd85f778be0fe Author: Luciano Coelho Date: Thu May 12 16:28:29 2011 +0300 cfg80211/mac80211: avoid bounce back mac->cfg->mac on sched_scan_stopped When sched_scan_stopped was called by the driver, mac80211 calls cfg80211, which in turn was calling mac80211 back with a flag "driver_initiated". This flag was used so that mac80211 would do the necessary cleanup but would not call the driver. This was enough to prevent the bounce back between the driver and mac80211, but not between mac80211 and cfg80211. To fix this, we now do the cleanup in mac80211 before calling cfg80211. To help with locking issues, the workqueue was moved from cfg80211 to mac80211. Reported-by: Johannes Berg Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit a3836e02ba4c50db958d32d710b226f2408623dc Author: Johannes Berg Date: Thu May 12 15:11:37 2011 +0200 mac80211: fix a few RCU issues A few configuration functions correctly do rcu_read_lock() but don't correctly reference some pointers protected by RCU. Fix that. Cc: stable@kernel.org Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8cb231530f03961b55aa4e84e6ead5590bcde04d Author: Johannes Berg Date: Thu May 12 15:07:15 2011 +0200 mac80211: fix another key non-race The code here is only not racy because all the places that assign the pointers it uses are holding the sta_mtx as well as the key_mtx and so can't race against this because this code holds the sta_mtx. But that's not intuitive, so fix it to hold the key_mtx. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 5c0c36412b2dc6b1e243c7e9115306fe286583b7 Author: Johannes Berg Date: Thu May 12 14:31:49 2011 +0200 mac80211: make key locking clearer The code in ieee80211_del_key() doesn't acquire the key_mtx properly when it dereferences the keys. It turns out that isn't actually necessary since the key_mtx itself seems to be redundant since all key manipulations are done under the RTNL, but as long as we have the key_mtx we should use it the right way too. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit dea4096bc41a9642039840ced91e585d04883a16 Author: Johannes Berg Date: Thu May 12 15:03:32 2011 +0200 mac80211: remove pointless mesh path timer RCU code The code here to RCU-dereference a pointer that's on the stack is totally pointless, RCU isn't magic (like say Java's weak references are), so the code can't work like whoever wrote it thought it might. Remove it so readers don't get confused. Note that it seems that a bug is there anyway: I don't see any code that cancels the timer when a mesh path struct is destroyed. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit be0e6aa5a0c487a2a0880dda8bc70f7f1860fc39 Author: Senthil Balasubramanian Date: Thu May 12 16:24:28 2011 +0530 ath9k_hw: Fix STA connection issues with AR9380 (XB113). XB113 (AR9380) 3x3 SB 5G only cards were failing to connect to APs due to incorrect xpabiaslevel configuration. fix it. Cc: stable@kernel.org Cc: Ray Li Cc: Kathy Giori Cc: Aeolus Yang Cc: compat@orbit-lab.org Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 406a39ec00992090cda034625e176504eb7a71f9 Author: Amitkumar Karwar Date: Wed May 11 19:47:11 2011 -0700 mwifiex: remove mwifiex_recv_complete function The function - increments dropped rx_packet count if status code passed to it is "-1". - frees SKB buffer. But currently the function is being called with "0" status code. This patch replaces above function by dev_kfree_skb_any() call. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit f1a9c1e694f84938e6526590d23e88a791a8069f Author: Rafał Miłecki Date: Thu May 12 00:01:47 2011 +0200 bcma: pci: trivial: correct amount of maximum retries Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 9ba7f4f5eba5f4b44c7796bbad29f8ec3a7d5864 Author: Luis R. Rodriguez Date: Wed May 11 14:57:26 2011 -0700 ath9k_hw: fix dual band assumption for XB113 The XB113 cards are single band, 5 GHz-only, but the default settings were configured to assume it was dual band. Users of these cards then would see 2.4 GHz channels but you would never get any scan results from these channels given that the radio is not present. Cc: stable@kernel.org Cc: Fiona Cain Cc: Ray Li Cc: Kathy Giori Cc: Aeolus Yang Cc: Dan Friedman Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 8fddddff0ad4ccc2787464207eba9ed3063e69cd Author: Daniel Halperin Date: Tue May 10 19:00:45 2011 -0700 mac80211: fix contention time computation in minstrel, minstrel_ht When transmitting a frame, the transmitter waits a random number of slots between 0 and cw. Thus, the contention time is (cw / 2) * t_slot which we can represent instead as (cw * t_slot) >> 1. Also fix a few other accounting bugs around contention time, and add comments. Signed-off-by: Daniel Halperin Signed-off-by: John W. Linville commit 56d1893d94bc06d0b1aa3a53f924ed02f9e207bf Author: Johannes Berg Date: Mon May 9 18:41:15 2011 +0200 cfg80211: restrict AP beacon intervals Multiple virtual AP interfaces can currently try to use different beacon intervals, but that just leads to problems since it won't actually be done that way by drivers. Return an error in this case to make sure it won't be done wrong. Also, ignore attempts to change the DTIM period or beacon interval during the lifetime of the BSS. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 15cb309614f35df344b9f06a9ea9f077d1e449db Merge: 4daf50f 55183d0 Author: John W. Linville Date: Thu May 12 14:06:10 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 commit e0f263d719cc70245406cc26d86a480925e6a3c9 Author: Kukjin Kim Date: Thu May 12 10:08:09 2011 +0900 tty: Remove to support serial for S5P6442 According to removing ARCH_S5P6442, we don't need to support serial for S5P6442. Cc: Alan Cox Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit 275640b0d8f0ef8c493d7b6613a23d427929b5db Author: Tomoya MORINAGA Date: Thu May 12 13:12:36 2011 +0900 pch_phub: Support new device ML7223 Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Signed-off-by: Greg Kroah-Hartman commit 3610ea5397b80822e417aaa0e706fd803fb05680 Author: Andy Ross Date: Wed May 11 15:52:38 2011 -0700 ehci: workaround for pci quirk timeout on ExoPC The BIOS handoff for the unused EHCI controller on the ExoPC tablet hangs for 90 seconds on boot. Detect that device, skip negotiation and force the handoff. Signed-off-by: Andy Ross Signed-off-by: Greg Kroah-Hartman commit 5c853013dcdadb60724268bf860d372fba71694c Author: Andy Ross Date: Wed May 11 15:15:51 2011 -0700 ehci: pci quirk cleanup Factor the handoff code out from quirk_usb_disable_ehci Signed-off-by: Andy Ross Signed-off-by: Greg Kroah-Hartman commit 897044e99e437e908eef566d910692830546c2d9 Author: Tomi Valkeinen Date: Sat Apr 30 15:26:40 2011 +0300 OMAP: DSS2: OMAPFB: Reduce stack usage omapfb_mode_to_timings() had struct fb_info, struct fb_var and struct fb_ops allocated from stack. This caused the stack usage grow quite high. Use kzalloc to allocate the structs instead. Signed-off-by: Tomi Valkeinen commit e1d01789017cf327d63f7748025317763253960b Author: Tomi Valkeinen Date: Sat Apr 30 12:33:27 2011 +0300 OMAP: DSS2: OMAPFB: remove dead code Remove old unused code lying inside #if 0. Signed-off-by: Tomi Valkeinen commit c42ced6391ca19e6796b1984bd200f6ff8e5644a Author: Tomi Valkeinen Date: Fri Apr 29 16:51:10 2011 +0300 OMAP: DSS2: RFBI: cleanup The RFBI driver is quite messy. Remove dead and unneeded code and add statics to functions. Signed-off-by: Tomi Valkeinen commit 1d5952a868c3059dd0d431ffde357f1506823f5e Author: Tomi Valkeinen Date: Fri Apr 29 15:57:01 2011 +0300 OMAP: DSS2: RFBI: add omap_rfbi_configure Add omap_rfbi_configure() which the panel driver can use to reconfigure the data element size and the number of data lines in the RFBI bus. Signed-off-by: Tomi Valkeinen commit 5be685faff2b75fa015832c5137bbb5513965104 Author: Tomi Valkeinen Date: Thu Apr 21 19:53:25 2011 +0300 OMAP: DSS2: RFBI: clock enable/disable changes RFBI enables and disables clocks inside almost every function to get a finegrained control to the clocks. However, the current understanding is that this is not necessary power-management-wise. Change the clocking scheme so that RFBI clocks are enabled when the omapdss_rfbi_display_enable is called, and disabled when omapdss_rfbi_display_disable is called. Signed-off-by: Tomi Valkeinen commit 773139f1759f9dc5efe2c314df9aad88b7364015 Author: Tomi Valkeinen Date: Thu Apr 21 19:50:31 2011 +0300 OMAP: DSS2: RFBI: add rfbi_bus_lock Add similar bus lock to RFBI as is in DSI. The panel driver can use the bus lock to mark that the RFBI bus is currently in use. Signed-off-by: Tomi Valkeinen commit c96c92d893e28d8b8b3161ffb6c3cf0847aaf478 Author: Tomi Valkeinen Date: Thu Apr 21 19:11:16 2011 +0300 OMAPFB: fix wrong clock aliases and device name The clock aliases and the dss platform device name have changed, and omapfb fails to initialize. Update the names to correct ones. Signed-off-by: Tomi Valkeinen commit 943e4457ca732553b7cca2df8881124ae96071de Author: Tomi Valkeinen Date: Sat Apr 30 15:38:15 2011 +0300 OMAP: DSS2: Add missing dummy functions dpi.c does not compile if DSI is not compiled in. Add the missing dummy functions so that dpi.c compiles. Signed-off-by: Tomi Valkeinen commit af5c5805013d3c97d7f0bc27a56c49baa34b1f8a Merge: 97f9322 3abeca9 Author: Greg Kroah-Hartman Date: Thu May 12 09:39:22 2011 -0700 Merge branch 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-next * 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: xhci: Fix bug in control transfer cancellation. commit 634610ac6cdea8bce09a262cefe46c8705dfd209 Author: Archit Taneja Date: Thu May 12 17:26:30 2011 +0530 OMAP: DSS2: Taal: Use device name in backlight_device_register Panel Taal driver uses the string "taal" to register for a backlight device. This causes backlight_device_register() to fail when a second taal panel is added. Use dev_name(&dssdev->dev) as a parameter instead of the string. Note: This will break backlight related sysfs commands. Use the name as generated by the DSS2 driver, in the form "displayi", which represents the ith registered display device. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 5a8b572d832772722c3b3b7578e7fb968560fcf3 Author: Archit Taneja Date: Thu May 12 17:26:29 2011 +0530 OMAP4: DSS2: DSI: Changes for DSI2 on OMAP4 Introduce DSI2 PLL clock sources needed by LCD2 channel and DSI2 Protocol engine and DISPC Functional clock. Do the following: - Modify dss_get_dsi_clk_source() and dss_select_dsi_clk_source() to take the dsi module number as an argument. - Create debugfs files for dsi2, split the corresponding debugfs functions. - Allow DPI to use these new clock sources. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 2e868dbe1d24a908fcb4dee0733500fd0aab0bce Author: Archit Taneja Date: Thu May 12 17:26:28 2011 +0530 OMAP: DSS2: DSI: Pass pointer to struct to packet_sent_handler isrs dsi_packet_sent_handler_vp() and dsi_packet_sent_handler_l4() currently receive the completion parameter as their argument. This is not sufficient information to differentiate between DSI1 and DSI2 platform devices. Pass the struct "dsi_packet_sent_handler_data" to the packet_sent_handler isrs, these contain the platform_device pointer of the DSI device and the pointer to the completion struct. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit f1da39d9ce8490c5652768180454a816eb043b48 Author: Archit Taneja Date: Thu May 12 17:26:27 2011 +0530 OMAP: DSS2: DSI: Use platform_device pointer to get dsi data The dsi related data structure currently creates one global instance of itself which is accessed by dsi functions. Remove this global structure instance and declare the struct as dsi_data. Modify dsi_init() to allocate a "dsi_data" structure for each platform device instance. Link this data with the device's platform_device pointer. Create the function dsi_get_dsidrv_data() which takes the pdev and return a pointer to the device's dsi_data. Make dsi_get_dsidev_id() return only 0 for now, this will be removed once the name of the DSI platform device is changed to the device instance form, like "omapdss_dsi.0" and "omapdss_dsi.1" etc. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit a72b64b99918ee801a3a6abf5391e356752bcad0 Author: Archit Taneja Date: Thu May 12 17:26:26 2011 +0530 OMAP: DSS2: Pass platform_device as an argument in dsi functions The DSI interface is represented as a platform device, using the DSI platform driver(dsi.c). The current DSI driver design is capable of running only one instance of a DSI device. On OMAP4, there are 2 very similar DSI modules which can be represented as instances of "omapdss_dsi" platform device. Add member "module" in "dssdev.phy.dsi" that tells us which DSI module's lanes the panel is connected to. Modify dsi.c functions to take the device's platform_device struct pointer, provide functions dsi_get_dsidev_from_dssdev() and dsi_get_dsidev_from_id() take the panel's omap_dss_device and module number respectively, and return the platform_device pointer. Currently, the dsi struct is declared globally and is accessed when dsi data is needed. The new pdev argument will be used later to provide the platform device's dsi related data. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 41e03d15977978cdf8a5936f30ceb6088dda157a Author: Archit Taneja Date: Thu May 12 17:26:25 2011 +0530 OMAP: DSS2: Remove omap_dss_device argument from dsi_pll_init() The function dsi_pll_init() has omap_dss_device argument which is not used. Remove this argument. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 1ffefe755c2681752a10ae50b2b17e70147bb194 Author: Archit Taneja Date: Thu May 12 17:26:24 2011 +0530 OMAP: DSS2: DSI: Add extra omap_dss_device argument in functions exported by dsi Add pointer to omap_dss_device struct as an argument in the functions which are exported to dsi panel drivers. This argument will tell the DSI driver which DSI interface's data it has to choose. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 64a47c5072a6d702349dba30ea8b0e69be4d9778 Author: Michael Hennerich Date: Thu May 12 15:38:24 2011 +0200 iio: adc: ad7780: Add missing GPIOLIB dependency Signed-off-by: Michael Hennerich Reported-by: Randy Dunlap Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c5ad56530a6f38dc54e1757e14968331eaa692ae Author: Michael Hennerich Date: Thu May 12 15:39:29 2011 +0200 iio: trigger: iio-trig-bfin-timer: select missing dependency This driver requires CONFIG_BFIN_GPTIMERS. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 64e62426f40d1017a7ced93ee71d333529196365 Author: matt mooney Date: Wed May 11 22:33:44 2011 -0700 staging: usbip: edit Kconfig and rename CONFIG options Change modules usbip_common_mod to usbip-core and usbip to usbip-host; edit configuration option help text; rename CONFIG options to use a USBIP prefix and change COMMON to CORE in both the Kconfig and Makefiles; edit the menu entries; and edit the driver descriptions. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 7aaacb43ed97714ff0f7f77f306f24b6e564ad03 Author: matt mooney Date: Wed May 11 22:33:43 2011 -0700 staging: usbip: fix header includes Modify header directives to include what is needed by each file and not already included in its own header. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4ea028859bbdad34b84c9951fbb832ae10c6a96c Author: David Sterba Date: Thu May 12 18:13:12 2011 +0200 btrfs: use unsigned type for single bit bitfield Signed-off-by: David Sterba commit 7a36ddec1003a4e84e79f28ee714a142ed6bc529 Author: David Sterba Date: Fri May 6 15:33:15 2011 +0200 btrfs: use printk_ratelimited instead of printk_ratelimit As per printk_ratelimit comment, it should not be used. Signed-off-by: David Sterba commit 1df9fad1220beb21b4b4230373cbf4924436dd88 Merge: d0c49bf 2f25e9a 1c65335 Author: Roland Dreier Date: Thu May 12 08:57:20 2011 -0700 Merge branches 'cma', 'cxgb4' and 'qib' into for-next commit 1c65335714e99864a438b0d757c8736d3c6e7d79 Author: Sergei Shtylyov Date: Mon May 9 22:07:31 2011 -0700 IB/qib: Use pci_dev->revision The driver reads PCI revision ID from the PCI configuration register while it's already stored by PCI subsystem in the revision field of struct pci_dev. Signed-off-by: Sergei Shtylyov Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit d5e4b0adf6e694f9a8fb31f51fc381bd8be17eae Author: Misael Lopez Cruz Date: Thu May 12 16:26:20 2011 +0100 ASoC: DMIC codec - Add input widget Digital microphones can have some additional elements in their audio path (like microphone bias). An input widget is required for digital microphone CODEC driver to allow external connections in machine drivers. Signed-off-by: Misael Lopez Cruz Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 22de71ba03311cdc1063757c50a1488cb90a1fca Author: Liam Girdwood Date: Thu May 12 16:14:04 2011 +0100 ASoC: core - allow ASoC more flexible machine name Allow ASoC machine drivers to register a driver name and a longname. This allows user space to determine the flavour of machine driver. Signed-off-by: Liam Girdwood Signed-off-by: Mark Brown commit 36682b81de32090f5c9fac165e71ab8939aab8c0 Author: Zhang Jiejing Date: Wed May 11 14:32:01 2011 -0700 Input: add driver FSL MPR121 capacitive touch sensor This patch adds basic support for Freescale MPR121 capacitive touch sensor. It's an i2c controller with up to 12 capacitance sensing inputs. Product information (data sheet, application notes) can be found here: http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPR121 Signed-off-by: Zhang Jiejing Signed-off-by: Dmitry Torokhov commit 7cbbb758d3c93b24b45b169af55440d2e7d5b7f6 Author: Eric Dumazet Date: Wed May 11 15:38:10 2011 -0700 Input: remove useless synchronize_rcu() calls There is no need to call synchronize_rcu() after a list insertion, or a NULL->ptr assignment. However, the reverse operations do need this call. Signed-off-by: Eric Dumazet Signed-off-by: Dmitry Torokhov commit 1201e7e67634624aec89317cf308cd0d3d8d4770 Author: Igor Grinberg Date: Wed May 11 15:45:05 2011 -0700 Input: ads7846 - fix gpio_pendown configuration The pendown gpio was requested but not configured for input. Configure it for input. Signed-off-by: Igor Grinberg Signed-off-by: Dmitry Torokhov commit ebcaaad9d5e8fd284b8dcf25a24999420f0f56d8 Author: Alexander Stein Date: Wed May 11 16:24:08 2011 -0700 Input: ads7846 - add possibility to use external vref on ads7846 Just set vref_mv in your platform config to use external vref. Otherwise the internal one is used. Signed-off-by: Alexander Stein Signed-off-by: Dmitry Torokhov commit e70bdd41bd0ead91b4a43e9d656ac1569d7c8779 Author: Johan Hovold Date: Wed May 11 16:35:30 2011 -0700 Input: rotary-encoder - add support for half-period encoders Add support for encoders that have two detents per input signal period. Signed-off-by: Johan Hovold Acked-by: Daniel Mack Signed-off-by: Dmitry Torokhov commit e0a04b11e4059cab033469617c2a3ce2d8cab416 Author: Xiaochen Wang Date: Sun May 1 11:41:41 2011 +0800 scripts/kallsyms.c: fix potential segfault Description: This bug hardly appears during real kernel compiling, because the vmlinux symbols table is huge. But we can still catch it under strict condition , as follows. $ echo "c101b97b T do_fork" | ./scripts/kallsyms --all-symbols #include ...... ...... .globl kallsyms_token_table ALGN kallsyms_token_table: Segmentation fault (core dumped) $ If symbols table is small, all entries in token_profit[0x10000] may decrease to 0 after several calls of compress_symbols() in optimize_result(). In that case, find_best_token() always return 0 and best_table[i] is set to "\0\0" and best_table_len[i] is set to 2. As a result, expand_symbol(best_table[0]="\0\0", best_table_len[0]=2, buf) in write_src() will run in infinite recursion until stack overflows, causing segfault. This patch checks the find_best_token() return value. If all entries in token_profit[0x10000] become 0 according to return value, it breaks the loop in optimize_result(). And expand_symbol() works well when best_table_len[i] is 0. Signed-off-by: Xiaochen Wang Acked-by: Paulo Marques Signed-off-by: Michal Marek commit 153f01147065cb3628493dcb79417bc4474320c7 Author: Jamey Sharp Date: Thu May 5 12:03:47 2011 -0700 scripts/gen_initramfs_list.sh: Convert to a /bin/sh script Replace bashisms with POSIX-compatible shell scripting. Notably, de-duplicate '/' using a sed command from elsewhere in the same script rather than "${name//\/\///}". Commit by Jamey Sharp and Josh Triplett. Signed-off-by: Jamey Sharp Signed-off-by: Josh Triplett Cc: Andrew Morton Signed-off-by: Michal Marek commit 2ee2d29289951b4cb7578d75f199e4aa4084fe6f Author: Peter Foley Date: Tue Apr 26 17:19:28 2011 -0400 kbuild: make versioncheck work in KBUILD_OUTDIR This patch fixes the versioncheck target so it works when make is invoked in KBUILD_OUTDIR. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 436f876ccb4eac8ae53a101852824977a0f344eb Author: Peter Foley Date: Tue Apr 26 17:18:29 2011 -0400 kbuild: make includecheck work in KBUILD_OUTDIR This patch fixes the includecheck target so it works when make is invoked in KBUILD_OUTDIR. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 9663d9890d80408c4a5c8280c5db775fbe082203 Author: Peter Foley Date: Tue Apr 26 17:17:11 2011 -0400 kbuild: make headerdep work in KBUILD_OUTDIR This patch fixes the headerdep target so it works when make is invoked in KBUILD_OUTDIR. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 279f3dd3569d08226f8b8e41704d65e8b679d3d7 Author: Peter Foley Date: Tue Apr 26 17:15:01 2011 -0400 kbuild: add targets to PHONY This patch adds some targets to PHONY so they are built even if a file with the same name exists. Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 4daf50f20256e0022c87c1609226e971a70c82fd Author: Yogesh Ashok Powar Date: Thu May 12 09:32:17 2011 -0400 mac80211: Fix mesh-related build breakage... net/mac80211/cfg.c: In function ‘sta_apply_parameters’: net/mac80211/cfg.c:746: error: ‘struct sta_info’ has no member named ‘plink_state’ make[1]: *** [net/mac80211/cfg.o] Error 1 make: *** [net/mac80211/mac80211.ko] Error 2 Signed-off-by: John W. Linville commit 449a66fd1fa75d36dca917704827c40c8f416bca Author: Richard Weinberger Date: Thu May 12 15:11:12 2011 +0200 x86: Remove warning and warning_symbol from struct stacktrace_ops Both warning and warning_symbol are nowhere used. Let's get rid of them. Signed-off-by: Richard Weinberger Cc: Oleg Nesterov Cc: Andrew Morton Cc: Huang Ying Cc: Soeren Sandmann Pedersen Cc: Namhyung Kim Cc: x86 Cc: H. Peter Anvin Cc: Thomas Gleixner Cc: Robert Richter Cc: Paul Mundt Link: http://lkml.kernel.org/r/1305205872-10321-2-git-send-email-richard@nod.at Signed-off-by: Frederic Weisbecker commit edf6ef59ec7ee82cadc93528229c4097b6c92a7e Author: Konrad Rzeszutek Wilk Date: Tue May 3 12:01:11 2011 -0400 xen-blkfront: Introduce BLKIF_OP_FLUSH_DISKCACHE support. If the backend supports the 'feature-flush-cache' mode, use that instead of the 'feature-barrier' support. Currently there are three backends that support the 'feature-flush-cache' mode: NetBSD, Solaris and Linux kernel. The 'flush' option is much light-weight version than the 'barrier' support so lets try to use as there are no filesystems in the kernel that use full barriers anymore. Signed-off-by: Konrad Rzeszutek Wilk commit 6dcfb751c927879399e404b3885cbdef7d8d368b Author: Konrad Rzeszutek Wilk Date: Thu May 5 12:41:03 2011 -0400 xen-blkfront: Provide for 'feature-flush-cache' the BLKIF_OP_WRITE_FLUSH_CACHE operation. The operation BLKIF_OP_WRITE_FLUSH_CACHE has existed in the Xen tree header file for years but it was never present in the Linux tree because the frontend (nor the backend) supported this interface. Signed-off-by: Konrad Rzeszutek Wilk commit 4352b47ab7918108b389a48d2163c9a4c2aaf139 Author: Marek Marczykowski Date: Tue May 3 12:04:52 2011 -0400 xen-blkfront: fix data size for xenbus_gather in blkfront_connect barrier variable is int, not long. This overflow caused another variable override: "err" (in PV code) and "binfo" (in xenlinux code - drivers/xen/blkfront/blkfront.c). The later caused incorrect device flags (RO/removable etc). Signed-off-by: Marek Marczykowski Acked-by: Ian Campbell [v1: Changed title] Signed-off-by: Konrad Rzeszutek Wilk commit 8628764e1a5e1998a42b9713e9edea7753653d01 Author: Arne Jansen Date: Wed Mar 23 16:34:19 2011 +0100 btrfs: add readonly flag setting the readonly flag prevents writes in case an error is detected Signed-off-by: Arne Jansen commit 96e369208e65a7d017a52361fd572df41fde8472 Author: Ilya Dryomov Date: Sat Apr 9 14:27:01 2011 +0300 btrfs scrub: make fixups sync btrfs scrub - make fixups sync, don't reuse fixup bios Fixups are already sync for csum failures, this patch makes them sync for EIO case as well. Fixups are now sharing pages with the parent sbio - instead of allocating a separate page to do a fixup we grab the page from the sbio buffer. Fixup bios are no longer reused. struct fixup is no longer needed, instead pass [sbio pointer, index]. Originally this was added to look at the possibility of sharing the code between drive swap and scrub, but it actually fixes a serious bug in scrub code where errors that could be corrected were ignored and reported as uncorrectable. btrfs scrub - restore bios properly after media errors The current code reallocates a bio after a media error. This is a temporary measure introduced in v3 after a serious problem related to bio reuse was found in v2 of scrub patchset. Basically we did not reset bv_offset and bv_len fields of the bio_vec structure. They are changed in case I/O error happens, for example, at offset 512 or 1024 into the page. Also bi_flags field wasn't properly setup before reusing the bio. Signed-off-by: Arne Jansen commit 475f63874d739d7842a56da94687f18d583ae654 Author: Jan Schmidt Date: Fri Mar 11 15:41:01 2011 +0100 btrfs: new ioctls for scrub adds ioctls necessary to start and cancel scrubs, to get current progress and to get info about devices to be scrubbed. Note that the scrub is done per-device and that the ioctl only returns after the scrub for this devices is finished or has been canceled. Signed-off-by: Arne Jansen commit a2de733c78fa7af51ba9670482fa7d392aa67c57 Author: Arne Jansen Date: Tue Mar 8 14:14:00 2011 +0100 btrfs: scrub This adds an initial implementation for scrub. It works quite straightforward. The usermode issues an ioctl for each device in the fs. For each device, it enumerates the allocated device chunks. For each chunk, the contained extents are enumerated and the data checksums fetched. The extents are read sequentially and the checksums verified. If an error occurs (checksum or EIO), a good copy is searched for. If one is found, the bad copy will be rewritten. All enumerations happen from the commit roots. During a transaction commit, the scrubs get paused and afterwards continue from the new roots. This commit is based on the series originally posted to linux-btrfs with some improvements that resulted from comments from David Sterba, Ilya Dryomov and Jan Schmidt. Signed-off-by: Arne Jansen commit 5db1256a5131d3b133946fa02ac9770a784e6eb2 Author: Milton Miller Date: Thu May 12 04:13:54 2011 -0500 seqlock: Don't smp_rmb in seqlock reader spin loop Move the smp_rmb after cpu_relax loop in read_seqlock and add ACCESS_ONCE to make sure the test and return are consistent. A multi-threaded core in the lab didn't like the update from 2.6.35 to 2.6.36, to the point it would hang during boot when multiple threads were active. Bisection showed af5ab277ded04bd9bc6b048c5a2f0e7d70ef0867 (clockevents: Remove the per cpu tick skew) as the culprit and it is supported with stack traces showing xtime_lock waits including tick_do_update_jiffies64 and/or update_vsyscall. Experimentation showed the combination of cpu_relax and smp_rmb was significantly slowing the progress of other threads sharing the core, and this patch is effective in avoiding the hang. A theory is the rmb is affecting the whole core while the cpu_relax is causing a resource rebalance flush, together they cause an interfernce cadance that is unbroken when the seqlock reader has interrupts disabled. At first I was confused why the refactor in 3c22cd5709e8143444a6d08682a87f4c57902df3 (kernel: optimise seqlock) didn't affect this patch application, but after some study that affected seqcount not seqlock. The new seqcount was not factored back into the seqlock. I defer that the future. While the removal of the timer interrupt offset created contention for the xtime lock while a cpu does the additonal work to update the system clock, the seqlock implementation with the tight rmb spin loop goes back much further, and is just waiting for the right trigger. Cc: Signed-off-by: Milton Miller Cc: Cc: Linus Torvalds Cc: Andi Kleen Cc: Nick Piggin Cc: Benjamin Herrenschmidt Cc: Anton Blanchard Cc: Paul McKenney Acked-by: Eric Dumazet Link: http://lkml.kernel.org/r/%3Cseqlock-rmb%40mdm.bga.com%3E Signed-off-by: Thomas Gleixner commit bc593f5d787d0a015539e21868302fb44a47c3e3 Author: Igor Grinberg Date: Tue May 3 18:22:09 2011 +0300 arm: omap2plus: GPIO cleanup use gpio_request_() instead of multiple gpiolib calls, remove unneeded variables, etc. Signed-off-by: Igor Grinberg Signed-off-by: Tony Lindgren commit 399bc4863e2a3b4b255ca22189820c81ca34f4e0 Author: Linus Walleij Date: Fri Apr 1 07:59:17 2011 +0100 ARM: 6858/1: mmci: force negative edge on clock bypass for ux500 This fixes a regression on high clock speeds with the MMCI on ux500. We need to make sure we derive the passthru clock on the falling edge of the incoming clock if it shall work at high frequencies, and on the ux500's there is a special bit for this. Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 4394c1244249198c6b85093d46935b761b36ae05 Author: Victor Boivie Date: Wed May 4 17:07:55 2011 +0100 ARM: 6893/1: Allow for kernel command line concatenation This patch allows the provided CONFIG_CMDLINE to be concatenated with the one provided by the boot loader. This is useful to merge the static values defined in CONFIG_CMDLINE with the boot loader's (possibly) more dynamic values, such as startup reasons and more. Signed-off-by: Victor Boivie Reviewed-by: Bjorn Andersson Signed-off-by: Oskar Andero Acked-by: Nicolas Pitre Acked-by: Uwe Kleine-König Signed-off-by: Russell King commit c1b0db56604b4ccc55a325104b14093aeedeb829 Author: Will Deacon Date: Thu Apr 28 18:43:01 2011 +0100 ARM: 6889/1: futex: add SMP futex support when !CPU_USE_DOMAINS This patch uses the load/store exclusive instructions to add SMP futex support for ARM. Since the ARM architecture does not provide instructions for unprivileged exclusive memory accesses, we can only provide SMP futexes when CPU domain support is disabled. Cc: Nicolas Pitre Signed-off-by: Will Deacon Signed-off-by: Russell King commit af3e4fd37a18f2e5a00175bc96061541d1364a3b Author: Mark A. Greer Date: Fri Apr 1 15:41:26 2011 +0100 ARM: 6859/1: Add writethrough dcache support for ARM926EJS processor The ARM kernel supports writethrough data cache via the CONFIG_CPU_DCACHE_WRITETHROUGH option. However, that functionality wasn't implemented in the arch/arm/boot/compressed code. It is now necessary due to a new ARM926EJS processor that has an issue with writeback data cache. Signed-off-by: Mark A. Greer Signed-off-by: Russell King commit 111e9a5ce66e64cbf9cf33a60982f29fd7e224da Author: Russell King Date: Thu May 12 10:02:42 2011 +0100 ARM: phys-to-virt: improve Kconfig help texts Improve the Kconfig help texts for the phys-to-virt patching feature. Signed-off-by: Russell King commit e8db89a242f46820b622be48d65951879575efd1 Author: Russell King Date: Thu May 12 09:53:05 2011 +0100 ARM: Highmem: drop experimental status Highmem on ARM has been around for a while now, without any major issues being raised. So, drop the experimental status of this feature. Signed-off-by: Russell King commit bb2d8130dcc6d285b215b75d4ec2a9b2063efa4f Author: Russell King Date: Thu May 12 09:52:02 2011 +0100 ARM: SMP: drop experimental status SMP on ARM has been around for a while now, without any major issues being raised. So, drop the experimental status of this feature. Signed-off-by: Russell King commit de7a2f9f7b6f5b48d8531ff4c9c9b95cab8a8ce8 Author: Nicolas Ferre Date: Mon May 9 18:11:37 2011 +0200 dmaengine: at_hdmac: pause: no need to wait for FIFO empty With the addition of the "pause" feature, an active wait was introduced to check the "FIFO empty" event. This event was not always happening and a timout contition was needed. But, in some cases, this event depend on the peripheral connected to the channel that is paused: FIFO becomes empty if the peripheral consumes data. The timeout is pretty difficult to evaluate. Moreover, this check is not needed. In conclusion, it seems sensible to entirely remove the checking of "FIFO empty" status when pausing. Signed-off-by: Nicolas Ferre [commit msg edited for grammer] Signed-off-by: Vinod Koul commit be20902ba67de70b38c995903321f4152dee57b7 Author: Russell King Date: Wed May 11 15:39:00 2011 +0100 ARM: use ARM_DMA_ZONE_SIZE to adjust the zone sizes Rather than each platform providing its own function to adjust the zone sizes, use the new ARM_DMA_ZONE_SIZE definition to perform this adjustment. This ensures that the actual DMA zone size and the ISA_DMA_THRESHOLD/MAX_DMA_ADDRESS definitions are consistent with each other, and moves this complexity out of the platform code. Acked-by: Nicolas Pitre Acked-by: Catalin Marinas Signed-off-by: Russell King commit 2fb3ec5c9503ba8874e24170de2b40e8f1a58370 Author: Russell King Date: Wed May 11 16:06:29 2011 +0100 ARM: Replace platform definition of ISA_DMA_THRESHOLD/MAX_DMA_ADDRESS The values of ISA_DMA_THRESHOLD and MAX_DMA_ADDRESS are related; one is the physical/bus address, the other is the virtual address. Both need to be kept in step, so rather than having platforms define both, allow them to define a single macro which sets both of these macros appropraitely. Acked-by: Nicolas Pitre Acked-by: Catalin Marinas Signed-off-by: Russell King commit 3e51e3edfd81bfd9853ad7de91167e4ce33d0fe7 Author: Samir Bellabes Date: Wed May 11 18:18:05 2011 +0200 sched: Remove unused parameters from sched_fork() and wake_up_new_task() sched_fork() and wake_up_new_task() are defined with a parameter 'unsigned long clone_flags', which is unused. This patch removes the parameters. Signed-off-by: Samir Bellabes Acked-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1305130685-1047-1-git-send-email-sam@synack.fr Signed-off-by: Ingo Molnar commit 9cb5baba5e3acba0994ad899ee908799104c9965 Merge: 7142d17 693d92a Author: Ingo Molnar Date: Thu May 12 09:36:18 2011 +0200 Merge commit 'v2.6.39-rc7' into sched/core commit 55183d06cd1bd939ceccdad628b0aae12c86b803 Author: Gustavo F. Padovan Date: Wed May 11 19:26:06 2011 -0300 Bluetooth: Remove leftover debug messages They were added by me while testing and I forgot to remove. Signed-off-by: Gustavo F. Padovan commit e77dc3460fa59be5759e9327ad882868eee9d61b Author: Tetsuo Handa Date: Thu May 12 06:40:51 2011 +0900 TOMOYO: Fix wrong domainname validation. In tomoyo_correct_domain() since 2.6.36, TOMOYO was by error validating "" + "/foo/\" + "/bar" when " /foo/\* /bar" was given. As a result, legal domainnames like " /foo/\* /bar" are rejected. Reported-by: Hayama Yossihiro Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 521a8f5cb79d1017d00d26143227159674e3b79d Author: Johan Hovold Date: Wed May 11 16:33:50 2011 -0700 Input: rotary-encoder - refactor and clean up Refactor state retrieval and event reporting in interrupt handler. Remove a few empty lines. Signed-off-by: Johan Hovold Reviewed-by: H Hartley Sweeten Acked-by: Daniel Mack Signed-off-by: Dmitry Torokhov commit 3abeca998a44205cfd837fa0bf1f7c24f8294acb Author: Sarah Sharp Date: Thu May 5 19:08:09 2011 -0700 xhci: Fix bug in control transfer cancellation. When the xHCI driver attempts to cancel a transfer, it issues a Stop Endpoint command and waits for the host controller to indicate which TRB it was in the middle of processing. The host will put an event TRB with completion code COMP_STOP on the event ring if it stops on a control transfer TRB (or other types of transfer TRBs). The ring handling code is supposed to set ep->stopped_trb to the TRB that the host stopped on when this happens. Unfortunately, there is a long-standing bug in the control transfer completion code. It doesn't actually check to see if COMP_STOP is set before attempting to process the transfer based on which part of the control TD completed. So when we get an event on the data phase of the control TRB with COMP_STOP set, it thinks it's a normal completion of the transfer and doesn't set ep->stopped_td or ep->stopped_trb. When the ring handling code goes on to process the completion of the Stop Endpoint command, it sees that ep->stopped_trb is not a part of the TD it's trying to cancel. It thinks the hardware has its enqueue pointer somewhere further up in the ring, and thinks it's safe to turn the control TRBs into no-op TRBs. Since the hardware was in the middle of the control TRBs to be cancelled, the proper software behavior is to issue a Set TR dequeue pointer command. It turns out that the NEC host controllers can handle active TRBs being set to no-op TRBs after a stop endpoint command, but other host controllers have issues with this out-of-spec software behavior. Fix this behavior. This patch should be backported to kernels as far back as 2.6.31, but it may be a bit challenging, since process_ctrl_td() was introduced in some refactoring done in 2.6.36, and some endian-safe patches added in 2.6.40 that touch the same lines. Signed-off-by: Sarah Sharp Cc: Dmitry Torokhov Cc: stable@kernel.org commit a73ddc61e8f14ddc7ab6e6a11dc882ef6a697114 Author: Kukjin Kim Date: Wed May 11 16:27:51 2011 +0900 ARM: S5P6442: Removing ARCH_S5P6442 Signed-off-by: Kukjin Kim commit 4d586b823acc46c55c889ae1798de236c9d403da Author: Padmanabh Ratnakar Date: Tue May 10 05:13:57 2011 +0000 be2net: Fix to prevent flooding of TX queue Start/stop TX queue is controlled by TX queue "used" counter. It is incremented while WRBs are posted to TX queue and decremented when TX completions are received. This counter was getting decremented before HW is informed about processing of TX completions. As used counter is decremented, transmit function posts new WRBs and creates completion queue full scenario in HW. Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit ecd0bf0f7b280bac3ac7419ed3aac84cd92878e9 Author: Padmanabh Ratnakar Date: Tue May 10 05:13:26 2011 +0000 be2net: Use NTWK_RX_FILTER command for promiscous mode Use OPCODE_COMMON_NTWK_RX_FILTER command for promiscous mode as OPCODE_ETH_PROMISCUOUS command is getting deprecated. Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 18a91e6002207c8212e0960854f88ab924ea22f9 Author: Padmanabh Ratnakar Date: Tue May 10 05:13:01 2011 +0000 be2net: In case of UE, do not dump registers for Lancer In case of UE, do not dump registers for Lancer as they are not supported. Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 6bd011d54254d6f2a5314ab0ed38e66772e6b9f7 Author: Padmanabh Ratnakar Date: Tue May 10 05:12:37 2011 +0000 be2net: Disable coalesce water mark mode of CQ for Lancer Disable coalesce water mark mode of CQ for Lancer Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 009dd872d753f854cf13c8334e0055092f539b38 Author: Padmanabh Ratnakar Date: Tue May 10 05:12:17 2011 +0000 be2net: Handle error completion in Lancer In Lancer if a frame is DMAed partially due to lack of RX buffers, an error completion is sent with packet size as zero and num_recvd indicating number of used buffers. These buffers need to be freed and packet dropped. Signed-off-by: Padmanabh Ratnakar Signed-off-by: David S. Miller commit 5409d2cd841cf2c76396470e566500f6505f8d2a Author: Anton Blanchard Date: Wed May 11 17:25:14 2011 +1000 memory hotplug: Speed up add/remove when blocks are larger than PAGES_PER_SECTION On ppc64 the minimum memory section for hotplug is 16MB but most recent machines have a memory block size of 256MB. This means memory_block_change_state does 16 separate calls to memory_section_action. This also means we call the notifiers 16 times and the hook in the ehea network driver is quite costly. To offline one 256MB region takes: # time echo offline > /sys/devices/system/memory/memory32/state 7.9s This patch removes the loop and calls online_pages or remove_memory once for the entire region and in doing so makes the logic simpler since we don't have to back out if things fail part way through. The same test to offline one region now takes: # time echo online > /sys/devices/system/memory/memory32/state 0.67s Over 11 times faster. Signed-off-by: Anton Blanchard Signed-off-by: Greg Kroah-Hartman commit 51c2e0a7e5bc7ed1384cc68cfb95e702571500c9 Author: Jesse Barnes Date: Fri Jan 14 08:53:04 2011 -0800 PCI: add latency tolerance reporting enable/disable support Latency tolerance reporting allows devices to send messages to the root complex indicating their latency tolerance for snooped & unsnooped memory transactions. Add support for enabling & disabling this feature, along with a routine to set the max latencies a device should send upstream. Signed-off-by: Jesse Barnes commit 48a92a8179b3e677fac07db7bd109e68f020468c Author: Jesse Barnes Date: Mon Jan 10 12:46:36 2011 -0800 PCI: add OBFF enable/disable support OBFF (optimized buffer flush/fill), where supported, can help improve energy efficiency by giving devices information about when interrupts and other activity will have a reduced power impact. It requires support from both the device and system (i.e. not only does the device need to respond to OBFF messages, but the platform must be capable of generating and routing them to the end point). Signed-off-by: Jesse Barnes commit b48d4425b602f5f4978299474743dbea130d940d Author: Jesse Barnes Date: Tue Oct 19 13:07:57 2010 -0700 PCI: add ID-based ordering enable/disable support Add support to allow drivers to enable/disable ID-based ordering. Where supported, ID-based ordering can significantly improve the latency of individual requests by preventing them from queueing up behind unrelated traffic. Signed-off-by: Jesse Barnes commit 97f93227e646741adf4d7cbf4baf7a087746e93a Author: Kuninori Morimoto Date: Wed May 11 16:00:15 2011 +0900 usb: renesas_usbhs: fixup error processing on probe/remove The error processing order was wrong. This patch modify it. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit c786e09c35924252ff219241e7027e340b77252d Author: Kuninori Morimoto Date: Wed May 11 16:00:09 2011 +0900 usb: renesas_usbhs: fixup fifo disable It was necessary to check pipe condition after disable fifo. Current driver checked it in a wrong place. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit fd5054c169d29747a44b4e1419ff47f57ae82dbc Author: Erik Slagter Date: Wed May 11 12:06:55 2011 +0200 USB: cdc_acm: Fix oops when Droids MuIn LCD is connected The Droids MuIn LCD operates like a serial remote terminal. Data received are displayed directly on the LCD. This patch fixes the kernel null pointer oops when it is plugged in. Add NO_DATA_INTERFACE quirk to tell the driver that "control" and "data" interfaces are not separated for this device, which prevents dereferencing a null pointer in the device probe code. Signed-off-by: Erik Slagter Signed-off-by: Maxin B. John Tested-by: Erik Slagter Cc: stable Signed-off-by: Greg Kroah-Hartman commit aa273ae52118265c5cb0f7026a7f032c765c8b67 Author: Scott Kilau Date: Wed May 11 15:41:59 2011 -0500 8250_pci: Add support for the Digi/IBM PCIe 2-port Adapter Add support to the 8250 PCI serial driver for the Digi/IBM PCIe 2-port Async EIA-232 Adapter. Oxford Semiconductor produces a 2/4/8 port UART (OXPCIe952/OXPCIe954/OXPCIe958) chip called the Tornado, that can be used to create a very simple serial board product. The kernel sources currently have just 2 vendors using this chip, which is Oxford and Mainpipe. This new Digi/IBM serial product now uses it as well. Rather than create a long running comment of vendors using the chip, the one changed comment in the patch below now just lists "For Oxford Semiconductor Tornado based devices" to be a more generic comment for all vendors that end up using the Oxford Tornado chip. Cc: Michael Reed Signed-off-by: Scott Kilau Signed-off-by: Greg Kroah-Hartman commit ed0bd2333cffc3d856db9beb829543c1dfc00982 Author: Mark Brown Date: Wed May 11 16:05:44 2011 +0200 ASoC: Update cx20442 for TTY API change receive_buf() was recently changed to return the number of bytes received but the cx20442 driver wasn't updated to match the new API. I don't have any hardware but since we don't actually appears to be listening to the data at all just report that we accepted all the data that was offered to us. Signed-off-by: Mark Brown Acked-by: Liam Girdwood Signed-off-by: Greg Kroah-Hartman commit baafb435372dd48e3854028aec669effae957c9e Author: Rakesh Iyer Date: Wed May 11 14:24:10 2011 -0700 Input: tegra-kbc - change wakeup logic to be all or nothing Tegra hardware design cannot reliably support an arbitrary set of keys waking up the system. Modify wakeup logic so either any key wakes the system up or none will do. Signed-off-by: Rakesh Iyer Signed-off-by: Dmitry Torokhov commit fc184a35d90927fb82a13043a95c5420335ab824 Author: matt mooney Date: Wed May 11 01:54:23 2011 -0700 staging: usbip: vhci.h: reorganize Split function declarations by source file. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 499aaae000ef466150a58f31b28f88087da123e6 Author: matt mooney Date: Wed May 11 01:54:22 2011 -0700 staging: usbip: stub.h: reorganize Move a few functions around for better organization and add missing parameter names in function declarations. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 6973c6f24e105f1bdf811ec2320d2de8798145ee Author: matt mooney Date: Wed May 11 01:54:14 2011 -0700 staging: usbip: use single version for all modules Having separate versions in this situation makes little sense, so USBIP_VERSION will be used by all modules. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 981f30cc9b93fbf1f722f31276ddb19b95a30ddd Author: matt mooney Date: Wed May 11 01:54:13 2011 -0700 staging: usbip: change debug configuration option Change CONFIG_USB_IP_DEBUG_ENABLE to CONFIG_USB_IP_DEBUG, and move ccflags- to the head of the makefile. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 0c4ac072b3f5e1287a11f109ca0cc9c909d74919 Author: Alan Cox Date: Tue May 10 21:27:31 2011 +0100 gma500: enable GEM mmap Support mapping of GEM objects. This ought to be a small plumbing change but instead we have to cut and paste a pile of stuff into the driver. This really wants to be handled *IN* GEM You can now allocate, mmap and munmap GEM objects in the driver. You can't yet map them into the GART or display them however. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 1dce160f027763253c316f5bcd3cc7b686d988d2 Author: Alan Cox Date: Wed May 11 14:38:26 2011 +0100 sst: tweak the shared functions so we don't crash the ASoC driver The ASoC driver is currently pulling bits from staging rather than its own copy. Post all the merges and fixes we've put back an assumption that crashes ASoC so we need to fix it differently. (See 0ed625b2f2751c249417bd28694e37ef48eb5fbb) Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cda64a5590fcb7349416479ad783ac2dcb20b677 Author: Arend van Spriel Date: Tue May 10 22:25:33 2011 +0200 staging: brcm80211: fix checkpatch issue introduced in dhd_sdio.c Patch "[2349e278] move utility functions into new module" introduced a checkpatch warning which is resolved with this patch. Cc: devel@linuxdriverproject.org Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 3422731627c334c2230f5e407ec88e4a4aff0844 Author: Arend van Spriel Date: Tue May 10 22:25:32 2011 +0200 staging: brcm80211: use print_hex_dump_bytes kernel function The drivers had own implementation to dump buffer contents using printk. This has been replaced by kernel function. Cc: devel@linuxdriverproject.org Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit de91ed29c4ba7bfc6789bf018a2f4605f1ece2a8 Author: Arend van Spriel Date: Tue May 10 22:25:31 2011 +0200 staging: brcm80211: remove definition of BCMFASTPATH macro The macro was used to assure function flagged with this macro were placed in a named section. However, in the linux build enviroment there is no such section specified in the linker scripts so it makes no sense to keep it in. Cc: devel@linuxdriverproject.org Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 87bff6a306e8979f7f2491e365e1b9f9e7cccb46 Author: Arend van Spriel Date: Tue May 10 22:25:30 2011 +0200 staging: brcm80211: cleanup unnecessary functions from wlc_ampdu.c Couple of functions are not used or empty and have been removed. Cc: devel@linuxdriverproject.org Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b33f0e282f5e728456412ef63d36521538932fc5 Author: Henry Ptasinski Date: Tue May 10 22:25:29 2011 +0200 staging: brcm80211: move utility functions into new module Move utility functions shared by the brcmsmac and brcmfmac drivers into a new module, brcmutil.ko. This eliminates the need to compile and link the shared functions into both drivers. Prefix all exported symbols with "bcm_". Cc: devel@linuxdriverproject.org Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4e458c1d3206ef633c39a7ac29d5b61a540ddb57 Author: K. Y. Srinivasan Date: Tue May 10 07:56:17 2011 -0700 Staging: hv: mouse_drv: Get rid of some unused code Now, get rid of struct mousevsc_drv_obj. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 746e8ca4f73fda7b552148c52fd80b2affc98548 Author: K. Y. Srinivasan Date: Tue May 10 07:56:16 2011 -0700 Staging: hv: Make mousevsc_drv an instance of struct hv_driver In preparation to eliminate struct mousevsc_drv_obj, make struct mousevsc_drv an instance of struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8cd442d086512073fd1907c1969a03e7c068c7f9 Author: K. Y. Srinivasan Date: Tue May 10 07:56:15 2011 -0700 Staging: hv: Get rid of an empty function mouse_vsc_initialize() Now, get rid of the empty function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cf131e6ab0332f73ba6a8ff7fd6ac942cba28ccb Author: K. Y. Srinivasan Date: Tue May 10 07:56:14 2011 -0700 Staging: hv: mouse_drv: Move the code to copy dev_type information In preparation to eliminate mouse_vsc_initialize, move the code that copies the dev_type info. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a5fae3b59185d244c1c9e48c8de7ae96eac91191 Author: K. Y. Srinivasan Date: Tue May 10 07:56:13 2011 -0700 Staging: hv: mouse_drv: Move the assignment of name variable In preparation to eliminate mouse_vsc_initialize, move the assignment of driver name. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit eb94b2f5e4c8bbe804eb6f0add71d69836033715 Author: K. Y. Srinivasan Date: Tue May 10 07:56:12 2011 -0700 Staging: hv: mouse_drv: Directly assign the driver name Directly assign the driver name. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 495f3b3a974c31d5e7400dbd6fe3143be2afa7d0 Author: K. Y. Srinivasan Date: Tue May 10 07:56:11 2011 -0700 Staging: hv: Get rid of struct storvsc_driver Now get rid of struct storvsc_driver as it is not needed. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 428faae18fb11df531fd9f6b1e314f54819190f1 Author: K. Y. Srinivasan Date: Tue May 10 07:56:10 2011 -0700 Staging: hv: Make blkvsc_drv an instance of struct hv_driver Make blkvsc_drv an instance of struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 40bf63ed45520bef3fa6c91674d71927298cb245 Author: K. Y. Srinivasan Date: Tue May 10 07:56:09 2011 -0700 Staging: hv: Make storvsc_drv an instance of hv_driver In preparation for eliminating struct storvsc_driver, make the variable storvsc_drv an instance of struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1a392592f9a99dcfdc4c2f9565676a7d245ac289 Author: K. Y. Srinivasan Date: Tue May 10 07:56:08 2011 -0700 Staging: hv: Get rid of some unused functions from storvsc_api.h Now get rid of unused functions. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 17e9531d931ccf1b6df310f836ac99c686b13bcf Author: K. Y. Srinivasan Date: Tue May 10 07:56:07 2011 -0700 Staging: hv: Now get rid of an empty function storvsc_initialize() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1a96d9a4f3545444ea310d643279408c2d794a1c Author: K. Y. Srinivasan Date: Tue May 10 07:56:06 2011 -0700 Staging: hv: storvsc_drv: Inline the copying of the dev_type information In preperation to eliminate the function storvsc_initialize() move the copying of dev_type info. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4742e82fa4ac22960c3edbfc06454ca664de9a56 Author: K. Y. Srinivasan Date: Tue May 10 07:56:05 2011 -0700 Staging: hv: storvsc_drv: Move the assignment of name to the hv_driver In preperation to eliminate the function storvsc_initialize() move the name assignment. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 206cf17befe46eb7cd99ca4fad5165980ded7829 Author: K. Y. Srinivasan Date: Tue May 10 07:56:04 2011 -0700 Staging: hv: storvsc_drv: Directly assign the driver name Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 31c39c35168e3c807f924b2ac65cc872ad8d1d6c Author: K. Y. Srinivasan Date: Tue May 10 07:56:03 2011 -0700 Staging: hv: Get rid of the ring size state from struct storvsc_driver Now, get rid of the ring size state from struct storvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f85976e4894752bbc1c3f5b2f8cddc598dd425ec Author: K. Y. Srinivasan Date: Tue May 10 07:56:02 2011 -0700 Staging: hv: storvsc_drv: Get rid of the unnecessary assignment of ring size Now, get rid of the unnecessary assignment of ring size. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit fa4d123a1f893b2d902a8844a0b1166bec56c180 Author: K. Y. Srinivasan Date: Tue May 10 07:56:01 2011 -0700 Staging: hv: Use the rinbuffer size info in struct storvsc_device_info Use the rinbuffer size info in struct storvsc_device_info. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 85cf3a986e0b7b00230e1393ca55a4db216cc1ad Author: K. Y. Srinivasan Date: Tue May 10 07:56:00 2011 -0700 Staging: hv: Add ring_buffer_size to struct storvsc_device_info Add ring_buffer_size to struct storvsc_device_info Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4c6bebe9c7b5c8a5c39e3b5cc0f37f473f522aff Author: K. Y. Srinivasan Date: Tue May 10 07:55:59 2011 -0700 Staging: hv: storvsc_drv: Get rid of max_outstanding_req_per_channel from struct storvsc_driver Now, Get rid of max_outstanding_req_per_channel from struct storvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 01415ab3d24e5e53b6b581869bc368f78e397ccb Author: K. Y. Srinivasan Date: Tue May 10 07:55:58 2011 -0700 Staging: hv: storvsc_drv: Compute max_outstanding_req_per_channel where it is needed Compute max_outstanding_req_per_channel where it is needed. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9d41889fd6fecd106c68cc1062f6bce5bda5bdb4 Author: K. Y. Srinivasan Date: Tue May 10 07:55:57 2011 -0700 Staging: hv: storvsc_drv: Get rid of some unnecessary DPRINTs Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 154a61cd87adecf26797caa123e3f280f38e6f67 Author: K. Y. Srinivasan Date: Tue May 10 07:55:56 2011 -0700 Staging: hv: Make blkvsc_drv_init the module init function Now, get rid of the redundant function and make blkvsc_drv_init the module init function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3e3264996f313036df518560b58f909d269ff069 Author: K. Y. Srinivasan Date: Tue May 10 07:55:55 2011 -0700 Staging: hv: Move the sector size check into blkvsc_drv_init Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c1c809b5d9e18f38d083393976e448f3beaaa421 Author: K. Y. Srinivasan Date: Tue May 10 07:55:54 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the empty function Now, get rid of the empty function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f9bf96a96d6d2c8ae239bc5c133c08bd785eb2f5 Author: K. Y. Srinivasan Date: Tue May 10 07:55:53 2011 -0700 Staging: hv: blkvsc_drv: Inline the copying of dev_type guid In preperation to eliminating blk_vsc_initialize(), move the copying of dev_type field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9528b1d86ac85dcf277fdaa6d8e6d10ad029cfac Author: K. Y. Srinivasan Date: Tue May 10 07:55:52 2011 -0700 Staging: hv: blkvsc_drv: Move the assignment of driver name In preperation to eliminating blk_vsc_initialize(), move the assignment of driver name. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5457c719ac36dbac1cc88ac59cf9e090acefa70b Author: K. Y. Srinivasan Date: Tue May 10 07:55:51 2011 -0700 Staging: hv: blkvsc_drv: Assign the name directly Assign the driver name directly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2ee8e4206b69ff34b19cb6facf6d848a2b3b1a3f Author: K. Y. Srinivasan Date: Tue May 10 07:55:50 2011 -0700 Staging: hv: blkvsc_drv: Get rid of unnecessary code/comments Get rid of unnecessary code/comments. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a023090a9456e01416f3c9ddb1dee4fce177f800 Author: K. Y. Srinivasan Date: Tue May 10 07:55:49 2011 -0700 Staging: hv: blkvsc_drv: Get rid unnecessary DPRINT Get rid unnecessary DPRINT. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 43a7b1f16d0f0a62d1db70d9462e1a99fbcb0adc Author: K. Y. Srinivasan Date: Tue May 10 07:55:48 2011 -0700 Staging: hv: Get rid of unnecessary state from struct storvsc_driver This is unused state; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 44939d37cc03af996d93b9d15385ac13de2bd627 Author: K. Y. Srinivasan Date: Tue May 10 07:55:47 2011 -0700 Staging: hv: Change Cleanup to cleanup in hv.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b413bba38452b030d2192becb3865c7f914929d9 Author: K. Y. Srinivasan Date: Tue May 10 07:55:46 2011 -0700 Staging: hv: Get rid of some dead code from hv.c Get rid of some commented code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6d81d33059e3a062660fd671ea8842662373dfb9 Author: K. Y. Srinivasan Date: Tue May 10 07:55:45 2011 -0700 Staging: hv: Get rid of some dead code in connection.c Get rid some commented code and dated comments.T Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b0043863a0097c3ebe59f91a91fc25d8e1e575e8 Author: K. Y. Srinivasan Date: Tue May 10 07:55:44 2011 -0700 Staging: hv: Change Cleanup to cleanup in connection.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4b599df0ca8c8d4d8530fe2ecb08dd6af56e2c7b Author: K. Y. Srinivasan Date: Tue May 10 07:55:43 2011 -0700 Staging: hv: Get rid of some dead code in channel.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 98d796905b5515af30198796088599993530243d Author: K. Y. Srinivasan Date: Tue May 10 07:55:42 2011 -0700 Staging: hv: Use the completion abstraction in struct rndis_request Use the completion abstraction in struct rndis_request to synchronize. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 35abb21ace3413de6ea8d5c7750cedfd46111f0c Author: K. Y. Srinivasan Date: Tue May 10 07:55:41 2011 -0700 Staging: hv: Use completion abstraction in struct netvsc_device Use completion abstraction in struct netvsc_device instead of struct wait_queue_head_t to synchronize. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bc1bf5dd638a563255dac3dd2c552079a29487c2 Author: K. Y. Srinivasan Date: Tue May 10 07:55:40 2011 -0700 Staging: hv: Get rid of some unnecessary state from struct vmbus_msginfo This state is not used anywhere; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9568a1931cd2066ed0f2df6f311e86dd851ab452 Author: K. Y. Srinivasan Date: Tue May 10 07:55:39 2011 -0700 Staging: hv: Use completion abstraction to synchronize in vmbus_channel_msginfo Use completion abstraction to synchronize in vmbus_channel_msginfo. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b7c6b02f34cefae56ff06ebf386bea2610dd849d Author: K. Y. Srinivasan Date: Tue May 10 07:55:38 2011 -0700 Staging: hv: vmbus_drv: Rename the variable gChannelMessageTable Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cf9dcba7ff852594163c72a0633608377fb53645 Author: K. Y. Srinivasan Date: Tue May 10 07:55:37 2011 -0700 Staging: hv: vmbus_drv: Rename the variable messageType Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit fa90f1de21a038ff36526d2366ad25ab35f21188 Author: K. Y. Srinivasan Date: Tue May 10 07:55:36 2011 -0700 Staging: hv: vmbus_drv: Rename the variable messageHandler Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 50b03266b387428d66e7d1c4898158c10f6a547c Author: K. Y. Srinivasan Date: Tue May 10 07:55:35 2011 -0700 Staging: hv: vmbus_drv: Rename the variable gSupportedDeviceClasses Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 53070793e06f3b643196c68585bf14a16c523fd2 Author: K. Y. Srinivasan Date: Tue May 10 07:55:34 2011 -0700 Staging: hv: Cleanup ring_buffer.h Access to these variables is already serialized via a spin lock. Get rid of the unnecessary volatile qualifier. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 66a605438146923a048a2ce071831df2a5f64659 Author: K. Y. Srinivasan Date: Tue May 10 07:55:33 2011 -0700 Staging: hv: Get rid of the volatile qualifier for a variable in ring_buffer.c Access to this variable is already serialized via a spin lock. Get rid of the unnecessary volatile qualifier. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7581578d688397d927b882a343a2969ef0cac12a Author: K. Y. Srinivasan Date: Tue May 10 07:55:32 2011 -0700 Staging: hv: Get rid of the forward declaration of hv_copyto_ringbuffer() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8f1136aeb474b14db8f420d4919759b46993830b Author: K. Y. Srinivasan Date: Tue May 10 07:55:31 2011 -0700 Staging: hv: Get rid of the forward declaration of hv_copyfrom_ringbuffer Get rid of the forward declaration by moving code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b2a5a58551d74f46b70ab9b7c4801b19fee66e9f Author: K. Y. Srinivasan Date: Tue May 10 07:55:30 2011 -0700 Staging: hv: Cleanup comments in ring_buffer.c Cleanup comments in ring_buffer.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2b8a912ef2713a7f000baad2dbb9ac6f64575d4a Author: K. Y. Srinivasan Date: Tue May 10 07:55:29 2011 -0700 Staging: hv: Rename all static functions in ring_buffer.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a75b61d528906fc6bf94226be2cce87e31cd18ff Author: K. Y. Srinivasan Date: Tue May 10 07:55:28 2011 -0700 Staging: hv: Rename ringbuffer_get_debuginfo Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 549bf93f2853634383ae850d52afa1f4f656cb38 Author: K. Y. Srinivasan Date: Tue May 10 07:55:27 2011 -0700 Staging: hv: Rename dump_ring_info Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit decc49dacba39354ee705ea8bec12d9ae1f63774 Author: K. Y. Srinivasan Date: Tue May 10 07:55:26 2011 -0700 Staging: hv: Rename get_ringbuffer_interrupt_mask Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 38397c8abe5596d8942a453468bec935964d1c75 Author: K. Y. Srinivasan Date: Tue May 10 07:55:25 2011 -0700 Staging: hv: Rename ringbuffer_read Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a89186c21ccea2f06014b26463a39a1eea1efdf7 Author: K. Y. Srinivasan Date: Tue May 10 07:55:24 2011 -0700 Staging: hv: Rename ringbuffer_peek Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 633c4dce4e822be6155a78cec488e8bde521e908 Author: K. Y. Srinivasan Date: Tue May 10 07:55:23 2011 -0700 Staging: hv: Rename ringbuffer_write Rename ringbuffer_write. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2dba688ba4238066400d5b6b35d5b4ce9484b4b1 Author: K. Y. Srinivasan Date: Tue May 10 07:55:22 2011 -0700 Staging: hv: Rename ringbuffer_cleanup Rename ringbuffer_cleanup. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 72a95cbcbc24a464f3a51e610bd444fde2c73bbd Author: K. Y. Srinivasan Date: Tue May 10 07:55:21 2011 -0700 Staging: hv: Rename the function ringbuffer_init Rename the function ringbuffer_init to not pollute the namespace. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1745ec504a80c620a7c9b9df5a03de56cfbd85d5 Author: K. Y. Srinivasan Date: Tue May 10 07:55:20 2011 -0700 Staging: hv: mousevsc_drv: Statically initialize probe/remove Statically initialize probe/remove. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit eebdd6f295340594c5cb0dd21880369bc684f0c3 Author: K. Y. Srinivasan Date: Tue May 10 07:55:19 2011 -0700 Staging: hv: Move the declaration of the variable mousevsc_drv Move the declaration of the variable mousevsc_drv. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 19912a4f77333fa8df211e4dde86e46875b3f696 Author: K. Y. Srinivasan Date: Tue May 10 07:55:18 2011 -0700 Staging: hv: mouse_vsc: Rename the variable g_mousevsc_drv Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d48909703054bc5759dea5859b00325b3871210a Author: K. Y. Srinivasan Date: Tue May 10 07:55:17 2011 -0700 Staging: hv: netvsc_drv: Statically initialize probe/remove Statically initialize probe/remove. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f1542a6605ea657b1e20aefc08e1d8859c1703db Author: K. Y. Srinivasan Date: Tue May 10 07:55:16 2011 -0700 Staging: hv: Move the declaration of the variable netvsc_drv Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f752e9befd5cd6420fae1939ca8a82ab25e83f5d Author: K. Y. Srinivasan Date: Tue May 10 07:55:15 2011 -0700 Staging: hv: netvsc_drv: Rename the variable g_netvsc_drv Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 043ee6765570ca399efaf0984788e4ba88520fa5 Author: K. Y. Srinivasan Date: Tue May 10 07:55:14 2011 -0700 Staging: hv: Get rid of cleanup from struct hv_driver Now that we have removed calls to this empty function, get rid of the unnecessary state in struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cf5e5cbfa2ed46a3117cc4aaa2428ab7f8789150 Author: K. Y. Srinivasan Date: Tue May 10 07:55:13 2011 -0700 Staging: hv: Cleanup calls to cleanup() in hv_mouse.c Cleanup calls to cleanup() in hv_mouse.c as this is an empty function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 205dec163840cb74ee47c878f4dd04820169b4aa Author: K. Y. Srinivasan Date: Tue May 10 07:55:12 2011 -0700 Staging: hv: Cleanup calls to cleanup in storvsc_drv.c cleanup() is an empty function; get rid of calls to this. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b0f98998bd53143e705940c2471a1b6c0a916f37 Author: K. Y. Srinivasan Date: Tue May 10 07:55:11 2011 -0700 Staging: hv: Get rid of dev_rm from struct hv_driver Now that we have gotten rid of the indirection for invoking dev_rm, get rid of this. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit dc9cf30a96d7546188955e3fd5a11055710f49e8 Author: K. Y. Srinivasan Date: Tue May 10 07:55:10 2011 -0700 Staging: hv: Get rid of dev_add from struct hv_driver Now that we have gotten rid of the indirection, get rid of the unnecessary state struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit be3c8195311bcd9c37bef05763da9a78cf52063b Author: K. Y. Srinivasan Date: Tue May 10 07:55:09 2011 -0700 Staging: hv: Cleanup mouse_vsc_initialize() Now that we have gotten rid of the indirection, cleanup mouse_vsc_initialize(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b51f88a1a1e9a191f227964785d6db52f5ee2529 Author: K. Y. Srinivasan Date: Tue May 10 07:55:08 2011 -0700 Staging: hv: Get rid of the mouse cleanup() function mousevsc_on_cleanup() is an empty function; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f1f66f8f0cb412b70838b1b4d8b03f953e09dd8c Author: K. Y. Srinivasan Date: Tue May 10 07:55:07 2011 -0700 Staging: hv: Get rid of the indirection to invoke mousevsc_on_device_remove Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d1f01b3e1738312f7e685c1b0c9023e91d4dc240 Author: K. Y. Srinivasan Date: Tue May 10 07:55:06 2011 -0700 Staging: hv: Get rid of the indirection to invoke mousevsc_on_device_add() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8df12524afdc970961306bf57b70231324431d79 Author: K. Y. Srinivasan Date: Tue May 10 07:55:05 2011 -0700 Staging: hv: Get rid of some unnecessary code in rndis_filter.c Now that we have gotten rid of the indirection; get rid of some unnecessary code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 62f659d724103562d1ff0900ce3dd74a0bc3b270 Author: K. Y. Srinivasan Date: Tue May 10 07:55:04 2011 -0700 Staging: hv: Get rid of unnecessary code in netvsc.c Now that we had gotten rid of the indirection; get rid of some unnecessary code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a9eea18725e4dd1d9a360a4f2fe95bd2a5ff7f5d Author: K. Y. Srinivasan Date: Tue May 10 07:55:03 2011 -0700 Staging: hv: netvsc_drv: Get rid of call to cleanup() cleanup() is an empty function; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3fae5c8f9cc054df8fb524124f5ff1f5d1fbd9af Author: K. Y. Srinivasan Date: Tue May 10 07:55:02 2011 -0700 Staging: hv: Get rid of the indirection in invoking netvsc_device_remove() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 58de3fc6432ed1eeceae568f5cbd21caef3bd237 Author: K. Y. Srinivasan Date: Tue May 10 07:55:01 2011 -0700 Staging: hv: Get rid of the indirection in invoking rndis_filter_device_remove() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ce5bf661375cf90a01e060f579515e954e7788ea Author: K. Y. Srinivasan Date: Tue May 10 07:55:00 2011 -0700 Staging: hv: Get rid of the indirection to invoke netvsc_device_add() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bc2d59757d068350814e9eec818c3438798a99ee Author: K. Y. Srinivasan Date: Tue May 10 07:54:59 2011 -0700 Staging: hv: Get rid of the indirection to invoke rndis_filte_device_add() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 4eb498fa26f34e9f137f841a591a099d79201a2c Author: K. Y. Srinivasan Date: Tue May 10 07:54:58 2011 -0700 Staging: hv: Get rid of rndis_filter_cleanup() rndis_filter_cleanup() is an empty function; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1405139c63f411bba579ede0e71aa1d10091ff18 Author: K. Y. Srinivasan Date: Tue May 10 07:54:57 2011 -0700 Staging: hv: Make rndis_filter_device_remove() non static Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 10f5a6db1944c9facea5db4d6ead21c12a66df0a Author: K. Y. Srinivasan Date: Tue May 10 07:54:56 2011 -0700 Staging: hv: Make rndis_filte_device_add() non static Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 88992135f52e845a58d728ee0bf6fddb54ea39f6 Author: K. Y. Srinivasan Date: Tue May 10 07:54:55 2011 -0700 Staging: hv: Get rid of netvsc_cleanup() netvsc_cleanup() is an empty function; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 905620d16f5c9e7c8ff850e15f47f5700824f6fb Author: K. Y. Srinivasan Date: Tue May 10 07:54:54 2011 -0700 Staging: hv: Make netvsc_device_remove non static Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7bd23a4d8737777f41cbbe099a027b582b762581 Author: K. Y. Srinivasan Date: Tue May 10 07:54:53 2011 -0700 Staging: hv: Make the function netvsc_device_add() non static Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5326fd5cc33389f20cad7ae36d579cd668345378 Author: K. Y. Srinivasan Date: Tue May 10 07:54:52 2011 -0700 Staging: hv: storvsc_drv: Simplify the code for getting the drive parameters We are making up the drive parameters; simplify the code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6f64e5ffb9d1dbbc84a74fb99030058bc791e12f Author: K. Y. Srinivasan Date: Tue May 10 07:54:51 2011 -0700 Staging: hv: storvsc_drv: Get rid of the code initializing the dispatch table Now that we have eliminated the indirection, we can get rid of the code to initialize the dispatch table. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 636f0fd14ca29b29606f7c3292a5951b519ce14a Author: K. Y. Srinivasan Date: Tue May 10 07:54:50 2011 -0700 Staging: hv: storvsc_drv: Get rid of the indirection in invoking storvsc_do_io() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 58f1f5cb8ff4b8a221f8d48005391095a5b87b00 Author: K. Y. Srinivasan Date: Tue May 10 07:54:49 2011 -0700 Staging: hv: storvsc_drv: Get rid of the indirection in invoking storvsc_dev_add() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6cdc57c0aaac398938a3b127d74a848988fcf9c7 Author: K. Y. Srinivasan Date: Tue May 10 07:54:48 2011 -0700 Staging: hv: storvsc_drv: Get rid of the indirection in invoking storvsc_dev_remove() Get rid of the indirection in invoking storvsc_dev_remove() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9b3e773b3e9bce8509ae9d893bed478a009b473a Author: K. Y. Srinivasan Date: Tue May 10 07:54:47 2011 -0700 Staging: hv: storvsc_drv: Get rid of unnecessary comments/dead code Get rid of unnecessary comments/dead code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 39ae6fae435ae38e1b4019840e404d0db49de4b6 Author: K. Y. Srinivasan Date: Tue May 10 07:54:46 2011 -0700 Staging: hv: storvsc_drv: Statically initialize probe/remove elements of the driver Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7bd05b9123fba8ad8d5259fe6ce873262937e45a Author: K. Y. Srinivasan Date: Tue May 10 07:54:45 2011 -0700 Staging: hv: storvsc_drv: Move the declaration of the driver variable Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 565c38def1cfb87bdbd13dfe1bec88dd702db03c Author: K. Y. Srinivasan Date: Tue May 10 07:54:44 2011 -0700 Staging: hv: storvsc_drv: Rename the driver variable Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f5c78872d5c44220045e7e757cd9ff63195d91da Author: K. Y. Srinivasan Date: Tue May 10 07:54:43 2011 -0700 Staging: hv: Get rid of the forward declaration of storvsc_probe() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c5b463ae24244aef6af4e0c324e25e5f6f46b2e1 Author: K. Y. Srinivasan Date: Tue May 10 07:54:42 2011 -0700 Staging: hv: Get rid of the forward declaration of storvsc_queuecommand() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8a411bad39fb91e212f09ce99a642c7e7bb95325 Author: K. Y. Srinivasan Date: Tue May 10 07:54:41 2011 -0700 Staging: hv: Move the function storvsc_commmand_completion() to earlier in the file Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3d598ce1c55358ca2de41ce14d4fba82dfaf0817 Author: K. Y. Srinivasan Date: Tue May 10 07:54:40 2011 -0700 Staging: hv: storvsc_drv: Move module parameters to earlier in the file Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2db2cabe77294048dfd45ad12467517f27a1344b Author: K. Y. Srinivasan Date: Tue May 10 07:54:39 2011 -0700 Staging: hv: Move the definition of storvsc_ringbuffer_size to earlier in the file Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 96e690be736ed348b6765dec14f4104d9ad71d96 Author: K. Y. Srinivasan Date: Tue May 10 07:54:38 2011 -0700 Staging: hv: Get rid of the forward declaration for storvsc_host_reset_handler() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit aa3d789e593e2515c0416edffb5fd59b7bf68efd Author: K. Y. Srinivasan Date: Tue May 10 07:54:37 2011 -0700 Staging: hv: Move the definition of storvsc_host_reset() to earlier in the file Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cf6fdfb33c0a2beea9fbaf20f1f6f121bfef421d Author: K. Y. Srinivasan Date: Tue May 10 07:54:36 2011 -0700 Staging: hv: Rename stor_vsc_initialize() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3d5f03fa31afe5e19839602a6acba2d72041f86a Author: K. Y. Srinivasan Date: Tue May 10 07:54:35 2011 -0700 Staging: hv: Rename the function stor_vsc_on_host_reset() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 62838ce22355466c4953d37e604be29405f52904 Author: K. Y. Srinivasan Date: Tue May 10 07:54:34 2011 -0700 Staging: hv: Get rid of the forward declaration of storvsc_get_chs() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5c5c023496d61cee6088f59fe5e7e7a8034f6fa9 Author: K. Y. Srinivasan Date: Tue May 10 07:54:33 2011 -0700 Staging: hv: Get rid of the forward declaration of storvsc_remove() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6a8ff44b76edaa63d8781e93e64e8481e35510b0 Author: K. Y. Srinivasan Date: Tue May 10 07:54:32 2011 -0700 Staging: hv: Get rid of the forward declaration for copy_to_bounce_buffer() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 29fe2c9becc4aec00ff3a647cbfce2c75a5b5aaf Author: K. Y. Srinivasan Date: Tue May 10 07:54:31 2011 -0700 Staging: hv: Get rid of the forward declaration of copy_from_bounce_buffer() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a9753cbd6cc63e8fd75eab5d458370d49827c177 Author: K. Y. Srinivasan Date: Tue May 10 07:54:30 2011 -0700 Staging: hv: Get rid of the forward declaration for create_bounce_buffer() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3862ef3e5ed19d27fbd4f39172db1d388d0bdd62 Author: K. Y. Srinivasan Date: Tue May 10 07:54:29 2011 -0700 Staging: hv: Get rid of the forward declaration for do_bounce_buffer() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 49a3c7a90a45fc2ce380083cc8a797865d25df00 Author: K. Y. Srinivasan Date: Tue May 10 07:54:28 2011 -0700 Staging: hv: Get rid of the forwrd declaration of destroy_bounce_buffer Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 419f2d03846eaa5d26497f2fb987c5901e62d3d8 Author: K. Y. Srinivasan Date: Tue May 10 07:54:27 2011 -0700 Staging: hv: Get rid of the forward declaration for storvsc_device_configure() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a1ebfeae887bd5ecd3ce23b7f5ee7dbc3190d427 Author: K. Y. Srinivasan Date: Tue May 10 07:54:26 2011 -0700 Staging: hv: Move the function storvsc_merge_bvec() to earlier in the file Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5b60aceedc7b1378f8f979722f7dd15b06d29ecf Author: K. Y. Srinivasan Date: Tue May 10 07:54:25 2011 -0700 Staging: hv: Get rid of the forward declaration for storvsc_device_alloc() Get rid of the forward declaration by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f8feed068532b28f7391b93799d00a7f3eb6f922 Author: K. Y. Srinivasan Date: Tue May 10 07:54:24 2011 -0700 Staging: hv: storvsc_drv: Get rid of some DPRINTS Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7f9facada316ae7603a1780c39f3929841b99567 Author: K. Y. Srinivasan Date: Tue May 10 07:54:23 2011 -0700 Staging: hv: storvsc_drv: Get rid of some dated comments Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c2ad4830a742aa926cae0d177d82b1ada7ab16a2 Author: K. Y. Srinivasan Date: Tue May 10 07:54:22 2011 -0700 Staging: hv: storvsc_drv: Rename variables pointing to struct hv_device Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 97c1529623c794afebe5ef146e35441a507067ad Author: K. Y. Srinivasan Date: Tue May 10 07:54:21 2011 -0700 Staging: hv: storvsc_drv: Rename the struct hv_device * element of struct hv_host_device Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 795b613d8b780a878abf086c667c59e604c99c27 Author: K. Y. Srinivasan Date: Tue May 10 07:54:20 2011 -0700 Staging: hv: storvsc_drv: Rename variables pointing to struct hv_host_device Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 972621c965fa0d18904152890540d7c1643d6d7f Author: K. Y. Srinivasan Date: Tue May 10 07:54:19 2011 -0700 Staging: hv: storvsc_drv: Rename struct host_device_context Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0f0cdc6af658cf2e567ad404d30296a912b4af41 Author: K. Y. Srinivasan Date: Tue May 10 07:54:18 2011 -0700 Staging: hv: storvsc_drv: Rename g_driver_name Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5f61ec34d2c1b9a4802feccef4d30938d6f01090 Author: K. Y. Srinivasan Date: Tue May 10 07:54:17 2011 -0700 Staging: hv: storvsc: Get rid of some unnecessary DPRINTS Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6028210ecf3944a3edac982a0a1c4e2159244411 Author: K. Y. Srinivasan Date: Tue May 10 07:54:16 2011 -0700 Staging: hv: storvsc: Get rid of/change some dated comments Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 280c5f3844631aadd6b57385b0e3b2e58bdb423f Author: K. Y. Srinivasan Date: Tue May 10 07:54:15 2011 -0700 Staging: hv: Rename stor_vsc_connect_to_vsp Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 24d9aab0b62aef29a3dc74b0c93fb3648ea6020e Author: K. Y. Srinivasan Date: Tue May 10 07:54:14 2011 -0700 Staging: hv: Rename stor_vsc_on_channel_callback Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8e6766f856d925ee3477cec58b7a178118a5c6bf Author: K. Y. Srinivasan Date: Tue May 10 07:54:13 2011 -0700 Staging: hv: Rename stor_vsc_on_receive Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a38b94f93c2c719cc402f253d9d13fa869c9aaca Author: K. Y. Srinivasan Date: Tue May 10 07:54:12 2011 -0700 Staging: hv: Rename stor_vsc_on_io_completion Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3fa22517fb85e136b5030405d53cdbad4c36a501 Author: K. Y. Srinivasan Date: Tue May 10 07:54:11 2011 -0700 Staging: hv: Rename stor_vsc_channel_init() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 149b11936159b13995d940c21ec622f756dfd66d Author: K. Y. Srinivasan Date: Tue May 10 07:54:10 2011 -0700 Staging: hv: Cleanup blkvsc_shutdown() Use the newly introduced function to wait for draining I/Os to cleanup blkvsc_shutdown(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f670f824d6a740963d506d6d47a4c1a07b61c630 Author: K. Y. Srinivasan Date: Tue May 10 07:54:09 2011 -0700 Staging: hv: Cleanup blkvsc_remove() The function storvsc_dev_remove() already deals with draining of the outstanding I/O. Cleanup blkvsc_remove() keeping this in mind. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 19fc2f2ae48d98690a55187b62497e83992d60fc Author: K. Y. Srinivasan Date: Tue May 10 07:54:08 2011 -0700 Staging: hv: Use the newly introduced I/O drain synch method Use the newly introduced I/O drain synch method. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 604df37dc3ba185b1017f6ca5e497fbfb68da8d8 Author: K. Y. Srinivasan Date: Tue May 10 07:54:07 2011 -0700 Staging: hv: Introduce a function to wait to drain outgoing I/O Rather than busy loop waiting to drain I/O, introduce a function that does not burn CPU cycles waiting. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 43c51f7dd13c75962eebc4c28667d1b0162543ed Author: K. Y. Srinivasan Date: Tue May 10 07:54:06 2011 -0700 Staging: hv: Rename the function stor_vsc_get_major_info() Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bc2c2dc2e08b605ff13dcfebdabb9f43c11eaf62 Author: K. Y. Srinivasan Date: Tue May 10 07:54:05 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the calls to storvsc_cleanup The storvsc_cleanup() is an empty function; get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7e7f0c5579b60a851243796fe7cbe6913aad32b2 Author: K. Y. Srinivasan Date: Tue May 10 07:54:04 2011 -0700 Staging: hv: blkvsc_drv: Statically initialize pointers for probe etc Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7b3177993d3ad9981175cfec519a8988f9e2bcf5 Author: K. Y. Srinivasan Date: Tue May 10 07:54:03 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the indirection for invoking io request Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bb46592617cd409572daaa7d5a90437b38197692 Author: K. Y. Srinivasan Date: Tue May 10 07:54:02 2011 -0700 Staging: hv: Rename the function stor_vsc_on_io_request Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 896ee0156412412383391a1692042c8f0c623f81 Author: K. Y. Srinivasan Date: Tue May 10 07:54:01 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the indirection for invoking cleanup function Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e757046fc84c7c3e8e6ea881a5d736078f750549 Author: K. Y. Srinivasan Date: Tue May 10 07:54:00 2011 -0700 Staging: hv: Rename the function stor_vsc_on_cleanup Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3530ef301049ed795645824146a66e22e04f4616 Author: K. Y. Srinivasan Date: Tue May 10 07:53:59 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the indirection for removing stor device Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit cb706b0458228bb56002f478e0ec46932df840c2 Author: K. Y. Srinivasan Date: Tue May 10 07:53:58 2011 -0700 Staging: hv: Rename the function stor_vsc_on_device_remove Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2ac5dad14b731fd5dad49e93b38b855a0c413e37 Author: K. Y. Srinivasan Date: Tue May 10 07:53:57 2011 -0700 Staging: hv: Rename the function stor_vsc_device_add Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0d44f5bf09d18ee8953853c052069d214dd2e182 Author: K. Y. Srinivasan Date: Tue May 10 07:53:56 2011 -0700 Staging: hv: blkvsc_drv: Get rid of the indirection for invoking device_add Get rid of the indirection for invoking device_add. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 34d620dad779b6c23b1e337742e7451dfa3dc47c Author: K. Y. Srinivasan Date: Tue May 10 07:53:55 2011 -0700 Staging: hv: Rename the function blk_vsc_on_device_add Rename the function blk_vsc_on_device_add. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f6180e277e29457b98452fbd8de505b8fddf1bca Author: K. Y. Srinivasan Date: Tue May 10 07:53:54 2011 -0700 Staging: hv: Rename variables of type struct storvsc_driver * Rename the variables pointing to variables of type struct storvsc_driver *. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d45f62d3c274504cff787a0d7d59a19e232e46f9 Author: K. Y. Srinivasan Date: Tue May 10 07:53:53 2011 -0700 Staging: hv: Change the name of blkvsc driver variable Rename the variable g_blkvsc_drv. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2e79505d02e2a2ae3e5df60c1f06ebe9e6e00c9e Author: K. Y. Srinivasan Date: Tue May 10 07:53:52 2011 -0700 Staging: hv: Change the name of struct storvsc_driver_object Rename the struct storvsc_driver_object. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1f9c54e40f8a70d2505fff08e6c0d1d7dc9761f6 Author: K. Y. Srinivasan Date: Tue May 10 07:53:51 2011 -0700 Staging: hv: blkvsc_drv: Rename the device type variable Rename the variable g_blk_device_type. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5e9fed195bac5eb89e2ee3c9ce89379b8a55be4f Author: K. Y. Srinivasan Date: Tue May 10 07:53:50 2011 -0700 Staging: hv: blkvsc_drv: Rename driver name variable Rename the variable g_blk_driver_name. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 67de49c15480afd50b86f0cf18af82616974a5a9 Author: K. Y. Srinivasan Date: Tue May 10 07:53:49 2011 -0700 Staging: hv: blkvsc_drv: Fix some locking issues Additional lock related cleanup. Properly serialize access to state even for command related operations. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6b73e4c06d326571589eebcb78efde6182330042 Author: K. Y. Srinivasan Date: Tue May 10 07:53:48 2011 -0700 Staging: hv: blkvsc_drv: Cleanup spin lock usage This spin lock is potentially acquired from interrupt context. Ensure that the interrupts are blocked whenever the lock is held. The current code was not consistent with regards to blocking interrupts - the same lock would be acquired without blocking interrupts in some instance while the interrupts would be blocked in other instances. Fix this potential deadlock problem. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c56624988dabc11ae9872159401d1fca7e597f18 Author: K. Y. Srinivasan Date: Tue May 10 07:53:47 2011 -0700 Staging: hv: Get rid of blkvsc_mutex The blkvsc_mutex is unnecessary as the state it is protecting (blkdev->users) is already protected by the spin lock. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 01f37f2d53e14a05b7fc3601d182f31ac3b35847 Author: Konrad Rzeszutek Wilk Date: Wed May 11 15:57:09 2011 -0400 xen/blkback: Fixed up comments and converted spaces to tabs. Suggested-by: Ian Campbell Signed-off-by: Konrad Rzeszutek Wilk commit 365227e5fdf3d117e096416d9d3cc148959a829e Author: Vinicius Costa Gomes Date: Fri May 6 18:41:44 2011 -0300 Bluetooth: Add support for disconnecting LE links via mgmt If we can't find a ACL link between the devices, we search the connection list one second time looking for LE links. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 83bc71b4102d2a288edaf9ee398b330b88a88086 Author: Vinicius Costa Gomes Date: Fri May 6 18:41:43 2011 -0300 Bluetooth: Add support for sending connection events for LE links We need to be able for receive events notifying that the connection was established, the connection attempt failed or that disconnection happened. Signed-off-by: Vinicius Costa Gomes Signed-off-by: Gustavo F. Padovan commit 2e711c04dbbf7a7732a3f7073b1fc285d12b369d Author: Rafael J. Wysocki Date: Tue Apr 26 19:15:07 2011 +0200 PM: Remove sysdev suspend, resume and shutdown operations Since suspend, resume and shutdown operations in struct sysdev_class and struct sysdev_driver are not used any more, remove them. Also drop sysdev_suspend(), sysdev_resume() and sysdev_shutdown() used for executing those operations and modify all of their users accordingly. This reduces kernel code size quite a bit and reduces its complexity. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit f5a592f7d74e38c5007876c731e6bf5580072e63 Author: Rafael J. Wysocki Date: Tue Apr 26 19:14:57 2011 +0200 PM / PowerPC: Use struct syscore_ops instead of sysdevs for PM Make some PowerPC architecture's code use struct syscore_ops objects for power management instead of sysdev classes and sysdevs. This simplifies the code and reduces the kernel's memory footprint. It also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit f98bf4aa39ecce96020631cba910be094c87ac3c Author: Rafael J. Wysocki Date: Tue Apr 26 19:14:47 2011 +0200 PM / UNICORE32: Use struct syscore_ops instead of sysdevs for PM Make some UNICORE32 architecture's code use struct syscore_ops objects for power management instead of sysdev classes and sysdevs. This simplifies the code and reduces the kernel's memory footprint. It also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Acked-by: Guan Xuetao commit f25f4f522a9d2e18595da9df0bf1b6f282040e08 Author: Rafael J. Wysocki Date: Tue Apr 26 19:14:35 2011 +0200 PM / AVR32: Use struct syscore_ops instead of sysdevs for PM Convert some AVR32 architecture's code to using struct syscore_ops objects for power management instead of sysdev classes and sysdevs. This simplifies the code and reduces the kernel's memory footprint. It also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Acked-by: Hans-Christian Egtvedt commit bbe6ad6dcb1eb26bd12ec85320f402721c3383ae Author: Luciano Coelho Date: Wed May 11 17:09:37 2011 +0300 cfg80211/nl80211: add interval attribute for scheduled scans Introduce NL80211_ATTR_SCHED_SCAN_INTERVAL as a required attribute for NL80211_CMD_START_SCHED_SCAN. This value informs the driver at which intervals the scheduled scan cycles should be executed. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 79f460ca49d8d5700756ab7071c951311c7f29cc Author: Luciano Coelho Date: Wed May 11 17:09:36 2011 +0300 mac80211: add support for HW scheduled scan Implement support for HW scheduled scan. The mac80211 code doesn't perform scheduled scans itself, but calls the driver to start and stop scheduled scans. This patch also creates a trace event class to be used by drv_hw_scan and the new drv_sched_scan_start and drv_sched_stop functions, in order to avoid duplicate code. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 807f8a8c300435d5483e8d78df9dcdbc27333166 Author: Luciano Coelho Date: Wed May 11 17:09:35 2011 +0300 cfg80211/nl80211: add support for scheduled scans Implement new functionality for scheduled scan offload. With this feature we can scan automatically at certain intervals. The idea is that the hardware can perform scan automatically and filter on desired results without waking up the host unnecessarily. Add NL80211_CMD_START_SCHED_SCAN and NL80211_CMD_STOP_SCHED_SCAN commands to the nl80211 interface. When results are available they are reported by NL80211_CMD_SCHED_SCAN_RESULTS events. The userspace is informed when the scheduled scan has stopped with a NL80211_CMD_SCHED_SCAN_STOPPED event, which can be triggered either by the driver or by a call to NL80211_CMD_STOP_SCHED_SCAN. Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 6bdbdbf4a151a3a1333818cd17a7d7795e936041 Author: Sascha Silbe Date: Wed May 11 14:52:34 2011 +0200 libertas: Add libertas_disablemesh module parameter to disable mesh interface This allows individual users and deployments to disable mesh support at runtime, i.e. without having to build and maintain a custom kernel. Based on a patch by Paul Fox . Signed-off-by: Sascha Silbe Signed-off-by: John W. Linville commit a8c485652ad4217800015aab25f1b70b96adb1a9 Author: Bing Zhao Date: Tue May 10 20:47:36 2011 -0700 mwifiex: cleanup ioctl.h Some structures and macros in ioctl.h are redundant or no longer used. Signed-off-by: Bing Zhao Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit c4859fbcfc12d5cfe8c30a33ad37d192a3093a7b Author: Amitkumar Karwar Date: Tue May 10 20:47:35 2011 -0700 mwifiex: remove redundant local structures Avoid use of local structure in the function if the structure is already allocated by the caller and the structure pointer is passed. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 0fd82eafe3aa70937905b7e19e256409ae48477e Author: Rafał Miłecki Date: Wed May 11 02:10:59 2011 +0200 b43: implement timeouts workaround Documented in: <4DCA7E40.9070709@lwfinger.net> Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 8576f815d5c8beb8b10f96abe31831b90af3d352 Author: Rafał Miłecki Date: Wed May 11 02:10:58 2011 +0200 ssb: move ssb_commit_settings and export it Commiting settings is possible on devices without PCI core (but with CC core). Export it for usage in drivers supporting other cores. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1073e4ee595265086a592a056d903bf4fcc8885a Author: Rafał Miłecki Date: Wed May 11 02:08:09 2011 +0200 bcma: add missing GPIO defines, use PULL register only when available Similar patch was commited to ssb. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit f59a59fea3be78c2bda23cb7f55225b33c502c3c Author: Felix Fietkau Date: Tue May 10 20:52:22 2011 +0200 ath9k: fix a regression in PS frame filter handling Only leave filtering enabled for AP or VLAN interfaces, clear the destination mask for all other interfaces. Signed-off-by: Felix Fietkau Reported-by: Ben Greear Tested-by: Ben Greear Signed-off-by: John W. Linville commit 858a16529cb4c6434d863740283e0dfeb93cd599 Author: Rafał Miłecki Date: Tue May 10 16:05:33 2011 +0200 b43: move MAC PHY clock controling function This is not N-PHY specific function, we partially duplicate code. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a7ffab33203ae0c755b33a80756fe734f732dbb0 Author: Rafał Miłecki Date: Tue May 10 15:53:16 2011 +0200 b43legacy: trivial: use TMSLOW def instead of magic value Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 92ddc111c4bc7216673bce7c49a2d54bedb1593c Author: Luciano Coelho Date: Mon May 9 14:40:06 2011 +0300 mac80211: add a couple of trace event classes to reduce duplicated code The functions drv_add_interface() and drv_remove_interface() print out the same values in the traces. Combine the traces of these two functions into one event class to remove some duplicate code. Also add a new class for functions drv_set_frag_threshold() and drv_set_rts_threshold(). Cc: Johannes Berg Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit d381f221199c58d2bf25a7024e786fc58562487c Author: Ben Greear Date: Fri May 6 15:24:34 2011 -0700 ath5k: Fix lockup due to un-init spinlock. This was introduced in 2.6.39-rc1 it seems. Signed-off-by: Ben Greear Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit 9b76b1e4d383868ba9c2a5fa2c2716bbc2384342 Author: Fabrice Deyber Date: Fri May 6 15:11:51 2011 -0700 mac80211: Only process mesh PREPs with equal seq number if metric is better. This fixes routing loops in PREP propagation and is in accordance with Draft 11, Section: 11C.9.8.4. Signed-off-by: Fabrice Deyber Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit fd5999cf11c8322568034bbf0d5594be94542a57 Author: Javier Cardona Date: Tue May 3 16:57:19 2011 -0700 ath9k: fix beaconing for mesh interfaces Mesh beaconing on ath9k was broken by this commit: commit 4801416c76a3a355076d6d371c00270dfe332e1c Author: Ben Greear Date: Sat Jan 15 19:13:48 2011 +0000 This patch assigns the right opmode when the device is used in mesh mode. Reported-by: Fabrice Deyber fabricedeyber@agilemesh.com Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 1833d81a1229adeab98f275b47624d66462561e5 Author: Javier Cardona Date: Tue May 3 16:57:18 2011 -0700 mac80211: allow setting supported rates on mesh peers This is necessary for userspace managed stations. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 28104cae63708d1790cd71db8a45af50d5ea5a92 Author: Javier Cardona Date: Tue May 3 16:57:17 2011 -0700 mac80211: Move call to mpp_path_lookup inside RCU-read section PROVE_RCU caught that one: [ 431.214070] =================================================== [ 431.215341] [ INFO: suspicious rcu_dereference_check() usage. ] [ 431.215674] --------------------------------------------------- [ 431.216043] net/mac80211/mesh_pathtbl.c:184 invoked rcu_dereference_check() without protection! Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 9b84b80891e5e25ae21c855bb135b05274125a29 Author: Javier Cardona Date: Tue May 3 16:57:16 2011 -0700 mac80211: Fix locking bug on mesh path table access The mesh and mpp path tables are accessed from softirq and workqueue context so non-irq locking cannot be used. Or at least that's what PROVE_RCU seems to tell us here: [ 431.240946] ================================= [ 431.241061] [ INFO: inconsistent lock state ] [ 431.241061] 2.6.39-rc3-wl+ #354 [ 431.241061] --------------------------------- [ 431.241061] inconsistent {IN-SOFTIRQ-W} -> {SOFTIRQ-ON-W} usage. [ 431.241061] kworker/u:1/1423 [HC0[0]:SC0[0]:HE1:SE1] takes: [ 431.241061] (&(&newtbl->hashwlock[i])->rlock){+.?...}, at: [] mesh_path_add+0x167/0x257 Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 9ca99eeca0cfe839c481f3350988e9ed94188567 Author: Javier Cardona Date: Tue May 3 16:57:15 2011 -0700 mac80211: Check size of a new mesh path table for changes since allocation. Not sure if I'm chasing a ghost here, seems like the mesh_path->size_order needs to be inside an RCU-read section to prevent that value from changing between table allocation and copying. We have observed crashes that might be caused by this. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 8f9cb77d6d213c153b0571f494df0c24456aaf47 Author: Thomas Pedersen Date: Tue May 3 16:57:14 2011 -0700 mac80211: Self-protected management frames are not robust They may contain encrypted information elements (as AMPE frames do) but they are not encrypted. Signed-off-by: Thomas Pedersen Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 8429828ec96b66b6861e9fabebec007e9e132370 Author: Thomas Pedersen Date: Tue May 3 16:57:13 2011 -0700 nl80211: allow setting MFP flag for a meshif Signed-off-by: Thomas Pedersen Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit ff973af74aa6932ca4758266bccec68e8135ddf7 Author: Thomas Pedersen Date: Tue May 3 16:57:12 2011 -0700 nl80211: allow installing keys for a meshif Signed-off-by: Thomas Pedersen Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 9c3990aaec0ad9f686ef6480f6861f2df89b2a7a Author: Javier Cardona Date: Tue May 3 16:57:11 2011 -0700 nl80211: Let userspace drive the peer link management states. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 0a35d36d6f019bde6c98812456798275b02e5aee Author: Javier Cardona Date: Wed May 4 10:24:56 2011 -0700 cfg80211: Use capability info to detect mesh beacons. Mesh beacons no longer use all-zeroes BSSID. Beacon frames for MBSS, infrastructure BSS, or IBSS are differentiated by the Capability Information field in the Beacon frame. A mesh STA sets the ESS and IBSS subfields to 0 in transmitted Beacon or Probe Response management frames. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 915b5c50f8f45e78ea96d93f1e49edb20c9470bd Author: Javier Cardona Date: Tue May 3 16:57:10 2011 -0700 open80211s: Stop using zero for address 3 in mesh plink mgmt frames Previous versions of 11s draft used the all zeroes address. Current draft uses the same address as address 2. Also, use the ANA-approved action category code for peer establishment frames. Note: This breaks compatibility with previous mesh protocol instances. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit d3aaec8ab76c2d604c2ba7332e1338674607597b Author: Javier Cardona Date: Tue May 3 16:57:09 2011 -0700 mac80211: Drop MESH_PLINK category and use new ANA-approved MESH_ACTION Note: This breaks compatibility with previous mesh protocol instances. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 0778a6a3e56cabdc322755f97ad23ee67efad0f0 Author: Javier Cardona Date: Tue May 3 16:57:08 2011 -0700 mac80211: Let userspace send action frames over mesh interfaces Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit b130e5cec958bae3867cf6ab09a9b24ba8fada01 Author: Javier Cardona Date: Tue May 3 16:57:07 2011 -0700 nl80211: Introduce NL80211_MESH_SETUP_USERSPACE_AMPE Introduce a new configuration option to support AMPE from userspace. Prior to this series we only supported authentication in userspace: an authentication daemon would authenticate peer candidates in userspace and hand them over to the kernel. From that point the mesh stack would take over and establish a peer link (Mesh Peering Management). These patches introduce support for Authenticated Mesh Peering Exchange in userspace. The userspace daemon implements the AMPE protocol and on successfull completion create mesh peers and install encryption keys. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 3c709f8fb43e07a0403bba4a8ca7ba00ab874994 Merge: 0074820 9bbc052 Author: David S. Miller Date: Wed May 11 14:26:15 2011 -0400 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-3.6 Conflicts: drivers/net/benet/be_main.c commit 1cf02bbd51a1ff74a31f88b1f654243a4affef8d Merge: 805499a bd7e388 Author: Russell King Date: Wed May 11 19:01:04 2011 +0100 Merge branch 'samsung-irq' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc-2.6 into devel-stable commit b3b1b061583ba4909b59a2f736825d86495fe956 Author: Waldemar Rymarkiewicz Date: Fri May 6 09:42:31 2011 +0200 Bluetooth: Double check sec req for pre 2.1 device In case of pre v2.1 devices authentication request will return success immediately if the link key already exists without any authentication process. That means, it's not possible to re-authenticate the link if you already have combination key and for instance want to re-authenticate to get the high security (use 16 digit pin). Therefore, it's necessary to check security requirements on auth complete event to prevent not enough secure connection. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 2a7bccccdb9604a717c2128a931f022267d35629 Author: Andy Ross Date: Mon May 9 16:11:16 2011 -0700 Bluetooth: Device ids for ath3k on Pegatron Lucid tablets New ath3k device IDs used on the Pegatron Lucid (ExoPC and WeTab) units. Signed-off-by: Andy Ross Signed-off-by: Gustavo F. Padovan commit 805499a6d5d7b7fa8528170d1b2869ea88485f99 Merge: 254c44e aac4dd1 Author: Russell King Date: Wed May 11 18:49:31 2011 +0100 Merge branch 'irq-davinci' of git://gitorious.org/linux-davinci/linux-davinci into devel-stable commit 254c44ea822066e24ab5efbdff1e43b8fe45ae76 Merge: 7b76415 6ac77e4 Author: Russell King Date: Wed May 11 18:45:21 2011 +0100 Merge branch 'gic-fasteoi' of git://linux-arm.org/linux-2.6-wd into devel-stable commit aac4dd1dab8acfc244d697473d2a5f4424a5746c Author: Thomas Gleixner Date: Fri Apr 15 11:19:57 2011 +0200 arm: davinci: Use generic irq chip Simple conversion which simply uses the fact that the second irq chip base address has offset 0x04 to the first one. Signed-off-by: Thomas Gleixner Reviewed-and-Tested-by: Kevin Hilman Tested-by: Sekhar Nori commit f3a57fd148a4afd3c38f558c5b44972cb29ea8ba Author: Joe Perches Date: Mon May 2 16:49:15 2011 -0700 libertas: Use netdev_ or dev_ where possible Using the more descriptive logging styles gives a bit more information about the device being operated on. Makes the object trivially smaller too. $ size drivers/net/wireless/libertas/built-in.o.* 187730 2973 38488 229191 37f47 drivers/net/wireless/libertas/built-in.o.new 188195 2973 38488 229656 38118 drivers/net/wireless/libertas/built-in.o.old Signed-off-by: Joe Perches Acked-by: Dan Williams Signed-off-by: John W. Linville commit 0e4e06ae5e895864b4a4bca7eec2e3015fddca98 Author: Joe Perches Date: Mon May 2 16:49:14 2011 -0700 libertas: Convert lbs_pr_ to pr_ Use the standard pr_ functions eases grep a bit. Added a few missing terminating newlines to messages. Coalesced long formats. Signed-off-by: Joe Perches Acked-by: Dan Williams Signed-off-by: John W. Linville commit 7a627e3b9a2bd0f06945bbe64bcf403e788ecf6e Author: Greg Kroah-Hartman Date: Tue May 10 15:34:16 2011 -0700 SELINUX: add /sys/fs/selinux mount point to put selinuxfs In the interest of keeping userspace from having to create new root filesystems all the time, let's follow the lead of the other in-kernel filesystems and provide a proper mount point for it in sysfs. For selinuxfs, this mount point should be in /sys/fs/selinux/ Cc: Stephen Smalley Cc: James Morris Cc: Eric Paris Cc: Lennart Poettering Cc: Daniel J Walsh Signed-off-by: Greg Kroah-Hartman [include kobject.h - Eric Paris] [use selinuxfs_obj throughout - Eric Paris] Signed-off-by: Eric Paris commit 0074820978004cc484b132d7a9ce0df414660d9d Merge: 1fc19af 972a77f Author: David S. Miller Date: Wed May 11 12:41:28 2011 -0400 Merge branch 'tipc-May10-2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/net-next-2.6 commit 9e53d856af0db8acc8a1bc6a9e3298f6bbb8944b Author: Randy Dunlap Date: Sun May 8 09:48:24 2011 -0700 ASoC: fix wm8958-dsp2 printk format warnings Fix printk format warnings in wm8958-dsp2.c: sound/soc/codecs/wm8958-dsp2.c:103: warning: format '%d' expects type 'int', but argument 4 has type 'size_t' sound/soc/codecs/wm8958-dsp2.c:111: warning: format '%d' expects type 'int', but argument 3 has type 'size_t' sound/soc/codecs/wm8958-dsp2.c:144: warning: format '%d' expects type 'int', but argument 5 has type 'size_t' Signed-off-by: Randy Dunlap Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 69643e4829c5cd13bafe44a6b9f3eb2086e0f618 Author: Ian Campbell Date: Wed May 11 17:00:32 2011 +0100 PCI hotplug: acpiphp: assume device is in state D0 after powering on a slot. Devices which do not support PCI configuration space based power management may not otherwise be enabled. Signed-off-by: Ian Campbell Signed-off-by: Jesse Barnes commit 3be79d13753058901814ae93043c290c5a9fdda5 Author: Peter Ujfalusi Date: Mon May 2 14:16:29 2011 +0300 MAINTAINERS: Update e-mail address for asoc/twl4030 Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 0ac3a014b8cb0ea9a80d4f5c551ad1a7fa258a3c Author: Peter Ujfalusi Date: Tue May 3 18:15:10 2011 +0300 ASoC: RX51: Update e-mail address Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Acked-by: Jarkko Nikula Signed-off-by: Liam Girdwood commit 1c7687b9958369e4e41018f4e2b4e0f901e13722 Author: Peter Ujfalusi Date: Tue May 3 18:14:43 2011 +0300 ASoC: omap-pcm: Update e-mail address Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Acked-by: Jarkko Nikula Signed-off-by: Liam Girdwood commit 56a874291606f996da26063f7e90ef2864884bc8 Author: Peter Ujfalusi Date: Tue May 3 18:14:06 2011 +0300 ASoC: omap-mcbsp: Update e-mail address Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Acked-by: Jarkko Nikula Signed-off-by: Liam Girdwood commit b4079ef40a5ae87dc0d29bded7a682b1cbe626ad Author: Peter Ujfalusi Date: Tue May 3 18:12:41 2011 +0300 ASoC: tpa6130a2: Update e-mail address Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 93864cf04283eb2899ef13ded472a9f24538303f Author: Peter Ujfalusi Date: Tue May 3 18:11:36 2011 +0300 ASoC: tlv320dac33: Update e-mail address Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 6ac77e469e991e9dd91b28e503fa24b5609eedba Author: Santosh Shilimkar Date: Mon Mar 28 19:27:46 2011 +0530 ARM: GIC: Convert GIC library to use the IO relaxed operations The GIC register accesses today make use of readl()/writel() which prove to be very expensive when used along with mandatory barriers. This mandatory barriers also introduces an un-necessary and expensive l2x0_sync() operation. On Cortex-A9 MP cores, GIC IO accesses from CPU are direct and doesn't go through L2X0 write buffer. A DSB before writel_relaxed() in gic_raise_softirq() is added to be compliant with the Barrier Litmus document - the mailbox scenario. Signed-off-by: Santosh Shilimkar Acked-by: Catalin Marinas Cc: Will Deacon commit 1a01753ed90a4fb84357b9b592e50564c07737f7 Author: Will Deacon Date: Wed Feb 9 12:01:12 2011 +0000 ARM: gic: use handle_fasteoi_irq for SPIs Currently, the gic uses handle_level_irq for handling SPIs (Shared Peripheral Interrupts), requiring active interrupts to be masked at the distributor level during IRQ handling. On a virtualised system, only the CPU interfaces are virtualised in hardware. Accesses to the distributor must be trapped by the hypervisor, adding latency to the critical interrupt path in Linux. This patch modifies the GIC code to use handle_fasteoi_irq for handling interrupts, which only requires us to signal EOI to the CPU interface when handling is complete. Cascaded IRQ handling is also updated to use the chained IRQ enter/exit functions to honour the flow control of the parent chip. Note that commit 846afbd1 ("GIC: Dont disable INT in ack callback") broke cascading interrupts by forgetting to add IRQ masking. This is no longer an issue because the unmask call is now unnecessary. Tested on Versatile Express and Realview EB (1176 w/ cascaded GICs). Tested-and-reviewed-by: Abhijeet Dharmapurikar Tested-and-acked-by: Santosh Shilimkar Acked-by: Catalin Marinas Signed-off-by: Will Deacon commit 4bd66cfde5c3b6eced0da483c6357ae46d3adbb5 Author: Colin Cross Date: Sun May 1 15:27:34 2011 -0700 ARM: tegra: irq: Add tegra_eoi Implement irq_eoi to allow the GIC irq chip flow controller to be changed to fasteoi. Signed-off-by: Colin Cross commit d1d8c666683cdbef18329ff8f3743ddaca8842ee Author: Colin Cross Date: Sun May 1 15:26:51 2011 -0700 ARM: tegra: irq: Move legacy_irq.c into irq.c Now that irq.c is just an interface layer between the gic and legacy_irq.c, move the contents of legacy_irq.c into irq.c. Signed-off-by: Colin Cross commit 4dda2d384bc69de260647c3b419967734a4de496 Author: Colin Cross Date: Sun May 1 14:10:11 2011 -0700 ARM: tegra: irq: Remove PM support Tegra PM irq support is being improved, remove it for now until the rest of the platform gets PM support. Signed-off-by: Colin Cross commit 938fa349fbc16880feae4b65e56691ca12ede9ab Author: Colin Cross Date: Sun May 1 14:10:10 2011 -0700 ARM: tegra: irq: convert to gic arch extensions Replace the ugly hack that inserts legacy irq controller calls into the irq call paths by reading and replacing the gic irq chip with the new gic arch extensions. Signed-off-by: Colin Cross commit 98022940c2431025be3c95e50035d762c40f539d Author: Will Deacon Date: Mon Feb 21 13:58:10 2011 +0000 ARM: tegra: update GPIO chained IRQ handler to use entry/exit functions This patch updates the Tegra gpio chained IRQ handler to use the chained IRQ enter/exit functions in order to function correctly on primary controllers with different methods of flow control. This is required for the GIC to move to fasteoi interrupt handling. Acked-by: Colin Cross Signed-off-by: Will Deacon commit adfed159ab71bff53ccac3013776580bc866d2ba Author: Will Deacon Date: Mon Feb 28 10:12:29 2011 +0000 ARM: nmk: update GPIO chained IRQ handler to entry/exit functions This patch updates the Nomadik gpio chained IRQ handler to use the chained IRQ enter/exit functions in order to function correctly on primary controllers with different methods of flow control. Cc: Rabin Vincent Cc: Grant Likely Acked-by: Linus Walleij Signed-off-by: Will Deacon commit 03dd765fe4dd9420ac430d2a7c19498afa4431b3 Author: Will Deacon Date: Mon Feb 21 14:54:57 2011 +0000 ARM: msm: update GPIO chained IRQ handler to use entry/exit functions This patch updates the MSM gpio chained IRQ handler to use the chained IRQ enter/exit functions in order to function correctly on primary controllers with different methods of flow control. Tested-and-reviewed-by: Abhijeet Dharmapurikar Acked-by: David Brown Signed-off-by: Will Deacon commit 0f43563f2d9d8f6f9e0727e4eedb7f557ed2fb4c Author: Will Deacon Date: Mon Feb 21 14:37:43 2011 +0000 ARM: s5pv310: update IRQ combiner to use chained entry/exit functions This patch updates the IRQ combiner chained IRQ handler code to use the chained IRQ enter/exit functions in order to function correctly on primary controllers with different methods of flow control. This is required for the GIC to move to fasteoi interrupt handling. Cc: Kyungmin Park Signed-off-by: Will Deacon commit ee144182590a6bd9ed1481cb09d15b92e6b5c348 Author: Will Deacon Date: Mon Feb 21 13:46:08 2011 +0000 ARM: omap: update GPIO chained IRQ handler to use entry/exit functions This patch updates the OMAP gpio chained IRQ handler to use the chained IRQ enter/exit functions in order to function correctly on primary controllers with different methods of flow control. Cc: Colin Cross Cc: Tony Lindgren Tested-and-acked-by: Santosh Shilimkar Signed-off-by: Will Deacon commit 704df8d694fe44d89504e9804403e384a6710ece Author: Keith Packard Date: Wed May 11 07:58:08 2011 -0700 MAINTAINERS: Switch maintainer for drm/i915 to Keith Packard Signed-off-by: Keith Packard commit 9fcce61c0eddbe21f42cb47bd5a366a6eb7956ce Author: Rafał Miłecki Date: Sun May 8 20:30:31 2011 +0200 ssb: update list of devices supporting multiple 80211 cores Some of the BCM43xx chips contain cores that are attached to the SSB, but are inactive as they do not connect to the external environment. These must not be registered. Several of these types are handled in driver ssb; however, the specific case of an inactive 802.11 cores is now treated in b43 and b43legacy. Although the current setup works, this minor change will place all such workarounds in ssb, and simplify the code in drivers b43 and b43legacy. Signed-off-by: Rafał Miłecki Tested-by: Larry Finger Acked-by: Larry Finger Signed-off-by: John W. Linville commit ca629928b9d5b28789c4b59729113e9d2b1bc7c0 Author: Mark Brown Date: Wed May 11 14:34:53 2011 +0200 ASoC: Disable WM8994/58 microphone detection over suspend It will be non-functional with the basises and clocks off anyway, if the system needs microphone detection enabled over suspend then it should be causing the CODEC to ignore suspend using the APIs for that to prevent the biases being disabled. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 6e28f976ec73aec688bf89a63ac719ba765e9360 Author: Mark Brown Date: Tue May 10 23:33:48 2011 +0200 ASoC: Use spi_write() for SPI writes do_spi_write() is just an open coded copy of do_spi_write() so we can delete it and just call spi_write() directly. Indeed, as a result of recent refactoring all the SPI write functions are just very long wrappers around spi_write() which don't add anything except for some pointless copies so we can just use spi_write() as the hw_write operation directly. It should be as type safe to do this as it is to do the same thing with I2C and it saves us a bunch of code. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 063b7cc43fb2413238095b81f9b4a2ee2c52056b Author: Mark Brown Date: Tue May 10 23:55:21 2011 +0200 ASoC: Remove byte swap in 4x12 SPI write snd_soc_4_12_spi_write() contains a byte swap. Since this code was written for an Analog CODEC on a Blackfin reference board it appears that this is done because while Blackfin is little endian the CODEC is big endian (as are most CODECs). Push this up into the generic 4x12 write function and use cpu_to_be16() to do the byte swap so things are more regular and things work on both CPU endiannesses. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 051e994e9506e64259df34e91b028fe2470fbf2a Author: Mark Brown Date: Wed May 11 13:47:47 2011 +0200 ASoC: Don't squash 16x8 registers down to 8 bits Currently we'll force all registers to fit in 8 bits before passing down to the I/O function. Looks like a cut'n'paste bug. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 3afb1b3e6fa358d8c7e652b80be6d0cde07b4b40 Author: Mark Brown Date: Wed May 11 00:01:58 2011 +0200 ASoC: Fix NULL vs. 0 warning in SSM2602 sparse complains if 0 is used as a NULL pointer constant. Signed-off-by: Mark Brown Acked-by: Mike Frysinger Acked-by: Liam Girdwood commit 9eb8f6743b076b67f00776cda4330c802e157b41 Author: Grant Likely Date: Thu Apr 28 14:27:20 2011 -0600 arm/dt: Allow CONFIG_OF on ARM Add some basic empty infrastructure for DT support on ARM. v5: - Fix off-by-one error in size calculation of initrd - Stop mucking with cmd_line, and load command line from dt into boot_command_line instead which matches the behaviour of ATAGS booting v3: - moved cmd_line export and initrd setup to this patch to make the series bisectable. - switched to alloc_bootmem_align() for allocation when unflattening the device tree. memblock_alloc() was not the right interface. Signed-off-by: Jeremy Kerr Tested-by: Tony Lindgren Acked-by: Nicolas Pitre Acked-by: Russell King Signed-off-by: Grant Likely commit 4c2896e88d976d0e5b2213c64cde885f5677fa2b Author: Grant Likely Date: Thu Apr 28 14:27:20 2011 -0600 arm/dt: Make __vet_atags also accept a dtb image The dtb is passed to the kernel via register r2, which is the same method that is used to pass an atags pointer. This patch modifies __vet_atags to not clear r2 when it encounters a dtb image. v2: fixed bugs pointed out by Nicolas Pitre Tested-by: Tony Lindgren Signed-off-by: Grant Likely commit 7ee4b98eca42c1ff1df7dcf443dac07f0a2ea93d Author: Andres Salomon Date: Thu Mar 17 17:32:35 2011 -0700 of/flattree: minor cleanups - static-ize some functions - add some additional comments Signed-off-by: Andres Salomon Signed-off-by: Grant Likely commit 85f60ae4ee817174b0f78928bc7066f28c3551ab Author: Grant Likely Date: Fri Apr 29 00:18:16 2011 -0600 dt/flattree: explicitly pass command line pointer to early_init_dt_scan_chosen This patch drops the reference to a global 'cmd_line' variable from early_init_dt_scan_chosen, and instead passes the pointer to the command line string via the *data argument. Each architecture does something slightly different with the initial command line, so it makes sense for the architecture to be able to specify the variable name. Signed-off-by: Grant Likely commit f3f7c1837f6bcae3601fc535b339426868bf1549 Author: Clemens Ladisch Date: Wed May 11 11:07:09 2011 +0200 ALSA: isight: fix locking Lockdep complains about conflicts between isight->mutex, ALSA's register_mutex, mm->mmap_sem, and pcm->open_mutex. This can be fixed by moving the calls to isight_pcm_abort(), snd_card_disconnect(), and fw_iso_resources_update() out of isight->mutex. These functions are designed to be called asynchronously; the mutex needs to protect only the device streaming state modified by isight_start/stop_streaming(). Signed-off-by: Clemens Ladisch Reported-by: Stefan Richter Signed-off-by: Takashi Iwai commit 3cabffd72c303c3b5bbbbe88c95b49043898d1f3 Author: Clemens Ladisch Date: Wed May 11 10:54:41 2011 +0200 ALSA: isight: remove experimental status Experiments have shown this driver to work now. Signed-off-by: Clemens Ladisch Tested-by: Stefan Richter Signed-off-by: Takashi Iwai commit aee70400184b6a8d39243b02c244aed61259a46b Author: Clemens Ladisch Date: Wed May 11 10:53:12 2011 +0200 ALSA: isight: fix hang when unplugging a running device When aborting a PCM stream, the xrun is signaled only if the stream is running. When disconnecting a PCM stream, calling snd_card_disconnect() too early would change the stream into a non-running state and thus prevent the xrun from being noticed by user space. To prevent this, move the snd_card_disconnect() call after the xrun. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit ac34dad26e6786257ef54d8df4f883825bea02eb Author: Stefan Richter Date: Wed May 11 10:52:21 2011 +0200 ALSA: isight: wrap up register accesses Signed-off-by: Stefan Richter [cl: removed superfluous variable] Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 8839eedafd2e91e5b124730825e9b39b1ff493dd Author: Stefan Richter Date: Wed May 11 10:49:58 2011 +0200 ALSA: isight: add AudioEnable register write which is needed to get the iSight to talk. Signed-off-by: Stefan Richter Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit f2934cd499ba2c7f605787508b4cfcfa3a45b0a4 Author: Clemens Ladisch Date: Wed May 11 10:49:02 2011 +0200 ALSA: isight: fix divide error when queueing packets Set the .header_size field when queueing packets to avoid a division by zero. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 898732d1f1c7181fd3e94e7d7a784edb48d09d95 Author: Clemens Ladisch Date: Wed May 11 10:48:24 2011 +0200 ALSA: isight: fix packet requeueing After handling a received packet, we want to resubmit the same packet, so do not increase the packet index too early. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit 03c29680d49662859d14d64f8673550fa3fb2ed1 Author: Clemens Ladisch Date: Wed May 11 10:47:30 2011 +0200 ALSA: isight: fix isight_pcm_abort() crashes Fix crashes in isight_pcm_abort() that happen when the driver tries to access isight->pcm->runtime which does not exist when the device is not open. Introduce a new field pcm_active to track this state. Signed-off-by: Clemens Ladisch Reported-by: Stefan Richter Signed-off-by: Takashi Iwai commit 3a691b28a0ca3cf4d9010c6158318159e0275d2c Author: Clemens Ladisch Date: Wed May 11 10:44:51 2011 +0200 ALSA: add Apple iSight microphone driver This adds an experimental driver for the front and rear microphones of the Apple iSight web camera. Signed-off-by: Clemens Ladisch Signed-off-by: Takashi Iwai commit ca1d4a9e772bde0a0b8cda61ee9fdca29f80f361 Author: Avi Kivity Date: Wed Apr 20 13:37:53 2011 +0300 KVM: x86 emulator: drop vcpu argument from pio callbacks Making the emulator caller agnostic. Signed-off-by: Avi Kivity commit 0f65dd70a442ff498da10cec0a599fbd9d2d6f9e Author: Avi Kivity Date: Wed Apr 20 13:37:53 2011 +0300 KVM: x86 emulator: drop vcpu argument from memory read/write callbacks Making the emulator caller agnostic. Signed-off-by: Avi Kivity commit 7295261cdd42e6d41666df38d1b613cdd9e95f46 Author: Avi Kivity Date: Wed Apr 20 13:12:27 2011 +0300 KVM: x86 emulator: whitespace cleanups Clean up lines longer than 80 columns. No code changes. Signed-off-by: Avi Kivity commit 3d9b938eefb7d91a1ae13e425931bd5ac103b762 Author: Nelson Elhage Date: Mon Apr 18 12:05:53 2011 -0400 KVM: emulator: Use linearize() when fetching instructions Since segments need to be handled slightly differently when fetching instructions, we add a __linearize helper that accepts a new 'fetch' boolean. [avi: fix oops caused by wrong segmented_address initialization order] Signed-off-by: Nelson Elhage Signed-off-by: Avi Kivity commit 7c4c0f4fd5c3e82234c0ab61c7e7ffdb8f3af07b Author: Joerg Roedel Date: Mon Apr 18 11:42:53 2011 +0200 KVM: X86: Update last_guest_tsc in vcpu_put The last_guest_tsc is used in vcpu_load to adjust the tsc_offset since tsc-scaling is merged. So the last_guest_tsc needs to be updated in vcpu_put instead of the the last_host_tsc. This is fixed with this patch. Reported-by: Jan Kiszka Tested-by: Jan Kiszka Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 977b2d03e42e9ea9355d4baddb464810579719bd Author: Joerg Roedel Date: Mon Apr 18 11:42:52 2011 +0200 KVM: SVM: Fix nested sel_cr0 intercept path with decode-assists This patch fixes a bug in the nested-svm path when decode-assists is available on the machine. After a selective-cr0 intercept is detected the rip is advanced unconditionally. This causes the l1-guest to continue running with an l2-rip. This bug was with the sel_cr0 unit-test on decode-assists capable hardware. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 0521e4c0bc73aa86152ee4e4bd03724c8a9e1d6b Author: Nelson Elhage Date: Wed Apr 13 11:44:13 2011 -0400 KVM: x86 emulator: Handle wraparound in (cs_base + offset) when fetching insns Currently, setting a large (i.e. negative) base address for %cs does not work on a 64-bit host. The "JOS" teaching operating system, used by MIT and other universities, relies on such segments while bootstrapping its way to full virtual memory management. Signed-off-by: Nelson Elhage Signed-off-by: Avi Kivity commit 49704f26586ca87fcab4fe9323fff8db41e78910 Author: Duan Jiong Date: Mon Apr 11 12:44:06 2011 +0800 KVM: remove useless function declaration kvm_inject_pit_timer_irqs() Just remove useless function define kvm_inject_pit_timer_irqs() from file arch/x86/kvm/i8254.h Signed-off-by:Duan Jiong Signed-off-by: Avi Kivity commit 1e015968dfb9289934ad66a67fa38a93f0adf4f8 Author: Duan Jiong Date: Mon Apr 11 12:56:01 2011 +0800 KVM: remove useless function declarations from file arch/x86/kvm/irq.h Just remove useless function define kvm_pic_clear_isr_ack() and pit_has_pending_timer() Signed-off-by: Duan Jiong Signed-off-by: Avi Kivity commit b42fc3cbc3d6e284463e93896679379443e19d56 Author: Jeff Mahoney Date: Tue Apr 12 21:30:17 2011 -0400 KVM: Fix off by one in kvm_for_each_vcpu iteration This patch avoids gcc issuing the following warning when KVM_MAX_VCPUS=1: warning: array subscript is above array bounds kvm_for_each_vcpu currently checks to see if the index for the vcpu is valid /after/ loading it. We don't run into problems because the address is still inside the enclosing struct kvm and we never deference or write to it, so this isn't a security issue. The warning occurs when KVM_MAX_VCPUS=1 because the increment portion of the loop will *always* cause the loop to load an invalid location since ++idx will always be > 0. This patch moves the load so that the check occurs before the load and we don't run into the compiler warning. Signed-off-by: Neil Brown Signed-off-by: Jeff Mahoney Signed-off-by: Avi Kivity commit 71f9833bb1cba9939245f3e57388d87d69f8f399 Author: Serge E. Hallyn Date: Wed Apr 13 09:12:54 2011 -0500 KVM: fix push of wrong eip when doing softint When doing a soft int, we need to bump eip before pushing it to the stack. Otherwise we'll do the int a second time. [apw@canonical.com: merged eip update as per Jan's recommendation.] Signed-off-by: Serge E. Hallyn Signed-off-by: Andy Whitcroft Signed-off-by: Avi Kivity commit 4487b3b48d8fa3f6a5dd4155c9e34d5e998ad7fe Author: Takuya Yoshikawa Date: Wed Apr 13 00:31:23 2011 +0900 KVM: x86 emulator: Use em_push() instead of emulate_push() em_push() is a simple wrapper of emulate_push(). So this patch replaces emulate_push() with em_push() and removes the unnecessary former. In addition, the unused ops arguments are removed from emulate_pusha() and emulate_grp45(). Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 4179bb02fd3e87183e5f698495dfcb80df187889 Author: Takuya Yoshikawa Date: Wed Apr 13 00:29:09 2011 +0900 KVM: x86 emulator: Make emulate_push() store the value directly PUSH emulation stores the value by calling writeback() after setting the dst operand appropriately in emulate_push(). This writeback() using dst is not needed at all because we know the target is the stack. So this patch makes emulate_push() call, newly introduced, segmented_write() directly. By this, many inlined writeback()'s are removed. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit 575e7c1417d41dd72ddf2a49965f833ce9352e92 Author: Takuya Yoshikawa Date: Wed Apr 13 00:24:55 2011 +0900 KVM: x86 emulator: Disable writeback for CMP emulation This stops "CMP r/m, reg" to write back the data into memory. Pointed out by Avi. The writeback suppression now covers CMP, CMPS, SCAS. Signed-off-by: Takuya Yoshikawa Signed-off-by: Avi Kivity commit be6d05cfdf1f2ddbdc367a6433d8eac49d6bfe6f Author: Jan Kiszka Date: Wed Apr 13 01:27:55 2011 +0200 KVM: VMX: Ensure that vmx_create_vcpu always returns proper error In case certain allocations fail, vmx_create_vcpu may return 0 as error instead of a negative value encoded via ERR_PTR. This causes a NULL pointer dereferencing later on in kvm_vm_ioctl_vcpu_create. Reported-by: Sasha Levin Signed-off-by: Jan Kiszka Signed-off-by: Marcelo Tosatti commit 7ae441eac521b2006c9f03c4f2a23582c07fd76d Author: Gleb Natapov Date: Thu Mar 31 12:06:41 2011 +0200 KVM: emulator: do not needlesly sync registers from emulator ctxt to vcpu Currently we sync registers back and forth before/after exiting to userspace for IO, but during IO device model shouldn't need to read/write the registers, so we can as well skip those sync points. The only exaception is broken vmware backdor interface. The new code sync registers content during IO only if registers are read from/written to by userspace in the middle of the IO operation and this almost never happens in practise. Signed-off-by: Gleb Natapov Signed-off-by: Marcelo Tosatti commit 618ff15de19109af126b33d90d7eaec27e61c691 Author: Avi Kivity Date: Sun Apr 3 12:32:09 2011 +0300 KVM: x86 emulator: implement segment permission checks Signed-off-by: Avi Kivity commit 56697687da592d0429c0c3ab80ee7e9d20a3b6e5 Author: Avi Kivity Date: Sun Apr 3 14:08:51 2011 +0300 KVM: x86 emulator: move desc_limit_scaled() For reuse later. Signed-off-by: Avi Kivity commit 52fd8b445f5e8572526e3f84c753079470152414 Author: Avi Kivity Date: Sun Apr 3 12:33:12 2011 +0300 KVM: x86 emulator: move linearize() downwards So it can call emulate_gp() without forward declarations. Signed-off-by: Avi Kivity commit 83b8795a29c53a5f9f202933818128aa54c3e8d2 Author: Avi Kivity Date: Sun Apr 3 11:31:19 2011 +0300 KVM: x86 emulator: pass access size and read/write intent to linearize() Needed for segment read/write checks. Signed-off-by: Avi Kivity commit 9fa088f4d24f045d91c37a5e55f0d2be2ef387ad Author: Avi Kivity Date: Thu Mar 31 18:54:30 2011 +0200 KVM: x86 emulator: change address linearization to return an error code Preparing to add segment checks. Signed-off-by: Avi Kivity commit 38503911b32186240301bbe81601cfabb37e752e Author: Avi Kivity Date: Thu Mar 31 18:48:09 2011 +0200 KVM: x86 emulator: move invlpg emulation into a function It's going to get more complicated soon. Signed-off-by: Avi Kivity commit 3ca3ac4dae5da5af375a9e80d2316ccfa7f0c6ab Author: Avi Kivity Date: Thu Mar 31 16:52:26 2011 +0200 KVM: x86 emulator: Add helpers for memory access using segmented addresses Will help later adding proper segment checks. Signed-off-by: Avi Kivity commit e3e9ed3d2c443fd90a04fb7ff231ad53ef087417 Author: Joerg Roedel Date: Wed Apr 6 12:30:03 2011 +0200 KVM: SVM: Fix fault-rip on vmsave/vmload emulation When the emulation of vmload or vmsave fails because the guest passed an unsupported physical address it gets an #GP with rip pointing to the instruction after vmsave/vmload. This is a bug and fixed by this patch. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 92a1f12d2598f429bd8639e21d89305e787115c5 Author: Joerg Roedel Date: Fri Mar 25 09:44:51 2011 +0100 KVM: X86: Implement userspace interface to set virtual_tsc_khz This patch implements two new vm-ioctls to get and set the virtual_tsc_khz if the machine supports tsc-scaling. Setting the tsc-frequency is only possible before userspace creates any vcpu. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 857e40999e35906baa367a79137019912cfb5434 Author: Joerg Roedel Date: Fri Mar 25 09:44:50 2011 +0100 KVM: X86: Delegate tsc-offset calculation to architecture code With TSC scaling in SVM the tsc-offset needs to be calculated differently. This patch propagates this calculation into the architecture specific modules so that this complexity can be handled there. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 4051b18801f5b47bb0369feefdc80e57819d0ddf Author: Joerg Roedel Date: Fri Mar 25 09:44:49 2011 +0100 KVM: X86: Implement call-back to propagate virtual_tsc_khz This patch implements a call-back into the architecture code to allow the propagation of changes to the virtual tsc_khz of the vcpu. On SVM it updates the tsc_ratio variable, on VMX it does nothing. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 8f6055cbaf68cbd9ff2692a2cfa691b43629ccd4 Author: Joerg Roedel Date: Fri Mar 25 09:44:48 2011 +0100 KVM: X86: Make tsc_delta calculation a function of guest tsc The calculation of the tsc_delta value to ensure a forward-going tsc for the guest is a function of the host-tsc. This works as long as the guests tsc_khz is equal to the hosts tsc_khz. With tsc-scaling hardware support this is not longer true and the tsc_delta needs to be calculated using guest_tsc values. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 1e993611d0dc879fde25515dc9867d1cfd4c5137 Author: Joerg Roedel Date: Fri Mar 25 09:44:47 2011 +0100 KVM: X86: Let kvm-clock report the right tsc frequency This patch changes the kvm_guest_time_update function to use TSC frequency the guest actually has for updating its clock. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit fbc0db76b77125e0a5131fb886cbaafa1ec5c525 Author: Joerg Roedel Date: Fri Mar 25 09:44:46 2011 +0100 KVM: SVM: Implement infrastructure for TSC_RATE_MSR This patch enhances the kvm_amd module with functions to support the TSC_RATE_MSR which can be used to set a given tsc frequency for the guest vcpu. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit bfeed29d6d3ebd5f31253d2c067e4e6c4aeb376b Author: Avi Kivity Date: Tue Apr 5 16:25:20 2011 +0300 KVM: x86 emulator: Drop EFER.SVME requirement from VMMCALL VMMCALL requires EFER.SVME to be enabled in the host, not in the guest, which is what check_svme() checks. Signed-off-by: Avi Kivity commit 8b18bc378224b4f195145b407b95768a289497e3 Author: Avi Kivity Date: Tue Apr 5 16:21:58 2011 +0300 KVM: x86 emulator: Re-add VendorSpecific tag to VMMCALL insn VMMCALL needs the VendorSpecific tag so that #UD emulation (called if a guest running on AMD was migrated to an Intel host) is allowed to process the instruction. Signed-off-by: Avi Kivity commit 09000adb86550d2895b64faa52e64eaec3cae7b2 Author: Bharat Bhushan Date: Fri Mar 25 10:32:13 2011 +0530 KVM: PPC: Fix issue clearing exit timing counters Following dump is observed on host when clearing the exit timing counters [root@p1021mds kvm]# echo -n 'c' > vm1200_vcpu0_timing INFO: task echo:1276 blocked for more than 120 seconds. "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. echo D 0ff5bf94 0 1276 1190 0x00000000 Call Trace: [c2157e40] [c0007908] __switch_to+0x9c/0xc4 [c2157e50] [c040293c] schedule+0x1b4/0x3bc [c2157e90] [c04032dc] __mutex_lock_slowpath+0x74/0xc0 [c2157ec0] [c00369e4] kvmppc_init_timing_stats+0x20/0xb8 [c2157ed0] [c0036b00] kvmppc_exit_timing_write+0x84/0x98 [c2157ef0] [c00b9f90] vfs_write+0xc0/0x16c [c2157f10] [c00ba284] sys_write+0x4c/0x90 [c2157f40] [c000e320] ret_from_syscall+0x0/0x3c The vcpu->mutex is used by kvm_ioctl_* (KVM_RUN etc) and same was used when clearing the stats (in kvmppc_init_timing_stats()). What happens is that when the guest is idle then it held the vcpu->mutx. While the exiting timing process waits for guest to release the vcpu->mutex and a hang state is reached. Now using seprate lock for exit timing stats. Signed-off-by: Bharat Bhushan Acked-by: Alexander Graf Signed-off-by: Avi Kivity commit 7c5625227ff8c81953e953d8e25c3eba2ab0aeb3 Author: Xiao Guangrong Date: Mon Mar 28 10:29:27 2011 +0800 KVM: MMU: remove mmu_seq verification on pte update path The mmu_seq verification can be removed since we get the pfn in the protection of mmu_lock. Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit a0c0ab2feb9d696978a7475dce4253ec62e98a16 Author: Gleb Natapov Date: Mon Mar 28 16:57:49 2011 +0200 KVM: x86 emulator: do not open code return values from the emulator Signed-off-by: Gleb Natapov Signed-off-by: Avi Kivity commit 0be839bfb4b12f17fba2d982353b0f674e327f9e Author: Justin P. Mattock Date: Wed Mar 30 09:54:47 2011 -0700 KVM: Remove base_addresss in kvm_pit since it is unused The patch below removes unsigned long base_addresss; in i8254.h since it is unused. Signed-off-by: Justin P. Mattock Signed-off-by: Avi Kivity commit 628afd2aeb286415f6e7d0ee7c87aae249e7f999 Author: Joerg Roedel Date: Mon Apr 4 12:39:36 2011 +0200 KVM: SVM: Remove nested sel_cr0_write handling code This patch removes all the old code which handled the nested selective cr0 write intercepts. This code was only in place as a work-around until the instruction emulator is capable of doing the same. This is the case with this patch-set and so the code can be removed. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit f6511935f424b9a25059ae18e91ad11dd24980e6 Author: Joerg Roedel Date: Mon Apr 4 12:39:35 2011 +0200 KVM: SVM: Add checks for IO instructions This patch adds code to check for IOIO intercepts on instructions decoded by the KVM instruction emulator. [avi: fix build error due to missing #define D2bvIP] Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit bf608f88faef1245ff87e731512517fc676ffe02 Author: Joerg Roedel Date: Mon Apr 4 12:39:34 2011 +0200 KVM: SVM: Add intercept checks for one-byte instructions This patch add intercept checks for emulated one-byte instructions to the KVM instruction emulation path. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 8061252ee0d21e1289235a4b7fe61f53010c46ff Author: Joerg Roedel Date: Mon Apr 4 12:39:33 2011 +0200 KVM: SVM: Add intercept checks for remaining twobyte instructions This patch adds intercepts checks for the remaining twobyte instructions to the KVM instruction emulator. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit d7eb82030699e6151f1356e90d495bf292564fb7 Author: Joerg Roedel Date: Mon Apr 4 12:39:32 2011 +0200 KVM: SVM: Add intercept checks for remaining group7 instructions This patch implements the emulator intercept checks for the RDTSCP, MONITOR, and MWAIT instructions. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 01de8b09e6068936f7f5e386cb85637cf926468c Author: Joerg Roedel Date: Mon Apr 4 12:39:31 2011 +0200 KVM: SVM: Add intercept checks for SVM instructions This patch adds the necessary code changes in the instruction emulator and the extensions to svm.c to implement intercept checks for the svm instructions. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit dee6bb70e4ac0588c98cc4e661664f0653117f89 Author: Joerg Roedel Date: Mon Apr 4 12:39:30 2011 +0200 KVM: SVM: Add intercept checks for descriptor table accesses This patch add intercept checks into the KVM instruction emulator to check for the 8 instructions that access the descriptor table addresses. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 3b88e41a41344846ee28007ebfe1bb0defa7f86a Author: Joerg Roedel Date: Mon Apr 4 12:39:29 2011 +0200 KVM: SVM: Add intercept check for accessing dr registers This patch adds the intercept checks for instruction accessing the debug registers. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit cfec82cb7d313ae5b2c2dbb974401d7c214c7b09 Author: Joerg Roedel Date: Mon Apr 4 12:39:28 2011 +0200 KVM: SVM: Add intercept check for emulated cr accesses This patch adds all necessary intercept checks for instructions that access the crX registers. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 8a76d7f25f8f24fc5a328c8e15e4a7313cf141b9 Author: Joerg Roedel Date: Mon Apr 4 12:39:27 2011 +0200 KVM: x86: Add x86 callback for intercept check This patch adds a callback into kvm_x86_ops so that svm and vmx code can do intercept checks on emulated instructions. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 8ea7d6aef84e278fcb121acff1bd4c3edaa95b8b Author: Joerg Roedel Date: Mon Apr 4 12:39:26 2011 +0200 KVM: x86 emulator: Add flag to check for protected mode instructions This patch adds a flag for the opcoded to tag instruction which are only recognized in protected mode. The necessary check is added too. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit d09beabd7cd4cf70d982ff54656dc6431df80fa4 Author: Joerg Roedel Date: Mon Apr 4 12:39:25 2011 +0200 KVM: x86 emulator: Add check_perm callback This patch adds a check_perm callback for each opcode into the instruction emulator. This will be used to do all necessary permission checks on instructions before checking whether they are intercepted or not. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 775fde8648ebc588d07de39457aadc7c2131df2e Author: Joerg Roedel Date: Mon Apr 4 12:39:24 2011 +0200 KVM: x86 emulator: Don't write-back cpu-state on X86EMUL_INTERCEPTED This patch prevents the changed CPU state to be written back when the emulator detected that the instruction was intercepted by the guest. Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit 3c6e276f22cf29188035535127c4c35aeeafcabc Author: Avi Kivity Date: Mon Apr 4 12:39:23 2011 +0200 KVM: x86 emulator: add SVM intercepts Add intercept codes for instructions defined by SVM as interceptable. Signed-off-by: Avi Kivity Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit c4f035c60dad45ff8813550dc82540dbbc263df2 Author: Avi Kivity Date: Mon Apr 4 12:39:22 2011 +0200 KVM: x86 emulator: add framework for instruction intercepts When running in guest mode, certain instructions can be intercepted by hardware. This also holds for nested guests running on emulated virtualization hardware, in particular instructions emulated by kvm itself. This patch adds a framework for intercepting instructions. If an instruction is marked for interception, and if we're running in guest mode, a callback is called to check whether an intercept is needed or not. The callback is called at three points in time: immediately after beginning execution, after checking privilge exceptions, and after checking memory exception. This suits the different interception points defined for different instructions and for the various virtualization instruction sets. In addition, a new X86EMUL_INTERCEPT is defined, which any callback or memory access may define, allowing the more complicated intercepts to be implemented in existing callbacks. Signed-off-by: Avi Kivity Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit aa97bb4891b1f1b35e7abef8d1e2bbd3dda07159 Author: Avi Kivity Date: Wed Jan 20 18:09:23 2010 +0200 KVM: x86 emulator: implement movdqu instruction (f3 0f 6f, f3 0f 7f) Signed-off-by: Avi Kivity commit 1253791df91b064c039282feea094e5943294924 Author: Avi Kivity Date: Tue Mar 29 11:41:27 2011 +0200 KVM: x86 emulator: SSE support Add support for marking an instruction as SSE, switching registers used to the SSE register file. Signed-off-by: Avi Kivity commit 0d7cdee83ad1582eecbf3b4a220e82dcb5ad561c Author: Avi Kivity Date: Tue Mar 29 11:34:38 2011 +0200 KVM: x86 emulator: Specialize decoding for insns with 66/f2/f3 prefixes Most SIMD instructions use the 66/f2/f3 prefixes to distinguish between different variants of the same instruction. Usually the encoding is quite regular, but in some cases (including non-SIMD instructions) the prefixes generate very different instructions. Examples include XCHG/PAUSE, MOVQ/MOVDQA/MOVDQU, and MOVBE/CRC32. Allow the emulator to handle these special cases by splitting such opcodes into groups, with different decode flags and execution functions for different prefixes. Signed-off-by: Avi Kivity commit 5037f6f324cdcc6c9071dc774aba992f96c7e5ff Author: Avi Kivity Date: Mon Mar 28 16:53:59 2011 +0200 KVM: x86 emulator: define callbacks for using the guest fpu within the emulator Needed for emulating fpu instructions. Signed-off-by: Avi Kivity commit 1d6b114f20d06ac0749686e4d7b7c7913d9116db Author: Avi Kivity Date: Wed Jan 20 16:00:35 2010 +0200 KVM: x86 emulator: do not munge rep prefix Currently we store a rep prefix as 1 or 2 depending on whether it is a REPE or REPNE. Since sse instructions depend on the prefix value, store it as the original opcode to simplify things further on. Signed-off-by: Avi Kivity commit cef4dea07f6720b36cc93e18a2e68be4bdb71a92 Author: Avi Kivity Date: Wed Jan 20 12:01:20 2010 +0200 KVM: 16-byte mmio support Since sse instructions can issue 16-byte mmios, we need to support them. We can't increase the kvm_run mmio buffer size to 16 bytes without breaking compatibility, so instead we break the large mmios into two smaller 8-byte ones. Since the bus is 64-bit we aren't breaking any atomicity guarantees. Signed-off-by: Avi Kivity commit 5287f194bf0d7062d6d99b725366202556f03e28 Author: Avi Kivity Date: Tue Jan 19 14:20:10 2010 +0200 KVM: Split mmio completion into a function Make room for sse mmio completions. Signed-off-by: Avi Kivity commit 70252a1053636c35776d6bc843dd3b260d9d6de1 Author: Avi Kivity Date: Tue Jan 19 12:51:22 2010 +0200 KVM: extend in-kernel mmio to handle >8 byte transactions Needed for coalesced mmio using sse. Signed-off-by: Avi Kivity commit 1499e54af03ae51a937c59035bc86002deae0572 Author: Gleb Natapov Date: Fri Apr 1 11:26:29 2011 -0300 KVM: x86: better fix for race between nmi injection and enabling nmi window Fix race between nmi injection and enabling nmi window in a simpler way. Signed-off-by: Marcelo Tosatti commit c761e5868e6737abe0464636ebd7fcbb6814c626 Author: Marcelo Tosatti Date: Fri Apr 1 11:25:03 2011 -0300 Revert "KVM: Fix race between nmi injection and enabling nmi window" This reverts commit f86368493ec038218e8663cc1b6e5393cd8e008a. Simpler fix to follow. Signed-off-by: Marcelo Tosatti commit 3291892450e670c4f170e271cd0c4b63d5a8e41a Author: Glauber Costa Date: Wed Mar 23 13:40:42 2011 -0300 KVM: expose async pf through our standard mechanism As Avi recently mentioned, the new standard mechanism for exposing features is KVM_GET_SUPPORTED_CPUID, not spamming CAPs. For some reason async pf missed that. So expose async_pf here. Signed-off-by: Glauber Costa CC: Gleb Natapov CC: Avi Kivity Signed-off-by: Avi Kivity commit 654f06fc651b01782015185e5b049197255463a3 Author: Avi Kivity Date: Wed Mar 23 15:02:47 2011 +0200 KVM: VMX: simplify NMI mask management Use vmx_set_nmi_mask() instead of open-coding management of the hardware bit and the software hint (nmi_known_unmasked). There's a slight change of behaviour when running without hardware virtual NMI support - we now clear the NMI mask if NMI delivery faulted in that case as well. This improves emulation accuracy. Signed-off-by: Avi Kivity commit 89a9fb78b5bd8bece353449079726556ecab41df Author: Jan Kiszka Date: Thu Mar 24 09:45:10 2011 +0100 KVM: SVM: Remove unused svm_features We use boot_cpu_has now. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity commit 887864758580c80710947c38a4692032163777df Author: Avi Kivity Date: Mon Mar 7 17:39:45 2011 +0200 KVM: VMX: Use cached VM_EXIT_INTR_INFO in handle_exception vmx_complete_atomic_exit() cached it for us, so we can use it here. Signed-off-by: Avi Kivity commit c5ca8e572c4d8cb8dec1cf5b3fc9c7066f6b2c29 Author: Avi Kivity Date: Mon Mar 7 17:37:37 2011 +0200 KVM: VMX: Don't VMREAD VM_EXIT_INTR_INFO unconditionally Only read it if we're going to use it later. Signed-off-by: Avi Kivity commit 00eba012d53e63f620455f7013917e4bf59424f2 Author: Avi Kivity Date: Mon Mar 7 17:24:54 2011 +0200 KVM: VMX: Refactor vmx_complete_atomic_exit() Move the exit reason checks to the front of the function, for early exit in the common case. Signed-off-by: Avi Kivity commit f9902069c41254ad116e089e64ea21d3a000cc41 Author: Avi Kivity Date: Mon Mar 7 17:20:29 2011 +0200 KVM: VMX: Qualify check for host NMI Check for the exit reason first; this allows us, later, to avoid a VMREAD for VM_EXIT_INTR_INFO_FIELD. Signed-off-by: Avi Kivity commit 9d58b93192065f4b2ba6b880e9b0dab0bc11d0ba Author: Avi Kivity Date: Mon Mar 7 16:52:07 2011 +0200 KVM: VMX: Avoid vmx_recover_nmi_blocking() when unneeded When we haven't injected an interrupt, we don't need to recover the nmi blocking state (since the guest can't set it by itself). This allows us to avoid a VMREAD later on. Signed-off-by: Avi Kivity commit 69c730289011df706a1c9890d6e6c5ee822623c7 Author: Avi Kivity Date: Mon Mar 7 15:26:44 2011 +0200 KVM: VMX: Cache cpl We may read the cpl quite often in the same vmexit (instruction privilege check, memory access checks for instruction and operands), so we gain a bit if we cache the value. Signed-off-by: Avi Kivity commit f4c63e5d5a356b652a3d984edbefca289176c40f Author: Avi Kivity Date: Mon Mar 7 14:54:28 2011 +0200 KVM: VMX: Optimize vmx_get_cpl() In long mode, vm86 mode is disallowed, so we need not check for it. Reading rflags.vm may require a VMREAD, so it is expensive. Signed-off-by: Avi Kivity commit 6de12732c42c7070af42e3d6e42ecee2838fc920 Author: Avi Kivity Date: Mon Mar 7 12:51:22 2011 +0200 KVM: VMX: Optimize vmx_get_rflags() If called several times within the same exit, return cached results. Signed-off-by: Avi Kivity commit f6e78475894d6534d7d62714a95e2265f53d2a92 Author: Avi Kivity Date: Mon Aug 2 15:30:20 2010 +0300 KVM: Use kvm_get_rflags() and kvm_set_rflags() instead of the raw versions Some rflags bits are owned by the host, not guest, so we need to use kvm_get_rflags() to strip those bits away or kvm_set_rflags() to add them back. Signed-off-by: Avi Kivity commit 0ee8dcb87e403397e575674d0e79272b06dea12e Author: Xiao Guangrong Date: Wed Mar 9 15:41:59 2011 +0800 KVM: cleanup memslot_id function We can get memslot id from memslot->id directly Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 49ac215e071234b2bf2cff7b8bf4f4f3d0e8cd6e Author: Linus Walleij Date: Fri Mar 4 14:54:16 2011 +0100 ARM: 6785/1: mmci: separate out ST Micro register defines The mmci.h header contained a few registers not clearly marked as ST Micro only, rectify this and remove the HWFC magic in the process. The idea is to make the mmci.h header file more ordered so other vendors with PL180 derivates can see where to put in their custom register defines. Includes portions of an earlier patch from Sebastian Rasmussen. Acked-by: Sebastian Rasmussen Signed-off-by: Linus Walleij Signed-off-by: Russell King commit b0ec5cf191eeca7fd885ef2860e9a586d29bff00 Author: Ryan Mallon Date: Tue Mar 29 01:04:57 2011 +0100 ARM: 6852/1: EP93xx: Remove ep93xx_gpio_dbg_show function The interrupt printing functionality in the ep93xx gpio debugfs function does not behave as expected. It prints [interrupt] beside all pins which are capable of being interrupts, not just those which are currently configured as interrupts. The best solution is just to remove the custom ep93xx gpio debugfs function all together. The generic gpiolib one is good enough. Signed-off-by: Ryan Mallon Acked-by: H Hartley Sweeten Signed-off-by: Russell King commit 43f67c98161c65f1b2e3af3a9ce6741850072c06 Author: Kevin Cernekee Date: Tue May 10 15:47:16 2011 -0700 kbuild: Fix GNU make v3.80 compatibility According to Documentation/Changes, the kernel should be buildable with GNU make 3.80+. Commit 88d7be031f9f975bb3f50a0b5ef3796a671e7edf (kbuild: Use a single clean rule for kernel and external modules) introduced the "$(or" construct, which requires make 3.81. This causes "make clean" to malfunction when it is used with external modules. Replace "$(or" with an equivalent "$(if" expression, to restore backward compatibility. Signed-off-by: Kevin Cernekee Cc: stable@kernel.org Signed-off-by: Michal Marek commit 41b21aebe6a9c06e0b906f14bcab7c49b9b72d7a Author: Niels de Vos Date: Tue May 10 12:07:33 2011 +0100 OMAP: DSS2: OMAPFB: make DBG() more resistant in if-else constructions When DBG() is used in a simple if-else, the resulting code path currently depends on the definition of DBG(). Inserting the statement in a "do { ... } while (0)" prevents this possible misuse. Signed-off-by: Niels de Vos [tomi.valkeinen@ti.com: changed the title of the commit msg] Signed-off-by: Tomi Valkeinen commit 0d548a277c8ce29712161995985bb67cd1c35ff7 Author: Mike Frysinger Date: Mon May 9 10:40:24 2011 -0400 OMAP2: avoid descending into disabled framebuffer dirs Rather than always add the omap2 dirs to the build list (and thus force everyone to generate a useless built-in.o), bind the dirs to their relevant kconfig symbol. Signed-off-by: Mike Frysinger Signed-off-by: Tomi Valkeinen commit 44538b431517ebf4b0e8574cb727deb1a73652c8 Author: Tomi Valkeinen Date: Mon May 9 10:52:15 2011 +0300 OMAP: DSS2: Remove DSS_IRQSTATUS DSS_IRQSTATUS register is available only on OMAP3, and reading it in dss_dump_registers() on OMAP4 seems to cause a crash. The register is not used for anything, and displaying its value is of no use, so let's just remove it altogether. Signed-off-by: Tomi Valkeinen commit 55978cc20efca8c40a7f4500df868e3d2ac8c025 Author: Archit Taneja Date: Fri May 6 11:45:51 2011 +0530 OMAP: DSS2: Remove usage of struct dispc_reg struct dispc_reg was originally used while migrating from old omapfb to catch cases where the arguments to dispc_read_reg/dispc_write_reg were in wrong order, since old omapfb had the arguments in reverse order. Remove this struct and use u16 instead Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 702d144845086cacf8bb4f23196189f260c250e2 Author: Archit Taneja Date: Fri May 6 11:45:50 2011 +0530 OMAP: DSS2: Clean up DISPC overlay manager register definitions Represent manager/channel specific DISPC registers as inline functions returning the required dispc_reg struct. This is done since the current method is not scalable as the number of overlay managers increase in number. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 9b372c2d9da43be00e8a267730a2428e0eae12e8 Author: Archit Taneja Date: Fri May 6 11:45:49 2011 +0530 OMAP: DSS2: Clean up DISPC overlay register definitions Move all DISPC register definitions to a new header dispc.h. There are separate register offset definitions for GFX, VID1 and VID2 pipeline share register definitions by using an argument. The introduction of VID3 pipeline on OMAP4 will not let us use the above method since VID3 pipe register offsets don't map with VID1 and VID2 offsets. Represent overlay registers as DISPC_OVL_XXXX(plane), where the plane argument tells the overlay. Register offsets are calculated as: DISPC_OVL_XXXX(plane) = DISPC_OVL_BASE(plane) + DISPC_XXXX_OFFSET(plane) Idea suggested by Tomi Valkeinen. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 5bdd3c9a7da3ddf820d9d479530ceecde9d4a316 Author: Archit Taneja Date: Tue Apr 19 19:00:15 2011 +0530 OMAP: DSS2: DSI: enable scp clock in dsi_dump_regs() OMAP4 requires SCP clocks enabled to access DSI PLL registers and DSI COMPLEXIO registers. Enable scp clock before accessing the registers and disable it before exiting dsi_dump_regs(). Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit a0ce4ccc60d03e27ba6c7e2b134a23badf30f8d2 Author: Enric Balletbo i Serra Date: Tue May 3 09:07:37 2011 +0200 OMAP: DSS2: Support for Powertip PH480272T Add support for Powertip PH480242T, a LCD 4.3inch (480x242) display type with 24-bit RGB interface, to panel-generic-dpi. Tested with IGEP v2 board. Signed-off-by: Enric Balletbo i Serra Signed-off-by: Tomi Valkeinen commit 50ca19d086e806cec4394a1fd802834d17a3ae93 Author: Enric Balletbo i Serra Date: Tue May 3 09:07:36 2011 +0200 OMAP: DSS2: Support for Seiko 70WVW1TZ3 Add support for Seiko 70WVW1TZ3, a LCD 7.0inch WVGA (800x480) display type with 24-bit RGB interface and Touch-Panel, to panel-generic-dpi Tested with IGEP v2 board. Signed-off-by: Enric Balletbo i Serra Signed-off-by: Tomi Valkeinen commit 5d7441810166ce1ab4b822440f270f931202f34a Author: Vikram Pandita Date: Wed Apr 20 20:31:15 2011 -0700 OMAP: DSS2: DSI: enable interface for omap4 By default, the DSI is not getting enabled for omap4. OMAP2PLUS does not catch this issue since it has ARCH_OMAP3. The issue is only seen when using defconfig with ARCH_OMAP4 only. Signed-off-by: Vikram Pandita Cc: Archit Taneja Cc: Tomi Valkeinen Signed-off-by: Tomi Valkeinen commit ea29033359e3b13f63ddf2b1c615e1ed32625a99 Author: Tomi Valkeinen Date: Wed Apr 20 10:09:36 2011 +0300 OMAP: DSS2: FEATURES: Add missing consts omap_dss_features definitions were missing consts. Signed-off-by: Tomi Valkeinen commit 6705615e92b6d44c8e09703282bee7d7275bb74f Author: Tomi Valkeinen Date: Thu Mar 24 16:30:17 2011 +0200 OMAP: DSS2: DSI: Add OMAP4 CIO irqs OMAP4 DSI block has new interrupts for the two new DSI lanes. Add definitions for those interrupts, and add the interrupts to the CIO error mask. Signed-off-by: Tomi Valkeinen commit 1abf78145412ef185d553dccfab661e7c88c0b20 Author: Tomi Valkeinen Date: Thu Mar 24 14:53:27 2011 +0200 OMAP: DSS2: Taal: Implement ULPS functionality ULPS is a low power state where the DSI lanes are kept at ground. This patch implements ULPS by having a DSI bus inactivity timer which triggers the entry to ULPS. ULPS exit will happen automatically when the driver needs to do something on the DSI lanes. The ulps_timeout is configurable from board file or via sysfs. Additionally another sysfs file, "ulps", can be used to check the current ULPS state, or to manually enter or exit ULPS. Signed-off-by: Tomi Valkeinen commit 883b9ac95e2075fa8edd9260d8818b756f96440b Author: Tomi Valkeinen Date: Thu Mar 24 15:01:30 2011 +0200 OMAP: DSS2: Taal: Rename esd_wq to workqueue ESD workqueue will be shared with other functionality also. Rename "esd_wq" to "workqueue" to better reflect its usage. Signed-off-by: Tomi Valkeinen commit bb5476c7203c3c4798381d81b27feb97af69a9d4 Author: Tomi Valkeinen Date: Thu Mar 24 15:00:06 2011 +0200 OMAP: DSS2: Taal: Separate panel reset Separate panel reset code to a function of its own. This will keep the code cleaner in the future when panel reset is called from multiple locations. Signed-off-by: Tomi Valkeinen commit 1f8fa452afe88b33cbfac6a82b0edd77a0644804 Author: Tomi Valkeinen Date: Thu Mar 24 14:06:51 2011 +0200 OMAP: DSS2: Taal: Add sysfs file for ESD interval Implement sysfs support to configure the ESD interval. Signed-off-by: Tomi Valkeinen commit 1663d2f70a9404b822fb0e8fbc40d42fdfeed0bd Author: Tomi Valkeinen Date: Thu Mar 24 14:01:49 2011 +0200 OMAP: DSS2: Taal: Clean up ESD queueing Separate the code which queues/cancels ESD work into their own functions. Signed-off-by: Tomi Valkeinen commit 33a410be6f4b760f0abe3ec05ac808f1c391bd41 Author: Tomi Valkeinen Date: Thu Mar 24 13:58:01 2011 +0200 OMAP: DSS2: Taal: Implement configurable ESD interval ESD check in Taal driver is currently on/off feature with hardcoded interval. This patch changes it to a configurable interval, which can be set from the board file. Signed-off-by: Tomi Valkeinen commit 88257b26953f73f30acf49587cb42b84be43c587 Author: Tomi Valkeinen Date: Mon Dec 20 16:26:22 2010 +0200 OMAP: DSS2: DSI: ensure VDDS_DSI is disabled on exit The panel drivers can leave the VDDS_DSI regulator enabled, even when the panel is disabled, to ensure that the DSI pins are powered. This patch ensures that VDDS_DSI is disabled on DSI module unload. Signed-off-by: Tomi Valkeinen commit d1f5857e4bc9b2620fb3e84b1dbaa0ac11b831b4 Author: Tomi Valkeinen Date: Fri Jul 30 11:57:57 2010 +0300 OMAP: DSS2: DSI: Add DSI pad muxing support Add dsi_mux_pads function pointer to omap_dss_board_info, and use the function pointer in DSI code to configure the DSI pads either to normal DSI operation, or to pull down when in ULPS. Signed-off-by: Tomi Valkeinen commit 22d6d676261a5e204a7078df21459747750c92fb Author: Tomi Valkeinen Date: Mon Oct 11 11:33:30 2010 +0300 OMAP: DSS2: DSI: add parameter to enter ulps on disable Add parameter to omapdss_dsi_display_disable() which the panel driver can use to tell if the DSI lanes should be put to ULPS before disabling the interface. This can be used to skip ULPS entry in cases where the panel doesn't care about ULPS state, for example when the panel will be reset, or when the display interface will be enabled again right after the disable. This will speed up the operation considerably in cases where entering ULPS would fail with timeout, and the panel driver isn't even interested in entering ULPS. Signed-off-by: Tomi Valkeinen commit 03329ace1dc7dc9319f6f405381d898fc66fb2cb Author: Tomi Valkeinen Date: Thu Oct 7 13:59:22 2010 +0300 OMAP: DSS2: DSI: wait for TXCLKESC domain to come out of reset Add dsi_cio_wait_tx_clk_esc_reset() function which waits for the TXCLKESC domains to come out of reset. Things have worked fine without this, but better be safe than sorry. Signed-off-by: Tomi Valkeinen commit 65c62bb953d216aaf0e22692e8e12e5c568a3b02 Author: Tomi Valkeinen Date: Fri Apr 15 11:58:41 2011 +0300 OMAP: DSS2: DSI: fix CIO init and uninit Use dsi_enable_scp_clk and dsi_disable_scp_clk in CIO init and uninit, and improve the CIO init by adding a few status checks and error handling. Signed-off-by: Tomi Valkeinen commit 24c1ae4191e911caa08b31079d61ff4db319a101 Author: Tomi Valkeinen Date: Wed Apr 13 17:12:52 2011 +0300 OMAP: DSS2: DSI: implement enable/disable SCP clk SCP clock is needed for CIO on OMAP3, and for CIO and PLL on OMAP4. Current driver enables the CIO clock always when DSI display is initialized. However, if a DPI display tries to use DSI PLL, the SCP clock is never enabled. This patch implements simple ref counting enable/disable functions for SCP clock. Signed-off-by: Tomi Valkeinen commit c335cbf94e7450fb41aafe97e805752a830d3a43 Author: Tomi Valkeinen Date: Thu Oct 7 13:27:42 2010 +0300 OMAP: DSS2: DSI: fix _dsi_print_reset_status The bits for TXCLKESCx reset have changed for OMAP3630 and OMAP4. Signed-off-by: Tomi Valkeinen commit 293ef19cbb9ef403b6dc9c96e34096bac5c88b84 Author: Tomi Valkeinen Date: Fri Apr 15 15:07:33 2011 +0300 OMAP: DSS2: Add FEAT_DSI_REVERSE_TXCLKESC OMAP3430 has RESETDONETXCLKESCx bits in the order following bitnumber order for lanes 0, 1, 2: 28, 27, 26. OMAP3630 and later have them in saner order: 24, 25, 26 (and 27, 28 for OMAP4). This patch adds a dss_feature that can be used to differentiate between those two orders of RESETDONETXCLKESCx bits. Signed-off-by: Tomi Valkeinen commit cc5c185098d85d709cc2a542c40abff0b337e094 Author: Tomi Valkeinen Date: Wed Oct 6 15:18:13 2010 +0300 OMAP: DSS2: DSI: rename complexio related functions Rename ComplexIO from dsi_complexio_xxx to dsi_cio_xxx for brevity. Also, add cio prefix for couple of functions that didn't have it, but are cio related. Signed-off-by: Tomi Valkeinen commit 2a89dc15331983621b772240ebef9dea2cbe5322 Author: Tomi Valkeinen Date: Fri Jul 30 12:39:34 2010 +0300 OMAP: DSS2: DSI: add option to leave DSI lanes powered on The DSI pins are powered by VDDS_DSI. If VDDS_DSI is off, the DSI pins are floating even if they are pinmuxed to, say, safe mode and there's a pull down/up. This patch gives the panel drivers an option to leave the VDDS_DSI power enabled while the DSS itself is turned off. This can be used to keep the DSI lanes in a valid state while DSS is off, if the DSI pins are muxed for pull down (not done in this patch). There will be a slight power consumption increase (~100 uA?) when the VDDS_DSI is left on, but because this option is used when the panel is left on, the regulator consumption is negligible compared to panel power consumption. When the panel is fully turned off the VDDS_DSI is also turned off. As an added bonus this will give us faster start up time when starting up the DSS and the regulator is already enabled. Signed-off-by: Tomi Valkeinen commit 40885ab31f754426c2e9a40362e568778baa5e82 Author: Tomi Valkeinen Date: Wed Jul 28 15:53:38 2010 +0300 OMAP: DSS2: DSI: implement ULPS enter and exit Entering ULPS (Ultra Low Power State) happens by sending ULPS entry sequence to the DSI peripheral and pulling the DSI lines down. Exiting ULPS happens by sending ULPS exit sequence. We can send the ULPS entry sequence by using OMAP DSS HW's ULPS support, but we cannot use the ULPS exit support from DSS HW. DSS HW refuses to send the ULPS exit sequence if it thinks that the lanes are not in ULPS. After being in OFF mode the DSS HW has been reset, and so it does not know that the lanes are actually in ULPS. Thus we need to use the lane override support and manually send the ULPS exit sequence. Luckily the sequence is very simple. Signed-off-by: Tomi Valkeinen commit 95861368e3eb2180dc9f00e916a4ba6f5e1fe4ce Author: Tomi Valkeinen Date: Thu Apr 14 11:42:22 2011 +0300 OMAP: DSS2: DSI: Remove CIO LDO status check CIO LDO status check seems to be broken on OMAP3630+ chips, and it's also quite unclear what LDO status actually tells and when its status changes. This patch removes the whole check on the grounds that if there's a problem with the LDO, we should anyway catch the problem as we check the CIO power state and CIO reset status. Signed-off-by: Tomi Valkeinen commit 0a0ee46b1ae05862cb05ec43caffc01c5259c4cc Author: Tomi Valkeinen Date: Tue Jul 27 11:11:48 2010 +0300 OMAP: DSS2: DSI: Add lane override functions DSI_DSIPHY_CFG10 register can be used to override DSI lane state. Add functions to configure and enable the override, and to disable the override. Signed-off-by: Tomi Valkeinen commit 179e045369a36c67d590463548749cacc53c9d85 Author: Archit Taneja Date: Mon Apr 18 09:32:13 2011 +0530 OMAP2PLUS: DSS2: Clean up omap_display_init() Currently, omap_display_init() maintains arrays for hwmod name(oh_name) and the correspnding platform_device name(dev_name) needed by omap_device_build(). A variable oh_count keeps a track of the number of devices to build from oh_name based on what omap revision it is. Clean this up by maintaining an array of omap_dss_hwmod_data struct which is defined for each omap revision as suggested by Tomi Valkeinen. Assign the corresponding omap_dss_hwmod_data array struct to the pointer curr_dss_hwmod in omap_display_init(). Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit ab46d8b2a346ef9d2dc70d7e11aef5e752a090f8 Author: Tomi Valkeinen Date: Mon Apr 4 09:36:23 2011 +0300 OMAP: DSS2: improve clock debugfs output OMAP4 has clocks set up in a bit interesting way, causing, for example, the DSS's "ick" to be called "dss_fck". This patch changes the debugfs output to show both the DSS's name for the clock (ie. basically the clock alias), and the real name from the clock struct. Signed-off-by: Tomi Valkeinen commit e3502ce97f2d2d183735d9fae76b081a634ffd85 Author: Tomi Valkeinen Date: Mon Apr 4 15:40:23 2011 +0300 OMAP: DSS2: Convert simple/strict_strto* to kstrto* Convert simple/strict_strto* functions to kstrto* functions. Only simple cases are converted. simple_strto* uses are still left to places where it is used to parse numbers from a list of numbers. These need some other solution than kstrto*. Signed-off-by: Tomi Valkeinen commit 7636b3b4e178f6c09d9e2650f206eab62a67453b Author: Archit Taneja Date: Tue Apr 12 13:52:26 2011 +0530 OMAP2PLUS: DSS2: Remove hack config "CONFIG_OMAP2_DSS_USE_DSI_PLL" The clock sources for DISPC_FCLK and LCD1_CLK are now specified in the board file. There is no need for the hack config "CONFIG_OMAP2_DSS_USE_DSI_PLL" anymore. Introduce function dpi_use_dsi_pll() which checks for the clock sources to decide whether DSI PLL is to be used or not. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 6cb07b256af233965663d6dfc329d7df3dcae786 Author: Archit Taneja Date: Tue Apr 12 13:52:25 2011 +0530 OMAP: DSS2: HDMI: Use dss_device clock configuration for HDMI PLL parameters Move some of the configurable HDMI PLL parameters to dssdev.clock struct. Cleanup the function hdmi_compute_pll() by using the parameters defined in the board file and do some cosmetic modifications. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit e888166247c0b23d3ccc8e54cf92de7325d71145 Author: Archit Taneja Date: Tue Apr 12 13:52:24 2011 +0530 OMAP2PLUS: DSS2: Add clock sources to dss device clock configuration Add enum dss_clock_source in dssdev.clocks struct so that the clock sources can be specified in the board file. Replace hard coded clock sources in dsi.c, dpi.c and replace them with the new clock source members in dssdev.clocks. Modify the sdp4430_lcd_device struct in board-4430sdp.c to specify clock sources for DISPC_FCLK, LCD1_CLK and DSI1_FCLK. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 89a35e5170fc579e4fc3a1f3444c5dc1aa36904d Author: Archit Taneja Date: Tue Apr 12 13:52:23 2011 +0530 OMAP2PLUS: DSS2: Change enum "dss_clk_source" to "omap_dss_clk_source" Change enum dss_clk_source to omap_dss_clock_source and move it to 'plat/display.h'. Change the enum members to attach "OMAP_" in the beginning. These changes are done in order to specify the clock sources for DSS in the board file. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 14e4d78485a50312be72a42fd42a28b5b34264dc Author: Tomi Valkeinen Date: Thu Mar 31 12:03:51 2011 +0300 OMAP: DSS2: use __exit for selected panel drivers We can use __exit for the driver remove function in plain dss panels (ie. those that do not need i2c or spi). Signed-off-by: Tomi Valkeinen commit 06b2b0d597ab6e3011e8215d02b2aa5f831efbc7 Author: Tomi Valkeinen Date: Thu Mar 31 12:34:06 2011 +0300 OMAP: DSS2: make omap_dss_(un)register_device static omap_dss_register_device and omap_dss_unregister_device can only be called from core.c, so we can make it static. Signed-off-by: Tomi Valkeinen commit 14572c6356dc4361231ee8f4402468c1f36d2c34 Author: Tomi Valkeinen Date: Thu Oct 28 16:46:38 2010 +0300 OMAP: DSS2: VENC: Add missing start/stop_device calls VENC code was missing omap_dss_start/stop_device calls. This didn't cause any problems as VENC could not be compiled as a module, but nevertheless it's better to add the calls. Signed-off-by: Tomi Valkeinen commit bcd8e374b5d39d481d00936e183b0ded99a5f31a Author: Jani Nikula Date: Fri Sep 24 11:16:24 2010 +0200 OMAP: DSS2: OMAPFB: Remove implicit display update on unblank Currently omapfb does an implicit display update (for manual update displays) on unblank. There is no guarantee that the framebuffer contains a valid image when unblank is called. When using manual update displays it is the responsibility of the user space to update the display, and so it should be in this case also. This patch removes the implicit display update on unblank. Signed-off-by: Jani Nikula [tomi.valkeinen@ti.com: improved description] Signed-off-by: Tomi Valkeinen commit 91ac27a6879df3865e160adf979960a14f17d1aa Author: Tomi Valkeinen Date: Thu Sep 23 11:18:44 2010 +0300 OMAP: DSS2: OMAPFB: Handle errors when initializing panel Errors from the panel driver were ignored during panel initialization. Handle the errors and fail accordingly. Also move the display initialization to a separate function to make it cleaner. Signed-off-by: Tomi Valkeinen commit 7a0987bf2cf2683901d0cd7f1504023da2584c5f Author: Jani Nikula Date: Wed Jun 16 15:26:36 2010 +0300 OMAP: DSS2: Add method for querying display dimensions from DSS drivers Add get_dimensions() to struct omap_dss_driver. Use the call, if supported by the driver, in OMAPFB. Signed-off-by: Jani Nikula Signed-off-by: Tomi Valkeinen commit b4de838e9ff17695c462e6532a347746c446d10a Author: Tomi Valkeinen Date: Wed Jun 2 17:57:33 2010 +0300 OMAP: DSS2: VENC: Remove sleeps at venc enable/disable VENC code had 50ms sleep after enabling the output and 100ms sleep after disabling the output. I don't see any reason for these sleeps. Signed-off-by: Tomi Valkeinen commit c6f65e1a4381a2271de1b5dccc94d6c6faad26dc Author: Tomi Valkeinen Date: Wed Jun 2 17:48:22 2010 +0300 OMAP: DSS2: VENC: make 20ms venc bug-fix sleep optional There's a 20ms sleep after VENC reset. It's unknown what bug this circumvents and on what platforms. Add a Kconfig option to disable the sleep. Signed-off-by: Tomi Valkeinen commit f1aafdcd42ad45a4bda5cb8f4a6782b0e48549ba Author: Tomi Valkeinen Date: Wed Jun 2 17:31:53 2010 +0300 OMAP: DSS2: make 50ms bug-fix sleep optional For some unknown reason we may get SYNC_LOST errors from the display subsystem at initialization time if we don't sleep before resetting the DSS. See the source (dss.c) for more comments. However, 50ms is quite long time to sleep, and with some configurations the SYNC_LOST may never happen, so this patch creates a Kconfig option to disable the sleep. Signed-off-by: Tomi Valkeinen commit d792eecd9a3e3df7c38b64a954d10ccdc665ec38 Author: Tomi Valkeinen Date: Thu May 20 15:13:12 2010 +0300 OMAP: DSS2: remove non-working msleep(40) workaround The sleep workaround for the problem described in the comment doesn't really work. This patch removes the workaround, and improves the comment about the bug, and proposes an userspace workaround. omap_dss_set_manager() is called 6 times when loading omapdss and omapfb, which means that 40ms * 6 = 240ms was spent sleeping when booting up. Signed-off-by: Tomi Valkeinen commit c6940a3dc59d9628c8d407b98b6f57df69e3ef52 Author: Tomi Valkeinen Date: Tue Feb 22 13:36:10 2011 +0200 OMAP: DSS2: move dss device clock configuration Clock configuration was defined inside dssdev.phy.dsi struct. The clock config doesn't really belong there, and so it's moved to dssdev.clock struct. Now the explicit clock configuration could also be used for other interfaces than DSI, although there's no support for it currently. Signed-off-by: Tomi Valkeinen commit cf398fb3e6aed8e7a9b3bcf77f6de2d34ccd2078 Author: Archit Taneja Date: Wed Mar 23 09:59:34 2011 +0000 OMAP: DSS2: DSI: Introduce sync_vc functions The DSI protocol engine has no interrupt for signalling the end of a Frame transfer. The present approach is to send a BTA after DISPC generates a FRAMEDONE interrupt, and unlock the dsi bus only when the BTA Ack is received. The assumption made with this approach was that OMAP will send a BTA only after the long packet corresponding to the last line is sent. However, it is possible that on the DISPC FRAMEDONE interrupt there are 2 (or more) lines of pixel data in the DSI line buffer. Hence, the BTA Ack could be received for the long packet corresponding to the second last line (or the third last and so on..). Therefore, the current method doesn't ensure that the complete frame data is sent before we start a new transfer. A similar explanation holds valid if we send a BTA in between multiple short/long command packets from the slave port. Introduce dsi_sync_vc functions, based on Tomi Valkeinen's idea, which ensure that the DSI Virtual Channel in use(update_channel) completes its previous work before proceeding to the next Frame/Command. For a frame update, the DSI driver now sends a callback to the Panel Driver on the FRAMEDONE interrupt itself. The callback in the panel driver then unlocks the bus. dsi_sync_vc() functions are placed in dsi_vc_config_l4() and dsi_vc_config_vp() to ensure that the previous task of the Virtual Channel is completed. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 9613c02b5feba3ea03ab34f1422dd122c6e54f57 Author: Archit Taneja Date: Tue Mar 22 06:33:36 2011 -0500 OMAP4: DSS2: Register configuration changes for DSI The following changes have changed from OMAP3 to OMAP4 DSI: -The register field DSI_PLL_FREQSEL in DSI_PLL_CONFIGURATION2 has been removed. -DCS_CMD_ENABLE and DCS_CMD_CODE bits have been moved from DSI_CTRL to DSI_VC_CTRLi, hence the control of the bits is available per VC. -DSI LDO powergood notification doesn't work on OMAP4. This is mentioned in OMAP4 errata revision 1.8(Errata 1.76). -OCP_WIDTH register field is included in DSI_VC_CTRL. -The SCP clock is also required to access DSI PLL registers Introduce dss features for these changes so that DSI runs on both OMAP3 and OMAP4. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 2783fa849b8073b8bae38bb4f3b7fe79aa4dc40b Author: Tomi Valkeinen Date: Fri Apr 8 09:30:27 2011 +0300 OMAP: DSS2: fix panel Kconfig dependencies All DPI panels were missing dependency to OMAP2_DSS_DPI. Add the dependency. Signed-off-by: Tomi Valkeinen commit c94dfe05c4b6c269e445691c1fc7a9d8679ba60f Author: Tomi Valkeinen Date: Fri Apr 15 10:42:59 2011 +0300 OMAP: DSS2: DSI: Fix DSI PLL power bug OMAP3630 has a HW bug causing DSI PLL power command POWER_ON_DIV (0x3) to not work properly. The bug prevents us from enabling DSI PLL power only to HS divider block. This patch adds a dss feature for the bug and converts POWER_ON_DIV requests to POWER_ON_ALL (0x2). Signed-off-by: Tomi Valkeinen commit 89976f2990a97820b73a1768371ee505b0ffc176 Author: Archit Taneja Date: Thu Mar 31 13:23:35 2011 +0530 OMAP: DSS2: Fix: Return correct lcd clock source for OMAP2/3 dss.lcd_clk_source is set to the default value DSS_CLK_SRC_FCK at dss_init. For OMAP2 and OMAP3, the dss.lcd_clk_source should always be the same as dss.dispc_clk_source. The function dss_get_lcd_clk_source() always returns the default value DSS_CLK_SRC_FCK for OMAP2/3. This leads to wrong clock dumps when dispc_clk_source is not DSS_CLK_SRC_FCK. Correct this function to always return dss.dispc_clk_source for OMAP2/3. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit a9a6500b718a38d4658b8a61edd8fc3aa0418b50 Author: Tomi Valkeinen Date: Mon Apr 4 10:02:53 2011 +0300 OMAP: DSS2: DSI: fix dsi_dump_clocks() On OMAP4, reading DSI_PLL_CONFIGURATION2 register requires the L3 clock (CIO_CLK_ICG) to PLL. Currently dsi_dump_clocks() tries to read that register without enabling the L3 clock, leading to crash if DSI is not in use. The status of the bit being read from DSI_PLL_CONFIGURATION2 is available from dsi_clock_info->use_sys_clk, so we can avoid the whole problem by just using that. Signed-off-by: Tomi Valkeinen commit b2765092aed717ef9fd14bf5f82024359aff0576 Author: Tomi Valkeinen Date: Thu Apr 7 15:28:47 2011 +0300 OMAP: DSS2: DSI: fix use_sys_clk & highfreq use_sys_clk and highfreq fields in dsi.current_cinfo were never set. Luckily they weren't used anywhere so it didn't cause any problems. This patch fixes those fields and they are now set at the same time as the rest of the fields. Signed-off-by: Tomi Valkeinen commit 4e9f99d75cc6979b92d03ff9ae129c652c00a8d3 Author: Tomi Valkeinen Date: Wed May 11 14:10:07 2011 +0300 OMAP: DSS2: Move nokia-dsi-panel.h to include/video/ arch/arm/plat-omap/include/plat/nokia-dsi-panel.h is an include for the OMAP DSS panel driver for Nokia's DSI displays. A more logical place for it is in include/video. Signed-off-by: Tomi Valkeinen commit f8ae2f08d2c4574ca5c3923d2463ef106b116c2a Author: Tomi Valkeinen Date: Tue May 10 19:48:10 2011 +0300 OMAP: DSS2: Move panel-generic-dpi.h to include/video/ arch/arm/plat-omap/include/plat/panel-generic-dpi.h is an include for the OMAP DSS panel driver for generic DPI displays. A more logical place for it is in include/video. Signed-off-by: Tomi Valkeinen commit a0b38cc4d35e095f14ab0f486135f8a619ebfc14 Author: Tomi Valkeinen Date: Wed May 11 14:05:07 2011 +0300 OMAP: DSS2: Move display.h to include/video/ arch/arm/plat-omap/include/plat/display.h is an include for the OMAP DSS driver. A more logical place for it is in include/video. Signed-off-by: Tomi Valkeinen commit d7ba858a7f7a95d1617756a83ff0717767f624fd Author: Ondrej Zary Date: Tue May 10 23:24:15 2011 +0200 ALSA: fm801: implement TEA575x tuner autodetection Autodetect TEA575x tuner connection type during init. This allows tuner to work out-of-the box. tea575x_tuner module parameter remains functional to force tuner type. Tested with SF256-PCP and SF64-PCR. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 4ef7e71444b48cc89152cbc499ed94dde50515ee Author: Joe Perches Date: Fri May 6 11:04:55 2011 -0700 pcmcia: Make struct pcmcia_device_id const, sound drivers edition Make declarations of struct pcmcia_device_id const. Signed-off-by: Joe Perches Signed-off-by: Dominik Brodowski commit 8aa4d96fe3e4cda9a6469b22b3f017ed30996b10 Author: Daniel Drake Date: Tue May 10 22:34:11 2011 +0100 viafb: Automatic OLPC XO-1.5 configuration Currently, a long set of viafb options are needed to get the XO-1.5 laptop to output video (there is only 1 configuration that works, that can't really be autodetected). This patch automatically detects and configures viafb for the XO-1.5 laptop, meaning all that is required for working display is that viafb is loaded. Signed-off-by: Daniel Drake Signed-off-by: Florian Tobias Schandinat commit 81f8115305f821335cf9e16110bf0806f7b93283 Author: Magnus Damm Date: Thu Apr 28 13:25:36 2011 +0900 i2c: i2c-sh_mobile bus speed platform data V2 Add support to the i2c-sh_mobile driver for setting the I2C bus speed using platform data. Signed-off-by: Magnus Damm Signed-off-by: Ben Dooks commit 1082d5d29d9a71f43b969b89ce613374602a6946 Author: Magnus Damm Date: Thu Apr 21 22:20:39 2011 +0900 i2c: i2c-sh_mobile clock string removal Remove the clock string magic from the i2c-sh_mobile driver now when all platforms support clkdev properly. Signed-off-by: Magnus Damm Signed-off-by: Ben Dooks commit b098636cf04c89db4036fedc778da0acc666ad1a Author: NeilBrown Date: Wed May 11 15:52:21 2011 +1000 md: allow resync_start to be set while an array is active. The sysfs attribute 'resync_start' (known internally as recovery_cp), records where a resync is up to. A value of 0 means the array is not known to be in-sync at all. A value of MaxSector means the array is believed to be fully in-sync. When the size of member devices of an array (RAID1,RAID4/5/6) is increased, the array can be increased to match. This process sets resync_start to the old end-of-device offset so that the new part of the array gets resynced. However with RAID1 (and RAID6) a resync is not technically necessary and may be undesirable. So it would be good if the implied resync after the array is resized could be avoided. So: change 'resync_start' so the value can be changed while the array is active, and as a precaution only allow it to be changed while resync/recovery is 'frozen'. Changing it once resync has started is not going to be useful anyway. This allows the array to be resized without a resync by: write 'frozen' to 'sync_action' write new size to 'component_size' (this will set resync_start) write 'none' to 'resync_start' write 'idle' to 'sync_action'. Also slightly improve some tests on recovery_cp when resizing raid1/raid5. Now that an arbitrary value could be set we should be more careful in our tests. Signed-off-by: NeilBrown commit efbe0f27ccfa7237c5524b10e8ccc91f97002f16 Author: Tomoya MORINAGA Date: Mon May 9 16:32:31 2011 +0900 i2c-eg20t: Support new device ML7223 IOH Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Signed-off-by: Ben Dooks commit 40abcf772357355a04f966416eebc943fd0281d4 Author: Jay Cheng Date: Mon Apr 25 15:32:27 2011 -0600 i2c: tegra: Add de-bounce cycles. This enables debouncing of the I2C lines. The debounce period is 2 * the debounce register field value, in terms of the I2C block's main clock. The Tegra TRM indicates that a setting yielding >50nS is desirable. Hence, a setting of 2 => 4 clocks @ 72MHz => ~55nS. Signed-off-by: Ken Radtke [swarren: Added commit description body, Fixed 80-column limit, Reverted file permission change] Signed-off-by: Stephen Warren Signed-off-by: Ben Dooks commit 2078cf3b2230cc2ee456e67d28dd9a869097e1ff Author: Erik Gilling Date: Mon Apr 25 15:32:26 2011 -0600 i2c: tegra: fix repeated start handling A repeated start should be used for all but the last msg in an xfer. The NOSTART flag is for skipping the START frame (addr/rw) Signed-off-by: Erik Gilling Signed-off-by: Stephen Warren Signed-off-by: Ben Dooks commit cb63c62d8ee56d169463d8125ec32e1aa0fe11de Author: Todd Poynor Date: Mon Apr 25 15:32:25 2011 -0600 i2c: tegra: recover from spurious interrupt storm Re-init the I2C controller when an IRQ arrives with no I2C_INT_STATUS bits set to indicate why the interrupt was sent. Storms of such mystery interrupts are infrequently seen. Dump some more status when these interrupts arrive. Set an error for the current request and wake up the requester (rather than timing out the request or possibly silently ignoring the interrupts). If the I2C block is inside the DVC, also ACK the DVC I2C transfer done interrupt in the ISR error return path, as is done for the normal return path. Signed-off-by: Todd Poynor [swarren: Fix minor checkpatch whitespace issue, commit tag] Signed-off-by: Stephen Warren Signed-off-by: Ben Dooks commit 65a1a0ace554d61ea5a90377a54df1505275c1b1 Author: Kenneth Waters Date: Mon Apr 25 12:29:54 2011 -0600 i2c: tegra: Enable new slave mode. For Tegra i2c controller to function properly new slave mode must be enabled. swarren notes: In particular, I found this was needed when working on enabling the Tegra audio driver on the Seaboard board. There are two different PCB layouts for this board; a "clamshell" version, which works just fine without this change, and the original non-clamshell version, which needs this change in order for I2C to operate correctly. Without it, I2C probing fails for some devices, e.g. with: wm8903 0-001a: Device with ID register 0 is not a WM8903 wm8903 0-001a: asoc: failed to probe CODEC wm8903.0-001a: -19 asoc: failed to instantiate card tegra-wm8903: -19 ALSA device list: No soundcards found. Signed-off-by: Rakesh Iyer Cc: stable Signed-off-by: Stephen Warren Signed-off-by: Ben Dooks commit 6ef84509f3d439ed2d43ea40080643efec37f54f Author: Phil Sutter Date: Thu May 5 15:29:06 2011 +0200 crypto: mv_cesa - make count_sgs() null-pointer proof This also makes the dummy scatterlist in mv_hash_final() needless, so drop it. XXX: should this routine be made pulicly available? There are probably other users with their own implementations. Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 7759995c75ae0cbd4c861582908449f6b6208e7a Author: Phil Sutter Date: Thu May 5 15:29:05 2011 +0200 crypto: mv_cesa - copy remaining bytes to SRAM only when needed Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 8652348754a1f538daa1eab248e5c9c4c3600204 Author: Phil Sutter Date: Thu May 5 15:29:04 2011 +0200 crypto: mv_cesa - move digest state initialisation to a better place On one hand, the digest state registers need to be set only when actually using the crypto engine. On the other hand, there is a check for ctx->first_hash in mv_process_hash_current() already, so use that. Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit cc8d35057ce7ae2f88cc65be0f839316c4641332 Author: Phil Sutter Date: Thu May 5 15:29:03 2011 +0200 crypto: mv_cesa - fill inner/outer IV fields only in HMAC case Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 6677a776cf3dc4950a790946f88d26dafc4baf7b Author: Phil Sutter Date: Thu May 5 15:29:02 2011 +0200 crypto: mv_cesa - refactor copy_src_to_buf() The main goal was to have it not do anything when a zero len parameter was being passed (which could lead to a null pointer dereference, as in this case p->src_sg is null, either). Using the min() macro, the lower part of the loop gets simpler, too. Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 7a1c6bcf269203485d716d8e3bec6671dabb5067 Author: Phil Sutter Date: Thu May 5 15:29:01 2011 +0200 crypto: mv_cesa - no need to save digest state after the last chunk Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 2a025f5dfcfaf7348fff6bda3ea007144f7eb47c Author: Phil Sutter Date: Thu May 5 15:29:00 2011 +0200 crypto: mv_cesa - print a warning when registration of AES algos fail Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 811e6ed62347f1042ab1c560e5e2ebc8892f7f8f Author: Phil Sutter Date: Thu May 5 15:28:59 2011 +0200 crypto: mv_cesa - drop this call to mv_hash_final from mv_hash_finup The code in mv_hash_final is actually a superset of mv_hash_finup's body. Since the driver works fine without, drop it. Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 99db3eacac81e50225d8a3571e32d692428f6920 Author: Phil Sutter Date: Thu May 5 15:28:58 2011 +0200 crypto: mv_cesa - the descriptor pointer register needs to be set just once Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit 042e9e73561aa406b872f3e310bdc9477c379cb3 Author: Phil Sutter Date: Thu May 5 15:28:57 2011 +0200 crypto: mv_cesa - use ablkcipher_request_cast instead of the manual container_of Signed-off-by: Phil Sutter Signed-off-by: Herbert Xu commit ab9d47e990c12c11cc95ed1247a3782234a7e33a Author: NeilBrown Date: Wed May 11 14:54:41 2011 +1000 md/raid10: reformat some loops with less indenting. When a loop ends with an 'if' with a large body, it is neater to make the if 'continue' on the inverse condition, and then the body is indented less. Apply this pattern 3 times, and wrap some other long lines. Signed-off-by: NeilBrown commit f17ed07c853d5d772515f565a7fc68f9098d6d69 Author: NeilBrown Date: Wed May 11 14:54:32 2011 +1000 md/raid10: remove unused variable. This variable 'disk' is never used - how odd. Signed-off-by: NeilBrown commit a8830bcaf3206f15e29efcd9e04becd96a0722e9 Author: NeilBrown Date: Wed May 11 14:54:19 2011 +1000 md/raid10: make more use of 'slot' in raid10d. Now that we have a 'slot' variable, make better use of it to simplify some code a little. Signed-off-by: NeilBrown commit 7c4e06ff2b6a4c09638551dfde76f37f9fca5c0c Author: NeilBrown Date: Wed May 11 14:53:17 2011 +1000 md/raid10: some tidying up in fix_read_error Currently the rdev on which a read error happened could be removed before we perform the fix_error handling. This requires extra tests for NULL. So delay the rdev_dec_pending call until after the call to fix_read_error so that we can be sure that the rdev still exists. This allows an 'if' clause to be removed so the body gets re-indented back one level. Signed-off-by: NeilBrown commit af6d7b760c7547c1a410a333bdb24daed24e1043 Author: NeilBrown Date: Wed May 11 14:51:19 2011 +1000 md/raid1: improve handling of pages allocated for write-behind. The current handling and freeing of these pages is a bit fragile. We only keep the list of allocated pages in each bio, so we need to still have a valid bio when freeing the pages, which is a bit clumsy. So simply store the allocated page list in the r1_bio so it can easily be found and freed when we are finished with the r1_bio. Signed-off-by: NeilBrown commit 7ca78d57d11a91bc93b35342fa58647b85bedeb1 Author: NeilBrown Date: Wed May 11 14:50:37 2011 +1000 md/raid1: try fix_sync_read_error before process_checks. If we get a read error during resync/recovery we current repeat with single-page reads to find out just where the error is, and possibly read each page from a different device. With check/repair we don't currently do that, we just fail. However it is possible that while all devices fail on the large 64K read, we might be able to satisfy each 4K from one device or another. So call fix_sync_read_error before process_checks to maximise the chance of finding good data and writing it out to the devices with read errors. For this to work, we need to set the 'uptodate' flags properly after fix_sync_read_error has succeeded. Signed-off-by: NeilBrown commit 78d7f5f726deb562a51126603f2dc5d00990b223 Author: NeilBrown Date: Wed May 11 14:48:56 2011 +1000 md/raid1: tidy up new functions: process_checks and fix_sync_read_error. These changes are mostly cosmetic: 1/ change mddev->raid_disks to conf->raid_disks because the later is technically safer, though in current practice it doesn't matter in this particular context. 2/ Rearrange two for / if loops to have an early 'continue' so the body of the 'if' doesn't need to be indented so much. Signed-off-by: NeilBrown commit a68e58703575b9c03d610a818e0241564fc17f68 Author: NeilBrown Date: Wed May 11 14:40:44 2011 +1000 md/raid1: split out two sub-functions from sync_request_write sync_request_write is too big and too deep. So split out two self-contains bits of functionality into separate function. Signed-off-by: NeilBrown commit 6f8d0c77cef5849433dd7beb0bd97e573cc4a6a3 Author: NeilBrown Date: Wed May 11 14:38:44 2011 +1000 md: make error_handler functions more uniform and correct. - there is no need to test_bit Faulty, as that was already done in md_error which is the only caller of these functions. - MD_CHANGE_DEVS should be set *after* faulty is set to ensure metadata is updated correctly. - spinlock should be held while updating ->degraded. Signed-off-by: NeilBrown commit 92f861a72a273ed038c1e22ff9775456353e3009 Author: NeilBrown Date: Wed May 11 14:38:02 2011 +1000 md/multipath: discard ->working_disks in favour of ->degraded conf->working_disks duplicates information already available in mddev->degraded. So remove working_disks. Signed-off-by: NeilBrown commit 76073054c95b12af6bd0cc9b9462a265b45ba38f Author: NeilBrown Date: Wed May 11 14:34:56 2011 +1000 md/raid1: clean up read_balance. read_balance has two loops which both look for a 'best' device based on slightly different criteria. This is clumsy and makes is hard to add extra criteria. So replace it all with a single loop that combines everything. Signed-off-by: NeilBrown commit 56d9912106b0974ffb6dd264c80c7e816677e998 Author: NeilBrown Date: Wed May 11 14:27:03 2011 +1000 md: simplify raid10 read_balance raid10 read balance has two different loop for looking through possible devices to chose the best. Collapse those into one loop and generally make the code more readable. Signed-off-by: NeilBrown commit 8258c53208d7a9b7207e7d4dae36d2ea384cb278 Author: NeilBrown Date: Wed May 11 14:26:30 2011 +1000 md/bitmap: fix saving of events_cleared and other state. If a bitmap is found to be 'stale' the events_cleared value is set to match 'events'. However if the array is degraded this does not get stored on disk. This can subsequently lead to incorrect behaviour. So change bitmap_update_sb to always update events_cleared in the superblock from the known events_cleared. For neatness also set ->state from ->flags. This requires updating ->state whenever we update ->flags, which makes sense anyway. This is suitable for any active -stable release. cc: stable@kernel.org Signed-off-by: NeilBrown commit bedd86b7773fd97f0d708cc0c371c8963ba7ba9a Author: NeilBrown Date: Wed May 11 14:26:20 2011 +1000 md: reject a re-add request that cannot be honoured. The 'add_new_disk' ioctl can be used to add a device either as a spare, or as an active disk that just needs to be resynced based on write-intent-bitmap information (re-add) Currently if a re-add is requested but fails we add as a spare instead. This makes it impossible for user-space to check for failure. So change to require that a re-add attempt will either succeed or completely fail. User-space can then decide what to do next. Signed-off-by: NeilBrown commit b0140891a8cea36469f58d23859e599b1122bd37 Author: NeilBrown Date: Tue May 10 17:49:01 2011 +1000 md: Fix race when creating a new md device. There is a race when creating an md device by opening /dev/mdXX. If two processes do this at much the same time they will follow the call path __blkdev_get -> get_gendisk -> kobj_lookup The first will call -> md_probe -> md_alloc -> add_disk -> blk_register_region and the race happens when the second gets to kobj_lookup after add_disk has called blk_register_region but before it returns to md_alloc. In the case the second will not call md_probe (as the probe is already done) but will get a handle on the gendisk, return to __blkdev_get which will then call md_open (via the ->open) pointer. As mddev->gendisk hasn't been set yet, md_open will think something is wrong an return with ERESTARTSYS. This can loop endlessly while the first thread makes no progress through add_disk. Nothing is blocking it, but due to scheduler behaviour it doesn't get a turn. So this is essentially a live-lock. We fix this by simply moving the assignment to mddev->gendisk before the call the add_disk() so md_open doesn't get confused. Also move blk_queue_flush earlier because add_disk should be as late as possible. To make sure that md_open doesn't complete until md_alloc has done all that is needed, we take mddev->open_mutex during the last part of md_alloc. md_open will wait for this. This can cause a lock-up on boot so Cc:ing for stable. For 2.6.36 and earlier a different patch will be needed as the 'blk_queue_flush' call isn't there. Signed-off-by: NeilBrown Reported-by: Thomas Jarosch Tested-by: Thomas Jarosch Cc: stable@kernel.org commit e522a7126c7c144a1dd14c6f217ac31e71082b1d Author: Jordan_Hargrave@Dell.com Date: Mon May 9 15:24:55 2011 -0500 PCI: Set PCIE maxpayload for card during hotplug insertion The following patch sets the MaxPayload setting to match the parent reading when inserting a PCIE card into a hotplug slot. On our system, the upstream bridge is set to 256, but when inserting a card, the card setting defaults to 128. As soon as I/O is performed to the card it starts receiving errors since the payload size is too small. Reviewed-by: Kenji Kaneshige Signed-off-by: Jordan Hargrave Signed-off-by: Jesse Barnes commit a246670ddee3132fa71f8993d3989ad8ac04d965 Author: Rafael J. Wysocki Date: Sat Apr 30 00:21:38 2011 +0200 PCI/ACPI: Report _OSC control mask returned on failure to get control If an attempt to get _OSC control of the PCIe native features from the BIOS fails, report the resulting mask of control flags the BIOS was willing to grant in the error message. Moreover, if the _OSC support mask is insufficient for requesting control of the PCIe native features or pcie_ports_disabled is set, print a diagnostic message containing the _OSC support mask. This helps to diagnose obscure _OSC-related problems on a number machines. Signed-off-by: Rafael J. Wysocki Signed-off-by: Jesse Barnes commit c0a86a9bea55d505574120f3e9775e3844276505 Author: Seth Heasley Date: Tue Apr 19 16:35:15 2011 -0700 x86/PCI: irq and pci_ids patch for Intel Panther Point DeviceIDs This patch adds the LPC Controller DeviceIDs for the Intel Panther Point PCH. Acked-by: Jean Delvare Signed-off-by: Seth Heasley Signed-off-by: Jesse Barnes commit 34e3207205ef492451cc5c53694d4772a9728b9f Author: Greg Thelen Date: Sun Apr 17 08:20:32 2011 -0700 PCI: handle positive error codes Callers expect pci_user_{read,write}_config_*() to indicate errors by returning negative values. Prior to this change, the indicated routines could return positive error codes (e.g. PCIBIOS_BAD_REGISTER_NUMBER) which callers would mistakenly interpret as success. This change converts any non-zero return from the mentioned routines into unambiguous negative value return codes. Signed-off-by: Greg Thelen Signed-off-by: Jesse Barnes commit d97ecd819137118b4686a753415f93215a6edacf Author: Greg Thelen Date: Sun Apr 17 08:22:21 2011 -0700 PCI: check pci_vpd_pci22_wait() return pci_vpd_pci22_write() calls pci_vpd_pci22_wait() after writing PCI_VPD_DATA and PCI_VPD_ADDR to wait for the VPD operation to complete. The result pci_vpd_pci22_wait() was not checked for error. This change checks for error. Signed-off-by: Greg Thelen Signed-off-by: Jesse Barnes commit b6d95bb63ce6cea7c1a344aa46bbd6e253a3f6ce Author: Jean Delvare Date: Fri Apr 15 10:24:07 2011 +0200 PCI: Use ICH6_GPIO_EN in ich6_lpc_acpi_gpio We were just lucky that ICH4_GPIO_EN and ICH6_GPIO_EN happen to have the same value. Signed-off-by: Jean Delvare Signed-off-by: Jesse Barnes commit 5d9c0a795fa3769db681d174b4c15c6e6e4a9b9a Author: Jean Delvare Date: Fri Apr 15 10:03:53 2011 +0200 PCI: Fix typo in ich7 quirk comment Signed-off-by: Jean Delvare Signed-off-by: Jesse Barnes commit 5491ff511d31ed06e9572f1e84e3494be66b6e8c Author: Yinghai Lu Date: Tue Apr 12 10:20:48 2011 -0700 x86/PCI: Remove dma32_reserve_bootmem This workaround holds a dma32 buffer at early boot to prevent later bootmem allocations from stealing it in the case of large RAM configs. Now that x86 is using memblock, and the nobootmem wrapper does top-down allocation, it's no longer necessary, so remove it. Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit 63c4408074cbcc070ac17fc10e524800eb9bd0b0 Author: Hemant Pedanekar Date: Tue Apr 5 12:32:50 2011 +0530 PCI: Add quirk for setting valid class for TI816X Endpoint TI816X (common name for DM816x/C6A816x/AM389x family) devices configured to boot as PCIe Endpoint have class code = 0. This makes kernel PCI bus code to skip allocating BARs to these devices resulting into following type of error when trying to enable them: "Device 0000:01:00.0 not available because of resource collisions" The device cannot be operated because of the above issue. This patch adds a ID specific (TI VENDOR ID and 816X DEVICE ID based) 'early' fixup quirk to replace class code with PCI_CLASS_MULTIMEDIA_VIDEO as class. Signed-off-by: Hemant Pedanekar Signed-off-by: Jesse Barnes commit 40294d8f14384780a61a2dea8c92a231176ae301 Author: Wanlong Gao Date: Mon Apr 4 17:12:59 2011 +0800 PCI: Fix uninitialized variable bug in AER injection code If it was preempted, and the variable aer_mask_override is changed after the spin_unlock_irqrestore it will write an uninitialized variable by the pci_write_config_dword() function. Signed-off-by: Wanlong Gao Signed-off-by: Jesse Barnes commit 0e8ede5351b53610363215f750e576ca1db1d0cd Author: Julia Lawall Date: Sun Feb 13 13:12:11 2011 +0100 x86/PCI: Convert release_resource to release_region/release_mem_region Request_region should be used with release_region, not release_resource. The local variables region and region2 are dropped and the calls to release_resource are replaced with calls to release_region, using the first two arguments of the corresponding calls to request_region. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression x,E; @@ ( *x = request_region(...) | *x = request_mem_region(...) ) ... when != release_region(x) when != x = E * release_resource(x); // Signed-off-by: Julia Lawall Signed-off-by: Jesse Barnes commit 83d74e036b94ffbf871667eede5ef02993709452 Author: Rafael J. Wysocki Date: Sat Mar 5 21:48:44 2011 +0100 PCI/PM: Add kerneldoc description of pci_pm_reset() The pci_pm_reset() function is not a very nice interface due to its limitations and conditional behavior (e.g. it doesn't affect devices in low-power states), but it cannot be simply dropped, because existing device drivers may depend on it. However, its behavior and limitations should be well documented, so add an appropriate kerneldoc comment to it. Signed-off-by: Rafael J. Wysocki Signed-off-by: Jesse Barnes commit 3504e47ffca5ed3f9e2cc7d37b428fbf1e00ad1b Author: Alex Williamson Date: Thu Mar 10 11:54:16 2011 -0700 PCI: Enable ASPM state clearing regardless of policy Commit 2f671e2d allowed us to clear ASPM state when the FADT tells us it isn't supported, but we don't put this into effect if the aspm_policy is set to POLICY_POWERSAVE. Enable the state to be cleared regardless of policy. Signed-off-by: Alex Williamson Signed-off-by: Jesse Barnes commit 1fc19aff84edf97753c58cf4b858c6c4fdb246fa Author: Eric Dumazet Date: Mon May 9 20:55:03 2011 -0700 net: fix two lockdep splats Commit e67f88dd12f6 (net: dont hold rtnl mutex during netlink dump callbacks) switched rtnl protection to RCU, but we forgot to adjust two rcu_dereference() lockdep annotations : inet_get_link_af_size() or inet_fill_link_af() might be called with rcu_read_lock or rtnl held, so use rcu_dereference_rtnl() instead of rtnl_dereference() Reported-by: Valdis Kletnieks Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit f063052947f770845a6252f7fa24f6f624592a24 Author: Eric W. Biederman Date: Wed May 4 17:51:50 2011 -0700 net: Allow setting the network namespace by fd Take advantage of the new abstraction and allow network devices to be placed in any network namespace that we have a fd to talk about. Acked-by: David S. Miller Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit a00eaf11a223c63fbb212369d6db69ce4c55a2d1 Author: Eric W. Biederman Date: Sun Mar 7 18:48:39 2010 -0800 ns proc: Add support for the ipc namespace Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit 34482e89a5218f0f9317abf1cfba3bb38b5c29dd Author: Eric W. Biederman Date: Sun Mar 7 18:43:27 2010 -0800 ns proc: Add support for the uts namespace Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit 13b6f57623bc485e116344fe91fbcb29f149242b Author: Eric W. Biederman Date: Sun Mar 7 18:14:23 2010 -0800 ns proc: Add support for the network namespace. Implementing file descriptors for the network namespace is simple and straight forward. Acked-by: David S. Miller Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit 0663c6f8fa37d777ede74ff991a0cba3a42fcbd7 Author: Eric W. Biederman Date: Sun Mar 7 17:48:52 2010 -0800 ns: Introduce the setns syscall With the networking stack today there is demand to handle multiple network stacks at a time. Not in the context of containers but in the context of people doing interesting things with routing. There is also demand in the context of containers to have an efficient way to execute some code in the container itself. If nothing else it is very useful ad a debugging technique. Both problems can be solved by starting some form of login daemon in the namespaces people want access to, or you can play games by ptracing a process and getting the traced process to do things you want it to do. However it turns out that a login daemon or a ptrace puppet controller are more code, they are more prone to failure, and generally they are less efficient than simply changing the namespace of a process to a specified one. Pieces of this puzzle can also be solved by instead of coming up with a general purpose system call coming up with targed system calls perhaps socketat that solve a subset of the larger problem. Overall that appears to be more work for less reward. int setns(int fd, int nstype); The fd argument is a file descriptor referring to a proc file of the namespace you want to switch the process to. In the setns system call the nstype is 0 or specifies an clone flag of the namespace you intend to change to prevent changing a namespace unintentionally. v2: Most of the architecture support added by Daniel Lezcano v3: ported to v2.6.36-rc4 by: Eric W. Biederman v4: Moved wiring up of the system call to another patch v5: Cleaned up the system call arguments - Changed the order. - Modified nstype to take the standard clone flags. v6: Added missing error handling as pointed out by Matt Helsley Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit 6b4e306aa3dc94a0545eb9279475b1ab6209a31f Author: Eric W. Biederman Date: Sun Mar 7 16:41:34 2010 -0800 ns: proc files for namespace naming policy. Create files under /proc//ns/ to allow controlling the namespaces of a process. This addresses three specific problems that can make namespaces hard to work with. - Namespaces require a dedicated process to pin them in memory. - It is not possible to use a namespace unless you are the child of the original creator. - Namespaces don't have names that userspace can use to talk about them. The namespace files under /proc//ns/ can be opened and the file descriptor can be used to talk about a specific namespace, and to keep the specified namespace alive. A namespace can be kept alive by either holding the file descriptor open or bind mounting the file someplace else. aka: mount --bind /proc/self/ns/net /some/filesystem/path mount --bind /proc/self/fd/ /some/filesystem/path This allows namespaces to be named with userspace policy. It requires additional support to make use of these filedescriptors and that will be comming in the following patches. Acked-by: Daniel Lezcano Signed-off-by: Eric W. Biederman commit 1f8e1cdac616e510eeb2dc2a9226bf597bc6cfd6 Author: Robert P. J. Day Date: Sat May 7 17:18:20 2011 -0400 SYSFS: Fix erroneous comments for sysfs_update_group(). Fix what is clearly a simple copy-and-paste error in commenting the sysfs_update_group() routine. Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit 177c2cbf7dc4f6599efa6cd2b514381784f47634 Author: Tomoya MORINAGA Date: Mon May 9 17:25:20 2011 +0900 pch_uart: Support new device ML7223 IOH Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Acked-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a9df304cf78d76108196da1ff1dad4d9a5737c2e Author: Thomas Abraham Date: Sat May 7 22:28:04 2011 +0200 USB: Gadget: Add Samsung S3C24XX USB High-Speed controller driver The Samsung's S3C2416, S3C2443 and S3C2450 includes a USB High-Speed device controller module. This driver enables support for USB high-speed gadget functionality for the Samsung S3C24xx SoC's that include this controller. Signed-off-by: Thomas Abraham Signed-off-by: Sangbeom Kim Signed-off-by: Kukjin Kim Signed-off-by: Alexander Neumann Signed-off-by: Heiko Stuebner Signed-off-by: Greg Kroah-Hartman commit f65680455def9eea074fce58b76006a5ce60e28e Author: Thomas Abraham Date: Sat May 7 22:29:16 2011 +0200 ARM: S3C2416: Add support for USB 2.0 High-Speed gadget controller Add support for USB 2.0 High-Speed gadget controller driver for Samsung's S3C2416 processor. Signed-off-by: Thomas Abraham Signed-off-by: Sangbeom Kim Signed-off-by: Greg Kroah-Hartman commit 4a98f590659113f72c021201781d5b83bc743a7c Author: Thomas Abraham Date: Sat May 7 22:26:53 2011 +0200 ARM: S3C24XX: Add plaform device definition for USB High-Speed gadget controller. S3C2416, S3C2443 and S3C2450 includes a USB High-Speed Gadget controller module. This patch adds the following for supporting this controller. 1. Definition for USB High-Speed controller base address. 2. Platform device instantiation. 3. Declaration for platform data structure. 4. Functionality to setup platform data for the controller. Signed-off-by: Thomas Abraham Signed-off-by: Sangbeom Kim Signed-off-by: Greg Kroah-Hartman commit 0a94c6b121c58692a9b6cbe2cd9a26ffdc2c4a82 Author: Thomas Abraham Date: Sat May 7 22:24:49 2011 +0200 ARM: S3C2416: Add USB Phy register definitions Add register definitions required to configure the USB Phy. The definitions for PHYCTRL, PHYPWR, URSTCON and UCLKCON registers and corresponding bit field definitions are added. Signed-off-by: Thomas Abraham Signed-off-by: Sangbeom Kim Signed-off-by: Greg Kroah-Hartman commit 849426c3a430a6fb4613b0e5dbb81bcd6b10a075 Author: Maxin B John Date: Sun May 8 15:56:17 2011 +0300 usb: gadget: Remove the LUN checks which are always true Comparing an unsigned integer with greater than or equal to zero is always true. So, it is safe to remove similar checks from 'f_mass_storage.c' and 'file_storage.c' Signed-off-by: Maxin B. John Acked-by: Michal Nazarewicz Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 304b0b572c66bcd89df13e856db16503609c1a24 Author: Greg Dietsche Date: Sun May 8 22:51:43 2011 -0500 usb: fix warning in usbtest module v2 On amd64 unsigned is not as wide as pointer and this causes a compiler warning. Switching to unsigned long corrects the problem. Signed-off-by: Greg Dietsche Signed-off-by: Greg Kroah-Hartman commit 27362d467b3d9955f6ae1737002dac8c0f99fdc7 Author: Jingoo Han Date: Mon May 9 15:28:39 2011 +0900 USB: ehci-s5p : use __devinit and __devexit macros for probe and remove The __devinit and __devexit macros were added to probe and remove functions. The macros move the probe and remove functions to the devinit and devexit sections Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit c851e83f00f6d343ff7e7405f6f50eb3ba288a2c Author: Florian Fainelli Date: Tue May 10 11:17:33 2011 +0200 USB: cp210x: fix typo, Telegesys should have been Telegesis CC: David Chalmers Reported-by: Xavier Carcelle Signed-off-by: Florian Fainelli Signed-off-by: Greg Kroah-Hartman commit 95ed32366748e2034e82c9e738c312df8fb3d3a9 Author: Roger Quadros Date: Mon May 9 13:08:07 2011 +0300 usb: gadget: f_mass_storage: Make us pass USBCV MSC Compliance tests Defer the SET_CONFIG and SET_INTERFACE control transfer's data/status stages till we are ready to process new CBW from the host. This way we ensure that we don't loose any CBW during MSC compliance tests and cause lock up. Signed-off-by: Roger Quadros Acked-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 1b9ba000177ee47bcc5b44c7c34e48e735f5f9b1 Author: Roger Quadros Date: Mon May 9 13:08:06 2011 +0300 usb: gadget: composite: Allow function drivers to pause control transfers Some USB function drivers (e.g. f_mass_storage.c) need to delay or defer the data/status stages of standard control requests like SET_CONFIGURATION or SET_INTERFACE till they are done with their bookkeeping and are actually ready for accepting new commands to their interface. They can now achieve this functionality by returning USB_GADGET_DELAYED_STATUS in their setup handlers (e.g. set_alt()). The composite framework will then defer completion of the control transfer by not completing the data/status stages. This ensures that the host does not send new packets to the interface till the function driver is ready to take them. When the function driver that requested for USB_GADGET_DELAYED_STATUS is done with its bookkeeping, it should signal the composite framework to continue with the data/status stages of the control transfer. It can do so by invoking the new API usb_composite_setup_continue(). This is where the control transfer's data/status stages are completed and host can initiate new transfers. The DELAYED_STATUS mechanism is currently only supported if the expected data phase is 0 bytes (i.e. w_length == 0). Since SET_CONFIGURATION and SET_INTERFACE are the only cases that will use this mechanism, this is not a limitation. Signed-off-by: Roger Quadros Signed-off-by: Greg Kroah-Hartman commit 8eadef1526886db2a471c432d2c3d154de46f5c6 Merge: 8a1629c 1bb73a8 Author: Greg Kroah-Hartman Date: Tue May 10 14:11:19 2011 -0700 Merge branch 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-next * 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: xHCI 1.0: Max Exit Latency Too Large Error xHCI 1.0: TT_THINK_TIME set xHCI 1.0: Block Interrupts for Isoch transfer xHCI 1.0: Isoch endpoint CErr field set xHCI 1.0: Control endpoint average TRB length field set xHCI 1.0: Setup Stage TRB Transfer Type flag commit 6d794d4250284917fa394c550f054f5fd801f50f Author: Ben Widawsky Date: Mon Apr 25 11:25:56 2011 -0700 drm/i915: debugfs interface for forcewake reference count forcewake is controlled by the open and close of the debugfs file. This assures that buggy applications cannot cause the GT to stay on forever. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 4912d04193733a825216b926ffd290fada88ab07 Author: Ben Widawsky Date: Mon Apr 25 11:25:20 2011 -0700 drm/i915: move gen6 rps handling to workqueue The render P-state handling code requires reading from a GT register. This means that FORCEWAKE must be written to, a resource which is shared and should be protected by struct_mutex. Hence we can not manipulate that register from within the interrupt handling and so must delegate the task to a workqueue. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit d1ebd816e6d7967c764f0cfa7d718f7c5cc7a8e4 Author: Ben Widawsky Date: Mon Apr 25 20:11:50 2011 +0100 drm/i915: forcewake struct mutex locking fixes Found by the new strict checking for the mutex being held whilst manipulating the forcewake status. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit fcca7926299944841569515da321bef9655b7703 Author: Ben Widawsky Date: Mon Apr 25 11:23:07 2011 -0700 drm/i915: reference counted forcewake Provide a reference count to track the forcewake state of the GPU and give a safe mechanism for userspace to wake the GT. This also potentially saves a UC read if the GT is known to be awake already. The reference count is atomic, but the register access and hardware wake sequence is protected by struct_mutex. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson commit b7287d8054d219b3009f7ca82edf24f89fd363e5 Author: Ben Widawsky Date: Mon Apr 25 11:22:22 2011 -0700 drm/i915: proper use of forcewake Moved the macros around to properly do reads and writes for the given GPU. This is to address special requirements for gen6 (SNB) reads and writes. Registers in the range 0-0x40000 on gen6 platforms require special handling. Instead of relying on the callers to pick the registers correctly, move the logic into the read and write functions. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson commit 2c7111dbaec72b01c804afb8ad77c6c7523986fd Author: Chris Wilson Date: Tue Mar 29 10:40:27 2011 +0100 drm/i915: Disable all outputs early, before KMS takeover If the outputs are active and continuing to access the GATT when we teardown the PTEs, then there is a potential for us to hang the GPU. The hang tends to be a PGTBL_ER with either an invalid host access or an invalid display plane fetch. v2: Reorder IRQ initialisation to defer until after GEM is setup. Reported-by: Pekka Enberg Signed-off-by: Chris Wilson Tested-by: Daniel Vetter (855GM) Tested-by: Pekka Enberg # note that this doesn't fix the underlying problem of the PGTBL_ER and pipe underruns being reported immediately upon init on his 965GM MacBook Reported-and-tested-by: Rick Bramley Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=35635 Reported-and-tested-by: Zdenek Kabelac Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=36048 Reviewed-by: Ben Widawsky commit 9c23f7fc4cef14b46830b7f9eb0dc1b2d6f55d4d Author: Chris Wilson Date: Tue Mar 29 16:59:52 2011 -0700 drm/i915: Do not clflush snooped objects Rely on the GPU snooping into the CPU cache for appropriately bound objects on MI_FLUSH. Or perhaps one day we will have a cache-coherent CPU/GPU package... Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Reviewed-by: Daniel Vetter Signed-off-by: Keith Packard commit 93dfb40cd887c4f39e38f047c4d9ea0b7188a58a Author: Chris Wilson Date: Tue Mar 29 16:59:50 2011 -0700 drm/i915: Rename agp_type to cache_level ... to clarify just how we use it inside the driver and remove the confusion of the poorly matching agp_type names. We still need to translate through agp_type for interface into the fake AGP driver. Signed-off-by: Chris Wilson Signed-off-by: Eric Anholt Reviewed-by: Daniel Vetter Signed-off-by: Keith Packard commit e76d3630810b0ac5b07aa7ef28428c1bc2d10861 Author: Ben Widawsky Date: Sat Mar 19 18:14:29 2011 -0700 drm/i915: debugfs for context information Currently this is only useful for the rc6 stuff. But this would also be useful when I finally get around to the logical context + ppgtt stuff. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 7df8721beb9cbd849dce2b153e3b287c98adbb7f Author: Jesse Barnes Date: Wed Mar 30 14:08:56 2011 -0700 drm/i915: use i915_enable_rc6 on SNB too For debug & testing. Signed-off-by: Jesse Barnes Reviewed-by: Ben Widawsky Signed-off-by: Chris Wilson commit 4a246cfc3c337ecb800d508ee5ed906534edb25c Author: Ben Widawsky Date: Sat Mar 19 18:14:28 2011 -0700 drm/i915: fix rc6 initialization on Ironlake There is a race condition between setting PWRCTXA and executing MI_SET_CONTEXT. PWRCTXA must not be set until a valid context has been written (or else the GPU could possible go into rc6, and return to an invalid context). Reported-and-Tested-by: Gu Rui Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=28582 Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 96f298aa9c9fc9b7c8a2ebaf8c195d178f570e09 Author: Ben Widawsky Date: Sat Mar 19 18:14:27 2011 -0700 drm/1915: ringbuffer wait for idle function Added a new function which waits for the ringbuffer space to be equal to (total - 8). This is the empty condition of the ringbuffer, and equivalent to head==tail. Also modified two users of this functionality elsewhere in the code. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson commit 2c34b850ee1e9f86b41706149d0954eee58757a3 Author: Ben Widawsky Date: Sat Mar 19 18:14:26 2011 -0700 drm/i915: fix ilk rc6 teardown locking In the failure cases during rc6 initialization, both the power context and render context may get !refcount without holding struct_mutex. However, on rc6 disabling, the lock is held by the caller. Rearranged the locking so that it's safe in both cases. Signed-off-by: Ben Widawsky Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 273e27ca8081095a1bdf65276d4b645215ad1c57 Author: Eric Anholt Date: Wed Mar 30 13:01:10 2011 -0700 drm/i915: Fold the DPLL limit defines into the structs that use them. They're used in one place, and not providing any descriptive value, with their names just being approximately the conjunction of the struct name and the struct field. This diff was produced with gcc -E, copying the new struct definitions out, moving a couple of the old comments into place in the new structs, and reindenting. Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson commit fae14981ce89fede363a8d4ddda7f7ca587195ff Author: Eric Anholt Date: Wed Mar 30 13:01:09 2011 -0700 drm/i915: Clean up leftover DPLL and LVDS register choice from pch split. We used to have these from the product of (pch, non-pch) * (pipe a, pipe b). Now we can just use the nice per-pipe reg macros in the split out crtc_mode_sets. Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson commit a07d67870565e1015935f7a8d8d6ac5f507442c5 Author: Eric Anholt Date: Wed Mar 30 13:01:08 2011 -0700 drm/i915: Drop remaining pre-Ironlake code from ironlake_crtc_mode_set(). Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson commit 8febb2974faf0608111fd3c4dc36fa7f0f1cbfc2 Author: Eric Anholt Date: Wed Mar 30 13:01:07 2011 -0700 drm/i915: Drop non-HAS_PCH_SPLIT() code from ironlake_crtc_mode_set(). Ironlake is where the PCH split started. Signed-off-by: Eric Anholt Signed-off-by: Chris Wilson commit db244b60e7f7f11825c6f36bcc8e8d8f3ca7cd36 Author: Eric Anholt Date: Wed Mar 30 13:01:06 2011 -0700 drm/i915: Drop the remaining bit of Ironlake code from i9xx_crtc_mode_set(). Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Chris Wilson commit c713bb087e714f01082e6b8a85e98552e7bc6c3a Author: Eric Anholt Date: Wed Mar 30 13:01:05 2011 -0700 drm/i915: Drop the eDP paths from the pre-Ironlake crtc_mode_set. While g4x had DP, eDP came with Ironlake, so we don't need that code here. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Chris Wilson commit 929c77fb38aa1e5f028f1b59dfb641b25fffea8b Author: Eric Anholt Date: Wed Mar 30 13:01:04 2011 -0700 drm/i915: Remove the PCH paths from the pre-Ironlake crtc_mode_set(). Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes commit 0b701d27b37d52b80d8da2d8d15fb99e072ee819 Author: Eric Anholt Date: Wed Mar 30 13:01:03 2011 -0700 drm/i915: Move the vblank pre/post modeset to the common crtc_mode_set. Signed-off-by: Eric Anholt Reviewed-by: Jesse Barnes Signed-off-by: Chris Wilson commit f564048e201ead4d4d02138bc60ae28f83797ac4 Author: Eric Anholt Date: Wed Mar 30 13:01:02 2011 -0700 drm/i915: Split the crtc_mode_set function along HAS_PCH_SPLIT() lines. This path, which shouldn't be *that* complicated, is now so littered with per-chipset tweaks that it's hard to trace the order of what happens. HAS_PCH_SPLIT() is the most radical change across chipsets, so it seems like a natural split to simplify the code. This first commit just copies the existing code without changing anything. v2: updated to track removal of call to intel_enable_plane from i9xx_crtc_mode_set Signed-off-by: Eric Anholt Hella-acked-by: Jesse Barnes Signed-off-by: Chris Wilson commit 105e53f863c04e1d9e5bb34bf753c9fdbce6a60c Author: Stefan Richter Date: Sun May 1 20:50:31 2011 +0200 firewire: sbp2: parallelize login, reconnect, logout The struct sbp2_logical_unit.work items can all be executed in parallel but are not reentrant. Furthermore, reconnect or re-login work must be executed in a WQ_MEM_RECLAIM workqueue. Hence replace the old single-threaded firewire-sbp2 workqueue by a concurrency-managed but non-reentrant workqueue with rescuer. firewire-core already maintains one, hence use this one. In earlier versions of this change, I observed occasional failures of parallel INQUIRY to an Initio INIC-2430 FireWire 800 to dual IDE bridge. More testing indicates that parallel INQUIRY is not actually a problem, but too quick successions of logout and login + INQUIRY, e.g. a quick sequence of cable plugout and plugin, can result in failed INQUIRY. This does not seem to be something that should or could be addressed by serialization. Another dual-LU device to which I currently have access to, an OXUF924DSB FireWire 800 to dual SATA bridge with firmware from MacPower, has been successfully tested with this too. This change is beneficial to environments with two or more FireWire storage devices, especially if they are located on the same bus. Management tasks that should be performed as soon and as quickly as possible, especially reconnect, are no longer held up by tasks on other devices that may take a long time, especially login with INQUIRY and sd or sr driver probe. Signed-off-by: Stefan Richter commit 81bf52d8622f05cfe89893fd5c1101efd85f855b Author: Stefan Richter Date: Sun May 1 21:06:42 2011 +0200 firewire: sbp2: octlet AT payloads can be stack-allocated We do not need slab allocations for ORB pointer write transactions anymore in order to satisfy streaming DMA mapping constraints, thanks to commit da28947e7e36 "firewire: ohci: avoid separate DMA mapping for small AT payloads". (Besides, the slab-allocated buffers that firewire-sbp2 used to provide for 8-byte write requests were still not fully portable since they shared a cacheline with unrelated CPU-accessed data.) Signed-off-by: Stefan Richter commit b75ca5ea8e439893121ad80406a3c04c4b7612ab Author: Stefan Richter Date: Fri Apr 22 12:21:44 2011 +0200 firewire: sbp2: omit Scsi_Host lock from queuecommand firewire-sbp2 already takes care for internal serialization where required (ORB list accesses), and it does not use cmd->serial_number internally. Hence it is safe to not grab the shost lock around queuecommand. While we are at housekeeping, drop a redundant struct member: sbp2_command_orb.done is set once in a hot path and dereferenced once in a hot path. We can as well dereference sbp2_command_orb.cmd->scsi_done instead. Signed-off-by: Stefan Richter commit 6ea9e7bbfc389a12d52646449a201fe933ccd663 Author: Stefan Richter Date: Wed Oct 13 13:39:46 2010 +0200 firewire: core: use non-reentrant workqueue with rescuer firewire-core manages the following types of work items: fw_card.br_work: - resets the bus on a card and possibly sends a PHY packet before that - does not sleep for long or not at all - is scheduled via fw_schedule_bus_reset() by - firewire-ohci's pci_probe method - firewire-ohci's set_config_rom method, called by kernelspace protocol drivers and userspace drivers which add/remove Configuration ROM descriptors - userspace drivers which use the bus reset ioctl - itself if the last reset happened less than 2 seconds ago fw_card.bm_work: - performs bus management duties - usually does not (but may in corner cases) sleep for long - is scheduled via fw_schedule_bm_work() by - firewire-ohci's self-ID-complete IRQ handler tasklet - firewire-core's fw_device.work instances whenever the root node device was (successfully or unsuccessfully) discovered, refreshed, or rediscovered - itself in case of resource allocation failures or in order to obey the 125ms bus manager arbitration interval fw_device.work: - performs node probe, update, shutdown, revival, removal; including kernel driver probe, update, shutdown and bus reset notification to userspace drivers - usually sleeps moderately long, in corner cases very long - is scheduled by - firewire-ohci's self-ID-complete IRQ handler tasklet via the core's fw_node_event - firewire-ohci's pci_remove method via core's fw_destroy_nodes/ fw_node_event - itself during retries, e.g. while a node is powering up iso_resource.work: - accesses registers at the Isochronous Resource Manager node - usually does not (but may in corner cases) sleep for long - is scheduled via schedule_iso_resource() by - the owning userspace driver at addition and removal of the resource - firewire-core's fw_device.work instances after bus reset - itself in case of resource allocation if necessary to obey the 1000ms reallocation period after bus reset fw_card.br_work instances should not, and instances of the others must not, be executed in parallel by multiple CPUs -- but were not protected against that. Hence allocate a non-reentrant workqueue for them. fw_device.work may be used in the memory reclaim path in case of SBP-2 device updates. Hence we need a workqueue with rescuer and cannot use system_nrt_wq. Signed-off-by: Stefan Richter Reviewed-by: Tejun Heo commit 13882a82ee1646336c3996c93b4a560a55d2a419 Author: Clemens Ladisch Date: Mon May 2 09:33:56 2011 +0200 firewire: optimize iso queueing by setting wake only after the last packet When queueing iso packets, the run time is dominated by the two MMIO accesses that set the DMA context's wake bit. Because most drivers submit packets in batches, we can save much time by removing all but the last wakeup. The internal kernel API is changed to require a call to fw_iso_context_queue_flush() after a batch of queued packets. The user space API does not change, so one call to FW_CDEV_IOC_QUEUE_ISO must specify multiple packets to take advantage of this optimization. In my measurements, this patch reduces the time needed to queue fifty skip packets from userspace to one sixth on a 2.5 GHz CPU, or to one third at 800 MHz. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit f30e6d3e419bfb5540fa82ba7eca01d578556e6b Author: Stefan Richter Date: Fri Apr 22 15:13:54 2011 +0200 firewire: octlet AT payloads can be stack-allocated We do not need slab allocations anymore in order to satisfy streaming DMA mapping constraints, thanks to commit da28947e7e36 "firewire: ohci: avoid separate DMA mapping for small AT payloads". (Besides, the slab-allocated buffers that firewire-core, firewire-sbp2, and firedtv used to provide for 8-byte write and lock requests were still not fully portable since they crossed cacheline boundaries or shared a cacheline with unrelated CPU-accessed data. snd-firewire-lib got this aspect right by using an extra kmalloc/ kfree just for the 8-byte transaction buffer.) This change replaces kmalloc'ed lock transaction scratch buffers in firewire-core, firedtv, and snd-firewire-lib by local stack allocations. Perhaps the most notable result of the change is simpler locking because there is no need to serialize usages of preallocated per-device buffers anymore. Also, allocations and deallocations are simpler. Signed-off-by: Stefan Richter Acked-by: Clemens Ladisch commit 020abf03cd659388f94cb328e1e1df0656e0d7ff Merge: 0ff8fbc 693d92a Author: Stefan Richter Date: Tue May 10 20:52:07 2011 +0200 Merge tag 'v2.6.39-rc7' in order to pull in changes in drivers/media/dvb/firewire/ and sound/firewire/. commit 8f01cb0827c84bd9c4866b849415b3aa6f0428df Author: David S. Miller Date: Mon May 9 15:13:28 2011 -0700 ipv4: xfrm: Eliminate ->rt_src reference in policy code. Rearrange xfrm4_dst_lookup() so that it works by calling a helper function __xfrm_dst_lookup() that takes an explicit flow key storage area as an argument. Use this new helper in xfrm4_get_saddr() so we can fetch the selected source address from the flow instead of from rt->rt_src Signed-off-by: David S. Miller commit 5fc3590c81bd233c25fbe127cdcf7a8e26e12378 Author: David S. Miller Date: Mon May 9 14:52:02 2011 -0700 infiniband: Remove rt->rt_src usage in addr4_resolve() Use an explicit flow key and fetch it from there. Signed-off-by: David S. Miller commit 902ebd3e0de618b6d39004edac00b2cc36362065 Author: David S. Miller Date: Mon May 9 14:49:13 2011 -0700 sctp: Remove rt->rt_src usage in sctp_v4_get_saddr() Flow key is available, so fetch it from there. Signed-off-by: David S. Miller commit 79ab053145ae10edf8f0809d1c788b853c7f6ef1 Author: David S. Miller Date: Mon May 9 13:31:04 2011 -0700 ipv4: udp: Eliminate remaining uses of rt->rt_src We already track and pass around the correct flow key, so simply use it in udp_send_skb(). Signed-off-by: David S. Miller commit 9f6abb5f175bdb9ecfd390000a631bf0abf2fedb Author: David S. Miller Date: Mon May 9 13:28:22 2011 -0700 ipv4: icmp: Eliminate remaining uses of rt->rt_src On input packets, rt->rt_src always equals ip_hdr(skb)->saddr Anything that mangles or otherwise changes the IP header must relookup the route found at skb_rtable(). Therefore this invariant must always hold true. Signed-off-by: David S. Miller commit 0a5ebb8000c5362be368df9d197943deb06b6916 Author: David S. Miller Date: Mon May 9 13:22:43 2011 -0700 ipv4: Pass explicit daddr arg to ip_send_reply(). This eliminates an access to rt->rt_src. Signed-off-by: David S. Miller commit 8a1629c771b1a60bc6d73394d869fe69b13200dc Merge: 04aebcb 693d92a Author: Greg Kroah-Hartman Date: Tue May 10 13:30:45 2011 -0700 Merge branch 2.6.39-rc7 into usb-linus This was needed to resolve a conflict in: drivers/usb/host/isp1760-hcd.c Signed-off-by: Greg Kroah-Hartman commit d2dff872ac44540622ef77a2b7d6ce4a1b145931 Author: Chris Wilson Date: Tue Apr 19 08:36:26 2011 +0100 drm/i915: Attach a fb to the load-detect pipe We need to ensure that we feed valid memory into the display plane attached to the pipe when switching the pipe on. Otherwise, the display engine may read through an invalid PTE and so throw an PGTBL_ER exception. As we need to perform load detection before even the first object is allocated for the fbdev, there is no pre-existing object large enough for us to borrow to use as the framebuffer. So we need to create one and cleanup afterwards. At other times, the current fbcon may be large enough for us to borrow it for duration of load detection. Found by assert_fb_bound_for_plane(). Reported-by: Knut Petersen References: https://bugs.freedesktop.org/show_bug.cgi?id=36246 Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 0622a53c60fbf48d3b85efc4995f4c152c254cf4 Author: Chris Wilson Date: Thu Apr 21 09:32:11 2011 +0100 drm/i915: Remove dead code from intel_release_load_detect_pipe() As we now never attempt to steal a crtc for load detection, we either set a mode on a new pipe, or change the dpms mode on an existing pipe. Never both, so we can simplify the code slightly. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 6492711d05b85f9794809cb4a961ce8cdc6fa720 Author: Chris Wilson Date: Wed Apr 20 07:25:26 2011 +0100 drm/i915: Remove dead code from intel_get_load_detect_pipe() As we only allow the use of a disabled CRTC, we don't need to handle the case where we are reusing an already enabled pipe. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 4fbf69138ab3aa28a8f92512b7417d3d1829a086 Author: Chris Wilson Date: Wed Apr 20 00:23:12 2011 +0100 drm/i915: Pass the saved adjusted_mode when adding to the load-detect crtc Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 7a5e4805bda3c6420e96ca0626c3fa23dd281e96 Author: Chris Wilson Date: Tue Apr 19 23:21:12 2011 +0100 drm/i915: Remove unused supported_crtc from intel_load_detect_pipe ... and the no longer relevant comment. The code ceased stealing a pipe for load detection a long time ago. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit 8261b19173b89d86cc3088483595e2879e4976d6 Author: Chris Wilson Date: Tue Apr 19 23:18:09 2011 +0100 drm/i915: Don't store temporary load-detect variables in the generic encoder Keep all the state required for undoing and restoring the previous pipe configuration together in a single struct passed from intel_get_load_detect_pipe() to intel_release_load_detect_pipe() rather than stuffing them inside the common encoder structure. Signed-off-by: Chris Wilson Reviewed-by: Keith Packard Signed-off-by: Keith Packard commit be925587570a745944d99042368f72496bc28a70 Author: Chris Wilson Date: Wed Apr 20 19:20:15 2011 +0100 drm/i915: Propagate failure to set mode for load-detect pipe Check the return value from drm_crtc_set_mode(), report the failure via a debug message and propagate the error back to the caller. This prevents us from blissfully continuing to do the load detection on a disabled pipe. Fortunately actual failure for modesetting is very rare, and reported failures even rarer. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit 7173188d5d5e50b95c588dbae3b3bc78fde4138e Author: Chris Wilson Date: Tue Apr 19 23:10:58 2011 +0100 drm/i915: Simplify return value from intel_get_load_detect_pipe ... and so remove the confusion as to whether to use the returned crtc or intel_encoder->base.crtc with the subsequent load-detection. Even though they were the same, the two instances of load-detection code disagreed over which was the more correct. Signed-off-by: Chris Wilson Signed-off-by: Keith Packard commit b259f6730c09bc356df932ba9188f291de816808 Author: Chris Wilson Date: Tue Mar 29 13:19:09 2011 +0100 drm/i915: Move the irq wait queue initialisation into the ring init Required so that we don't obliterate the queue if initialising the rings after the global IRQ handler is installed. [Jesse, you recently looked at refactoring the IRQ installation routines, does moving the initialisation of ring buffer data structures away from that routine make sense in your grand scheme?] Signed-off-by: Chris Wilson Cc: Jesse Barnes Reviewed-by: Ben Widawsky Signed-off-by: Keith Packard commit 2c14ddc135d93cb4b33ee4bd4a2b05e21a4a762c Merge: 54b3335 72fe00f Author: Ingo Molnar Date: Tue May 10 22:15:57 2011 +0200 Merge branch 'iommu/2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into core/iommu commit 972a77fbf1bbea6f54b5986b05041a17b607695b Author: Allan Stephens Date: Thu Apr 21 20:34:03 2011 -0500 tipc: Revise timings used when sending link request messages Revises the algorithm governing the sending of link request messages to take into account the number of nodes each bearer is currently in contact with, and to ensure more rapid rediscovery of neighboring nodes if a bearer fails and then recovers. The discovery object now sends requests at least once a second if it is not in contact with any other nodes, and at least once a minute if it has at least one neighbor; if contact with the only neighbor is lost, the object immediately reverts to its initial rapid-fire search timing to accelerate the rediscovery process. In addition, the discovery object now stops issuing link request messages if it is in contact with the only neighboring node it is configured to communicate with, since further searching is unnecessary. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 1209966cd5d2ec7f89ad2ed58a6a342aa8ea8712 Author: Allan Stephens Date: Thu Apr 21 19:05:25 2011 -0500 tipc: Add monitoring of number of nodes discovered by bearer Augments TIPC's discovery object to track the number of neighboring nodes having an active link to the associated bearer. This means tipc_disc_update_link_req() becomes either one of: tipc_disc_add_dest() or: tipc_disc_remove_dest() depending on the code flow direction of things. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 691a62075922b43b2b03def87ebcfdfbf0cd2ed8 Author: Allan Stephens Date: Thu Apr 21 16:28:02 2011 -0500 tipc: Enhance sending of discovery object link request messages Augments TIPC's discovery object to send its initial neighbor discovery request message as soon as the associated bearer is created, rather than waiting for its first periodic timeout to occur, thereby speeding up the discovery process. Also adds a check to suppress the initial request or subsequent requests if the bearer is blocked at the time the request is scheduled for transmission. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 3a777ff8b14456e15991c9fcc225943453dc3a75 Author: Allan Stephens Date: Thu Apr 21 13:58:26 2011 -0500 tipc: Enhance handling of discovery object creation failures Modifies bearer creation and deletion code to improve handling of scenarios when a neighbor discovery object cannot be created. The creation routine now aborts the creation of a bearer if its discovery object cannot be created, and deletes the newly created bearer, rather than failing quietly and leaving an unusable bearer hanging around. Since the exit via the goto label really isn't a definitive failure in all cases, relabel it appropriately. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit dc63d91eb1cf74233c68b0058dcd477f5d019d02 Author: Allan Stephens Date: Thu Apr 21 11:50:42 2011 -0400 tipc: Introduce routine to enqueue a chain of messages on link tx queue Create a helper routine to enqueue a chain of sk_buffs to a link's transmit queue. It improves readability and the new function is anticipated to be used more than just once in the future as well. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 2689690469c9fd76f9db0afcdf2523f48cce4006 Author: Allan Stephens Date: Thu Apr 21 10:42:07 2011 -0500 tipc: Avoid recomputation of outgoing message length Rework TIPC's message sending routines to take advantage of the total amount of data value passed to it by the kernel socket infrastructure. This change eliminates the need for TIPC to compute the size of outgoing messages itself, as well as the check for an oversize message in tipc_msg_build(). In addition, this change warrants an explanation: - res = send_packet(NULL, sock, &my_msg, 0); + res = send_packet(NULL, sock, &my_msg, bytes_to_send); Previously, the final argument to send_packet() was ignored (since the amount of data being sent was recalculated by a lower-level routine) and we could just pass in a dummy value (0). Now that the recalculation is being eliminated, the argument value being passed to send_packet() is significant and we have to supply the actual amount of data we want to send. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit c29c3f70c9eb6f18090da5af9dbe9dcb4adece8c Author: Allan Stephens Date: Tue Apr 20 17:58:24 2010 -0400 tipc: Abort excessive send requests as early as possible Adds checks to TIPC's socket send routines to promptly detect and abort attempts to send more than 66,000 bytes in a single TIPC message or more than 2**31-1 bytes in a single TIPC byte stream request. In addition, this ensures that the number of iovecs in a send request does not exceed the limits of a standard integer variable. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 66e019a6af827a254641e83e96ee36b0f4adc5e3 Author: Allan Stephens Date: Wed Apr 20 16:24:07 2011 -0500 tipc: Strengthen checks for neighboring node discovery Enhances existing checks on the discovery domain associated with a TIPC bearer. A bearer can no longer be configured to accept links from itself only (which would be pointless), or to nodes outside its own cluster (since multi-cluster support has now been removed from TIPC). Also, the neighbor discovery routine now validates link setup requests against the configured discovery domain for the bearer, rather than simply ensuring the requesting node belongs to the node's own cluster. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 1f3de471adf5c2a584480a6010808d7a17063897 Author: Paul Gortmaker Date: Tue Apr 19 13:11:23 2011 -0400 tipc: make zone/cluster mask constants a define This allows them to be available for easy re-use in other places and avoids trivial mistakes caused by "count the f's and 0's". Signed-off-by: Paul Gortmaker commit bebc55aeffa72d8198e5c54cab9973a30e92f854 Author: Allan Stephens Date: Tue Apr 19 10:17:58 2011 -0400 tipc: Fix sk_buff leaks when link congestion is detected Modifies a TIPC send routine that did not discard the outgoing sk_buff if it was not transmitted because of link congestion; this eliminates the potential for buffer leakage in the many callers who did not clean up the unsent buffer. (The two routines that previously did discard the unsent buffer have been updated to eliminate their now-redundant clean up.) Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7f47f5c751c93f2ca9e7f0ef6c0915162ac9e076 Author: Allan Stephens Date: Mon Apr 18 10:14:26 2011 -0400 tipc: Update destination node field on incoming multicast messages Sets the destination node field of an incoming multicast message to the receiving node's network address before handing off the message to each receiving port. This ensures that, in the event the destination port returns the message to the sender, the sender can identify which node the destination port belonged to. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7462b9e9f69aa6c5e2fded65d3b03df4ed08ff45 Author: Allan Stephens Date: Mon Apr 18 10:08:22 2011 -0400 tipc: Fix problem with bundled multicast message Set the destination node and destination port fields of an outgoing multicast message header to zero; this is necessary to ensure that the receiving node can route the message properly if it was packed into a bundle due to link congestion. (Previously, there was a chance that the receiving node would send the unbundled message to a random node & port, rather than processing the message itself.) Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 53b94364a7c96d3b2276cb2bbbecfb269bc9f0fc Author: Allan Stephens Date: Sun Apr 17 16:02:11 2011 -0400 tipc: Set name lookup scope field properly in all data messages Ensures that all outgoing data messages have the "name lookup scope" field of their header set correctly; that is, named multicast messages now specify cluster-wide name lookup, while messages not using TIPC naming zero out the lookup field. (Previously, the lookup scope specified for these types of messages was inherited from the last message sent by the sending port.) Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 77561557447d3be586e701815e261c93c11ded00 Author: Allan Stephens Date: Sun Apr 17 13:06:23 2011 -0400 tipc: Fix issues with fragmentation of an existing message buffer Modifies the routine that fragments an existing message buffer to use similar logic to that used when generating fragments from an iovec. The routine now creates a complete chain of fragments and adds them to the link transmit queue as a unit, so that the link sends all fragments or none; this prevents the incomplete transmission of a fragmented message that might otherwise result because of link congestion or memory exhaustion. This change also ensures that the counter recording the number of fragmented messages sent by the link is now incremented only if the message is actually sent. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit e0f085964cac97a3a9e47741365ef6a03e500873 Author: Allan Stephens Date: Sun Apr 17 11:44:24 2011 -0400 tipc: Avoid pointless masking of fragmented message identifier Eliminates code that restricts a link's counter of its fragmented messages to a 16-bit value, since the counter value is automatically restricted to this range when it is written into the message header. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 670c54083aa6e0eeefda1c4b307a91679b577664 Author: Allan Stephens Date: Sun Apr 17 10:29:16 2011 -0400 tipc: Don't initialize link selector field in fragmented messages Eliminates code that sets the link selector field in the header of fragmented messages, since this information is never referenced. (The unnecessary initialization was harmless as it was over-written by the fragmented message identifier value before the fragments were transmitted.) Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 7775bcc722ed9993e83401fee9c14008843b83c7 Author: Allan Stephens Date: Tue Apr 12 14:59:03 2011 -0400 tipc: Remove code to emulate loss of broadcast messages Eliminates optional code used to test TIPC's ability to recover from lost broadcast messages. This code duplicates functionality already provided by the network stack's QoS option "network emulator". Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 92138d1f254d58b818e7c3b91a1967cf57d374b5 Author: Allan Stephens Date: Fri Apr 8 11:04:15 2011 -0400 tipc: Cosmetic consolidation of internal message type definitions Half of the #define entries in msg.h were down at the bottom of the header, instead of up at the top before any of the static inlines etc. Relocate them up to the top, to be consistent with the other normal linux header file layout conventions. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 19f53d2cef97506364638c647a3aa11291819896 Author: Allan Stephens Date: Fri Apr 8 10:59:04 2011 -0400 tipc: Eliminate unused routing message definitions Gets rid of unused constants defining the types used in routing messages. These messages no longer exist in TIPC now that multicluster and multizone support has been eliminated. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit cc4c4353f0ebde05992bf360f16ec92260811393 Author: Allan Stephens Date: Fri Apr 8 10:50:52 2011 -0400 tipc: Update comments in message header include file Removes comments in TIPC's message header include file that are outdated and/or unnecessary. Also introduces short comments (or supplements existing ones) to better describe several set of existing symbolic constants. Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit ca8f3525a5bb536a9d56ca4727a5079287599288 Author: Lu Guanqun Date: Tue May 3 17:43:53 2011 +0100 intel_sst: fix output noises when it's not in playback When the corresponding output device is not in playback, we can hear a little noises. Fix it by powering on the device only when it's in playback. Signed-off-by: Lu Guanqun Reviewed-by: Wu Fengguang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2124f8dad0334270a26334c0c23b67abfeaef954 Author: Lu Guanqun Date: Tue May 3 17:43:40 2011 +0100 intel_sst: internal speaker needs setting a GPIO line On Moorestown platform, internal speaker's power line is connected to a GPIO line, so we need to enable or disable it properly. Reviewed-by: Wu Fengguang Signed-off-by: Jeff Cheng Signed-off-by: Lu Guanqun Signed-off-by: Wang Xingchao Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b8df15b2a7479903eb7051ce96a5c8dac5e60a18 Author: Lu Guanqun Date: Tue May 3 17:38:18 2011 +0100 intel_sst: add Master Volume With this patch, Master Volume will control AUDIOLVOL(0x10c) and AUDIORVOL(0x10d); while PCM Volume will control HPLVOL(0x123) and HPRVOL(0x124). Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e1bfee2673b067525a48450eede263370f425182 Author: Lu Guanqun Date: Tue May 3 17:38:04 2011 +0100 intel_sst: set default output and input device Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 231c63839fa4f5fac9e3ed760dea7a9b1dd29254 Author: Chandramouli Narayanan Date: Tue May 3 17:37:48 2011 +0100 intel_sst: fix runtime pm issue Use correct api for enabling/disabling runtime pm. Additionally, fix runtime suspend/resume to not duplicate pci core functions Signed-off-by: Chandramouli Narayanan Tested-by: Kristen Carlson Accardi Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5dda7f27c115806d5fff3f8094c84989900479f8 Author: Andy CH Lin Date: Tue May 3 17:35:51 2011 +0100 intel_sst: intelmid_v2_control: correct jack event type Correct event type of audio jack while receiving long press event. Signed-off-by: Andy CH Lin Signed-off-by: Jekyll Lai Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a4820502949b8e81fba83c98704e1af8806c5a98 Author: Wu Fengguang Date: Tue May 3 17:35:31 2011 +0100 intel_sst: MRST can only do 16bit recording Fix bug $ arecord -D dsnoop -r 48000 -f S16_LE 1.wav ALSA lib pcm_direct.c:980:(snd1_pcm_direct_initialize_slave) unable to install hw params ALSA lib pcm_dsnoop.c:604:(snd_pcm_dsnoop_open) unable to initialize slave arecord: main:654: audio open error: Interrupted system call Root cause is, the driver is reporting 32-bit capture capability that is not supported by the MRST hardware. So the dsnoop plugin end up requesting 32-bit capture which fails. Signed-off-by: Wu Fengguang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3ca13bdb3c79e8a5e79ddeddacdae3bd4611ab5d Author: Wu Fengguang Date: Tue May 3 17:35:19 2011 +0100 intel_sst: MRST can only do mono recording Fix bug $ arecord -Dplughw -c2 Recording WAVE 'stdin' : Unsigned 8 bit, Rate 8000 Hz, Stereo arecord: set_params:1116: Unable to install hw params: ACCESS: RW_INTERLEAVED FORMAT: U8 SUBFORMAT: STD SAMPLE_BITS: 8 FRAME_BITS: 16 CHANNELS: 2 [...] Root cause is, the driver is reporting 2-channel capture capability that is not supported by the MRST hardware. So the plughw plugin end up requesting 2-channel capture which fails. Signed-off-by: Wu Fengguang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f2b5ea1feb904d483a8cf901562e314988ecc314 Author: Feng Tang Date: Tue May 3 17:34:55 2011 +0100 intel_sst: make sure the sst_drop_stream() get called when needed When "aplay test.wav", if we "ctrl+z" to suspend it, the last piece of sound will be played endlessly. So we need make sure the drop_stream is called in such a case. Signed-off-by: Feng Tang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e51a34f3e83b96a4cfa2fdc2ba952c3f8b66c1da Author: Lu Guanqun Date: Tue May 3 17:34:40 2011 +0100 intel_sst: return correct output/input device id Without this patch, the change of output/input device can't be reflected correctly. The mismatch reflects insane design, and should be fixed when switching to the ASoC framework. Signed-off-by: Lu Guanqun Acked-by: Wu Fengguang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 24298b0e664595c92a2ed76f232173381f48f2ee Author: Lu Guanqun Date: Tue May 3 17:34:27 2011 +0100 intel_sst: move jack detection related configs to init time The old policy will not enable MIC2BIAS on Moorstown platform by default, it's only enabled when the user selects HS_MIC as input source. Therefore when user selects DMIC and then inserts the jack, no interrupt will be generated to notify the driver about the jack insertion event and to take action to auto mute the speaker. The new policy will enable this bit by default, then no matter what the output device is, an interrupt will be generated. This behaviour is more likely what a user expects. Signed-off-by: Lu Guanqun Reviewed-by: Wu Fengguang Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 59bd2abe0739548eee4c82ab52edcc9ae7e9969b Author: xingchao Date: Tue May 3 17:34:13 2011 +0100 intel_sst: Headphone Automute support When detected a Jack event, Audio sound routes between internal speaker and headphone/headset automatically. Signed-off-by: xingchao Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 26d3b2d97300735c53ae2ad0f646e3db79eda45f Author: Lu Guanqun Date: Tue May 3 17:33:59 2011 +0100 intel_sst: Enable recording via DMIC We may need to make some of this board specific eventually Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9d9bb3c3fbe1376320fdde0d5b2d2e2b6d6c8d56 Author: Lu Guanqun Date: Tue May 3 17:33:43 2011 +0100 intel_sst: Enable recording via HS_MIC We may need to make some of this board specific eventually. Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cd573917c33be5f2bd75e4216c9a05ba51096bca Author: Lu Guanqun Date: Tue May 3 17:33:28 2011 +0100 intel_sst: Set de-bounce time In order to make jack detection behave properly, we have to set the de-bounce time, otherwise, some weird events happens: e.g. no plug-out event seen. Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 8a251ff2fc991b88c8497273c5a223bcbfb81e5d Author: Ramesh Babu K V Date: Tue May 3 17:33:13 2011 +0100 intel_sst: rework jack implementation This patch fixes the below issues w.r.t jack implementation a) The current jack implementation in driver is implemented in intelmid.c. It has moved to vendor files for better managebility b) Cleaned up jack reporting per upstream comments c) Implemented jack for msic, added code to read adc and deduce jack type based on mic bias d) Support detection of american headset Signed-off-by: Dharageswari R Signed-off-by: Ramesh Babu K V [Corrections] Signed-off-by: Lu Guanqun Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit eb02c700d265b9ae516c1e5facdf4257163ae39d Author: Sitanshu Nanavati Date: Tue May 3 17:33:01 2011 +0100 intel_sst: DMIC routing This patch adds support for configuring and routing the DMICs (assigned HW route to DMICs) Signed-off-by: Sitanshu Nanavati Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2784a80c97c73cfa1ca80543d7e4dd096637e1af Author: Vinod Koul Date: Tue May 3 17:32:49 2011 +0100 intel_sst: parameter tuning ioctl This patch adds new IOCTL for application interface. Using parameter tuning IOCTL, application can fine tune the audio firmware for it's requirement. Signed-off-by: Vinod Koul Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5572a44829f241e642e6c4ac120bf5e4d6295d8f Author: Dharageswari R Date: Tue May 3 17:32:38 2011 +0100 intel_sst: Line out support This patch adds the support for lineout. The lineout input can be selected as any input channel by using a new alsa mixer kcontrol. Signed-off-by: Dharageswari R Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c3e25a24b55d206dfa261fb2c7bb29b09f7bcf9b Author: Vinod Koul Date: Tue May 3 17:32:25 2011 +0100 intel_sst: ignore IRQ when suspended The irq for audio is shared, so when device is supended driver should not the read register and ignore the interrupt. This patch ignores interrupts when device is suspended. Signed-off-by: Vinod Koul Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 1bea302c2fe28405cf10f60599c904dfa0bad3fe Author: Vinod Koul Date: Tue May 3 17:32:13 2011 +0100 intel_sst: fix unload bugs The current driver remove was erroneous and causes errors when unloading or loading second time This patch fixes both of these issues Signed-off-by: Vinod Koul Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b06a584c219f4cda1ff22d4988bc8ea19589a2c8 Author: Vinod Koul Date: Tue May 3 17:32:01 2011 +0100 intel_sst: MSIC codec power optimisation This patch adds power optimization for the msic codec and ensure codec is completely powered off when codec is idle. Signed-off-by: Vinod Koul Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7cc5eb629cefa9a40295ff5ee4b1ec41ad855e8d Author: Amitkumar Karwar Date: Mon May 9 19:00:18 2011 -0700 mwifiex: remove unnecessary struct mwifiex_opt_sleep_confirm_buffer The structure definition is struct mwifiex_opt_sleep_confirm_buffer { u8 hdr[4]; struct mwifiex_opt_sleep_confirm ps_cfm_sleep; } __packed; For sleep_confirm command we already reserve 4 bytes (using skb_reserve()) for an interface header. It will be filled later by interface specific code. We don't need "hdr[4]" element in above structure. So we can use "struct mwifiex_opt_sleep_confirm" directly instead of "struct mwifiex_opt_sleep_confirm_buffer". Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 8369ae33b705222aa05ab53c7d6b4458f4ed161b Author: Rafał Miłecki Date: Mon May 9 18:56:46 2011 +0200 bcma: add Broadcom specific AMBA bus driver Broadcom has released cards based on a new AMBA-based bus type. From a programming point of view, this new bus type differs from AMBA and does not use AMBA common registers. It also differs enough from SSB. We decided that a new bus driver is needed to keep the code clean. In its current form, the driver detects devices present on the bus and registers them in the system. It allows registering BCMA drivers for specified bus devices and provides them basic operations. The bus driver itself includes two important bus managing drivers: ChipCommon core driver and PCI(c) core driver. They are early used to allow correct initialization. Currently code is limited to supporting buses on PCI(e) devices, however the driver is designed to be used also on other hosts. The host abstraction layer is implemented and already used for PCI(e). Support for PCI(e) hosts is working and seems to be stable (access to 80211 core was tested successfully on a few devices). We can still optimize it by using some fixed windows, but this can be done later without affecting any external code. Windows are just ranges in MMIO used for accessing cores on the bus. Cc: Greg KH Cc: Michael Büsch Cc: Larry Finger Cc: George Kashperko Cc: Arend van Spriel Cc: linux-arm-kernel@lists.infradead.org Cc: Russell King Cc: Arnd Bergmann Cc: Andy Botting Cc: linuxdriverproject Cc: linux-kernel@vger.kernel.org Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 306fe9384f06d31219778cece2d3c646146e7bb6 Author: Luciano Coelho Date: Mon May 9 19:15:04 2011 +0300 mac80211: don't drop frames where skb->len < 24 in ieee80211_scan_rx() This seems to be a leftover from the old days, when we didn't support any frames that didn't contain the full ieee802.11 header. This is not the case anymore. It does not cause problems now, because they are only dropped during scan. But when scheduled scans get merged, this would become a problem because we would drop all small frames while scheduled scan is running. To fix this, return RX_CONTINUE instead of RX_DROP_MONITOR. Cc: Johannes Berg Signed-off-by: Luciano Coelho Signed-off-by: John W. Linville commit 729da390034d04ff1b3a3f188dfb04a54f458e35 Author: Rajkumar Manoharan Date: Mon May 9 19:11:29 2011 +0530 ath9k: Failed to set default beacon rssi in AP/IBSS mode This beacon rssi will be used to set noisefloor during ani reset. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 2b892a98db269b96ed097d560aaaa371907d20f5 Author: Rajkumar Manoharan Date: Mon May 9 19:11:28 2011 +0530 ath9k: Fix rssi update in ad-hoc mode The average beacon rssi which will be used by ani is not updated in adhoc mode. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 94333f59cba08a1f6513ecd7e2fc5b85c1949a98 Author: Rajkumar Manoharan Date: Mon May 9 19:11:27 2011 +0530 ath9k_hw: Change DCU backoff thresh for AR9340 By changing DCU backoff threshold for AR9340 to 1, helps to reduce rx overrurns seen while running bidirectional traffic. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 165af96d56dce3bd0cd09567106f22215f80bb63 Author: Rajkumar Manoharan Date: Mon May 9 19:11:26 2011 +0530 ath9k_hw: Corrected xpabiaslevel register settings for AR9340 Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 73f743670d36ddd61247d709711227b0e2e1a497 Author: Joe Perches Date: Mon May 9 12:51:57 2011 -0700 rtlwifi: rtl8192cu: Fix memset/memcpy using sizeof(ptr) not sizeof(*ptr) Found via coccinelle script @@ type T; T* ptr; expression E1; @@ * memset(E1, 0, sizeof(ptr)); Signed-off-by: Joe Perches Signed-off-by: John W. Linville commit 8c12c7b0efce09b87e67d05332bdcb86ea83f65a Author: Mohammed Shafi Shajakhan Date: Mon May 9 10:29:01 2011 +0530 ath9k_hw: remove get_channel_noise function currently ath9k_hw_getchan_noise is not used anywhere Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 5ee9c6afcb72eb41c3607e424c3b969f8c56031b Author: Rafał Miłecki Date: Mon May 9 00:21:18 2011 +0200 b43: trivial: include ssb word in ssb specific functions This can be helpful when we decide to add support for other buses. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit b53575ecf939a4f752de87eabf1adbcfa4478a6c Author: Christoph Fritz Date: Sun May 8 22:50:09 2011 +0200 mwifiex: fix null derefs, mem leaks and trivia This patch: - adds kfree() where necessary - prevents potential null dereferences - makes use of kfree_skb() - replaces -1 for failed kzallocs with -ENOMEM Signed-off-by: Christoph Fritz Reviewed-by: Kiran Divekar Tested-by: Amitkumar Karwar Acked-by: Bing Zhao Signed-off-by: John W. Linville commit 3ed3f49473985718ce51f84d990ed5b8b6472598 Author: Rafał Miłecki Date: Sun May 8 20:30:33 2011 +0200 b43legacy: drop ssb-duplicated workaround for dangling cores Remove the code to detect inactive 802.11 cores, as that function is now done in ssb. Signed-off-by: Rafał Miłecki Tested-by: Larry Finger Acked-by: Larry Finger Signed-off-by: John W. Linville commit 25ea0dd9ffb7459f3b2948430f75d99b46ca1870 Author: Rafał Miłecki Date: Sun May 8 20:30:32 2011 +0200 b43: drop ssb-duplicated workaround for dangling cores Remove the code to detect inactive 802.11 cores, as that function is now done in ssb. Signed-off-by: Rafał Miłecki Tested-by: Larry Finger Acked-by: Larry Finger Signed-off-by: John W. Linville commit 9a24af1136e6d08c73010205caa282f46223aed5 Author: Gertjan van Wingerde Date: Sat May 7 17:27:46 2011 +0200 rt2x00: Fix rmmod hang of rt2800pci txstatus_timer should only be deleted for USB devices, as it is only initialized for USB devices. Reported-by: Andreas Hartmann Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 1816fcdcbbe9ff42ba1a9dac5198d18efb9d95e9 Author: Christian Lamparter Date: Sat May 7 11:16:08 2011 +0200 p54pci: fix -Wunused-but-set-variable warnings p54pci.c: In function ‘p54p_tx’: p54pci.c:334:6: warning: variable ‘device_idx’ set but not used Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 6490e334bc3af960965adfcef5acf6e5cbdd925c Author: Christian Lamparter Date: Sat May 7 11:13:37 2011 +0200 carl9170: fix -Wunused-but-set-variable warnings tx.c: In function ‘carl9170_tx_accounting_free’: tx.c:159:28: warning: variable ‘txinfo’ set but not used tx.c: In function ‘carl9170_tx_status_process_ampdu’: tx.c:383:27: warning: variable ‘ar_info’ set but not used tx.c: In function ‘__carl9170_tx_process_status’: tx.c:626:27: warning: variable ‘arinfo’ set but not used tx.c: In function ‘carl9170_tx_ampdu_queue’: tx.c:1324:15: warning: variable ‘max’ set but not used Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit fc7707a469785fe786ddc66d723c150226ddc40e Author: Chaoming Li Date: Fri May 6 15:32:02 2011 -0500 rtlwifi: rtl8192se: Remove need to disable ASPM When this driver was initially submitted, the system would crash unless ASPM was disabled. This problem has been fixed. This patch also adds a printk that outputs the name of the firmware file that is used. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c84aa5af996a306c8ce66aac2cc4d5f4a74e27ca Author: Larry Finger Date: Fri May 6 13:56:18 2011 -0500 rtlwifi: Move 2 large arrays off stack In driver rtlwifi, efuse_read() places two relatively large arrays on the stack - a 1D u8 array of size 128, and a 2D array of u16 with 128 * 4 elements. With driver rtl8192de, the sizes will be 256 and 256 * 4 respectively. As that will make the 2D array be 2048 bytes, I have changed the code to use kmalloc to allocate the space. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 054ec924944912413e4ee927b8cf02f476d08783 Author: Johannes Berg Date: Fri May 6 11:11:20 2011 -0700 iwlagn: fix iwl_is_any_associated The function iwl_is_any_associated() was intended to check both contexts, but due to an oversight it only checks the BSS context. This leads to a problem with scanning since the passive dwell time isn't restricted appropriately and a scan that includes passive channels will never finish if only the PAN context is associated since the default dwell time of 120ms won't fit into the normal 100 TU DTIM interval. Fix the function by using for_each_context() and also reorganise the other functions a bit to take advantage of each other making the code easier to read. Cc: stable@kernel.org Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 4105f8075051b62816830c95de1ec17ceb364d09 Author: Rajkumar Manoharan Date: Fri May 6 18:27:47 2011 +0530 ath9k: process TSF out of range before RX Processing TSF out of range before RX helps to update beacon timers so early in the succeeding rx process. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit deb751880af6f2dce6cdc232a7b023f2b58cd815 Author: Rajkumar Manoharan Date: Fri May 6 18:27:46 2011 +0530 ath9k: avoid enabling interrupts while processing rx The assumsion is that while processing ath9k tasklet, interrupts were already disabled and it will be enabled at the completion of ath9k tasklet. But whenever TSFOOR is raised, the driver configures the beacon timers after having received a beacon frame from the AP which inturn enables the interrupts. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 6c550053cb9ddbee58c295cb92ecd6c331605854 Author: Lu Guanqun Date: Fri Apr 8 08:41:38 2011 +0800 sst: fix compile error Add several include files to fix the below compile error. drivers/staging/intel_sst/intelmid.c: In function ‘snd_intelmad_sst_register’: drivers/staging/intel_sst/intelmid.c:805:2: error: ‘sst_drv_ctx’ undeclared (first use in this function) drivers/staging/intel_sst/intelmid.c:805:2: note: each undeclared identifier is reported only once for each function it appears in Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 38bb3e9da62f6ebf1c6940d5482f0d6f431dac1c Author: Larry Finger Date: Thu May 5 18:48:47 2011 -0500 mac80211: Fix build error when CONFIG_PM is not defined When mac80211 is built without CONFIG_PM being defined, the following errors are output: net/mac80211/main.c: In function ‘ieee80211_register_hw’: net/mac80211/main.c:700: error: ‘const struct ieee80211_ops’ has no member named ‘suspend’ net/mac80211/main.c:700: error: ‘const struct ieee80211_ops’ has no member named ‘resume’ make[2]: *** [net/mac80211/main.o] Error 1 make[1]: *** [net/mac80211] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [net] Error 2 Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3782cf4a04c272bdaa8476463b1d0208edbc505d Author: Wey-Yi Guy Date: Sat Apr 30 08:38:16 2011 -0700 iwlagn: led stay solid on when no traffic commit 5ed540aecc2aae92d5c97b9a9306a5bf88ad5574 change the led behavior for iwlwifi driver; the side effect cause led blink all the time. Modify the led blink table to fix this problem Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 6572e91d5fa61bb3f879a00b96d763c566ced6cb Author: Rajkumar Manoharan Date: Mon Apr 25 15:56:16 2011 +0530 wireless: Fix warnings due to -Wunused-but-set-variable These warnings are exposed by gcc 4.6. net/wireless/reg.c: In function 'freq_reg_info_regd': net/wireless/reg.c:675:38: warning: variable 'pr' set but not used [-Wunused-but-set-variable] net/wireless/lib80211_crypt_wep.c: In function 'lib80211_wep_build_iv': net/wireless/lib80211_crypt_wep.c:99:12: warning: variable 'len' set but not used [-Wunused-but-set-variable] Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit afe9194d58e87b38993fafb2b716a6c7756fab93 Author: Vinod Koul Date: Tue May 3 17:31:49 2011 +0100 intel_sst: Save audio state across D3 on Medfield During suspend and runtime_suspend audio dsp will be in D3 state and will loose its context. This patch adds support in driver to save the dsp context and restore this context during resume Signed-off-by: Vinod Koul Signed-off-by: Ramesh Babu K V Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 31dea7385174596f4369f71c712f1d1006a3fa05 Author: Lu Guanqun Date: Wed Apr 6 10:20:42 2011 +0800 sst: make register_sst_card more self-contained register_sst_card is used in ASoC code with field `scard_ops` being NULL. Without this patch, there will be NULL dereference. Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d21844c7c23a71acea6fd68365b09b40e252a876 Merge: e4eefec 2c46f72 Author: John W. Linville Date: Tue May 10 15:49:11 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit fb03d4fc6c9bc4bf509221101639cde1b8330405 Author: Randy Dunlap Date: Mon May 9 10:47:51 2011 -0700 staging/keucr: don't use SUCCESS as macro name Don't use "SUCCESS" as a macro name. This collides with SCSI's macro of the same name, but with a different value: drivers/staging/keucr/smcommon.h:9:9: warning: preprocessor token SUCCESS redefined include/scsi/scsi.h:463:9: this was the original definition Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit 7fb71adc357885c9ea9971efec3bb2a527b54364 Author: Randy Dunlap Date: Mon May 9 10:47:14 2011 -0700 staging/keucr: eliminate sparse warnings in ms.c Eliminate sparse warnings in ms.c: drivers/staging/keucr/ms.c:28:58: warning: right shift by bigger than source value drivers/staging/keucr/ms.c:31:58: warning: right shift by bigger than source value drivers/staging/keucr/ms.c:789:59: warning: cast truncates bits from constant value (ffffff7f becomes 7f) Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit d8aba9d5d6c0d9809798967b9aac293690233b6d Author: Randy Dunlap Date: Mon May 9 10:46:24 2011 -0700 staging/keucr: fix sparse statics and non-ANSI function warnings Make lots of functions and data static (fixes sparse warnings). Fix 5 functions to use ANSI format for function parameters (fixes sparse warnings). Signed-off-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit e5813f8449f7c6ef71346b21e30b92c84133fd0f Author: Kalle Valo Date: Tue May 10 07:40:34 2011 +0300 staging: ath6kl: provide hardware version to userspace Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit c77049ef978e126defd950ef94e8a3ec62a2ead8 Author: Stephane Pajot Date: Mon May 9 15:51:59 2011 +0200 Staging: comedi: fix brace coding style issue in jr3_pci.c This is a patch to the jr3_pci.c file that fixes up a brace warning found by the checkpatch.pl tool Signed-off-by: Stephane Pajot Signed-off-by: Greg Kroah-Hartman commit f92e88343e713c65f6edef4ed7883ba37a8ccbfd Author: Alan Cox Date: Mon May 9 16:04:45 2011 +0100 gma500: Fix dumb create crash The error path from gtt_alloc returns NULL not a ptr error. The underlying fail is caused by a bug in the size calculation. With these two fixed it passes kmstest, although it's not really doing anything useful yet. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit ea1ce3762b0ed9647d002dad8f3745c2ae534d0a Author: Alan Cox Date: Mon May 9 16:04:32 2011 +0100 gma500: sort out the file operations Route everything via the proper DRM layer calls. This fixes the crash in plymouth and is also necessary to begin supporting libkms. Signed-off-by: Alan Cox Cc: stable Signed-off-by: Greg Kroah-Hartman commit b18aaa1c7cd53ff654d3872ad58ab95343bbe476 Author: Joe Perches Date: Mon May 9 08:51:29 2011 -0700 staging: brcm80211: brcmfmac: Fix memset using sizeof(ptr) not sizeof(*ptr) Found via coccinelle script @@ type T; T* ptr; expression E1; @@ * memset(E1, 0, sizeof(ptr)); Signed-off-by: Joe Perches Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit c4295d774ff26776fa729326921c92a4382fa689 Author: Arend van Spriel Date: Mon May 9 16:33:29 2011 +0200 staging: brcm80211: fix checkpatch issue introduced in wlc_alloc.c Patch "[59807ce] local used function made static" introduced a new checkpatch warning which is fixed with this patch. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b8fbc3928cce0c8fa7c01afc33ddef02062504e1 Author: Arend van Spriel Date: Mon May 9 16:33:27 2011 +0200 staging: brcm80211: make use of fls bit operation in wlc_phy_compute_dB wlc_phy_compute_dB converts absolute power value to dB implementing a fixed point calculation for 10*log10(x). It does this by determining the most significant bit for value x. This can be done using the fls() bit operation, which has arch specific and possibly more efficient implementation. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit dc1e961668d148fa5c2784ac51a9a78cb7274cf3 Author: Arend van Spriel Date: Mon May 9 16:33:25 2011 +0200 staging: brcm80211: use int_sqrt kernel function iso driver implementation The driver code had its own implementation for fixed point square root calculation, but such a function is already available in the linux kernel so the driver implementation has been removed using the kernel function. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 83dcec0904db64c7b5867f9a7621af0c8998d26a Author: Arend van Spriel Date: Mon May 9 16:33:24 2011 +0200 staging: brcm80211: remove unused function from wlc_phy_cmn.c The function wlc_phy_qdiv_roundup() was not used and has been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit cf0c3920b4621ed3e70f38510ef419d1cf1afbc9 Author: Arend van Spriel Date: Mon May 9 16:33:22 2011 +0200 staging: brcm80211: wlc_aggregatable function prototype moved The function wlc_aggregatable is used by wl_mac80211.c. The prototype of the function was placed in include file wlc_scb.h but the interface for wl_mac80211.c to other driver functions is to be placed in wlc_pub.h. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a68ec4892aa9a88e6a0de51a741a6bc902964a8b Author: Arend van Spriel Date: Mon May 9 16:33:21 2011 +0200 staging: brcm80211: local used function made static In wlc_alloc.c function for setting ID field in struct wlc_bsscfg was only used locally. It has been made static and removed from header file. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 901937707229abf86d2b976d30bb2285056fce8a Author: Henry Ptasinski Date: Mon May 9 16:33:09 2011 +0200 staging: brcm80211: move functions only used by brcmsmac out of utils The functions gitvar() and getintvar() are only used by brcmsmac, so move them out of the bcmutils.c file, which is shared by both brcmsmac and brcmfmac. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 192f25a24f433886a97fc164182cd35963f0bf57 Author: Henry Ptasinski Date: Mon May 9 16:33:08 2011 +0200 staging: brcm80211: move another file only used by brcmsmac into appropriate dir nvram functions are only needed by brcmsmac. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f835f455169913e89fe0c876cf10dfad15fb3a20 Author: Henry Ptasinski Date: Mon May 9 16:33:07 2011 +0200 staging: brcm80211: remove unused function The get_flash_nvram() function is unused, so remove it. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit fc84a7100fdf1093a5580852838e842d57c506be Author: Henry Ptasinski Date: Mon May 9 16:33:06 2011 +0200 staging: brcm80211: remove unneeded include path No include files are needed from the util directory, so remove that directory from the include path. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f62c77a2d505ca8728fc1366a3fd0d606815714d Author: Henry Ptasinski Date: Mon May 9 16:33:05 2011 +0200 staging: brcm80211: remove unnecessary header file This header file is no longer needed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8b0b8da71b96deb82973254e47a6b64ad8672364 Author: Henry Ptasinski Date: Mon May 9 16:33:04 2011 +0200 staging: brcm80211: delete unneeded files This files are no longer needed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 47d30257706a90926de396bc3055684d9215abd9 Author: Henry Ptasinski Date: Mon May 9 16:33:03 2011 +0200 staging: brcm80211: move files only used by brcmsmac into appropriate dir A number of files in the util subdir are only used by the brcmsmac driver. Move those files into the brcmsmac subdir instead, and do the necessary Makefile updates to get the files from the new location. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9fb137c581861ffcda5419fac4b80cb0372b1964 Author: Henry Ptasinski Date: Mon May 9 16:33:02 2011 +0200 staging: brcm80211: move header file Move the pci_core.h header file from util to include subdir, in preparation for other moves and cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9be121c496598a77cee99e461a4047b16e7a8c6a Author: Henry Ptasinski Date: Mon May 9 16:32:56 2011 +0200 staging: brcm80211: delete unused sbpcmcia.h file This include file is no longer needed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit ce5060b33f294b22d4c59e435257d3dd2ec93d8d Author: Henry Ptasinski Date: Mon May 9 16:32:55 2011 +0200 staging: brcm80211: remove unused cis_hnbuvars The cis_hnbuvars structure is completely unused, so it can be deleted. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d436d0ce03a6d012da6bd95451ad20a8d8c2b79f Author: Henry Ptasinski Date: Mon May 9 16:32:54 2011 +0200 staging: brcm80211: use common pktq_flush functions The softmac and fullmac drivers can use the same implementation of pktq_flush(), so remove the unnecessary version. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c876ce07dae448e45a98a99f3bcc3145c6271353 Author: Arend van Spriel Date: Mon May 9 16:32:53 2011 +0200 staging: brcm80211: fix perimeter locking in wl_ops_bss_info_changed Several code path in the wl_ops_bss_info_changed() callback were not using the perimeter lock. This gives potential of raise conditions so lock/unlock calls have been added. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Reviewed-by: Brett Rudley Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7e186bdd0098b34c69fb8067c67340ae610ea499 Author: Stefano Stabellini Date: Fri May 6 12:27:50 2011 +0100 xen: do not clear and mask evtchns in __xen_evtchn_do_upcall Change the irq handler of evtchns and pirqs that don't need EOI (pirqs that correspond to physical edge interrupts) to handle_edge_irq. Use handle_fasteoi_irq for pirqs that need eoi (they generally correspond to level triggered irqs), no risk in loosing interrupts because we have to EOI the irq anyway. This change has the following benefits: - it uses the very same handlers that Linux would use on native for the same irqs (handle_edge_irq for edge irqs and msis, and handle_fasteoi_irq for everything else); - it uses these handlers in the same way native code would use them: it let Linux mask\unmask and ack the irq when Linux want to mask\unmask and ack the irq; - it fixes a problem occurring when a driver calls disable_irq() in its handler: the old code was unconditionally unmasking the evtchn even if the irq is disabled when irq_eoi was called. See Documentation/DocBook/genericirq.tmpl for more informations. Signed-off-by: Stefano Stabellini [v1: Fixed space/tab issues] Signed-off-by: Konrad Rzeszutek Wilk commit fffcda1183e93df84ad73ba7eb7782a5c354e2b3 Author: Joerg Roedel Date: Tue May 10 17:22:06 2011 +0200 x86, gart: Rename pci-gart_64.c to amd_gart_64.c This file only contains code relevant for the northbridge gart in AMD processors. This patch renames the file to represent this fact in the filename. Signed-off-by: Joerg Roedel commit 2b348a77981227c6b64fb9cf19f7c711a6806bc9 Author: Lin Ming Date: Fri Apr 29 08:41:57 2011 +0000 perf probe: Fix the missed parameter initialization pubname_callback_param::found should be initialized to 0 in fastpath lookup, the structure is on the stack and uninitialized otherwise. Signed-off-by: Lin Ming Cc: Arnaldo Carvalho de Melo Link: http://lkml.kernel.org/r/1304066518-30420-2-git-send-email-ming.m.lin@intel.com Signed-off-by: Ingo Molnar commit 932fed4e2e42c3d730c01bb63b1c4f812c533d5b Merge: 57d5241 693d92a Author: Ingo Molnar Date: Tue May 10 17:05:24 2011 +0200 Merge commit 'v2.6.39-rc7' into perf/core Merge reason: pull in the latest fixes. Signed-off-by: Ingo Molnar commit 97fbdc1f77e9ce50ed0be543273d78f8de8675ac Author: Michal Marek Date: Tue Apr 5 16:59:16 2011 +0200 tipc: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Signed-off-by: Michal Marek Cc: Jon Maloy Cc: netdev@vger.kernel.org Cc: tipc-discussion@lists.sourceforge.net Signed-off-by: Allan Stephens Signed-off-by: Paul Gortmaker commit 32e471ef1057e812856739d26b4a87d929fb8aa1 Author: Steven Whitehouse Date: Tue May 10 15:01:59 2011 +0100 GFS2: Use UUID field in generic superblock The VFS superblock structure now has a UUID field, so we can use that in preference to the UUID field in the GFS2 superblock now. Signed-off-by: Steven Whitehouse commit 0f3c6af92100193cf9a86bdd0ee35e6da3e0c56e Merge: 1209842 61bf35b Author: Mark Brown Date: Tue May 10 15:58:17 2011 +0200 Merge branch 'for-2.6.39' into for-2.6.40 commit 5fc7b14177b1a1c2f2511aed62a4ca870d0332e7 Author: Ryusuke Konishi Date: Thu May 5 12:56:51 2011 +0900 nilfs2: use mark_buffer_dirty to mark btnode or meta data dirty This replaces nilfs_mdt_mark_buffer_dirty and nilfs_btnode_mark_dirty macros with mark_buffer_dirty and gets rid of nilfs_mark_buffer_dirty, an own mark buffer dirty function. Signed-off-by: Ryusuke Konishi commit aa405b1f4238401616e7d98620170b424b2dbefc Author: Ryusuke Konishi Date: Thu May 5 12:56:51 2011 +0900 nilfs2: always set back pointer to host inode in mapping->host In the current nilfs, page cache for btree nodes and meta data files do not set a valid back pointer to the host inode in mapping->host. This will change it so that every address space in nilfs uses mapping->host to hold its host inode. Signed-off-by: Ryusuke Konishi commit 0ef28f9aec4dccfba33cef74412f601c1b48b658 Author: Ryusuke Konishi Date: Thu May 5 12:56:51 2011 +0900 nilfs2: get rid of NILFS_I_NILFS This replaces all references of NILFS_I_NILFS(inode)->ns_bdev with inode->i_sb->s_bdev and unfolds remaining uses of NILFS_I_NILFS inline function. Before 2.6.37, referring to a nilfs object from inodes needed a conditional judgement, and NILFS_I_NILFS was helpful to simplify it. But now we can simply do it by going through a super block instance like inode->i_sb->s_fs_info. Signed-off-by: Ryusuke Konishi commit 0cc1283881d3fcc9011c713e067795ccec322ae7 Author: Ryusuke Konishi Date: Thu May 5 12:56:51 2011 +0900 nilfs2: use list_first_entry This uses list_first_entry macro instead of list_entry if it's used to get the first entry. Signed-off-by: Ryusuke Konishi commit 293ce0ed8c2d22ff044e6e9fa7b1d4be425d189b Author: Ryusuke Konishi Date: Thu May 5 12:56:51 2011 +0900 nilfs2: use empty_aops for gc-inodes Applies empty_aops for address space operations of gc-inodes. Signed-off-by: Ryusuke Konishi commit 4e33f9eab07e985282fece4121066c2db1d332ed Author: Ryusuke Konishi Date: Thu May 5 01:23:58 2011 +0900 nilfs2: implement resize ioctl This adds resize ioctl which makes online resize possible. Signed-off-by: Ryusuke Konishi commit 78eb64c2479e0f408b725c3c8e1cdf557857af48 Author: Ryusuke Konishi Date: Thu May 5 01:23:58 2011 +0900 nilfs2: add truncation routine of segment usage file When shrinking the filesystem, segments to be truncated must be test if they are busy or not, and unneeded sufile block should be deleted. This adds routines for the truncation. Signed-off-by: Ryusuke Konishi commit cfb0a4bfd8736418cbe5cbc115cabc84b527111e Author: Ryusuke Konishi Date: Thu May 5 01:23:57 2011 +0900 nilfs2: add routine to move secondary super block After resizing the filesystem, the secondary super block must be moved to a new location. This adds a helper function for this. Signed-off-by: Ryusuke Konishi commit 619205da5b567504310daf829dede1187fa29bbc Author: Ryusuke Konishi Date: Thu May 5 01:23:57 2011 +0900 nilfs2: add ioctl which limits range of segment to be allocated This adds a new ioctl command which limits range of segment to be allocated. This is intended to gather data whithin a range of the partition before shrinking the filesystem, or to control new log location for some purpose. If a range is specified by the ioctl, segment allocator of nilfs tries to allocate new segments from the range unless no free segments are available there. Signed-off-by: Ryusuke Konishi commit 56eb55388580ebd51f3bbd9af40ebb56849356af Author: Ryusuke Konishi Date: Sat Apr 30 18:56:12 2011 +0900 nilfs2: zero fill unused portion of super root block The super root block is newly-allocated each time it is written back to disk, so unused portion of the block should be cleared. Signed-off-by: Ryusuke Konishi commit 6c6de1aa65189c37cc3c9af78da756c06a99899b Author: Ryusuke Konishi Date: Sat Apr 30 18:56:12 2011 +0900 nilfs2: super root size should change depending on inode size The size of super root structure depends on inode size, so NILFS_SR_BYTES macro should be a function of the inode size. This fixes the issue. Even though a different size value will be written for a possible future filesystem with extended inode, but fortunately this does not break disk format compatibility. Signed-off-by: Ryusuke Konishi commit 1cb2d38cb3e59d58e8321a0592e84b5761afb063 Author: Ryusuke Konishi Date: Mon Apr 4 12:53:28 2011 +0900 nilfs2: get rid of private page allocator Previously, nilfs was cloning pages for mmapped region to freeze their data and ensure consistency of checksum during writeback cycles. A private page allocator was used for this page cloning. But, we no longer need to do that since clear_page_dirty_for_io function sets up pte so that vm_ops->page_mkwrite function is called right before the mmapped pages are modified and nilfs_page_mkwrite function can safely wait for the pages to be written back to disk. So, this stops making a copy of mmapped pages during writeback, and eliminates the private page allocation and deallocation functions from nilfs. Signed-off-by: Ryusuke Konishi commit eaae0f37d83bed7ccd0c6d0f52de1de44f92aecc Author: Nicolas Kaiser Date: Sat Mar 19 16:45:30 2011 +0100 nilfs2: merge list_del()/list_add_tail() to list_move_tail() Merge list_del() + list_add_tail() to list_move_tail(). Signed-off-by: Nicolas Kaiser Signed-off-by: Ryusuke Konishi commit 2ab9cd1c63b519e37b21b504376822be983badba Author: Steven Whitehouse Date: Tue May 10 13:12:49 2011 +0100 GFS2: Rename ops_inode.c to inode.c This is the final part of the ops_inode.c/inode.c reordering. We are left with a single file called inode.c which now contains all the inode operations, as expected. Signed-off-by: Steven Whitehouse commit 64ea5402581485237d3b6e3a0cf2b364ad8bd580 Author: Steven Whitehouse Date: Tue May 10 13:09:53 2011 +0100 GFS2: Inode.c is empty now, remove it Signed-off-by: Steven Whitehouse commit 72fe00f01f9a3240a1073be27aeaf4fc476cc662 Author: Joerg Roedel Date: Tue May 10 10:50:42 2011 +0200 x86/amd-iommu: Use threaded interupt handler Move the interupt handling for the iommu into the interupt thread to reduce latencies and prepare interupt handling for pri handling. Signed-off-by: Joerg Roedel commit 604c307bf47350c74bb36507b86a08726c7c2075 Merge: e969687 ba4b87a fd7b553 58fc7f1 Author: Joerg Roedel Date: Tue May 10 10:25:23 2011 +0200 Merge branches 'dma-debug/next', 'amd-iommu/command-cleanups', 'amd-iommu/ats' and 'amd-iommu/extended-features' into iommu/2.6.40 Conflicts: arch/x86/include/asm/amd_iommu_types.h arch/x86/kernel/amd_iommu.c arch/x86/kernel/amd_iommu_init.c commit e969687595c27e02e02be0c9363261826123ba77 Author: Joe Perches Date: Fri Nov 5 16:12:35 2010 -0700 arch/x86/kernel/pci-iommu_table.c: Convert sprintf_symbol to %pS Coalesce format as well. Signed-off-by: Joe Perches Signed-off-by: Joerg Roedel commit 2d9ff66da61d1365406586a6b1ed53cf61e6143f Author: Jesper Juhl Date: Sun Apr 10 19:46:52 2011 +0200 perf: Only include annotate.h once in tools/perf/util/ui/browsers/annotate.c Including "../../annotate.h" once in tools/perf/util/ui/browsers/annotate.c is enough. No need to do it twice. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit aeb878b0967550bb56606ae21172bdcbd6afe052 Author: Jesper Juhl Date: Sun Apr 10 18:06:17 2011 +0200 md, raid5: Fix spelling error in comment ('Ofcourse' --> 'Of course'). There's a small typo in a comment in drivers/md/raid5.c - 'Of course' is misspelled as 'Ofcourse'. This patch fixes the spelling error. Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit 70f23fd66bc821a0e99647f70a809e277cc93c4c Author: Justin P. Mattock Date: Tue May 10 10:16:21 2011 +0200 treewide: fix a few typos in comments - kenrel -> kernel - whetehr -> whether - ttt -> tt - sss -> ss Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit c719864f15676af92b705589c93ba1468b89cd24 Author: Wanlong Gao Date: Sun Apr 17 08:53:57 2011 +0800 regulator: change debug statement be consistent with the style of the rest change the "mc13783_regulator_probe" string in the function "mc13783_regulator_probe" to "__func__" for the debug statement be consistent with the style of the rest of the file. Signed-off-by: Wanlong Gao Acked-by: Mark Brown Signed-off-by: Jiri Kosina commit 938a1566b162aa485acd8dea2ebd92d92dfa0a45 Author: Ondrej Zary Date: Mon May 9 23:39:51 2011 +0200 ALSA: fm801: convert TEA575x support to new interface Use common functions to access TEA575x tuner - remove original read/write functions and provide new pin manipulation functions instead. Also convert the original triple implementation to a simple GPIO pin map. Tested with SF256-PCP and SF64-PCR (added the GPIO pin for MO/ST signal for them). SF256-PCS untested (pin for MO/ST signal is a guess). Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 72587173cc31bb96db63e347b94ad0ef84878cea Author: Ondrej Zary Date: Mon May 9 23:39:37 2011 +0200 ALSA: es1968: convert TEA575x support to new interface Use common functions to access TEA575x tuner - remove original read/write functions and provide new pin manipulation functions instead. Tested with SF64-PCE2 card. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 14219d06592025541559027d0fd8f96ef75f313c Author: Ondrej Zary Date: Mon May 9 23:39:26 2011 +0200 ALSA: tea575x: unify read/write functions Implement generic read/write functions to access TEA575x tuners. They're now implemented 4 times (once in es1968 and 3 times in fm801). This also allows mute to work on all cards. Also improve tuner detection/initialization. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 1209842af4db98ffd7364ec9cf7d1a59293aa74c Merge: f0a2b0c f3eee00 Author: Takashi Iwai Date: Tue May 10 09:24:50 2011 +0200 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc commit f0a2b0cb71e652ae9f0feeea91e5320e4faf25dc Merge: 87023ff 82a58a8 Author: Takashi Iwai Date: Tue May 10 09:20:19 2011 +0200 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc commit d0c49bf391b2e230a8f3ae4486da7df440f1216d Author: Roland Dreier Date: Mon May 9 22:23:57 2011 -0700 RDMA/iwcm: Get rid of enum iw_cm_event_status The IW_CM_EVENT_STATUS_xxx values were used in only a couple of places; cma.c uses -Exxx values instead, and so do the amso1100, cxgb3 and cxgb4 drivers -- only nes was using the enum values (with the mild consequence that all nes connection failures were treated as generic errors rather than reported as timeouts or rejections). We can fix this confusion by getting rid of enum iw_cm_event_status and using a plain int for struct iw_cm_event.status, and converting nes to use -Exxx as the other iWARP drivers do. This also gets rid of the warning drivers/infiniband/core/cma.c: In function 'cma_iw_handler': drivers/infiniband/core/cma.c:1333:3: warning: case value '4294967185' not in enumerated type 'enum iw_cm_event_status' drivers/infiniband/core/cma.c:1336:3: warning: case value '4294967186' not in enumerated type 'enum iw_cm_event_status' drivers/infiniband/core/cma.c:1332:3: warning: case value '4294967192' not in enumerated type 'enum iw_cm_event_status' Signed-off-by: Roland Dreier Reviewed-by: Steve Wise Reviewed-by: Sean Hefty Reviewed-by: Faisal Latif commit ec03d6777a9e2b76917ef6d3fc8a01e174bcb9b1 Author: Sergei Shtylyov Date: Mon May 9 22:07:31 2011 -0700 IB/ipath: Use pci_dev->revision, again Commit 44c10138fd4b ("PCI: Change all drivers to use pci_device->revision") already converted this driver to using the revision field of struct pci_dev but commit bb9171448deb ("IB/ipath: Misc changes to prepare for IB7220 introduction") later reverted that change for some strange reason. Restore the change. Signed-off-by: Sergei Shtylyov Acked-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 9f5754e34bf964a41e821b2e0b358bc7c314ca4e Author: Mitko Haralanov Date: Mon May 9 22:07:31 2011 -0700 IB/qib: Prevent driver hang with unprogrammed boards The time limit test now correctly checks against current jiffies to avoid the hang. Signed-off-by: Mitko Haralanov Signed-off-by: Mike Marciniszyn Signed-off-by: Roland Dreier commit 2f25e9a540951ebd533b9b98d2259deb44b0b476 Author: Steve Wise Date: Mon May 9 22:06:23 2011 -0700 RDMA/cxgb4: EEH errors can hang the driver A few more EEH fixes: c4iw_wait_for_reply(): detect fatal EEH condition on timeout and return an error. The iw_cxgb4 driver was only calling ib_deregister_device() on an EEH event followed by a ib_register_device() when the device was reinitialized. However, the RDMA core doesn't allow multiple iterations of register/deregister by the provider. See drivers/infiniband/core/sysfs.c: ib_device_unregister_sysfs() where the kobject ref is held until the device is deallocated in ib_deallocate_device(). Calling deregister adds this kobj reference, and then a subsequent register call will generate a WARN_ON() from the kobject subsystem because the kobject is being initialized but is already initialized with the ref held. So the provider must deregister and dealloc when resetting for an EEH event, then alloc/register to re-initialize. To do this, we cannot use the device ptr as our ULD handle since it will change with each reallocation. This commit adds a ULD context struct which is used as the ULD handle, and then contains the device pointer and other state needed. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit d9594d990a528d4c444777d0f360bb50c6114825 Author: Steve Wise Date: Mon May 9 22:06:22 2011 -0700 RDMA/cxgb4: Reset wait condition atomically The driver was never really waiting for RDMA_WR/FINI completions because the condition variable used to determine if the completion happened was never reset, and this condition variable is reused for both connection setup and teardown. This causes various driver crashes under heavy loads due to releasing resources too early. The fix is to use atomic bits to correctly reset the condition immediately after the completion is detected. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 85d215b0f316bee0a6936bd1a5f21abf03333eaa Author: Roel Kluin Date: Mon May 9 22:06:22 2011 -0700 RDMA/cxgb4: Fix missing parentheses Parens are missing: '|' has a higher presedence than '?'. Signed-off-by: Roel Kluin Acked-by: Steve Wise Signed-off-by: Roland Dreier commit bbe9a0a2bc07cf30c5b89b51154f2c87200a5dfd Author: Steve Wise Date: Mon May 9 22:06:22 2011 -0700 RDMA/cxgb4: Initialization errors can cause crash c4iw_uld_add() must return ERR_PTR() values instead of NULL on failure. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit 30c95c2d495c1c8d4d6a97bb9f4e4eacb91ba1d2 Author: Steve Wise Date: Mon May 9 22:06:22 2011 -0700 RDMA/cxgb4: Don't change QP state outside EP lock Concurrent ingress CLOSE and ULP ABORT operations causes a crash due to a race condition where the close path releases the EP lock and then tries to move the QP state to CLOSED. This must be done inside the EP lock to avoid the race. Signed-off-by: Steve Wise Signed-off-by: Roland Dreier commit a9bb79128aa659f97b774b97c9bb1bdc74444595 Author: Hefty, Sean Date: Mon May 9 22:06:10 2011 -0700 RDMA/cma: Add an ID_REUSEADDR option Lustre requires that clients bind to a privileged port number before connecting to a remote server. On larger clusters (typically more than about 1000 nodes), the number of privileged ports is exhausted, resulting in lustre being unusable. To handle this, we add support for reusable addresses to the rdma_cm. This mimics the behavior of the socket option SO_REUSEADDR. A user may set an rdma_cm_id to reuse an address before calling rdma_bind_addr() (explicitly or implicitly). If set, other rdma_cm_id's may be bound to the same address, provided that they all have reuse enabled, and there are no active listens. If rdma_listen() is called on an rdma_cm_id that has reuse enabled, it will only succeed if there are no other id's bound to that same address. The reuse option is exported to user space. The behavior of the kernel reuse implementation was verified against that given by sockets. This patch is derived from a path by Ira Weiny Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 43b752daae9445a3b2b075a236840d801fce1593 Author: Hefty, Sean Date: Mon May 9 22:06:10 2011 -0700 RDMA/cma: Fix handling of IPv6 addressing in cma_use_port cma_use_port() assumes that the sockaddr is an IPv4 address. Since IPv6 addressing is supported (and also to support other address families) make the code more generic in its address handling. Signed-off-by: Sean Hefty Signed-off-by: Roland Dreier commit 0a63e2308cbbdc7e2f5645769afaf53785bcb9fa Author: Bob Moore Date: Fri Apr 15 09:12:47 2011 +0800 ACPICA: Update to version 20110413 Version 20110413 Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit e2066ca1b211ff08325c98be9fb8ad95affbaba8 Author: Bob Moore Date: Wed Apr 13 13:22:04 2011 +0800 ACPICA: Execute an orphan _REG method under the EC device This change will force the execution of a _REG method underneath the EC device even if there is no corresponding operation region of type EmbeddedControl. Fixes a problem seen on some machines and apparently is compatible with Windows behavior. http://www.acpica.org/bugzilla/show_bug.cgi?id=875 Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 07aa99e9df2184e78068f7d5414e29e4a5a1b452 Author: Bob Moore Date: Wed Apr 13 13:20:49 2011 +0800 ACPICA: Move ACPI_NUM_PREDEFINED_REGIONS to a more appropriate place Moved to where the predefined regions are actually defined. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 82a1b7cb83b6bd7d2fe3972e847c8ccbff55cb9c Author: Bob Moore Date: Wed Apr 13 13:19:35 2011 +0800 ACPICA: Update internal address SpaceID for DataTable regions Moved this internal space id in preparation for ACPI 5.0 changes that will include some new space IDs. Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 945488b9c5fc3f85e3f6a3580235b5c73febc8a6 Author: Bob Moore Date: Wed Apr 13 13:15:58 2011 +0800 ACPICA: Add more methods eligible for NULL package element removal This change adds another group of predefined names to the list of names eligible to have NULL package elements dynamically removed. This group is the names that return a single variable-length package containing simple data types such as integers, buffers, strings. This includes: _ALx,_BCL,_CID, _DOD,_EDL,_FIX,_PCL,_PLD,_PMD,_PRx,_PSL,_Sx, and _TZD. http://www.acpica.org/bugzilla/show_bug.cgi?id=914 Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 0f6896f195df014064014493c8287a8e2d18f938 Author: Bob Moore Date: Wed Apr 13 11:33:17 2011 +0800 ACPICA: Split all internal Global Lock functions to new file - evglock These functions were moved from evmisc.c Signed-off-by: Bob Moore Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 44183d4231a52a797beb477f962e1d361e31299d Author: Amir Goldstein Date: Mon May 9 21:52:36 2011 -0400 ext4: remove alloc_semp After taking care of all group init races, all that remains is to remove alloc_semp from ext4_allocation_context and ext4_buddy structs. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 9b8b7d353f5f9bea758398c3af679ffa105e5cfe Author: Amir Goldstein Date: Mon May 9 21:49:42 2011 -0400 ext4: teach ext4_mb_init_cache() to skip uptodate buddy caches After online resize which adds new groups, some of the groups in a buddy page may be initialized and uptodate, while other (new ones) may be uninitialized. The indication for init of new block groups is when ext4_mb_init_cache() is called with an uptodate buddy page. In this case, initialized groups on that buddy page must be skipped when initializing the buddy cache. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 2de8807b25de6d24476923121e3b20146fe8216b Author: Amir Goldstein Date: Mon May 9 21:48:13 2011 -0400 ext4: synchronize ext4_mb_init_group() with buddy page lock The old routines ext4_mb_[get|put]_buddy_cache_lock(), which used to take grp->alloc_sem for all groups on the buddy page have been replaced with the routines ext4_mb_[get|put]_buddy_page_lock(). The new routines take both buddy and bitmap page locks to protect against concurrent init of groups on the same buddy page. The GROUP_NEED_INIT flag is tested again under page lock to check if the group was initialized by another caller. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit e73a347b7723757bb5fb5c502814dc205a7f496d Author: Amir Goldstein Date: Mon May 9 21:40:01 2011 -0400 ext4: implement ext4_add_groupblocks() by freeing blocks The old imlementation used to take grp->alloc_sem and set the GROUP_NEED_INIT flag, so that the buddy cache would be reloaded. The new implementation updates the buddy cache by freeing the added blocks and making them available for use, so there is no need to reload the buddy cache and there is no need to take grp->alloc_sem. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 1c3319fb69c29376fe23c1aa0cd7cb6df91c7883 Author: Joe Perches Date: Mon May 9 09:45:23 2011 +0000 tulip: Use pr_ where appropriate Use the current logging styles. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 726b65ad444dd142e34d0087fcbba03d16b34ca6 Author: Joe Perches Date: Mon May 9 09:45:22 2011 +0000 tulip: Convert uses of KERN_DEBUG Convert logging messages to more current styles. Added -DDEBUG to Makefile to maintain current message logging. This could be converted to a specific CONFIG_TULIP_DEBUG option. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 163ef0b5922b14751e93218bdf2c9fe8f74b9c9d Author: Joe Perches Date: Mon May 9 09:45:21 2011 +0000 tulip: Convert printks to netdev_ Use the current more descriptive logging styles. Add pr_fmt and remove PFX where appropriate. Use netif_, netdev_ Indent a few blocks in xircom_cb where appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 54668b84bd2ee808e6b43ed9bd7aa3338fa95857 Author: Joe Perches Date: Mon May 9 09:45:20 2011 +0000 tulip: xircom_cb: Convert #ifdef DEBUG blocks and enter/leave uses Change the blocks that are guarded by #if DEBUG to be #if defined DEBUG && DEBUG > 1 so that pr_debug can be used later. Remove enter/leave macros and uses. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 4a9e25d8de3e1435a0b5155e0195de20744894fe Merge: 4940fc8 5d320a2 Author: David S. Miller Date: Mon May 9 12:48:05 2011 -0700 Merge branch 'davem-next.r8169' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu/netdev-2.6 commit 935a638241b0658b9749edd060f972575f9d4a78 Author: Matthew Garrett Date: Thu May 5 15:19:46 2011 -0400 x86, efi: Ensure that the entirity of a region is mapped It's possible for init_memory_mapping() to fail to map the entire region if it crosses a boundary, so ensure that we complete the mapping. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1304623186-18261-5-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 7cb00b72876ea2451eb79d468da0e8fb9134aa8a Author: Matthew Garrett Date: Thu May 5 15:19:45 2011 -0400 x86, efi: Pass a minimal map to SetVirtualAddressMap() Experimentation with various EFI implementations has shown that functions outside runtime services will still update their pointers if SetVirtualAddressMap() is called with memory descriptors outside the runtime area. This is obviously insane, and therefore is unsurprising. Evidence from instrumenting another EFI implementation suggests that it only passes the set of descriptors covering runtime regions, so let's avoid any problems by doing the same. Runtime descriptors are copied to a separate memory map, and only that map is passed back to the firmware. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1304623186-18261-4-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 202f9d0a41809e3424af5f61489b48b622824aed Author: Matthew Garrett Date: Thu May 5 15:19:44 2011 -0400 x86, efi: Merge contiguous memory regions of the same type and attribute Some firmware implementations assume that physically contiguous regions will be contiguous in virtual address space. This assumption is, obviously, entirely unjustifiable. Said firmware implementations lack the good grace to handle their failings in a measured and reasonable manner, instead tending to shit all over address space and oopsing the kernel. In an ideal universe these firmware implementations would simultaneously catch fire and cease to be a problem, but since some of them are present in attractively thin and shiny metal devices vanity wins out and some poor developer spends an extended period of time surrounded by a growing array of empty bottles until the underlying reason becomes apparent. Said developer presents this patch, which simply merges adjacent regions if they happen to be contiguous and have the same EFI memory type and caching attributes. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1304623186-18261-3-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 9cd2b07c197e3ff594fc04f5fb3d86efbeab6ad8 Author: Matthew Garrett Date: Thu May 5 15:19:43 2011 -0400 x86, efi: Consolidate EFI nx control The core EFI code and 64-bit EFI code currently have independent implementations of code for setting memory regions as executable or not. Let's consolidate them. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1304623186-18261-2-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 2b5e8ef35bc89eee944c0627edacbb1fea5a1b84 Author: Matthew Garrett Date: Thu May 5 15:19:42 2011 -0400 x86, efi: Remove virtual-mode SetVirtualAddressMap call The spec says that SetVirtualAddressMap doesn't work once you're in virtual mode, so there's no point in having infrastructure for calling it from there. Signed-off-by: Matthew Garrett Link: http://lkml.kernel.org/r/1304623186-18261-1-git-send-email-mjg@redhat.com Signed-off-by: H. Peter Anvin commit 4940fc889e1e63667a15243028ddcd84d471cd8e Author: Alexey Dobriyan Date: Sat May 7 23:00:07 2011 +0000 net: add mac_pton() for parsing MAC address mac_pton() parses MAC address in form XX:XX:XX:XX:XX:XX and only in that form. mac_pton() doesn't dirty result until it's sure string representation is valid. mac_pton() doesn't care about characters _after_ last octet, it's up to caller to deal with it. mac_pton() diverges from 0/-E return value convention. Target usage: if (!mac_pton(str, whatever->mac)) return -EINVAL; /* ->mac being u8 [ETH_ALEN] is filled at this point. */ /* optionally check str[3 * ETH_ALEN - 1] for termination */ Use mac_pton() in pktgen and netconsole for start. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 99f823f98fb981b55c663a3783c3d2293958ece4 Author: Alexey Dobriyan Date: Sat May 7 20:33:13 2011 +0000 netconsole: switch to kstrto*() functions Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 0693e88e6ccf615d9674548d8b924cdd9a1c976c Author: Michał Mirosław Date: Sat May 7 01:48:02 2011 +0000 net: bonding: factor out rlock(bond->lock) in xmit path Pull read_lock(&bond->lock) and BOND_IS_OK() to bond_start_xmit() from mode-dependent xmit functions. netif_running() is always true in hard_start_xmit. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 5d320a205de277774962782a4b1923e4f8cdf781 Author: Francois Romieu Date: Sun May 8 17:47:36 2011 +0200 r8169: avoid late chip identifier initialisation. Unknown 8168 chips did not have any PLL power method set as they did not inherit a default family soon enough. Fix it. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 85bffe6ca2e2d7e9510c115aa4f11c3d4209051f Author: Francois Romieu Date: Wed Apr 27 08:22:39 2011 +0200 r8169: merge firmware information into the chipset description data. - RTL_GIGA_MAC_NONE is a fake index so put it at the end of the enumeration and shift everybody. - RTL_GIGA_MAC_VER_17 / RTL_GIGA_MAC_VER_16 ordering fixed. Though not wrong it was confusing enough to wonder if things were right. Renaming rtl_chip_info was not strictly necessary. It allows to check the patch for the correct use of the indexes though. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 31bd204f97e3796c5cfcfc582a93a10e45b99946 Author: Francois Romieu Date: Tue Apr 26 18:58:59 2011 +0200 r8169: provide some firmware information via ethtool. There is no real firmware version yet but the manpage of ethtool is rather terse about the driver information. Former output: $ ethtool -i eth1 driver: r8169 version: 2.3LK-NAPI firmware-version: bus-info: 0000:01:00.0 $ ethtool -i eth0 driver: r8169 version: 2.3LK-NAPI firmware-version: bus-info: 0000:03:00.0 Current output: $ ethtool -i eth1 driver: r8169 version: 2.3LK-NAPI firmware-version: N/A bus-info: 0000:01:00.0 $ ethtool -i eth0 driver: r8169 version: 2.3LK-NAPI firmware-version: rtl_nic/rtl8168d-1.fw bus-info: 0000:03:00.0 Signed-off-by: Francois Romieu Fixed-by Ciprian Docan Cc: Realtek linux nic maintainers Cc: Fejes József Cc: Borislav Petkov commit 56de414c0c7333f1e1adedc23057e131ce84233e Author: Francois Romieu Date: Tue Mar 15 17:29:31 2011 +0100 r8169: remove non-NAPI context invocation of rtl8169_rx_interrupt. Invocation of rtl8169_rx_interrupt from rtl8169_reset_task was originally intended to retrieve as much packets as possible from the rx ring when a reset was needed. Nowadays rtl8169_reset_task is only scheduled, with some delay a. from the tx timeout watchdog b. when resuming c. from rtl8169_rx_interrupt itself It's dubious that the loss of outdated packets will matter much for a) and b). c) does not need to call itself again. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 4876cc1e49efac03827a51a2422cfbbb7f6335de Author: Francois Romieu Date: Fri Mar 11 21:07:11 2011 +0100 r8169: link speed selection timer rework. The implementation was a bit krusty. The 10s rtl8169_phy_timer timer has been (was ?) required with older 8169 for adequate phy operation when full gigabit is advertised in autonegotiated mode. The timer does nothing if the link is up. Otherwise it keeps resetting the phy until things improve. - the device private data field phy_1000_ctrl_reg was used to schedule the timer. Avoid it and save a few bytes. - rtl8169_set_settings pending timer is disabled before changing the link settings as rtl8169_phy_timer is not always needed (see the removed test in rtl8169_phy_timer). - rtl8169_set_speed the requested link parameters may not match the chipset : bail out early on failure. - rtl8169_open Calling rtl8169_request_timer is redundant with -> rtl8169_open -> rtl8169_init_phy -> rtl8169_set_speed -> mod_timer The latter always enables the phy timer whereas the former did not for RTL_GIGA_MAC_VER_01. It should not make things worse but only time will tell if reality agrees. - rtl8169_request_timer : unused yet. Removed. - rtl8169_delete_timer : useless. Bloat. Removed. Side effect : the timer may kick in if the TBI is enabled. I do not know if the TBI has ever been used in real life. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 826e6cbdadfa51495c7189641df2514cc48e23da Author: Francois Romieu Date: Fri Mar 11 20:30:24 2011 +0100 r8169: rtl8169_set_speed_xmii cleanup. Shorten chipset version test. No functional change. Careful readers will notice that the 'supports_gmii' flag is deduced from the device PCI id. Though less specific than the chipset related RTL_GIGA_MAC_VER_XY, it is good enough to detect a GMII deprieved 810x. Some features push for a device specific configuration (improved jumbo frame support for instance). 'supports_gmii' will follow this path if / when the device PCI id test stops working. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 6f43adc88f49cb8164fbd665e968de4de380dc35 Author: Francois Romieu Date: Fri Apr 29 15:05:51 2011 +0200 r8169: remove some code duplication. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit cecb5fd7c277c1bba161980bb41792a60b56df4a Author: Francois Romieu Date: Fri Apr 1 10:21:07 2011 +0200 r8169: style cleanups. Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers commit 48752e1b1802231ef2a076f34d861918b7d571c3 Author: Eric Dumazet Date: Mon May 9 04:40:44 2011 +0000 vlan: remove one synchronize_net() call At VLAN dismantle phase, unregister_vlan_dev() makes one synchronize_net() call after vlan_group_set_device(grp, vlan_id, NULL). This call can be safely removed because we are calling unregister_netdevice_queue() to queue device for deletion, and this process needs at least one rcu grace period to complete. Signed-off-by: Eric Dumazet Cc: Ben Greear Cc: Patrick McHardy Cc: Paul E. McKenney Cc: Jesse Gross Cc: Michał Mirosław Acked-by: Jesse Gross Signed-off-by: David S. Miller commit da37e368763f708d2ae5a81e61ec59372b831cf5 Author: Eric Dumazet Date: Mon May 9 03:35:55 2011 +0000 garp: remove one synchronize_rcu() call Speedup vlan dismantling in CONFIG_VLAN_8021Q_GVRP=y cases, by using a call_rcu() to free the memory instead of waiting with expensive synchronize_rcu() [ while RTNL is held ] Signed-off-by: Eric Dumazet Cc: Ben Greear Cc: Patrick McHardy Cc: Paul E. McKenney Signed-off-by: David S. Miller commit 226bd3411471af42f7edbdfaf73f2d54ebb62a66 Author: Eric Dumazet Date: Sun May 8 23:17:57 2011 +0000 net: use batched device unregister in veth and macvlan veth devices dont use the batched device unregisters yet. Since veth are a pair of devices, it makes sense to use a batch of two unregisters, this roughly divides dismantle time by two. Fix this by changing dellink() callers to always provide a non NULL head. (Idea from Michał Mirosław) This patch also handles macvlan case : We now dismantle all macvlans on top of a lower dev at once. Reported-by: Alex Bligh Signed-off-by: Eric Dumazet Cc: Michał Mirosław Cc: Jesse Gross Cc: Paul E. McKenney Cc: Ben Greear Signed-off-by: David S. Miller commit e4d3c4a43b595d5124ae824d300626e6489ae857 Author: Dave Chinner Date: Fri May 6 02:54:08 2011 +0000 xfs: fix race condition in AIL push trigger The recent conversion of the xfsaild functionality to a work queue introduced a hard-to-hit log space grant hang. One is caused by a race condition in determining whether there is a psh in progress or not. The XFS_AIL_PUSHING_BIT is used to determine whether a push is currently in progress. When the AIL push work completes, it checked whether the target changed and cleared the PUSHING bit to allow a new push to be requeued. The race condition is as follows: Thread 1 push work smp_wmb() smp_rmb() check ailp->xa_target unchanged update ailp->xa_target test/set PUSHING bit does not queue clear PUSHING bit does not requeue Now that the push target is updated, new attempts to push the AIL will not trigger as the push target will be the same, and hence despite trying to push the AIL we won't ever wake it again. The fix is to ensure that the AIL push work clears the PUSHING bit before it checks if the target is unchanged. As a result, both push triggers operate on the same test/set bit criteria, so even if we race in the push work and miss the target update, the thread requesting the push will still set the PUSHING bit and queue the push work to occur. For safety sake, the same queue check is done if the push work detects the target change, though only one of the two will will queue new work due to the use of test_and_set_bit() checks. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder commit fd5670f22fce247754243cf2ed41941e5762d990 Author: Dave Chinner Date: Fri May 6 02:54:07 2011 +0000 xfs: make AIL target updates and compares 32bit safe. The recent conversion of the xfsaild functionality to a work queue introduced a hard-to-hit log space grant hang. One of the problems noticed was that updates of the push target are not 32 bit safe as the target is a 64 bit value. We cannot copy a 64 bit LSN without the possibility of corrupting the result when racing with another updating thread. We have function to do this update safely without needing to care about 32/64 bit issues - xfs_trans_ail_copy_lsn() - so use that when updating the AIL push target. Also move the reading of the target in the push work inside the AIL lock, and use XFS_LSN_CMP() for the unlocked comparison during work termination to close read holes as well. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder commit cb64026b6e8af50db598ec7c3f59d504259b00bb Author: Dave Chinner Date: Fri May 6 02:54:06 2011 +0000 xfs: always push the AIL to the target The recent conversion of the xfsaild functionality to a work queue introduced a hard-to-hit log space grant hang. One of the problems discovered is a target mismatch between the item pushing loop and the target itself. The push trigger checks for the target increasing (i.e. new target > current) while the push loop only pushes items that have a LSN < current. As a result, we can get the situation where the push target is X, the items at the tail of the AIL have LSN X and they don't get pushed. The push work then completes thinking it is done, and cannot be restarted until the push target increases to >= X + 1. If the push target then never increases (because the tail is not moving), then we never run the push work again and we stall. Fix it by making sure log items with a LSN that matches the target exactly are pushed during the loop. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder commit ea35a20021f8497390d05b93271b4d675516c654 Author: Dave Chinner Date: Fri May 6 02:54:05 2011 +0000 xfs: exit AIL push work correctly when AIL is empty The recent conversion of the xfsaild functionality to a work queue introduced a hard-to-hit log space grant hang. The main cause is a regression where a work exit path fails to clear the PUSHING state and recheck the target correctly. Make both exit paths do the same PUSHING bit clearing and target checking when the "no more work to be done" condition is hit. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder commit b223221956675ce8a7b436d198ced974bb388571 Author: Dave Chinner Date: Fri May 6 02:54:04 2011 +0000 xfs: ensure reclaim cursor is reset correctly at end of AG On a 32 bit highmem PowerPC machine, the XFS inode cache was growing without bound and exhausting low memory causing the OOM killer to be triggered. After some effort, the problem was reproduced on a 32 bit x86 highmem machine. The problem is that the per-ag inode reclaim index cursor was not getting reset to the start of the AG if the radix tree tag lookup found no more reclaimable inodes. Hence every further reclaim attempt started at the same index beyond where any reclaimable inodes lay, and no further background reclaim ever occurred from the AG. Without background inode reclaim the VM driven cache shrinker simply cannot keep up with cache growth, and OOM is the result. While the change that exposed the problem was the conversion of the inode reclaim to use work queues for background reclaim, it was not the cause of the bug. The bug was introduced when the cursor code was added, just waiting for some weird configuration to strike.... Signed-off-by: Dave Chinner Tested-By: Christian Kujau Reviewed-by: Christoph Hellwig Reviewed-by: Alex Elder commit 1bb73a88839d473f4f2c529ecf453029439aa837 Author: Alex He Date: Thu May 5 18:14:12 2011 +0800 xHCI 1.0: Max Exit Latency Too Large Error This is a new TRB Completion Code of the xHCI spec 1.0. Asserted by the Evalute Context Command if the proposed Max Exit Latency would not allow the periodic endpoints of the Device Slot to be scheduled. Signed-off-by: Alex He Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 700b41736c07f357df0a1b8f342fd237f365b58d Author: Andiry Xu Date: Thu May 5 18:14:05 2011 +0800 xHCI 1.0: TT_THINK_TIME set xHCI 1.0 spec says the TT Think Time field shall be set to zero if the device is not a High-speed hub. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit ad106f292369d753d5c75751cb9e760726e3cd00 Author: Andiry Xu Date: Thu May 5 18:14:02 2011 +0800 xHCI 1.0: Block Interrupts for Isoch transfer Currently an isoc URB is divided into multiple TDs, and every TD will trigger an interrupt when it's processed. However, software can schedule multiple TDs at a time, and it only needs an interrupt every URB. xHCI 1.0 introduces the Block Event Interrupt(BEI) flag which allows Normal and Isoch Transfer TRBs to place an Event TRB on an Event Ring but not assert an intrrupt to the host, and the interrupt rate is significantly reduced and the system performance is improved. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 7b1fc2ea8a5fbf9487d83865456cff77d0249ea9 Author: Andiry Xu Date: Thu May 5 18:14:00 2011 +0800 xHCI 1.0: Isoch endpoint CErr field set xHCI 1.0 specification specifies that CErr does not apply to Isoch endpoints and shall be set to '0' for Isoch endpoints. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 51eb01a746089f2c3d9b87f870353772d2fb4c37 Author: Andiry Xu Date: Thu May 5 18:13:58 2011 +0800 xHCI 1.0: Control endpoint average TRB length field set xHCI 1.0 specification indicates that software should set Average TRB Length to '8' for control endpoints. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit b83cdc8f4d94a127e9319bef37f384b01ecca72e Author: Andiry Xu Date: Thu May 5 18:13:56 2011 +0800 xHCI 1.0: Setup Stage TRB Transfer Type flag Setup Stage Transfer Type field is added to indicate the presence and the direction of the Data Stage TD, and determines the direction of the Status Stage TD so the wLength length field should be ignored by the xHC. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 4e61f0d75aa86c9e59451f6bcffcdceb355b4fc4 Author: Austin Zhang Date: Mon May 9 23:54:14 2011 +0800 HID: hid-multitouch: add support for Ilitek dual-touch panel Added ILITEK hid dual touch panel support into hid-multitouch. Signed-off-by: Austin Zhang Reviewed-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 9eed04cd99b0a497cf0da22658808a7f5b10d734 Author: Steven Whitehouse Date: Mon May 9 14:11:40 2011 +0100 GFS2: Move final part of inode.c into super.c Now inode.c is empty. Signed-off-by: Steven Whitehouse commit 194c011fc4650d0dd1eecbc35bc26045108aca51 Author: Steven Whitehouse Date: Mon May 9 14:06:38 2011 +0100 GFS2: Move most of the remaining inode.c into ops_inode.c This is in preparation to remove inode.c and rename ops_inode.c to inode.c. Also most of the functions which were left in inode.c relate to the creation and lookup of inodes. I'm intending to work on consolidating some of that code, and its easier when its all in one place. Signed-off-by: Steven Whitehouse commit d4b2cf1b0566eebfe39a6d70e9e4b5fa01ddaace Author: Steven Whitehouse Date: Mon May 9 13:49:59 2011 +0100 GFS2: Move gfs2_refresh_inode() and friends into glops.c Eventually there will only be a single caller of this code, so lets move it where it can be made static at some future date. Signed-off-by: Steven Whitehouse commit 94fb763b1a76a2000ad21f3119b05c90040acaf0 Author: Steven Whitehouse Date: Mon May 9 13:36:10 2011 +0100 GFS2: Remove gfs2_dinode_print() function This function was intended for debugging purposes, but it is not very useful. If we want to know what is on disk then all we need is a block number and gfs2_edit can give us much better information about what is there. Otherwise, if we are interested in what is stored in the in-core inode, it doesn't help us out there either. Signed-off-by: Steven Whitehouse commit 3d6ecb7d16fd4248fce58387a982a0756ad3fcc2 Author: Steven Whitehouse Date: Mon May 9 13:30:08 2011 +0100 GFS2: When adding a new dir entry, inc link count if it is a subdir This adds an increment of the link count when we add a new directory entry, if that entry is itself a directory. This means that we no longer need separate code to perform this operation. Now that both adding and removing directory entries automatically update the parent directory's link count if required, that makes the code shorter and simpler than before. Signed-off-by: Steven Whitehouse commit 855d23ce2665c56437bd88fa6a0d45b6713bd194 Author: Steven Whitehouse Date: Mon May 9 16:42:37 2011 +0100 GFS2: Make gfs2_dir_del update link count when required When we remove an entry from a directory, we can save ourselves some trouble if we know the type of the entry in question, since if it is itself a directory, we can update the link count of the parent at the same time as removing the directory entry. In addition this patch also merges the rmdir and unlink code which was almost identical anyway. This eliminates the calls to remove the . and .. directory entries on each rmdir (not needed since the directory will be deallocated, anyway) which was the only thing preventing passing the dentry to gfs2_dir_del(). The passing of the dentry rather than just the name allows us to figure out the type of the entry which is being removed, and thus adjust the link count when required. Signed-off-by: Steven Whitehouse commit 2baee03fb916563d7cc597e5460e4cb938815c52 Author: Steven Whitehouse Date: Mon May 9 12:08:36 2011 +0100 GFS2: Don't use gfs2_change_nlink in link syscall There are three users of gfs2_change_nlink which add to the link count. Two of these are about to be removed in later patches, so this means that there will no callers, when that happens allowing removal of that function, also in a later patch. Signed-off-by: Steven Whitehouse commit 9e18630b689d658d65bf59508bfec084f61ff5c6 Author: Mike Rapoport Date: Wed Apr 27 11:56:12 2011 +0300 omap: musb: introduce default board config Most boards use exactly the same configuration for musb initialization. Create a default that can be shared amount different boards. Signed-off-by: Mike Rapoport Acked-by: Felipe Balbi Signed-off-by: Tony Lindgren commit 2cd05cc39347ddd8994b7f63ab5cb886f042477f Author: Theodore Ts'o Date: Mon May 9 10:58:45 2011 -0400 ext4: remove unneeded ext4_journal_get_undo_access The block allocation code used to use jbd2_journal_get_undo_access as a way to make changes that wouldn't show up until the commit took place. The new multi-block allocation code has a its own way of preventing newly freed blocks from getting reused until the commit takes place (it avoids updating the buddy bitmaps until the commit is done), so we don't need to use jbd2_journal_get_undo_access(), which has extra overhead compared to jbd2_journal_get_write_access(). There was one last vestigal use of ext4_journal_get_undo_access() in ext4_add_groupblocks(); change it to use ext4_journal_get_write_access() and then remove the ext4_journal_get_undo_access() support. Signed-off-by: "Theodore Ts'o" commit 2846e82004a8d5ef0a63cd3209c84ea5cd796f11 Author: Amir Goldstein Date: Mon May 9 10:46:41 2011 -0400 ext4: move ext4_add_groupblocks() to mballoc.c In preparation for the next patch, the function ext4_add_groupblocks() is moved to mballoc.c, where it could use some static functions. Signed-off-by: Amir Goldstein Signed-off-by: "Theodore Ts'o" commit 66bb82798d9ff896271d13f5020f7fb9b7d88e1a Author: Amerigo Wang Date: Mon May 9 10:30:41 2011 -0400 ext4: remove redundant #ifdef in super.c There is already an #ifdef CONFIG_QUOTA some lines above, so this one is totally useless. Signed-off-by: WANG Cong Signed-off-by: "Theodore Ts'o" commit 55ff3840a293923daacc880cf4aed30c3c49f754 Author: Tao Ma Date: Mon May 9 10:28:41 2011 -0400 ext4: remove redundant check for first_not_zeroed in ext4_register_li_request We have checked first_not_zeroed == ngroups already above, so remove this redundant check. sbi->s_li_request = NULL above is also removed since it is NULL already. Cc: Lukas Czerner Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 00d098822fe215a2f4fd32f244a9055b0b043bfe Author: Tao Ma Date: Mon May 9 10:26:41 2011 -0400 ext4: use s_inodes_per_block directly in __ext4_get_inode_loc In __ext4_get_inode_loc, we calculate inodes_per_block every time by EXT4_BLOCK_SIZE(sb) / EXT4_INODE_SIZE(sb). AFAICS, this function is a hot path for ext4, so we'd better use s_inodes_per_block directly instead of calculating every time. Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit e8bbe8c401c61408ea226b33b824f231c8f9ccae Author: Tao Ma Date: Mon May 9 10:25:54 2011 -0400 ext4: use EXT4FS_DEBUG instead of EXT4_DEBUG in fsync.c We have EXT4FS_DEBUG for some old debug and CONFIG_EXT4_DEBUG for the new mballoc debug, but there isn't any EXT4_DEBUG. As CONFIG_EXT4_DEBUG seems to be only used in mballoc, use EXT4FS_DEBUG in fsync.c. [ It doesn't really matter; although I'm including this commit for consistency's sake. The whole point of the #ifdef's is to disable the debugging code. In general you're not going to want to enable all of the code protected by EXT4FS_DEBUG at the same time. -- Ted ] Signed-off-by: Tao Ma Signed-off-by: "Theodore Ts'o" commit 40ae717d1e78d982bd469b2013a4cbf4ec1ca434 Author: Tejun Heo Date: Fri May 6 11:52:22 2011 +0200 ptrace: fix signal->wait_chldexit usage in task_clear_group_stop_trapping() GROUP_STOP_TRAPPING waiting mechanism piggybacks on signal->wait_chldexit which is primarily used to implement waiting for wait(2) and friends. When do_wait() waits on signal->wait_chldexit, it uses a custom wake up callback, child_wait_callback(), which expects the child task which is waking up the parent to be passed in as @key to filter out spurious wakeups. task_clear_group_stop_trapping() used __wake_up_sync() which uses NULL @key causing the following oops if the parent was doing do_wait(). BUG: unable to handle kernel NULL pointer dereference at 00000000000002d8 IP: [] child_wait_callback+0x29/0x80 PGD 1d899067 PUD 1e418067 PMD 0 Oops: 0000 [#1] PREEMPT SMP last sysfs file: /sys/devices/pci0000:00/0000:00:03.0/local_cpus CPU 2 Modules linked in: Pid: 4498, comm: test-continued Not tainted 2.6.39-rc6-work+ #32 Bochs Bochs RIP: 0010:[] [] child_wait_callback+0x29/0x80 RSP: 0000:ffff88001b889bf8 EFLAGS: 00010046 RAX: 0000000000000000 RBX: ffff88001fab3af8 RCX: 0000000000000000 RDX: 0000000000000001 RSI: 0000000000000002 RDI: ffff88001d91df20 RBP: ffff88001b889c08 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000001 R12: 0000000000000000 R13: ffff88001fb70550 R14: 0000000000000000 R15: 0000000000000001 FS: 00007f26ccae4700(0000) GS:ffff88001fd00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00000000000002d8 CR3: 000000001b8ac000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process test-continued (pid: 4498, threadinfo ffff88001b888000, task ffff88001fb88000) Stack: ffff88001b889c18 ffff88001fb70538 ffff88001b889c58 ffffffff810312f9 0000000000000001 0000000200000001 ffff88001b889c58 ffff88001fb70518 0000000000000002 0000000000000082 0000000000000001 0000000000000000 Call Trace: [] __wake_up_common+0x59/0x90 [] __wake_up_sync_key+0x53/0x80 [] __wake_up_sync+0x10/0x20 [] task_clear_jobctl_trapping+0x44/0x50 [] ptrace_stop+0x7c/0x290 [] do_signal_stop+0x28a/0x2d0 [] get_signal_to_deliver+0x14f/0x5a0 [] do_signal+0x75/0x7b0 [] do_notify_resume+0x5d/0x70 [] retint_signal+0x46/0x8c Code: 00 00 55 48 89 e5 53 48 83 ec 08 0f 1f 44 00 00 8b 47 d8 83 f8 03 74 3a 85 c0 49 89 c8 75 23 89 c0 48 8b 5f e0 4c 8d 0c 40 31 c0 <4b> 39 9c c8 d8 02 00 00 74 1d 48 83 c4 08 5b c9 c3 66 0f 1f 44 Fix it by using __wake_up_sync_key() and passing in the child as @key. I still think it's a mistake to piggyback on wait_chldexit for this. Given the relative low frequency of ptrace use, we would be much better off leaving already complex wait_chldexit alone and using bit waitqueue. Signed-off-by: Tejun Heo Reviewed-by: Oleg Nesterov commit 2e4f7c7769a0b8b6b3e88b0436c6c634f146a4ef Author: Oleg Nesterov Date: Mon May 9 13:48:56 2011 +0200 signal: sys_sigprocmask() needs retarget_shared_pending() sys_sigprocmask() changes current->blocked by hand. Convert this code to use set_current_blocked(). Signed-off-by: Oleg Nesterov commit eb8590b504caacb029dea4540e0b0dcc98da4381 Author: Tomoya MORINAGA Date: Mon May 9 16:09:40 2011 +0900 pch_dma: modify pci device table definition Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit c0dfc04ac96847913a791f5459f4ac83a81a4745 Author: Tomoya MORINAGA Date: Mon May 9 16:09:39 2011 +0900 pch_dma: Support new device ML7223 IOH Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub). The ML7223 IOH is for MP(Media Phone) use. The ML7223 is companion chip for Intel Atom E6xx series. The ML7223 is completely compatible for Intel EG20T PCH. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit 194f5f2706c7472f9c6bb2d17fa788993606581f Author: Tomoya MORINAGA Date: Mon May 9 16:09:38 2011 +0900 pch_dma: Support I2S for ML7213 IOH Support I2S device for ML7213 IOH Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit 60092d0bde4c8741198da4a69b693d3709385bf1 Author: Tomoya MORINAGA Date: Mon May 9 16:09:37 2011 +0900 pch_dma: Fix DMA setting issue Currently, Direct-Start mode(*) is enabled. Our IOH's devices must not use this mode. This causes unexpected behavior. This patch deletes Direct-Start setting. (*) This mode is used in order for CPU to generate the DMA request. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit 08645fdc7bab4564f7dfd07525da8a1761f8f106 Author: Tomoya MORINAGA Date: Mon May 9 16:09:36 2011 +0900 pch_dma: modify for checkpatch Fix checkpatch warnings. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit c8fcba600c46c5d7667ec230b1d9ce3ce5859f9c Author: Tomoya MORINAGA Date: Mon May 9 16:09:35 2011 +0900 pch_dma: fix dma direction issue for ML7213 IOH video-in Currently, even-channel number is set as tx direction and odd is set as rx. However, though video-in uses ch6, the direction is not tx but rx. This patch sets video-in's DMA direction correctly. Signed-off-by: Tomoya MORINAGA Signed-off-by: Vinod Koul commit bd7e388035d3c80aab360f18d123eb2e06eda8d1 Author: Thomas Gleixner Date: Mon May 9 10:10:22 2011 +0200 ARM: SAMSUNG: Convert irq-uart to generic irq chip Signed-off-by: Thomas Gleixner Acked-by: Kukjin Kim Signed-off-by: Mark Brown commit 2d2e1d3c404d7e5bd20d6e1ad910e440eaf6c14d Author: Thomas Gleixner Date: Mon May 9 10:09:26 2011 +0200 ARM: SAMSUNG: Convert irq-vic-timer to generic irq chip Signed-off-by: Thomas Gleixner Acked-by: Kukjin Kim Signed-off-by: Mark Brown commit ad739dcff27435dfb3674c7549ec1b4955b050ec Author: Thomas Gleixner Date: Mon May 9 10:08:00 2011 +0200 ARM: SAMSUNG: S5P: Convert irq-gpioint to generic irq chip Signed-off-by: Thomas Gleixner Acked-by: Kukjin Kim Signed-off-by: Mark Brown commit bbdd304cf66fbf2b4b2d28418dc619d443635e83 Author: Jens Axboe Date: Mon May 9 08:28:13 2011 +0200 fs: fixup warning part_discard_alignment_show() Stephen reports: ----- After merging the block tree, today's linux-next build (x86_64 allmodconfig) produced this warning: fs/partitions/check.c: In function 'part_discard_alignment_show': fs/partitions/check.c:263: warning: format '%u' expects type 'unsigned int', but argument 3 has type 'long long unsigned int' Introduced by commit ("block: Remove extra discard_alignment from hd_struct") ----- Fix it up by just removing the cast, we return an int already. Reported-by: Stephen Rothwell Signed-off-by: Jens Axboe commit e257e1563f28890f54b5f82861373bb4b32dd770 Author: Nicolas Ferre Date: Fri May 6 19:56:53 2011 +0200 dmaengine: at_hdmac: use descriptor chaining help function A little function helps to chain descriptors: it is already used in cyclic dma operations, now use it in memcpy and slave_sg preparation functions. Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit 23b5e3ad68a3c26a6a36039ea907997664aedcab Author: Nicolas Ferre Date: Fri May 6 19:56:52 2011 +0200 dmaengine: at_hdmac: implement pause and resume in atc_control Pause and resume controls are useful for audio devices. This also returns correct status from atc_tx_status() in case chan is paused. Idea from dw_dmac patch by Linus Walleij. Signed-off-by: Nicolas Ferre Acked-by: Linus Walleij Signed-off-by: Vinod Koul commit 543aabc7d295bfe2489f184259395e3467520d48 Author: Nicolas Ferre Date: Fri May 6 19:56:51 2011 +0200 dmaengine: at_hdmac: set residue as total len in atc_tx_status If transfer status is !=DMA_SUCCESS, return total transfer len as residue, instead of zero. Idea from dw_dmac patch by Viresh Kumar. Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit 711b9cea92554be6bd44f04f2485582d762fc441 Author: Philippe Langlais Date: Sat May 7 17:09:43 2011 +0200 dmaengine/ste_dma40: fix introduced warnings The compiler nowadays moans about possibly non-assigned variable. Fix this by default-assigning 0. Signed-off-by: Philippe Langlais Signed-off-by: Linus Walleij Signed-off-by: Vinod Koul commit 0eacdba3a186e5d5b8a8bb421caacddc135e67e3 Author: Dave Airlie Date: Mon May 9 14:37:10 2011 +1000 drm/mxm: fix Kconfig options for when to build MXM WMI driver. Signed-off-by: Dave Airlie commit 7ef73bca731fea9d4b706db2acb96b6488aa1b0e Author: David S. Miller Date: Sun May 8 21:14:41 2011 -0700 sctp: Fix debug message args. I messed things up when I converted over to the transport flow, I passed the ipv4 address value instead of it's address. Reported-by: Stephen Rothwell Signed-off-by: David S. Miller commit f5fca6086511294653a9e821f8e22f041415ba7b Author: David S. Miller Date: Sun May 8 17:24:10 2011 -0700 ipv4: Pass flow key down into ip_append_*(). This way rt->rt_dst accesses are unnecessary. Signed-off-by: David S. Miller commit 77968b78242ee25e2a4d759f0fca8dd52df6d479 Author: David S. Miller Date: Sun May 8 17:12:19 2011 -0700 ipv4: Pass flow keys down into datagram packet building engine. This way ip_output.c no longer needs rt->rt_{src,dst}. We already have these keys sitting, ready and waiting, on the stack or in a socket structure. Signed-off-by: David S. Miller commit e474995f290ff7bc236b549aa9a89ae445ee5b1b Author: David S. Miller Date: Sun May 8 16:38:45 2011 -0700 udp: Use flow key information instead of rt->rt_{src,dst} We have two cases. Either the socket is in TCP_ESTABLISHED state and connect() filled in the inet socket cork flow, or we looked up the route here and used an on-stack flow. Track which one it was, and use it to obtain src/dst addrs. Signed-off-by: David S. Miller commit 269dc2d9194f74b920647e0f2ed0d822dc431770 Merge: 776f2b7 000703f Author: Dave Airlie Date: Mon May 9 13:23:18 2011 +1000 Merge remote branch 'korg/drm-nvidia-switch-fixes' into drm-core-next * korg/drm-nvidia-switch-fixes: mxm/wmi: add MXMX interface entry point. nouveau: add optimus detection to DSM code. vgaarb: use bridges to control VGA routing where possible. nouveau/acpi: hook up to the MXM method for mux switching. platform/x86: add MXM WMI driver. commit 776f2b7cb473baa52cdeee9804073342dee7d7cb Author: Alex Deucher Date: Wed May 4 15:14:44 2011 +0000 drm/radeon/kms: fix some logic errors in combios i2c mapping The virtual i2c to real i2c channel mappings weren't setting the right id in some cases. Spotted by: Andrew Randrianasulu Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 000703f44c77b152cd966eaf06f4ab043274ff46 Author: Dave Airlie Date: Mon May 9 11:40:25 2011 +1000 mxm/wmi: add MXMX interface entry point. The MXMX method appears to be a mutex of some sort. Signed-off-by: Dave Airlie commit f3eee00da39cba3c8a4db7048458969c620ac6d8 Author: Lars-Peter Clausen Date: Sun May 8 09:24:46 2011 -0700 ASoC: SSM2602: Provide dB ranges for the volume controls Also fix the maximum value for the capture volume control. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2a43801a76893286ead35e742e486591e75803a2 Author: Lars-Peter Clausen Date: Sun May 8 09:24:45 2011 -0700 ASoC: SSM2602: Model power supply for the digital core as a DAPM widget Model the power supply for the digital core as a DAPM_SUPPLY widget. This allows to cleanup the code a bit. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7dcf2760bf9d127e6b582977d72316ca58612854 Author: Lars-Peter Clausen Date: Sun May 8 09:24:44 2011 -0700 ASoC: SSM2602: Add entry for the ssm2603 to the device id table The SSM2603 is mostly register compatible with the SSM2602 and can be supported by the current driver without any changes. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b1f7b2b56b98d9eedc6a1b127d5bc5e9c51d2f73 Author: Lars-Peter Clausen Date: Sun May 8 09:24:43 2011 -0700 ASoC: SSM2602: Add SSM2604 support The SSM2604 is basically a lightweight variant of the SSM2602 with a compatible register layout. Thus we can easily support both devices by the same driver, by providing a slightly set of controls, widgets and routes. Compared to the SSM2602 the SSM2604 has no microphone input and no headphone output. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f6c1f2d5e5d50366910fd687e88d07ebaabe00ab Author: Lars-Peter Clausen Date: Sun May 8 09:24:42 2011 -0700 ASoC: SSM2602: Do not power the codec up in probe It is not required to have the codec powered at this stage and DAPM will power the ADC and DAC down again after probe has run anyway. Thus we avoid some unnecessary writes by this change. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7164bdb643cd9c919d69a5ea55b6f8477b90657c Author: Lars-Peter Clausen Date: Sun May 8 09:24:41 2011 -0700 ASoC: SSM2602: Fix default register cache Some of the values in the default register cache did not represent the codecs state after reset. This patch fixes it. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 245e37182b7dead255bdc9e333e0bcc128360675 Author: Anton Blanchard Date: Sun May 8 16:41:45 2011 -0700 ide: Use linux/mutex.h The IDE code is still including asm/mutex.h instead of linux/mutex.h Signed-off-by: Anton Blanchard Signed-off-by: David S. Miller commit 1be2add685181ba31554ffefa428b0f80a408bff Author: Theodore Ts'o Date: Sun May 8 19:37:54 2011 -0400 jbd2: only print the debugging information for tid wraparound once If we somehow wrap, we don't want to keep printing the warning message over and over again. Signed-off-by: "Theodore Ts'o" commit 229309caebe4508d650bb6d8f7d51f2b116f5bbd Author: Jan Kara Date: Sun May 8 19:09:53 2011 -0400 jbd2: Fix forever sleeping process in do_get_write_access() In do_get_write_access() we wait on BH_Unshadow bit for buffer to get from shadow state. The waking code in journal_commit_transaction() has a bug because it does not issue a memory barrier after the buffer is moved from the shadow state and before wake_up_bit() is called. Thus a waitqueue check can happen before the buffer is actually moved from the shadow state and waiting process may never be woken. Fix the problem by issuing proper barrier. Reported-by: Tao Ma Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit eed2a12f1ed9aabf0676f4d0db34aad51976c5c6 Author: Mahesh Bandewar Date: Wed May 4 15:30:11 2011 +0000 net: Allow ethtool to set interface in loopback mode. This patch enables ethtool to set the loopback mode on a given interface. By configuring the interface in loopback mode in conjunction with a policy route / rule, a userland application can stress the egress / ingress path exposing the flows of the change in progress and potentially help developer(s) understand the impact of those changes without even sending a packet out on the network. Following set of commands illustrates one such example - a) ip -4 addr add 192.168.1.1/24 dev eth1 b) ip -4 rule add from all iif eth1 lookup 250 c) ip -4 route add local 0/0 dev lo proto kernel scope host table 250 d) arp -Ds 192.168.1.100 eth1 e) arp -Ds 192.168.1.200 eth1 f) sysctl -w net.ipv4.ip_nonlocal_bind=1 g) sysctl -w net.ipv4.conf.all.accept_local=1 # Assuming that the machine has 8 cores h) taskset 000f netserver -L 192.168.1.200 i) taskset 00f0 netperf -t TCP_CRR -L 192.168.1.100 -H 192.168.1.200 -l 30 Signed-off-by: Mahesh Bandewar Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 47a0200d535f08ac8f784a709c48995ca0b10288 Author: Alexey Dobriyan Date: Tue May 3 11:23:40 2011 +0000 pktgen: use %pI6c for printing IPv6 addresses I don't know why %pI6 doesn't compress, but the format specifier is kernel-standard, so use it. Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit 57cc71bc3c0cf18bfd1b7bc8cd0eb6c303da24c5 Author: Yaniv Rosner Date: Mon May 2 21:30:08 2011 +0000 ethtool: Add 20G bit definitions Add 20G supported and advertising bit definitions. 20G will be supported with the 57840 chips. Signed-off-by: Yaniv Rosner Signed-off-by: Eilon Greenstein ------ include/linux/ethtool.h | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) Signed-off-by: David S. Miller commit 02e73c1edc3746e308d1768a27fdc8121f641ab1 Merge: c5216cc 27aea21 Author: David S. Miller Date: Sun May 8 15:39:11 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit c5216cc70fa769e5a51837f2cf07c4a0aa734fcf Author: David S. Miller Date: Fri May 6 22:36:30 2011 -0700 tcp: Use cork flow info instead of rt->rt_dst in tcp_v4_get_peer() Signed-off-by: David S. Miller commit f1c0a276ea1786213bda2313cd9034f3a23f2e77 Author: David S. Miller Date: Fri May 6 22:34:29 2011 -0700 sctp: Don't use rt->rt_{src,dst} in sctp_v4_xmit() Now we can pick it out of the transport's flow key. Signed-off-by: David S. Miller commit ea4fc0d6193ff56fcef39b0d2210d402a7acb5f0 Author: David S. Miller Date: Fri May 6 22:30:20 2011 -0700 ipv4: Don't use rt->rt_{src,dst} in ip_queue_xmit(). Now we can pick it out of the provided flow key. Signed-off-by: David S. Miller commit d9d8da805dcb503ef8ee49918a94d49085060f23 Author: David S. Miller Date: Fri May 6 22:23:20 2011 -0700 inet: Pass flowi to ->queue_xmit(). This allows us to acquire the exact route keying information from the protocol, however that might be managed. It handles all of the possibilities, from the simplest case of storing the key in inet->cork.fl to the more complex setup SCTP has where individual transports determine the flow. Signed-off-by: David S. Miller commit 0e734419923bd8e599858f8fc196c7804bb85564 Author: David S. Miller Date: Sun May 8 15:28:03 2011 -0700 ipv4: Use inet_csk_route_child_sock() in DCCP and TCP. Operation order is now transposed, we first create the child socket then we try to hook up the route. Signed-off-by: David S. Miller commit 74973f6fbfcd1b084c3ccc75b783a6dacac94a10 Author: Hans Schillstrom Date: Tue May 3 22:09:31 2011 +0200 IPVS: init and cleanup restructuring DESCRIPTION This patch tries to restore the initial init and cleanup sequences that was before namspace patch. Netns also requires action when net devices unregister which has never been implemented. I.e this patch also covers when a device moves into a network namespace, and has to be released. IMPLEMENTATION The number of calls to register_pernet_device have been reduced to one for the ip_vs.ko Schedulers still have their own calls. This patch adds a function __ip_vs_service_cleanup() and an enable flag for the netfilter hooks. The nf hooks will be enabled when the first service is loaded and never disabled again, except when a namespace exit starts. Signed-off-by: Hans Schillstrom Acked-by: Julian Anastasov [horms@verge.net.au: minor edit to changelog] Signed-off-by: Simon Horman commit 421eab4cf318ce47c1daae391e54d1b427c6687b Author: Hans Schillstrom Date: Tue May 3 22:09:30 2011 +0200 IPVS: Change of socket usage to enable name space exit. If the sync daemons run in a name space while it crashes or get killed, there is no way to stop them except for a reboot. When all patches are there, ip_vs_core will handle register_pernet_(), i.e. ip_vs_sync_init() and ip_vs_sync_cleanup() will be removed. Kernel threads should not increment the use count of a socket. By calling sk_change_net() after creating a socket this is avoided. sock_release cant be used intead sk_release_kernel() should be used. Thanks Eric W Biederman for your advices. Signed-off-by: Hans Schillstrom [horms@verge.net.au: minor edit to changelog] Signed-off-by: Simon Horman commit 77357a95522ba645bbfd65253b34317c824103f9 Author: David S. Miller Date: Sun May 8 14:34:22 2011 -0700 ipv4: Create inet_csk_route_child_sock(). This is just like inet_csk_route_req() except that it operates after we've created the new child socket. In this way we can use the new socket's cork flow for proper route key storage. This will be used by DCCP and TCP child socket creation handling. Signed-off-by: David S. Miller commit 8663c938ceb72f47941c95ff0ea491ebbdd68f26 Author: David S. Miller Date: Fri May 6 16:32:47 2011 -0700 sctp: Store a flowi in transports to provide persistent keying. Several future simplifications are possible now because of this. For example, the sctp_addr unions can simply refer directly to the flowi information. Signed-off-by: David S. Miller commit b57ae01a8a8446dbbed7365c9b05aef1fc6dea20 Author: David S. Miller Date: Fri May 6 16:24:06 2011 -0700 ipv4: Use cork flow in ip_queue_xmit() All invokers of ip_queue_xmit() must make certain that the socket is locked. All of SCTP, TCP, DCCP, and L2TP now make sure this is the case. Therefore we can use the cork flow during output route lookup in ip_queue_xmit() when the socket route check fails. Signed-off-by: David S. Miller commit 6e869138101bc607e4780187210b79d531f9b2ce Author: David S. Miller Date: Fri May 6 16:18:04 2011 -0700 ipv4: Use cork flow in inet_sk_{reselect_saddr,rebuild_header}() These two functions must be invoked only when the socket is locked (because socket identity modifications are made non-atomically). Therefore we can use the cork flow for output route lookups. Signed-off-by: David S. Miller commit 3038eeac027d8ec62e4936143498f2b37baf4cb5 Author: David S. Miller Date: Fri May 6 22:27:25 2011 -0700 ipv4: Lock socket and use cork flow in ip4_datagram_connect(). This is to make sure that an l2tp socket's inet cork flow is fully filled in, when it's encapsulated in UDP. Signed-off-by: David S. Miller commit fdbb0f076b065a0c753ba26925f10357505f1d42 Author: David S. Miller Date: Sun May 8 13:48:37 2011 -0700 l2tp: Use cork flow in l2tp_ip_connect() and l2tp_ip_sendmsg() Now that the socket is consistently locked in these two routines, this transformation is legal. Signed-off-by: David S. Miller commit 6af88da14ee284aaad6e4326da09a89191ab6165 Author: David S. Miller Date: Sun May 8 13:45:20 2011 -0700 l2tp: Fix locking in l2tp_core.c l2tp_xmit_skb() must take the socket lock. It makes use of ip_queue_xmit() which expects to execute in a socket atomic context. Since we execute this function in software interrupts, we cannot use the usual lock_sock()/release_sock() sequence, instead we have to use bh_lock_sock() and see if a user has the socket locked, and if so drop the packet. Signed-off-by: David S. Miller commit 2f16270f41e1499e23e6be25c51be87d950ffc91 Author: David S. Miller Date: Sun May 8 13:39:01 2011 -0700 l2tp: Fix locking in l2tp_ip.c Both l2tp_ip_connect() and l2tp_ip_sendmsg() must take the socket lock. They both modify socket state non-atomically, and in particular l2tp_ip_sendmsg() increments socket private counters without using atomic operations. Signed-off-by: David S. Miller commit da905bd1d5a6480d206f4b3dc61243f95adfae2c Author: David S. Miller Date: Fri May 6 16:11:19 2011 -0700 tcp: Use cork flow in tcp_v4_connect() Since this is invoked from inet_stream_connect() the socket is locked and therefore this usage is safe. Signed-off-by: David S. Miller commit 2c42758cf6683e9c1657d20dcf2a7edd323d98ca Author: David S. Miller Date: Fri May 6 16:10:41 2011 -0700 dccp: Use cork flow in dccp_v4_connect() Since this is invoked from inet_stream_connect() the socket is locked and therefore this usage is safe. Signed-off-by: David S. Miller commit 1ab7b6ac2709d0eb05a7144cd0e14faa3a7ea162 Author: Stephen Hemminger Date: Thu Apr 14 23:46:06 2011 -0700 ethtool: remove phys_id from ethtool_ops After that all the upstream kernel drivers now use phys_id, and the old ethtool_ops interface (phys_id) can be removed. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit afd8f37c8054318655e4f9752d45c817a9d7cb07 Merge: 5663940 bf707de Author: Mark Brown Date: Sun May 8 15:33:41 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit 27aea2128ec09924dfe08e97739b2bf8b15c8619 Author: Daniele Furlan Date: Sat May 7 22:45:19 2011 +0200 batman-adv: remove duplicate code from function is_bidirectional_neigh() In function is_bidirectional_neigh the code that find out the one hop neighbor is duplicated. Signed-off-by: Daniele Furlan Signed-off-by: Sven Eckelmann commit 6e215fd8eb4930373d01da0fac16a0889804fac3 Author: Sven Eckelmann Date: Sun May 8 12:45:45 2011 +0200 batman-adv: Remove multiline comments from line ending It is slightly irritating that comments after a long line span over multiple lines without any code. It is easier to put them before the actual code and reduce the number of lines which the eye has to read. Signed-off-by: Sven Eckelmann commit 2dafb49d84a9195193b28ac5047df1bbab6053b9 Author: Antonio Quartulli Date: Thu May 5 08:42:45 2011 +0200 batman-adv: rename everything from *hna* into *tt* (translation table) To be coherent, all the functions/variables/constants have been renamed to the TranslationTable style Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit 01df2b65e97735547ce37844f4134b5ea99b4037 Author: Marek Lindner Date: Thu May 5 14:14:46 2011 +0200 batman-adv: Fix refcount imbalance in find_router Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 3a4375a9f0080e6ae40af63e2e2c1e70a6dcb775 Author: Sven Eckelmann Date: Tue May 3 13:10:06 2011 +0200 batman-adv: Avoid deadlock between rtnl_lock and s_active The hard_if_event is called by the notifier with rtnl_lock and tries to remove sysfs entries when a NETDEV_UNREGISTER event is received. This will automatically take the s_active lock. The s_active lock is also used when a new interface is added to a meshif through sysfs. In that situation we cannot wait for the rntl_lock before creating the actual batman-adv interface to prevent a deadlock. It is still possible to try to get the rtnl_lock and immediately abort the current operation when the trylock call failed. Signed-off-by: Sven Eckelmann commit c3caf5196c47a5d1c325308d8eb7f6b020ba12df Author: Sven Eckelmann Date: Tue May 3 11:51:38 2011 +0200 batman-adv: Remove unnecessary hardif_list_lock hardif_list_lock is unneccessary because we already ensure that no multiple admin operations can take place through rtnl_lock. hardif_list_lock only adds additional overhead and complexity. Critical functions now check whether they are called with rtnl_lock using ASSERT_RTNL. It indirectly fixes the problem that orig_hash_del_if() expects that only one interface is deleted from hardif_list at a time, but hardif_remove_interfaces() removes all at once and then calls orig_hash_del_if(). Reported-by: Linus Lüssing Signed-off-by: Sven Eckelmann commit 61906ae86d8989e5bd3bc1f51b2fb8d32ffde2c5 Author: Marek Lindner Date: Thu Apr 21 15:52:17 2011 +0200 batman-adv: multi vlan support for bridge loop detection The bridge loop detection for batman-adv allows the bat0 interface to be bridged into an ethernet segment which other batman-adv nodes are connected to. In order to also allow multiple VLANs on top of the bat0 interface to be bridged into the ethernet segment this patch extends the aforementioned bridge loop detection. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 28f8e546e6bc4c2bc6687d7c8dcbe9934cebe639 Author: Marek Lindner Date: Mon May 2 16:37:13 2011 +0200 batman-adv: remove misplaced comment Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 5663940e2a9a9c9031cdba9ca170060de14da83f Author: Lars-Peter Clausen Date: Thu May 5 16:59:13 2011 +0200 ASoC: SSM2602: Remove unused struct and define Those are leftovers from a pre-multicomponent era. Signed-off-by: Lars-Peter Clausen Signed-off-by: Mark Brown commit ffd13c39c74c140925a11bb4595f41badf78142d Author: Lars-Peter Clausen Date: Thu May 5 16:59:11 2011 +0200 ASoC: SSM2602: Remove duplicate control There are currently two controls which allow selecting the capture source, one as a normal control, the other as part of a DAPM_MUX widget. Remove the normal control. Signed-off-by: Lars-Peter Clausen Signed-off-by: Mark Brown commit 0b4cd2e01c63cf303bba570c9896331e4932a9df Author: Lars-Peter Clausen Date: Thu May 5 16:59:10 2011 +0200 ASoC: SSM2602: Cleanup coeff handling Drop unused field from the coeff struct, precalculate the srate register at compile-time and cleanup up the naming. Signed-off-by: Lars-Peter Clausen Signed-off-by: Mark Brown commit 5e8bc53b7c79c8184ca1a90f73286acff22f4c92 Merge: 64d2706 8fc63fe Author: Mark Brown Date: Sun May 8 14:43:18 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit 64d27069755db41daa36e4770d88ebc57617559d Author: Dimitris Papastamos Date: Thu May 5 14:18:11 2011 +0100 ASoC: soc-cache: Allow codec->cache_bypass to be used with snd_soc_hw_bulk_write_raw() If we specifically want to write a block of data to the hw bypassing the cache, then allow this to happen inside snd_soc_hw_bulk_write_raw(). Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 77530150fba769d7b7e260b3f16ed2294c1737b6 Author: Lars-Peter Clausen Date: Thu May 5 16:59:09 2011 +0200 ASoC: Create codec DAPM widgets before calling the codecs probe function This allows to create DAPM routes depending on those widgets in the codecs probe function. This is helpful when supporting similar codecs with minor differences in the DAPM routing with the same driver. Something similar has already been done for cards in commit a841ebb9 (ASoC: Create card DAPM widgets early so they can be used in callbacks). Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 534eacb5d4e7bafbdb60386678afeffb7966c375 Merge: 0f020de 58f6bcf Author: David S. Miller Date: Sat May 7 22:57:22 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 11c476f31a0fabc6e604da5b09a6590b57c3fb20 Author: Paul E. McKenney Date: Mon May 2 00:56:57 2011 -0700 net,rcu: convert call_rcu(prl_entry_destroy_rcu) to kfree The RCU callback prl_entry_destroy_rcu() just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). Signed-off-by: Paul E. McKenney Cc: Alexey Kuznetsov Cc: "Pekka Savola (ipv6)" Cc: James Morris Cc: Hideaki YOSHIFUJI Cc: Patrick McHardy Acked-by: David S. Miller Reviewed-by: Josh Triplett commit 8e3572cff70ee19a0a1f2e2dde0bca0b7c8b54dc Author: Paul E. McKenney Date: Mon May 2 00:52:23 2011 -0700 batman,rcu: convert call_rcu(softif_neigh_free_rcu) to kfree_rcu The RCU callback softif_neigh_free_rcu() just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). Signed-off-by: Paul E. McKenney Cc: Marek Lindner Cc: Simon Wunderlich Acked-by: David S. Miller Reviewed-by: Josh Triplett Acked-by: Sven Eckelmann commit ae179ae433bb4ef6b6179c5c1c7b6cc7dc01c670 Author: Paul E. McKenney Date: Sun May 1 23:27:50 2011 -0700 batman,rcu: convert call_rcu(neigh_node_free_rcu) to kfree() The RCU callback neigh_node_free_rcu() just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). Signed-off-by: Paul E. McKenney Cc: Marek Lindner Cc: Simon Wunderlich Acked-by: David S. Miller Reviewed-by: Josh Triplett Acked-by: Sven Eckelmann commit eb340b2f804860a51a0b92e35fd36742b6c2d6b7 Author: Paul E. McKenney Date: Sun May 1 23:25:02 2011 -0700 batman,rcu: convert call_rcu(gw_node_free_rcu) to kfree_rcu The RCU callback gw_node_free_rcu() just calls kfree(), so we can use kfree_rcu() instead of call_rcu(). Signed-off-by: Paul E. McKenney Cc: Marek Lindner Cc: Simon Wunderlich Acked-by: David S. Miller Reviewed-by: Josh Triplett Acked-by: Sven Eckelmann commit 0744371aeba7a5004006c2309971ee026c0b2000 Author: Lai Jiangshan Date: Tue Mar 15 18:02:42 2011 +0800 net,rcu: convert call_rcu(kfree_tid_tx) to kfree_rcu() The rcu callback kfree_tid_tx() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(kfree_tid_tx). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Cc: "John W. Linville" Cc: Johannes Berg Reviewed-by: Josh Triplett Acked-by: "David S. Miller" commit 88b4a0347a81539884df5ad535e10cf9fa87d8d4 Author: Lai Jiangshan Date: Fri Mar 18 12:15:02 2011 +0800 net,rcu: convert call_rcu(xt_osf_finger_free_rcu) to kfree_rcu() The rcu callback xt_osf_finger_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(xt_osf_finger_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit a74ce1425e4f6075de443274a5e917c84357eac4 Author: Lai Jiangshan Date: Fri Mar 18 12:14:15 2011 +0800 net/mac80211,rcu: convert call_rcu(work_free_rcu) to kfree_rcu() The rcu callback work_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(work_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: "John W. Linville" Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 61845220248c2368095158420b029683fad5570a Author: Lai Jiangshan Date: Fri Mar 18 12:10:25 2011 +0800 net,rcu: convert call_rcu(wq_free_rcu) to kfree_rcu() The rcu callback wq_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(wq_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 7e113a9c759d1918fcbe456c5eb8890a4da62eaa Author: Lai Jiangshan Date: Fri Mar 18 12:09:03 2011 +0800 net,rcu: convert call_rcu(phonet_device_rcu_free) to kfree_rcu() The rcu callback phonet_device_rcu_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(phonet_device_rcu_free). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit fa4bbc4ca5795fbf1303b98c924e51a21a920f14 Author: Lai Jiangshan Date: Fri Mar 18 12:08:29 2011 +0800 perf,rcu: convert call_rcu(swevent_hlist_release_rcu) to kfree_rcu() The rcu callback swevent_hlist_release_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(swevent_hlist_release_rcu). Signed-off-by: Lai Jiangshan Acked-by: Peter Zijlstra Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit cb796ff338db9f064f4ecb7d41898e8bedcad4d9 Author: Lai Jiangshan Date: Fri Mar 18 12:07:41 2011 +0800 perf,rcu: convert call_rcu(free_ctx) to kfree_rcu() The rcu callback free_ctx() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_ctx). Signed-off-by: Lai Jiangshan Acked-by: Peter Zijlstra Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 1f8d36a1869f5efae4fadf6baf01f02211040b97 Author: Lai Jiangshan Date: Fri Mar 18 12:07:09 2011 +0800 net,rcu: convert call_rcu(__nf_ct_ext_free_rcu) to kfree_rcu() The rcu callback __nf_ct_ext_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(__nf_ct_ext_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 04d4dfed8e64f65d672502a614a4bb9093d1affd Author: Lai Jiangshan Date: Fri Mar 18 12:06:32 2011 +0800 net,rcu: convert call_rcu(net_generic_release) to kfree_rcu() The rcu callback net_generic_release() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(net_generic_release). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 6b2622328110b9c1094a4f644a6cdc9b6d5450ac Author: Lai Jiangshan Date: Fri Mar 18 12:04:50 2011 +0800 net,rcu: convert call_rcu(netlbl_unlhsh_free_addr6) to kfree_rcu() The rcu callback netlbl_unlhsh_free_addr6() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(netlbl_unlhsh_free_addr6). Signed-off-by: Lai Jiangshan Acked-by: Paul Moore Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit c3b494209cc6084bd76d823d185a60ee5bd40b0d Author: Lai Jiangshan Date: Fri Mar 18 12:03:56 2011 +0800 net,rcu: convert call_rcu(netlbl_unlhsh_free_addr4) to kfree_rcu() The rcu callback netlbl_unlhsh_free_addr4() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(netlbl_unlhsh_free_addr4). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Acked-by: Paul Moore Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 690273fc70e94a07d70044881e5e52926301bcd3 Author: Lai Jiangshan Date: Fri Mar 18 12:03:19 2011 +0800 security,rcu: convert call_rcu(sel_netif_free) to kfree_rcu() The rcu callback sel_netif_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(sel_netif_free). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit b55071eb6011413af3b9c434ae77dea8832069c8 Author: Lai Jiangshan Date: Fri Mar 18 12:02:47 2011 +0800 net,rcu: convert call_rcu(xps_dev_maps_release) to kfree_rcu() The rcu callback xps_dev_maps_release() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(xps_dev_maps_release). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit edc86d8a1c824cca1df676f47fc713232885561f Author: Lai Jiangshan Date: Fri Mar 18 12:02:20 2011 +0800 net,rcu: convert call_rcu(xps_map_release) to kfree_rcu() The rcu callback xps_map_release() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(xps_map_release). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit f6f80238fab1ad19c44b4a12501528d50fc7fcd6 Author: Lai Jiangshan Date: Fri Mar 18 12:01:31 2011 +0800 net,rcu: convert call_rcu(rps_map_release) to kfree_rcu() The rcu callback rps_map_release() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(rps_map_release). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit e3cbf28fa61456bd2f0ba39846ffd905257eb4b0 Author: Lai Jiangshan Date: Fri Mar 18 12:00:50 2011 +0800 net,rcu: convert call_rcu(ipv6_mc_socklist_reclaim) to kfree_rcu() The rcu callback ipv6_mc_socklist_reclaim() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ipv6_mc_socklist_reclaim). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 6e070aecd9e304264a6b8655f49aa7e6db0e55f2 Author: Lai Jiangshan Date: Fri Mar 18 12:00:07 2011 +0800 macvlan,rcu: convert call_rcu(macvlan_port_rcu_free) to kfree_rcu() The rcu callback macvlan_port_rcu_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(macvlan_port_rcu_free). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit bcec8b6531d481ced35506517af69adb2399f2a4 Author: Lai Jiangshan Date: Fri Mar 18 11:57:21 2011 +0800 ixgbe,rcu: convert call_rcu(ring_free_rcu) to kfree_rcu() The rcu callback ring_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ring_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit fa81c0e1d2d2176f1136c72c080c9ea4a98be347 Author: Lai Jiangshan Date: Fri Mar 18 11:39:43 2011 +0800 net,rcu: convert call_rcu(free_dm_hw_stat) to kfree_rcu() The rcu callback free_dm_hw_stat() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_dm_hw_stat). Signed-off-by: Lai Jiangshan Acked-by: Neil Horman Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 10d50e748d983ff1003e0cf556ea17fa8f32c382 Author: Lai Jiangshan Date: Fri Mar 18 11:45:08 2011 +0800 net,rcu: convert call_rcu(ip_mc_socklist_reclaim) to kfree_rcu() The rcu callback ip_mc_socklist_reclaim() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ip_mc_socklist_reclaim). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 7519cce48fb0a314dac473bdfba203b787435857 Author: Lai Jiangshan Date: Fri Mar 18 11:44:46 2011 +0800 net,rcu: convert call_rcu(ip_sf_socklist_reclaim) to kfree_rcu() The rcu callback ip_sf_socklist_reclaim() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ip_sf_socklist_reclaim). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 42ea299d3f1941f8c3dbc1fe031d682f8ad45005 Author: Lai Jiangshan Date: Fri Mar 18 11:44:08 2011 +0800 net,rcu: convert call_rcu(ip_mc_list_reclaim) to kfree_rcu() The rcu callback ip_mc_list_reclaim() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ip_mc_list_reclaim). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit dad178fcd5b295f5f350a46a5eaf2f28e847bb5a Author: Lai Jiangshan Date: Fri Mar 18 11:43:26 2011 +0800 net,rcu: convert call_rcu(__gen_kill_estimator) to kfree_rcu() The rcu callback __gen_kill_estimator() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(__gen_kill_estimator). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit bceb0f4512d448763fe98c9f37504c98bbebbed6 Author: Lai Jiangshan Date: Fri Mar 18 11:42:34 2011 +0800 net,rcu: convert call_rcu(__leaf_info_free_rcu) to kfree_rcu() The rcu callback __leaf_info_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(__leaf_info_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 4670994d150a86ebd53ab353a2af517c5465bfaf Author: Lai Jiangshan Date: Fri Mar 18 11:42:11 2011 +0800 net,rcu: convert call_rcu(fc_rport_free_rcu) to kfree_rcu() The rcu callback fc_rport_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(fc_rport_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 3acb458c32293405cf68985b7b3ac5dc0a5e7929 Author: Lai Jiangshan Date: Fri Mar 18 12:11:07 2011 +0800 security,rcu: convert call_rcu(user_update_rcu_disposal) to kfree_rcu() The rcu callback user_update_rcu_disposal() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(user_update_rcu_disposal). Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Acked-by: David Howells Reviewed-by: Josh Triplett commit 75ef0368d182785c7c5c06ac11081e31257a313e Author: Lai Jiangshan Date: Tue Mar 15 18:11:46 2011 +0800 net,act_police,rcu: remove rcu_barrier() There is no callback of this module maybe queued since we use kfree_rcu(), we can safely remove the rcu_barrier(). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 1e547757eca3c30eeeac526716e4ae833c2a9a2f Author: Lai Jiangshan Date: Tue Mar 15 18:10:12 2011 +0800 net,rcu: convert call_rcu(dn_dev_free_ifa_rcu) to kfree_rcu() The rcu callback dn_dev_free_ifa_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(dn_dev_free_ifa_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 217f18639bc18ba4bbb67481113037344c148938 Author: Lai Jiangshan Date: Tue Mar 15 18:08:58 2011 +0800 net,rcu: convert call_rcu(ha_rcu_free) to kfree_rcu() The rcu callback ha_rcu_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(ha_rcu_free). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 1231f0baa547a541a7481119323b7f964dda4788 Author: Lai Jiangshan Date: Tue Mar 15 18:05:02 2011 +0800 net,rcu: convert call_rcu(sctp_local_addr_free) to kfree_rcu() The rcu callback sctp_local_addr_free() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(sctp_local_addr_free). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 37b6b935e96e837ccc60812c03e9f92e7dce2e61 Author: Lai Jiangshan Date: Tue Mar 15 18:01:42 2011 +0800 net,rcu: convert call_rcu(listeners_free_rcu) to kfree_rcu() The rcu callback listeners_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(listeners_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit e57859854aaac9b7ce0db3fe4959190a1a80b60a Author: Lai Jiangshan Date: Tue Mar 15 18:00:14 2011 +0800 net,rcu: convert call_rcu(inet6_ifa_finish_destroy_rcu) to kfree_rcu() The rcu callback inet6_ifa_finish_destroy_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(inet6_ifa_finish_destroy_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 38f57d1a4b4c13db92c7f6300a4e4ae70ff94d2b Author: Lai Jiangshan Date: Tue Mar 15 17:59:14 2011 +0800 net,rcu: convert call_rcu(in6_dev_finish_destroy_rcu) to kfree_rcu() The rcu callback in6_dev_finish_destroy_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(in6_dev_finish_destroy_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 5957b1ac52c5fde2afe5d80abe2a1cb82a9b4f20 Author: Lai Jiangshan Date: Tue Mar 15 17:58:00 2011 +0800 net,rcu: convert call_rcu(tcf_police_free_rcu) to kfree_rcu() [PATCH 05/17] net,rcu: convert call_rcu(tcf_police_free_rcu) to kfree_rcu() The rcu callback tcf_police_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(tcf_police_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit f5c8593c107500979909bd51c85e74bb2eaffbaa Author: Lai Jiangshan Date: Tue Mar 15 17:57:04 2011 +0800 net,rcu: convert call_rcu(tcf_common_free_rcu) to kfree_rcu() The rcu callback tcf_common_free_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(tcf_common_free_rcu). Signed-off-by: Lai Jiangshan Acked-by: David S. Miller Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 025cea99db3fb110ebc8ede5ff647833fab9574f Author: Lai Jiangshan Date: Tue Mar 15 17:56:10 2011 +0800 cgroup,rcu: convert call_rcu(__free_css_id_cb) to kfree_rcu() The rcu callback __free_css_id_cb() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(__free_css_id_cb). Signed-off-by: Lai Jiangshan Acked-by: Paul Menage Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit f2da1c40dc003939f616f27a103b2592f1424b07 Author: Lai Jiangshan Date: Tue Mar 15 17:55:16 2011 +0800 cgroup,rcu: convert call_rcu(free_cgroup_rcu) to kfree_rcu() The rcu callback free_cgroup_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_cgroup_rcu). Signed-off-by: Lai Jiangshan Acked-by: Paul Menage Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 30088ad815802f850f26114920ccf9effd4bc520 Author: Lai Jiangshan Date: Tue Mar 15 17:53:46 2011 +0800 cgroup,rcu: convert call_rcu(free_css_set_rcu) to kfree_rcu() The rcu callback free_css_set_rcu() just calls a kfree(), so we use kfree_rcu() instead of the call_rcu(free_css_set_rcu). Signed-off-by: Lai Jiangshan Acked-by: Paul Menage Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 1217ed1ba5c67393293dfb0f03c353b118dadeb4 Author: Paul E. McKenney Date: Wed May 4 21:43:49 2011 -0700 rcu: permit rcu_read_unlock() to be called while holding runqueue locks Avoid calling into the scheduler while holding core RCU locks. This allows rcu_read_unlock() to be called while holding the runqueue locks, but only as long as there was no chance of the RCU read-side critical section having been preempted. (Otherwise, if RCU priority boosting is enabled, rcu_read_unlock() might call into the scheduler in order to unboost itself, which might allows self-deadlock on the runqueue locks within the scheduler.) Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit 0f020dec545629bb068310e8ee374648867e391c Author: David S. Miller Date: Sat May 7 01:02:28 2011 -0700 hamachi: Put back RX_CHECKSUM I deleted it by mistake in the TX_CHECKSUM removal commit. Reported-by: Michał Mirosław Signed-off-by: David S. Miller commit 1759415e630e5db0dd2390df9f94892cbfb9a8a2 Author: Christoph Lameter Date: Thu May 5 15:23:54 2011 -0500 slub: Remove CONFIG_CMPXCHG_LOCAL ifdeffery Remove the #ifdefs. This means that the irqsafe_cpu_cmpxchg_double() is used everywhere. There may be performance implications since: A. We now have to manage a transaction ID for all arches B. The interrupt holdoff for arches not supporting CONFIG_CMPXCHG_LOCAL is reduced to a very short irqoff section. There are no multiple irqoff/irqon sequences as a result of this change. Even in the fallback case we only have to do one disable and enable like before. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 58f6bcf96e95f042a2bee6ace238365cb8fb1ce6 Author: Emil Tantilov Date: Thu Apr 21 08:43:43 2011 +0000 ixgbe: add ethtool counters for OS2BMC OS2BMC registers are available for X540. This patch adds ethtool counters based on those registers. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 67a74ee2a24957012661dc4400e4f8e363d25fbb Author: Emil Tantilov Date: Sat Apr 23 04:50:40 2011 +0000 ixgbe: add rxhash support feed RSS hash into skb->rxhash Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 936db3559fc4f6d2892234cadcbd88b8a7d34898 Author: Jeff Kirsher Date: Sat May 7 06:37:14 2011 +0000 igb: convert to ethtool set_phys_id Based on patch from Stephen Hemminger. Convert igb driver to use new set_phys_id ethtool interface. CC: Stephen Hemminger Signed-off-by: Jeff Kirsher commit 6435909199c2d1b0aad3ebbfa01f641aaa24fa2a Author: Jeff Kirsher Date: Tue May 3 05:26:13 2011 +0000 e1000: convert to set_phys_id Based on the original patch from Stephen Hemminger. Convert to new LED control infrastucture and remove no longer necessary bits. CC: Stephen Hemminger Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit a70b86ae206fdd3bef13c5ac148c22a805e83896 Author: Jeff Kirsher Date: Tue May 3 05:28:23 2011 +0000 e100: implemenet set_phys_id Based on the original patch from Stephen Hemminger. Implement set_phys_id to control LED. CC: Stephen Hemminger Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 8fab6af2156c0100f953fd61f4e0b2f82c9776dc Author: Luis R. Rodriguez Date: Fri May 6 15:00:09 2011 -0700 x86: Fix mrst sparse complaints Fix these Sparse complaints: CHECK arch/x86/platform/mrst/mrst.c arch/x86/platform/mrst/mrst.c:197:13: warning: symbol 'mrst_time_init' was not declared. Should it be static? arch/x86/platform/mrst/mrst.c:219:16: warning: symbol 'mrst_arch_setup' was not declared. Should it be static? Acked-by: Alan Cox Cc: Roman Gezikov Cc: Joonas Viskari Cc: Andrew Morton Cc: Allen Kao Signed-off-by: Luis R. Rodriguez Link: http://lkml.kernel.org/r/1304719209-26913-1-git-send-email-lrodriguez@atheros.com Signed-off-by: Ingo Molnar commit 4cb1f43ce8c72ee453c00fcb9f6ee9c4ebd03f98 Merge: 9de4966 0ee5623f Author: Ingo Molnar Date: Sat May 7 10:51:38 2011 +0200 Merge commit 'v2.6.39-rc6' into x86/cleanups Merge reason: move to a (much) newer upstream base. Signed-off-by: Ingo Molnar commit 7b76415375ba91f5a06f8d5179278c03d6151d16 Merge: c93212f 8d7e4cc Author: Russell King Date: Sat May 7 08:34:02 2011 +0100 Merge branch 'zImage_fixes' of git://git.linaro.org/people/nico/linux into devel-stable commit 8d7e4cc2c8ea1d180d32d902eb899f27d3ee53d7 Author: Nicolas Pitre Date: Wed Apr 27 14:54:39 2011 -0400 ARM: zImage: make sure no GOTOFF relocs are used with .bss symbols To be able to relocate the .bss section at run time independently from the rest of the code, we must make sure that no GOTOFF relocations are used with .bss symbols. This usually means that no global variables can be marked static unless they're also const. To enforce this, suffice to fail the build whenever a private symbol is allocated to .bss and list those symbols for convenience. The user_stack and user_stack_end labels in head.S were converted into non exported symbols to remove false positives. Signed-off-by: Nicolas Pitre Tested-by: Tony Lindgren commit 8ea0de4b8831513924e3ec6a17bb721fabf97055 Author: Nicolas Pitre Date: Thu Apr 28 17:00:17 2011 -0400 ARM: zImage: remove the static qualifier from global data variables To be able to relocate the .bss section at run time independently from the rest of the code, we must make sure that no GOTOFF relocations are used with .bss symbols. This usually means that no global variables can be marked static unless they're also const. Let's remove the static qualifier from current offenders, or turn them into const variables when possible. Next commit will ensure the build fails if one of those is reintroduced due to otherwise enforced coding standards for the kernel. Signed-off-by: Nicolas Pitre Tested-by: Tony Lindgren commit ccc1c7c6c25661f0071a7ebe997abcbf529df3e9 Author: Nicolas Pitre Date: Thu Apr 21 21:59:49 2011 -0400 ARM: zImage: don't ignore error returned from decompress() If decompress() returns an error without calling error(), we must not attempt to boot the resulting kernel. Signed-off-by: Nicolas Pitre Tested-by: Shawn Guo Tested-by: Tony Lindgren commit e40f1e9fb342a2e38fae164861a8cff248ceb87b Author: Nicolas Pitre Date: Tue Apr 19 16:13:23 2011 -0400 ARM: zImage: simplify decompress_kernel() The return value for decompress_kernel() is no longer used. Furthermore, this was obtained and stored in a variable called output_ptr which is a complete misnomer for what is actually the size of the decompressed kernel image. Let's get rid of it. Signed-off-by: Nicolas Pitre Tested-by: Shawn Guo Tested-by: Tony Lindgren commit 34cc1a8fe0d3f89f3602b49f1121a99d2bfc5efc Author: Nicolas Pitre Date: Tue Apr 19 15:42:43 2011 -0400 ARM: zImage: no need to get the decompressed size from the filesystem In commit d239b1dc093d the hardcoded 4x estimate for the decompressed kernel size was replaced by the exact Image file size and passed to the linker as a symbol value. Turns out that this is unneeded as the size is already included at the end of the compressed piggy data. For those compressed formats that don't include this data, the build system already takes care of appending it using size_append in scripts/Makefile.lib. So let's use that instead. Signed-off-by: Nicolas Pitre Tested-by: Shawn Guo Tested-by: Tony Lindgren commit dc762c4f8514f23094927e0a62ef305d90651535 Author: Javier M. Mellid Date: Sat May 7 03:11:58 2011 +0200 staging: sm7xx: Use kernel framebuffer mode setting This patch implements dynamic framebuffer mode setting. Previous code works with mode setting in a hard code way. Previous hard code configuration is used as default configuration if dynamic mode setting or boot mode setting (via sm712vga_setup) is not used. Tested with SM712 supporting 1024x600x16 as default hardware resolution. Changes: - Implement fb_check_var and fb_set_par callbacks - Remove __maybe_unused decorator in function being used (sm712vga_setup) - Minor cleanup on initialization structs related with mode settings - Updated author copyright - Updated TODO file Signed-off-by: Javier M. Mellid Signed-off-by: Greg Kroah-Hartman commit 23ceb5b7719e9276d4fa72a3ecf94dd396755276 Author: Tao Ma Date: Fri May 6 19:30:02 2011 -0600 block: Remove extra discard_alignment from hd_struct. Currently, hd_struct.discard_alignment is only used when we show /sys/block/sdx/sdx/discard_alignment. So remove it and calculate when it is asked to show. Signed-off-by: Tao Ma Signed-off-by: Jens Axboe commit 8af1954d172a46a63e5e79dae523a6d74715e458 Author: Lukas Czerner Date: Fri May 6 19:30:01 2011 -0600 blkdev: Do not return -EOPNOTSUPP if discard is supported Currently we return -EOPNOTSUPP in blkdev_issue_discard() if any of the bio fails due to underlying device not supporting discard request. However, if the device is for example dm device composed of devices which some of them support discard and some of them does not, it is ok for some bios to fail with EOPNOTSUPP, but it does not mean that discard is not supported at all. This commit removes the check for bios failed with EOPNOTSUPP and change blkdev_issue_discard() to return operation not supported if and only if the device does not actually supports it, not just part of the device as some bios might indicate. This change also fixes problem with BLKDISCARD ioctl() which now works correctly on such dm devices. Signed-off-by: Lukas Czerner CC: Jens Axboe CC: Jeff Moyer Signed-off-by: Jens Axboe commit 868d1721a2200244a4555193d4adc1133cfb3978 Author: Alan Cox Date: Wed May 4 10:18:42 2011 +0100 parport: Use request_muxed_region for IT87 probe and lock This is needed as part of making the various IT87 drivers actually co-exist politely with each other, and with other superio devices that may be muxed on 0x2E/0x2F. It can be applied before or after the other patches by Nat Gurumoorthy without problem. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 04aebcbb1b6dccadc8862b2765265f65a946db57 Author: Pavankumar Kondeti Date: Wed May 4 10:19:49 2011 +0530 USB: OTG: msm: Add PHY suspend support for MSM8960 Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 11aa5c478e743712228ff2da881b85100800c1ee Author: Anji jonnala Date: Wed May 4 10:19:48 2011 +0530 USB: OTG: msm: Configure PHY Analog and Digital voltage domains Signed-off-by: Anji jonnala Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit d860852e087eed7eadbea64f1a8db9a231c5e9b3 Author: Pavankumar Kondeti Date: Wed May 4 10:19:47 2011 +0530 USB: OTG: msm: Implement charger detection Implement good battery algorithm defined in the battery charging V1.2 spec for detecting different charging ports. USB hardware is put into low power mode when connected to a dedicated charging port. vbus_draw and set_power methods are implemented for determining the allowed current from Host in different states (un-configured/suspend/configured). The charger block is implemented using vendor specific registers and the PHY used in MSM8960(28nm PHY) different from older targets like MSM8x60 and MSM7x30(45nm PHY). The PHY vendor and product id registers are not implemented in the above chipsets. Hence PHY type is passed via platform data. Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 0f73cac8e41723d600c91a0f5b481dc3202f4f82 Author: Anji jonnala Date: Wed May 4 10:19:46 2011 +0530 USB: OTG: msm: vote for dayatona fabric clock HSUSB core clock is derived from daytona fabric clock and for HSUSB operational require minimum core clock at 55MHz. Since, HSUSB cannot tolerate daytona fabric clock change in the middle of HSUSB operational, vote for maximum Daytona fabric clock while usb is operational Signed-off-by: Anji jonnala Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 5baebe5c86acd6100536a466905880529f79cf1a Author: Lukas Czerner Date: Fri May 6 19:26:28 2011 -0600 blkdev: Simple cleanup in blkdev_issue_zeroout() In blkdev_issue_zeroout() we are submitting regular WRITE bios, so we do not need to check for -EOPNOTSUPP specifically in case of error. Also there is no need to have label submit: because there is no way to jump out from the while cycle without an error and we really want to exit, rather than try again. And also remove the check for (sz == 0) since at that point sz can never be zero. Signed-off-by: Lukas Czerner Reviewed-by: Jeff Moyer CC: Dmitry Monakhov CC: Jens Axboe Signed-off-by: Jens Axboe commit 5dba3089ed03f84b84c6c739df8330112f04a15d Author: Lukas Czerner Date: Fri May 6 19:26:27 2011 -0600 blkdev: Submit discard bio in batches in blkdev_issue_discard() Currently we are waiting for every submitted REQ_DISCARD bio separately, but it can have unwanted consequences of repeatedly flushing the queue, so we rather submit bios in batches and wait for the entire batch, hence narrowing the window of other ios going in. Use bio_batch_end_io() and struct bio_batch for that purpose, the same is used by blkdev_issue_zeroout(). Also change bio_batch_end_io() so we always set !BIO_UPTODATE in the case of error and remove the check for bb, since we are the only user of this function and we always set this. Remove bio_get()/bio_put() from the blkdev_issue_discard() since bio_alloc() and bio_batch_end_io() is doing the same thing, hence it is not needed anymore. I have done simple dd testing with surprising results. The script I have used is: for i in $(seq 10); do echo $i dd if=/dev/sdb1 of=/dev/sdc1 bs=4k & sleep 5 done /usr/bin/time -f %e ./blkdiscard /dev/sdc1 Running time of BLKDISCARD on the whole device: with patch without patch 0.95 15.58 So we can see that in this artificial test the kernel with the patch applied is approx 16x faster in discarding the device. Signed-off-by: Lukas Czerner CC: Dmitry Monakhov CC: Jens Axboe CC: Jeff Moyer Signed-off-by: Jens Axboe commit 3db7739c80990ef53621f76f6095a91e70d88546 Author: Jan Andersson Date: Fri May 6 12:00:18 2011 +0200 USB: UHCI: Add support for GRLIB GRUSBHC controller This patch adds support for the UHCI part of the GRLIB GRUSBHC controller found on some LEON/GRLIB SoCs. The UHCI HCD previously only supported controllers connected over PCI. This patch adds support for the first non-PCI UHCI HC. I have tried to replicate the solution used in ehci-hcd.c. Tested on GR-LEON4-ITX board (LEON4/GRLIB with GRUSBHC) and x86 with Intel UHCI HC. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit d3219d1c4c9ab7cd959f8f294420faf5f936cf55 Author: Jan Andersson Date: Fri May 6 12:00:17 2011 +0200 USB: UHCI: Support non-PCI host controllers This patch is part of a series that extend the UHCI HCD to support non-PCI host controllers. This patch also extends the uhci_{read,write}* functions to allow accesses to registers not mapped into PCI I/O space. This extension also includes the addition of a void __iomem pointer to the uhci structure. A new Kconfig option is added to signal that the system has a non-PCI HC. If this Kconfig option is set, uhci-hcd.c will include generic reset functions for systems that do not make use of keyboard and mouse legacy support. PCI controllers will still always use the reset functions from pci-quirks This patch is followed by a patch that adds bus glue for the first non-PCI UHCI HC. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 9faa091a409851ac6b3812164d53644074bc89b1 Author: Jan Andersson Date: Fri May 6 12:00:16 2011 +0200 USB: UHCI: Wrap I/O register accesses This patch is part of a series that extend the UHCI HCD to support non-PCI controllers. This patch replaces in{b,w,l} and out{b,wl} with calls to local inline functions. This is done so that the register access functions can be extended to support register areas not mapped in PCI I/O space. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit c31a65f869f7b8a7039007411c76d7b6f9a63323 Author: Jan Andersson Date: Fri May 6 12:00:15 2011 +0200 USB: UHCI: Move PCI specific functions to uhci-pci.c This patch is part of a series that extend the UHCI HCD to support non-PCI controllers. This patch moves PCI specific functions to uhci-pci.c and includes this file in uhci-hcd.c. It also renames the function uhci_init to uhci_pci_init. uhci_init/uhci_pci_init is modified so that the port-detection logic is kept in a new separate function uhci_count_ports() in uhci-hcd.c. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit e4d235d800c8d75750a46331298e3473c10651b2 Author: Jan Andersson Date: Fri May 6 12:00:14 2011 +0200 USB: UHCI: Codingstyle fixes This patch is part of a series that extend the UHCI HCD to support non-PCI host controllers. This patch fixes the following warnings from checkpatch: ERROR: switch and case should be at the same indent + switch (to_pci_dev(uhci_dev(uhci))->vendor) { + default: [...] + case PCI_VENDOR_ID_GENESYS: [...] + case PCI_VENDOR_ID_INTEL: WARNING: static char array declaration should probably be static const char + static char bad_Asus_board[] = "A7V8X"; WARNING: Use DEFINE_PCI_DEVICE_TABLE for struct pci_device_id +static const struct pci_device_id uhci_pci_ids[] = { { Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit e7652e1ebc0f5e07929067ece14ca869dad20dd6 Author: Jan Andersson Date: Fri May 6 12:00:13 2011 +0200 USB: UHCI: Allow dynamic assignment of bus specific functions This patch is part of a series that extend the UHCI HCD to support non-PCI controllers. This patch changes calls to uhci_reset_hc, uhci_check_and_reset_hc, configure_hc, resume_detect_interrupts_are_broken and global_suspend_mode_is_broken so that they are made through pointers in the uhci hcd struct. This will allow these functions to be replaced with bus/arch specific functions. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit dfeca7a8750296a7d065d45257b3cd86aadc3fb9 Author: Jan Andersson Date: Fri May 6 12:00:12 2011 +0200 USB: UHCI: Remove PCI dependencies from uhci-hub This patch is part of a series that extend the UHCI HCD to support non-PCI host controllers. uhci-hub.c contained two PCI vendor checks for silicon quirks. Move these checks into uhci-hcd.c and use bits in uhci_hcd structure to mark that we need to use the quirks. This patch is followed by other patches that will remove PCI dependencies from uhci-hcd.c as well. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit ea437f39234f7f991428886f16aae5c264cffe62 Author: Ramneek Mehresh Date: Wed May 4 19:41:55 2011 +0530 fsl/usb: Unused endpoint failure for USB gadget Though USB controller works without this most of the time, an issue was faced where USB was configured as printer device and it was dropping first packet(64 bytes) in full speed mode due to DATA PID mismatch. The problem gets resolved once unused endpoints are configured as bulk. As per P1020 RM (Table17-31, bits 19-18, bits 3-2) "When only one endpoint (RX or TX, but not both) of an endpoint pair is used, the unused endpoint should be configured as a bulk type endpoint." So according to the RM, this patch is initializing TX and RX endpoints as bulk type Signed-off-by: Suchit Lepcha Signed-off-by: Ramneek Mehresh Signed-off-by: Greg Kroah-Hartman commit 69248d4281fda03dd4da982e1d51f6b22cf1a109 Author: Jingoo Han Date: Thu May 5 08:46:07 2011 +0900 USB: ohci-s3c2410: return proper error if clk_get fails Return PTR_ERR(clk) instead of -ENOENT if clk_get fails Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit 7af85a85878bd1a2695408e5856aba8ef9f71b60 Author: Jingoo Han Date: Wed May 4 16:45:47 2011 +0900 USB: ohci-s3c2410: fix checkpatch errors and warnings This patch fixes the checkpatch errors ans warnings listed below: ERROR: do not use assignment in if condition WARNING: line over 80 characters WARNING: braces {} are not necessary for single statement blocks WARNING: space prohibited between function name and open parenthesis '(' Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit a7535ac05443f234b9c68389fc053976383feca4 Author: Manuel Lauss Date: Thu May 5 16:35:24 2011 +0200 USB: ehci-au1xxx: fix suspend callback Remove a stray 'return 0' at the top of the suspend callback, and move au1xxx_stop_ehc() out of the ehci spinlock since it takes some time to complete. Signed-off-by: Manuel Lauss Signed-off-by: Greg Kroah-Hartman commit 3df004532582d0cc721da0df28311bcedd639724 Author: Anatolij Gustschin Date: Thu May 5 12:11:21 2011 +0200 usb: fix building musb drivers Commit 3dacdf11 "usb: factor out state_string() on otg drivers" broke building musb drivers since there is already another otg_state_string() function in musb drivers, but with different prototype. Fix musb drivers to use common otg_state_string(), too. Also provide a nop for otg_state_string() if CONFIG_USB_OTG_UTILS is not defined. Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit 63dc355a5a8cf296e2b1cc2e4192190dca221129 Author: Wanlong Gao Date: Thu May 5 07:55:37 2011 +0800 driver core: remove the driver-model structures from the documentation Remove the struct bus_type, class, device, device_driver from the driver-model docs. With another patch add them to device.h, since they are out of date. That will keep things up to date and provide a better way to document this stuff. Signed-off-by: Wanlong Gao Acked-by: Harry Wei Signed-off-by: Greg Kroah-Hartman commit 880ffb5c6c5c8c8c6efd9efe9355317322b4603b Author: Wanlong Gao Date: Thu May 5 07:55:36 2011 +0800 driver core: Add the device driver-model structures to kerneldoc Add the comments to the structure bus_type, device_driver, device, class to device.h for generating the driver-model kerneldoc. With another patch these all removed from the files in Documentation/driver-model/ since they are out of date. That will keep things up to date and provide a better way to document this stuff. Signed-off-by: Wanlong Gao Acked-by: Harry Wei Signed-off-by: Greg Kroah-Hartman commit 3ccff540070b5adde7eec443676cfee1dd6b89fd Author: Harry Wei Date: Thu May 5 09:47:48 2011 +0800 Translated Documentation/email-clients.txt The patch includes the translation Documentation/email-clients.txt. If anyone has other problems, please let me know. Signed-off-by: Harry Wei Signed-off-by: Greg Kroah-Hartman commit 9333744dc7dcd85531cff13cabf1d5d6baf18e7d Author: Robert P. J. Day Date: Wed May 4 05:19:34 2011 -0400 RAW driver: Remove call to kobject_put(). If cdev_add() fails, there is no justification for subsequently calling kobject_put(). Signed-off-by: Robert P. J. Day Signed-off-by: Greg Kroah-Hartman commit b50fa7c8077c625919b1e0a75fc37b825f024518 Author: Kay Sievers Date: Thu May 5 13:32:05 2011 +0200 reboot: disable usermodehelper to prevent fs access In case CONFIG_UEVENT_HELPER_PATH is not set to "", which it should be on every system, the kernel forks processes during shutdown, which try to access the rootfs, even when the binary does not exist. It causes exceptions and long delays in the disk driver, which gets read requests at the time it tries to shut down the disk. This patch disables all kernel-forked processes during reboot to allow a clean poweroff. Cc: Tejun Heo Tested-By: Anton Guda Signed-off-by: Kay Sievers Signed-off-by: Greg Kroah-Hartman commit aabb6e1531b0c78423dca6a39620892249fef7f9 Author: Randy Dunlap Date: Fri May 6 13:27:41 2011 -0700 efivars: prevent oops on unload when efi is not enabled efivars_exit() should check for efi_enabled and not undo allocations when efi is not enabled. Otherwise there is an Oops during module unload: calling efivars_init+0x0/0x1000 [efivars] @ 2810 EFI Variables Facility v0.08 2004-May-17 initcall efivars_init+0x0/0x1000 [efivars] returned 0 after 5120 usecs Oops: 0000 [#1] SMP DEBUG_PAGEALLOC last sysfs file: /sys/module/firmware_class/initstate CPU 1 Modules linked in: efivars(-) af_packet tun nfsd lockd nfs_acl auth_rpcgss sunrpc ipt_REJECT nf_conntrack_ipv4 nf_defrag_ipv4 iptable_filter ip_tables ip6t_REJECT xt_tcpudp nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables x_tables ipv6 cpufreq_ondemand acpi_cpufreq freq_table mperf binfmt_misc dm_mirror dm_region_hash dm_log dm_multipath scsi_dh dm_mod snd_hda_codec_analog snd_hda_intel snd_hda_codec snd_hwdep mousedev snd_seq joydev snd_seq_device mac_hid evdev snd_pcm usbkbd usbmouse usbhid snd_timer hid tg3 snd sr_mod pcspkr rtc_cmos soundcore cdrom iTCO_wdt processor sg dcdbas i2c_i801 rtc_core iTCO_vendor_support intel_agp snd_page_alloc thermal_sys rtc_lib intel_gtt 8250_pnp button hwmon unix ide_pci_generic ide_core ata_generic pata_acpi ata_piix sd_mod crc_t10dif ext3 jbd mbcache uhci_hcd ohci_hcd ssb mmc_core pcmcia pcmcia_core firmware_class ehci_hcd usbcore [last unloaded: dell_rbu] Pid: 2812, comm: rmmod Not tainted 2.6.39-rc6 #1 Dell Inc. OptiPlex 745 /0TY565 RIP: 0010:[] [] unregister_efivars+0x28/0x12c [efivars] RSP: 0018:ffff88005eedde98 EFLAGS: 00010283 RAX: ffffffffa06a23fc RBX: ffffffffa06a44c0 RCX: ffff88007c227a50 RDX: 0000000000000000 RSI: 00000055ac13db78 RDI: ffffffffa06a44c0 RBP: ffff88005eeddec8 R08: 0000000000000000 R09: ffff88005eeddd78 R10: ffffffffa06a4220 R11: ffff88005eeddd78 R12: fffffffffffff7d0 R13: 00007fff5a3aaec0 R14: 0000000000000000 R15: ffffffffa06a4508 FS: 00007fa8dcc4a6f0(0000) GS:ffff88007c200000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 0000000000000000 CR3: 000000005d148000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process rmmod (pid: 2812, threadinfo ffff88005eedc000, task ffff88006754b000) Stack: ffff88005eeddec8 ffffffffa06a4220 0000000000000000 00007fff5a3aaec0 0000000000000000 0000000000000001 ffff88005eedded8 ffffffffa06a2418 ffff88005eeddf78 ffffffff810d3598 ffffffffa06a4220 0000000000000880 Call Trace: [] efivars_exit+0x1c/0xc04 [efivars] [] sys_delete_module+0x2d6/0x368 [] ? lockdep_sys_exit_thunk+0x35/0x67 [] ? audit_syscall_entry+0x172/0x1a5 [] system_call_fastpath+0x16/0x1b Code: 5c c9 c3 55 48 89 e5 41 57 41 56 41 55 41 54 53 48 83 ec 08 0f 1f 44 00 00 4c 8b 67 48 48 89 fb 4c 8d 7f 48 49 81 ec 30 08 00 00 <4d> 8b ac 24 30 08 00 00 49 81 ed 30 08 00 00 eb 59 48 89 df 48 RIP [] unregister_efivars+0x28/0x12c [efivars] RSP CR2: 0000000000000000 ---[ end trace aa99b99090f70baa ]--- Matt apparently removed such a check in 2004 (with no reason given): * 17 May 2004 - Matt Domsch * remove check for efi_enabled in exit but there have been several changes since then. Signed-off-by: Randy Dunlap Signed-off-by: Mike Waychison Tested-by: Randy Dunlap Cc: Matt Domsch Cc: Signed-off-by: Greg Kroah-Hartman commit 0078bff5283d1fd6417b840eda6dab912b7a5560 Author: Jan Kara Date: Fri Apr 29 00:24:29 2011 +0200 Allow setting of number of raw devices as a module parameter Allow setting of maximal number of raw devices as a module parameter. This requires changing of static array into a vmalloced one (the array is going to be too large for kmalloc). Signed-off-by: Jan Kara Signed-off-by: Greg Kroah-Hartman commit 706527280ec38fcdcd0466f10b607105fd23801b Author: David S. Miller Date: Fri May 6 16:01:15 2011 -0700 ipv4: Initialize cork->opt using NULL not 0. Noticed by Joe Perches. Signed-off-by: David S. Miller commit b80d72261aec5e763a76497eba5fddc84833a154 Author: David S. Miller Date: Fri May 6 15:06:01 2011 -0700 ipv4: Initialize on-stack cork more efficiently. ip_setup_cork() explicitly initializes every member of inet_cork except flags, addr, and opt. So we can simply set those three members to zero instead of using a memset() via an empty struct assignment. Signed-off-by: David S. Miller Acked-by: Eric Dumazet commit bdc712b4c2baf9515887de3a52e7ecd89fafc0c7 Author: David S. Miller Date: Fri May 6 15:02:07 2011 -0700 inet: Decrease overhead of on-stack inet_cork. When we fast path datagram sends to avoid locking by putting the inet_cork on the stack we use up lots of space that isn't necessary. This is because inet_cork contains a "struct flowi" which isn't used in these code paths. Split inet_cork to two parts, "inet_cork" and "inet_cork_full". Only the latter of which has the "struct flowi" and is what is stored in inet_sock. Signed-off-by: David S. Miller Acked-by: Eric Dumazet commit 4ce0a41f1054b58801f7e14f5036cf27a75152e2 Author: matt mooney Date: Fri May 6 03:47:56 2011 -0700 staging: usbip: fixup MODULE_ macros Modify description and email address for usbip_common_mod; export module version number; and modify __init messages slightly. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 6a298401fcdefdbff734b137c1b67df9d5849103 Author: matt mooney Date: Fri May 6 03:47:55 2011 -0700 staging: usbip: remove section dividers Also, removes the one-line comments that were associated with some of the dividers because they provided no additional information. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 49aecefcdef5a26a7fb036d4c57573f0e0e2089b Author: matt mooney Date: Fri May 6 03:47:54 2011 -0700 staging: usbip: add break to default case in switch statements For consistency, a break statement is added to all default cases that do not jump to a label. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 5c6499d8bfff6090391ea4995512e78385b9b1e7 Author: matt mooney Date: Fri May 6 03:47:53 2011 -0700 staging: usbip: vhci_tx.c: coding style cleanup Fix a few alignment issues and remove extraneous lines. Use ternary operator for pdup->base.direction assignment. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit bd608f6cebed4d2ae4e22ef3cdd29968bdc746f5 Author: matt mooney Date: Fri May 6 03:47:52 2011 -0700 staging: usbip: vhci_sysfs.c: coding style cleanup Fix a few alignment issues and remove extraneous lines. Add braces to else clause. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 5ef6aceb12564ad95b1d12c01503826eea4a58e4 Author: matt mooney Date: Fri May 6 03:47:51 2011 -0700 staging: usbip: vhci_rx.c: coding style cleanup Fix alignment for consistency and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 071d1d47046a275c196b3345c2d19af3c8128608 Author: matt mooney Date: Fri May 6 03:47:50 2011 -0700 staging: usbip: vhci_hcd.c: coding style cleanup Fix alignment for consistency and remove extraneous lines. Move MODULE_ macros to the end of file. Make bit_desc[] an array of const pointers. Add KERN_ level to a couple of printks. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit ddbc9bc9e96298f1b3a35296f47f4424d2b78bad Author: matt mooney Date: Fri May 6 03:47:49 2011 -0700 staging: usbip: vhci.h: coding style cleanup Fix a few alignment issues and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 09e0650b25d1b75b16c4b6faede2f537d55b6b18 Author: matt mooney Date: Fri May 6 03:47:48 2011 -0700 staging: usbip: stub.h: coding style cleanup Remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 0f79847ce0caa988383767c0b1a85a1fde0344dc Author: matt mooney Date: Fri May 6 03:47:47 2011 -0700 staging: usbip: usbip_event.c: coding style cleanup Fix a few alignment issues and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit f9eacc9846041f84f5f9abcbb99cb1a52c235e88 Author: matt mooney Date: Fri May 6 03:47:46 2011 -0700 staging: usbip: usbip_common.c: coding style cleanup Fix alignment for consistency, checkpatch.pl warning of line over 80 characters, and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 4980d9682f165092715d59af848d286932e3c45b Author: matt mooney Date: Fri May 6 03:47:45 2011 -0700 staging: usbip: usbip_common.h: coding style cleanup Use the compiler macro __packed, fix a few alignment issues, and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit c6956c97ec66dea4b7a307e3c7ecbc647d185892 Author: matt mooney Date: Fri May 6 03:47:44 2011 -0700 staging: usbip: stub_tx.c: coding style cleanup Fix alignment for consistency, checkpatch.pl warnings for lines over 80 characters, remove extraneous lines, and change conversion specifier within a format string to remove warning. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 64f338edbd7bbf9cb5c985ee951c467ba5fd903d Author: matt mooney Date: Fri May 6 03:47:43 2011 -0700 staging: usbip: stub_rx.c: coding style cleanup Fix alignment for consistency and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit 6c033b46ce3a7820d567fdb6e03128ca75468d11 Author: matt mooney Date: Fri May 6 03:47:42 2011 -0700 staging: usbip: stub_main.c: coding style cleanup Fix alignment for consistency and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit b744a45f45e3d18db91b33d1ac45597ddc2ea71c Author: matt mooney Date: Fri May 6 03:47:41 2011 -0700 staging: usbip: stub_dev.c: coding style cleanup Fix alignment for consistency and remove extraneous lines. Signed-off-by: matt mooney Signed-off-by: Greg Kroah-Hartman commit e8591270fa7b2520e68ed98d86b8bb99fd69bad8 Author: Guilherme Salazar Date: Wed May 4 01:38:30 2011 -0300 Staging: brcm80211: fix brace coding style issue in dhd_cdc.c This is a patch that fixes up a brace issue found by the checkpatch.pl tool Signed-off-by: Guilherme Salazar Signed-off-by: Greg Kroah-Hartman commit 57d524154ffe99d27fb55e0e30ddbad9f4c35806 Merge: e04d1b2 c63ca0c Author: Ingo Molnar Date: Fri May 6 21:07:33 2011 +0200 Merge branch 'perf/stat' into perf/core Merge reason: the perf stat improvements are tested and ready now. Signed-off-by: Ingo Molnar commit ad638bd16d91012a512979327b5c17c867d260c6 Author: David S. Miller Date: Fri May 6 11:58:55 2011 -0700 hamachi: Delete TX checksumming code commented out since 1999 TX checksumming support has been ifdef commented out of this driver for more than 10 years, and it makes references to aspects of the IPv4 stack from back then as well. If someone has one of these rare cards and wants to properly resurrect TX checksumming support, they can still get at this code in the version control history. Signed-off-by: David S. Miller commit 2c46f72e069eef5e98f2b04df08cde6bdc673aa7 Author: Johannes Berg Date: Thu Apr 28 07:27:10 2011 -0700 iwlagn: check DMA mapping errors DMA mappings can fail, but the current code doesn't check for that. Add checking, which requires some restructuring for proper error paths. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 94b00658ffc719427c9c09d7920957bc35915c6f Author: Johannes Berg Date: Thu Apr 28 07:27:09 2011 -0700 iwlagn: remove bytecount indirection All AGN devices need the bytecount table, so remove the indirection and make the functions static again. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit ccb6c1c0ec2b76a41c8c85747b1a671e71b97e64 Author: Johannes Berg Date: Thu Apr 28 07:27:08 2011 -0700 iwlagn: dont update bytecount table for command queue The device doesn't use the bytecount table for the command queue, only for aggregation queues to make aggregation decisions. So don't update it for the command queue (and we even updated it with wrong values). Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 4c2cde3b59d923d2952ef0accdde892e23b4997b Author: Johannes Berg Date: Thu Apr 28 07:27:07 2011 -0700 iwlagn: remove unused variable The variable 'len' here is set but never used. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 8a98d49ec1f38d9f3eef7e34f148c3f1f5590fdf Author: Johannes Berg Date: Fri Apr 29 09:48:14 2011 -0700 iwlagn: remove frame pre-allocation The frame pre-allocation is quite a bit of complex code, all to avoid a single allocation. Remove it and consolidate the beacon sending code. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 46975f78fe1f480682e51c9acb03a5089b784cb6 Author: Johannes Berg Date: Thu Apr 28 07:27:05 2011 -0700 iwlagn: remove get_hcmd_size indirection There's no need for this, all commands are the right size. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 4613e72dbdc9a44bfc4625d835511264121c4244 Author: Cindy H. Kao Date: Fri May 6 10:40:15 2011 -0700 iwlwifi: support the svtool messages interactions through nl80211 test mode This patch adds the feature to support the test mode operation through the generic netlink channel NL80211_CMD_TESTMODE between intel wireless device iwlwifi and the user space application svtool. The main purpose is to create a transportation layer between the iwlwifi device and the user space application so that the interaction between the user space application svtool and the iwlwifi device in the kernel space is in a way of generic netlink messaging. The detail specific functions are: 1. The function iwl_testmode_cmd() is added to digest the svtool test command from the user space application. The svtool test commands are categorized to three types : commands to be processed by the device ucode, commands to access the registers, and commands to be processed at the driver level(such as reload the ucode). iwl_testmode_cmd() dispatches the commands the corresponding handlers and reply to user space regarding the command execution status. Extra data is returned to the user space application if there's any. 2. The function iwl_testmode_ucode_rx_pkt() is added to multicast all the spontaneous messages from the iwlwifi device to the user space. Regardless the message types, whenever there is a valid spontaneous message received by the iwlwifi ISR, iwl_testmode_ucode_rx_pkt() is invoked to multicast the message content to user space. The message content is not attacked and the message parsing is left to the user space application. Implementation guidelines: 1. The generic netlink messaging for iwliwif test mode is through NL80211_CMD_TESTMODE channel, therefore, the codes need to follow the regulations set by cfg80211.ko to get the actual device instance ieee80211_ops via cfg80211.ko, so that the iwlwifi device is indicated with ieee80211_ops and can be actually accessed. Therefore, a callback iwl_testmode_cmd() is added to the structure iwlagn_hw_ops in iwl-agn.c. 2. It intends to utilize those low level device access APIs from iwlwifi device driver (ie. iwlagn.ko) rather than creating it's own set of device access functions. For example, iwl_send_cmd(), iwl_read32(), iwl_write8(), and iwl_write32() are reused. 3. The main functions are maintained in new files instead of spreading all over the existing iwlwifi driver files. The new files added are : drivers/net/wireless/iwlwifi/iwl-sv-open.c - to handle the user space test mode application command and reply the respective command status to the user space application. - to multicast the spontaneous messages from device to user space. drivers/net/wireless/iwlwifi/iwl-testmode.h - the commonly referenced definitions for the TLVs used in the generic netlink messages Signed-off-by: Cindy H. Kao Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 900e599eb0c16390ff671652a44e0ea90532220e Author: shaohua.li@intel.com Date: Fri May 6 11:35:31 2011 -0600 SATA: enable non-queueable flush flag Enable non-queueable flush flag for SATA. Stable: 2.6.39 only Cc: stable@kernel.org Signed-off-by: Shaohua Li Acked-by: Tejun Heo Acked-by: Jeff Garzik Signed-off-by: Jens Axboe commit 3ac0cc4508709d42ec9aa351086c7d38bfc0660c Author: shaohua.li@intel.com Date: Fri May 6 11:34:41 2011 -0600 block: hold queue if flush is running for non-queueable flush drive In some drives, flush requests are non-queueable. When flush request is running, normal read/write requests can't run. If block layer dispatches such request, driver can't handle it and requeue it. Tejun suggested we can hold the queue when flush is running. This can avoid unnecessary requeue. Also this can improve performance. For example, we have request flush1, write1, flush 2. flush1 is dispatched, then queue is hold, write1 isn't inserted to queue. After flush1 is finished, flush2 will be dispatched. Since disk cache is already clean, flush2 will be finished very soon, so looks like flush2 is folded to flush1. In my test, the queue holding completely solves a regression introduced by commit 53d63e6b0dfb95882ec0219ba6bbd50cde423794: block: make the flush insertion use the tail of the dispatch list It's not a preempt type request, in fact we have to insert it behind requests that do specify INSERT_FRONT. which causes about 20% regression running a sysbench fileio workload. Stable: 2.6.39 only Cc: stable@kernel.org Signed-off-by: Shaohua Li Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit f3876930952390a31c3a7fd68dd621464a36eb80 Author: shaohua.li@intel.com Date: Fri May 6 11:34:32 2011 -0600 block: add a non-queueable flush flag flush request isn't queueable in some drives. Add a flag to let driver notify block layer about this. We can optimize flush performance with the knowledge. Stable: 2.6.39 only Cc: stable@kernel.org Signed-off-by: Shaohua Li Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit b83963b3c4b5078757d20a8eeafadc51401c5b52 Author: Vasanthakumar Thiagarajan Date: Wed May 4 14:23:56 2011 +0530 ath6kl: Remove ununsed macros from gpio_reg.h After this there is no difference between hw2.0/hw/gpio_reg.h and hw4.0/hw/gpio_reg.h, so remove the duplication. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit eb050f4c014d5d72c01db91843fe139dcc1cb292 Author: Vasanthakumar Thiagarajan Date: Wed May 4 14:23:55 2011 +0530 ath6kl: Remove gpio.h and gpio_api.h The macros and function proto types in these files are not used anywhere. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 7c370f91507d484fc2b7684316da6d468bfaecbd Author: Vasanthakumar Thiagarajan Date: Wed May 4 14:23:54 2011 +0530 ath6kl: Remove unused eeprom.c Also delete si_reg.h which is only used in eeprom.c Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 0ef18385ee6fed88a907f3a111c735f09e483cd3 Author: Vasanthakumar Thiagarajan Date: Wed May 4 14:23:53 2011 +0530 ath6kl: Remove dead code with CONFIG_AR6002_REV1_FORCE_HOST This is not defined anywhere, also delete vmc_reg.h which is used only in the dead code. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit d67acf6d720166d8da9efbb58378a13aca303d8f Author: Vasanthakumar Thiagarajan Date: Wed May 4 14:23:52 2011 +0530 ath6kl: Remove somemore unused header files Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 61516587513c84ac26e68e3ab008dc6e965d0378 Author: Rob Landley Date: Fri May 6 09:27:36 2011 -0700 Correct occurrences of - Documentation/kvm/ to Documentation/virtual/kvm - Documentation/uml/ to Documentation/virtual/uml - Documentation/lguest/ to Documentation/virtual/lguest throughout the kernel source tree. Signed-off-by: Rob Landley Signed-off-by: Randy Dunlap commit b644c7ce18e11ef76830f5dce59402c6c9e07517 Author: Alan Cox Date: Fri May 6 16:48:27 2011 +0100 gma500: The MID devices have the register offset different This is another small step towards getting Moorestown/Oaktrail support to work but for Moorestown at least we still need to sort out GEM backed base framebuffer, which means figuring out why GEM explodes early on at the moment. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9fada0a0c5d4f51064e20b3a4fb15437992757cd Author: Larry Finger Date: Thu May 5 18:52:56 2011 -0500 staging: vt6655: Fix warnings if CONFIG_PM is not defined If staging:vt6655 is built without CONFIG_DM being defined, there are large numbers of warnings of the following form due to use of #if instead of #ifdef: In file included from drivers/staging/vt6655/upc.h:32, from drivers/staging/vt6655/mac.h:39, from drivers/staging/vt6655/wroute.c:34: drivers/staging/vt6655/device.h:399:5: warning: "CONFIG_PM" is not defined Signed-off-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 4b455e0dabbe5f023ce906741295d64c4234672f Author: Grant Grundler Date: Wed May 4 09:59:47 2011 -0700 staging: brcm80211: SDIO/MMC cleanups misc coding style cleanups to dhd_sdio/sdmmc o replace PKTFREE2 macro with static dhdsdio_pktfree2() o drop "delta" local var o drop GSPI_PR55150_BAILOUT o reformat some of the comments (white space changes) o drop dhd_bcmsdh_recv_buf wrapper and directly call bcmsdh_recv_buf Signed-off-by: Grant Grundler Signed-off-by: Greg Kroah-Hartman commit 23c5605c7d842f922fe141f5a7b1c30e9b54dae6 Author: K. Y. Srinivasan Date: Wed May 4 11:51:45 2011 -0700 Staging: hv: Add the necessary dependencies to hyperv Kconfig The vmbus driver dependes on ACPI and PCI subsystems. Change Kconfig to reflect this. Reported-by: Randy Dunlap Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman commit 570aa13a5dbea9b905b4cd6315aa6e1b3a9fd2f8 Author: Rob Landley Date: Fri May 6 09:23:23 2011 -0700 Add a 00-INDEX file to Documentation/virtual Remove uml from the top level 00-INDEX file. Signed-off-by: Rob Landley Signed-off-by: Randy Dunlap commit ed16648eb5b86917f0b90bdcdbc857202da72f90 Author: Rob Landley Date: Fri May 6 09:22:02 2011 -0700 Move kvm, uml, and lguest subdirectories under a common "virtual" directory, I.E: cd Documentation mkdir virtual git mv kvm uml lguest virtual Signed-off-by: Rob Landley Signed-off-by: Randy Dunlap commit edc83d47a9928281ecf6fb709753edb3c58ae7f1 Author: Jens Axboe Date: Fri May 6 08:27:00 2011 -0600 cciss: fix compile issue drivers/block/cciss.c: In function ‘cciss_send_reset’: drivers/block/cciss.c:2515:2: error: implicit declaration of function ‘fill_cmd’ drivers/block/cciss.c: At top level: drivers/block/cciss.c:2531:12: error: conflicting types for ‘fill_cmd’ drivers/block/cciss.c:2534:1: note: an argument type that has a default promotion can’t match an empty parameter name list declaration drivers/block/cciss.c:2515:18: note: previous implicit declaration of ‘fill_cmd’ was here make[1]: *** [drivers/block/cciss.o] Error 1 make: *** [drivers/block/cciss.o] Error 2 Move fill_cmd() to above where it is first used. Signed-off-by: Jens Axboe commit 8a4ec67bd5648beb09d7db988a75835b740e950d Author: Stephen M. Cameron Date: Tue May 3 14:54:12 2011 -0500 cciss: add cciss_tape_cmds module paramter This is to allow number of commands reserved for use by SCSI tape drives and medium changers to be adjusted at driver load time via the kernel parameter cciss_tape_cmds, with a default value of 6, and a range of 2 - 16 inclusive. Previously, the driver limited the number of commands which could be queued to the SCSI half of the the driver to only 2. This is to fix the problem that if you had more than two tape drives, you couldn't, for example, erase or rewind them all at the same time. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 063d2cf72ab6101d2dd69bd6fb503b229be70325 Author: Stephen M. Cameron Date: Tue May 3 14:54:07 2011 -0500 cciss: do not use bit 2 doorbell reset It causes NMIs which are undesirable at best, unsurvivable at worst. Prefer the soft reset instead. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit ec52d5f1cb9a1a0db02143fdcc6004749ea19e0b Author: Stephen M. Cameron Date: Tue May 3 14:54:02 2011 -0500 cciss: do not attempt PCI power management reset method if we know it won't work. Just go straight to the soft-reset method instead. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 93c46c2fa7cfb272c3014327830d6cb30d8486a4 Author: Stephen M. Cameron Date: Tue May 3 14:53:57 2011 -0500 cciss: remove superfluous sleeps around reset code Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 5afe278114a8dd9480813377c75b5e40a42c5066 Author: Stephen M. Cameron Date: Tue May 3 14:53:52 2011 -0500 cciss: do soft reset if hard reset is broken on driver load, if reset_devices is set, and the hard reset attempts fail, try to bring up the controller to the point that a command can be sent, and send it a soft reset command, then after the reset undo whatever driver initialization was done to get it to the point to take a command, and re-do it after the reset. This is to get kdump to work on all the "non-resettable" controllers (except 64xx controllers which can't be reset due to the potentially shared cache module.) Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit bf2e2e6b87ae38fab460a36abfe272d99ae8be49 Author: Stephen M. Cameron Date: Tue May 3 14:53:46 2011 -0500 cciss: use new doorbell-bit-5 reset method The bit-2-doorbell reset method seemed to cause (survivable) NMIs on some systems and (unsurvivable) IOCK NMIs on some G7 servers. Firmware guys implemented a new doorbell method to alleviate these problems triggered by bit 5 of the doorbell register. We want to use it if it's available. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 3e28601fdfdec75ce8f6aaaf58540fdd0883fb58 Author: Stephen M. Cameron Date: Tue May 3 14:53:41 2011 -0500 cciss: increase timeouts for post-reset no-ops Just to reduce the messages about timeouts that appear. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 59ec86bb9872fbf9fd8572a936423f5e3ad615e7 Author: Stephen M. Cameron Date: Tue May 3 14:53:36 2011 -0500 cciss: clarify messages around reset behavior When waiting for the board to become "not ready" don't print a message saying "waiting for board to become ready" (possibly followed by a message saying "failed waiting for board to become not ready". Instead, it should be "waiting for board to reset" and "failed waiting for board to reset." Signed-off-by: Stephen M. Cameron " Signed-off-by: Jens Axboe commit 19adbb9254cbd46224376fcb3a773a2272e0845e Author: Stephen M. Cameron Date: Tue May 3 14:53:31 2011 -0500 cciss: increase time to wait for board reset to start Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 8f71bb829a964ef4deead86b60fda09452fb5c2f Author: Stephen M. Cameron Date: Tue May 3 14:53:26 2011 -0500 cciss: get rid of message related magic numbers Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit e363e0143615a67f19d56e6b223b55df3bd9f580 Author: Stephen M. Cameron Date: Tue May 3 14:53:21 2011 -0500 cciss: fix reply pool and block fetch table memory leaks Signed-off-by: Jens Axboe commit 2b48085f972a761b38cf60c626031a7fdd9e6d55 Author: Stephen M. Cameron Date: Tue May 3 14:53:16 2011 -0500 cciss: factor out irq request code Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit abf7966e616ef6e04393ef3678227f77d6179a8a Author: Stephen M. Cameron Date: Tue May 3 14:53:10 2011 -0500 cciss: factor out scatterlist allocation functions Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 54dae3432021f38cf20542ccd152dddb91c7c2d7 Author: Stephen M. Cameron Date: Tue May 3 14:53:05 2011 -0500 cciss: factor out command pool allocation functions Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 62710ae1ceb839de1eebb5b4492ec8a7fbcf8d02 Author: Stephen M. Cameron Date: Tue May 3 14:53:00 2011 -0500 cciss: do a better job of detecting controller reset failure Detect failure of controller reset by noticing if the 32 bytes of "driver version" we store on the hardware in the config table fail to get zeroed out. Previously we noticed if the controller did not transition to "simple mode", but this did not detect reset failure if the controller was already in simple mode prior to the reset attempt (e.g. due to module parameter hpsa_simple_mode=1). Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 9bd3c20487b7c13d397dc11dd51e30256bf4c9b3 Author: Stephen M. Cameron Date: Tue May 3 14:52:54 2011 -0500 cciss: add readl after writel in interrupt mask setting code This is to ensure the board interrupts are really off when these functions return. Signed-off-by: Stephen M. Cameron Signed-off-by: Jens Axboe commit 182608c8294b5fe90d7bbd4b026c82bf0a24b736 Author: David Sterba Date: Thu May 5 13:13:16 2011 +0200 btrfs: remove old unused commented out code Remove code which has been #if0-ed out for a very long time and does not seem to be related to current codebase anymore. Signed-off-by: David Sterba commit f2a97a9dbd86eb1ef956bdf20e05c507b32beb96 Author: David Sterba Date: Thu May 5 12:44:41 2011 +0200 btrfs: remove all unused functions Remove static and global declarations and/or definitions. Reduces size of btrfs.ko by ~3.4kB. text data bss dec hex filename 402081 7464 200 409745 64091 btrfs.ko.base 398620 7144 200 405964 631cc btrfs.ko.remove-all Signed-off-by: David Sterba commit 3d1c89b49119820a60c03e718108c553ce9e6b22 Author: Jiri Kosina Date: Fri May 6 11:43:33 2011 +0200 Revert "arm: mach-u300/gpio: Fix mem_region resource size miscalculations" This reverts commit b0c3af5ef0d7b38eb1ba522becd47123ac9736d2. The driver has been rewritten in ARM tree. commit e04d1b23f9706186187dcb0be1a752e48dcc540b Author: Lin Ming Date: Fri May 6 07:14:02 2011 +0000 perf events, x86: Add SandyBridge stalled-cycles-frontend/backend events Extend the Intel SandyBridge PMU driver with definitions for generic front-end and back-end stall events. ( As commit 3011203 "perf events, x86: Add Westmere stalled-cycles-frontend/backend events" says, these are only approximations. ) Signed-off-by: Lin Ming Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Cc: Mike Galbraith Cc: Steven Rostedt Link: http://lkml.kernel.org/r/1304666042-17577-1-git-send-email-ming.m.lin@intel.com Signed-off-by: Ingo Molnar commit 7142d17e8f935fa842e9f6eece2281b6d41625d6 Author: Hillf Danton Date: Thu May 5 20:53:20 2011 +0800 sched: Shorten the construction of the span cpu mask of sched domain For a given node, when constructing the cpumask for its sched_domain to span, if there is no best node available after searching, further efforts could be saved, based on small change in the return value of find_next_best_node(). Signed-off-by: Hillf Danton Cc: Peter Zijlstra Cc: Mike Galbraith Cc: Yong Zhang Link: http://lkml.kernel.org/r/BANLkTi%3DqPWxRAa6%2BdT3ohEP6Z%3D0v%2Be4EXA@mail.gmail.com Signed-off-by: Ingo Molnar commit 4934a4d3d3fa775601a9f1b35cc0e2aa93f81355 Author: Rakib Mullick Date: Wed May 4 22:53:46 2011 +0600 sched: Wrap the 'cfs_rq->nr_spread_over' field with CONFIG_SCHED_DEBUG cfs_rq->nr_spread_over is only used when CONFIG_SCHED_DEBUG is set. So wrap it with CONFIG_SCHED_DEBUG. Signed-off-by: Rakib Mullick Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1304528026.15681.3.camel@localhost.localdomain Signed-off-by: Ingo Molnar commit 8ac764e3479f6057c1cc85bd960dd2aa0fb82fea Author: Sergei Shtylyov Date: Wed Apr 6 17:29:24 2011 +0000 DA8xx: move base address #define's to their proper place Move DA8XX_MMCSD0_BASE, DA8XX_LCD_CNTRL_BASE, and DA8XX_DDR2_CTL_BASE from to devices-da8xx.c as the latter file is the only place where these macros are used. While at it, restore sorting the base address macros by address value in devices-da8xx.c... Signed-off-by: Sergei Shtylyov commit e0c199d0989e2f9fa2683e817624779f55abfa7f Author: Sergei Shtylyov Date: Wed Apr 6 17:26:06 2011 +0000 DA8xx: kill duplicate #define DA8XX_PLL1_BASE Commit 044ca01521d077a35b46a445b02b93f413109a4b (davinci: da850/omap-l138: add support for SoC suspend) introduced DA8XX_PLL1_BASE despite PLL1 exists only on DA850/OMAP-L138 and da850.c even already #define'd DA850_PLL1_BASE. Kill the duplicate macro, renaming an existing reference to it... Signed-off-by: Sergei Shtylyov commit 5a9f68fd2608384e09e18767ebc253d7aee86b34 Author: Sergei Shtylyov Date: Wed Apr 6 17:24:31 2011 +0000 DA8xx: kill duplicate #define DA8XX_GPIO_BASE DA8XX_GPIO_BASE is #define'd in both and devices-da8xx.c; moreover, it's not even used in the latter file... Signed-off-by: Sergei Shtylyov commit 29ce831000081dd757d3116bf774aafffc4b6b20 Author: Gleb Natapov Date: Wed May 4 16:31:03 2011 +0300 rcu: provide rcu_virt_note_context_switch() function. Provide rcu_virt_note_context_switch() for vitalization use to note quiescent state during guest entry. Signed-off-by: Gleb Natapov Signed-off-by: Paul E. McKenney commit bad6e1393cb505fe17747344a23666464daa3fa7 Author: Paul E. McKenney Date: Mon May 2 23:40:04 2011 -0700 rcu: get rid of signed overflow in check_cpu_stall() Signed integer overflow is undefined by the C standard, so move calculations to unsigned. Signed-off-by: Paul E. McKenney commit b554d7de8d112fca4188da3bf0d7f8b56f42fb95 Author: Eric Dumazet Date: Thu Apr 28 07:23:45 2011 +0200 rcu: optimize rcutiny rcu_sched_qs() currently calls local_irq_save()/local_irq_restore() up to three times. Remove irq masking from rcu_qsctr_help() / invoke_rcu_kthread() and do it once in rcu_sched_qs() / rcu_bh_qs() This generates smaller code as well. text data bss dec hex filename 2314 156 24 2494 9be kernel/rcutiny.old.o 2250 156 24 2430 97e kernel/rcutiny.new.o Fix an outdated comment for rcu_qsctr_help() Move invoke_rcu_kthread() definition before its use. Signed-off-by: Eric Dumazet Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 2655d57ef35aa327a2e58a1c5dc7b65c65003f4e Author: Paul E. McKenney Date: Thu Apr 7 22:47:23 2011 -0700 rcu: prevent call_rcu() from diving into rcu core if irqs disabled This commit marks a first step towards making call_rcu() have real-time behavior. If irqs are disabled, don't dive into the RCU core. Later on, this new early exit will wake up the per-CPU kthread, which first must be modified to handle the cases involving callback storms. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit baa1ae0c9f1c618bc60706efa75fef3508bcee58 Author: Paul E. McKenney Date: Sat Mar 26 22:01:35 2011 -0700 rcu: further lower priority in rcu_yield() Although rcu_yield() dropped from real-time to normal priority, there is always the possibility that the competing tasks have been niced. So nice to 19 in rcu_yield() to help ensure that other tasks have a better chance of running. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 9ab1544eb4196ca8d05c433b2eb56f74496b1ee3 Author: Lai Jiangshan Date: Fri Mar 18 11:15:47 2011 +0800 rcu: introduce kfree_rcu() Many rcu callbacks functions just call kfree() on the base structure. These functions are trivial, but their size adds up, and furthermore when they are used in a kernel module, that module must invoke the high-latency rcu_barrier() function at module-unload time. The kfree_rcu() function introduced by this commit addresses this issue. Rather than encoding a function address in the embedded rcu_head structure, kfree_rcu() instead encodes the offset of the rcu_head structure within the base structure. Because the functions are not allowed in the low-order 4096 bytes of kernel virtual memory, offsets up to 4095 bytes can be accommodated. If the offset is larger than 4095 bytes, a compile-time error will be generated in __kfree_rcu(). If this error is triggered, you can either fall back to use of call_rcu() or rearrange the structure to position the rcu_head structure into the first 4096 bytes. Note that the allowable offset might decrease in the future, for example, to allow something like kmem_cache_free_rcu(). The new kfree_rcu() function can replace code as follows: call_rcu(&p->rcu, simple_kfree_callback); where "simple_kfree_callback()" might be defined as follows: void simple_kfree_callback(struct rcu_head *p) { struct foo *q = container_of(p, struct foo, rcu); kfree(q); } with the following: kfree_rcu(&p->rcu, rcu); Note that the "rcu" is the name of a field in the structure being freed. The reason for using this rather than passing in a pointer to the base structure is that the above approach allows better type checking. This commit is based on earlier work by Lai Jiangshan and Manfred Spraul: Lai's V1 patch: http://lkml.org/lkml/2008/9/18/1 Manfred's patch: http://lkml.org/lkml/2009/1/2/115 Signed-off-by: Lai Jiangshan Signed-off-by: Manfred Spraul Signed-off-by: Paul E. McKenney Reviewed-by: David Howells Reviewed-by: Josh Triplett commit 6cc68793e380bb51f447d8d02af873b7bc01f222 Author: Paul E. McKenney Date: Wed Mar 2 13:15:15 2011 -0800 rcu: fix spelling The "preemptible" spelling is preferable. May as well fix it. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 13491a0ee1ef862b6c842132b6eb9c5e721af5ad Author: Lai Jiangshan Date: Fri Feb 25 11:37:59 2011 -0800 rcu: call __rcu_read_unlock() in exit_rcu for tree RCU Using __rcu_read_lock() in place of rcu_read_lock() leaves any debug state as it really should be, namely with the lock still held. Signed-off-by: Lai Jiangshan Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 7e8b4c72344e0d904b0e3fa9fd2eb116f04b3d41 Author: Paul E. McKenney Date: Thu Feb 24 19:26:21 2011 -0800 rcu: Converge TINY_RCU expedited and normal boosting This applies a trick from TREE_RCU boosting to TINY_RCU, eliminating code and adding comments. The key point is that it is possible for the booster thread itself to work out whether there is a normal or expedited boost required based solely on local information. There is therefore no need for boost initiation to know or care what type of boosting is required. In addition, when boosting is complete for a given grace period, then by definition there cannot be any more boosting for that grace period. This allows eliminating yet more state and statistics. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 203373c81b83e98da82836c4b8b5dd1e6fc9011f Author: Paul E. McKenney Date: Thu Feb 24 15:25:21 2011 -0800 rcu: remove useless ->boosted_this_gp field The ->boosted_this_gp field is a holdover from an earlier design that was to carry out multiple boost operations in parallel. It is not required by the current design, which boosts one task at a time. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit ddeb75814f09205df795121d9e373e82de7f2aca Author: Paul E. McKenney Date: Wed Feb 23 17:03:06 2011 -0800 rcu: code cleanups in TINY_RCU priority boosting. Extraneous semicolon, bad comment, and fold INIT_LIST_HEAD() into list_del() to get list_del_init(). Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit f0a07aeaf8935b7e9ef8032ce6546169f143951c Author: Paul E. McKenney Date: Wed Feb 23 11:10:52 2011 -0800 rcu: Switch to this_cpu() primitives This removes a couple of lines from invoke_rcu_cpu_kthread(), improving readability. Reported-by: Christoph Lameter Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 108aae22339f445c134aeb48eca25df1014ab08d Author: Paul E. McKenney Date: Wed Feb 23 09:56:00 2011 -0800 rcu: Use WARN_ON_ONCE for DEBUG_OBJECTS_RCU_HEAD warnings Avoid additional multiple-warning confusion in memory-corruption scenarios. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 561190e3b3db372403fb6a327b0121b4cae1b87e Author: Paul E. McKenney Date: Wed Mar 30 09:10:44 2011 -0700 rcu: mark rcutorture boosting callback as being on-stack The CONFIG_DEBUG_OBJECTS_RCU_HEAD facility requires that on-stack RCU callbacks be flagged explicitly to debug-objects using the init_rcu_head_on_stack() and destroy_rcu_head_on_stack() functions. This commit applies those functions to the rcutorture code that tests RCU priority boosting. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit b0c9d7ff2793502650ad987c3f237d5fe5587a1e Author: Paul E. McKenney Date: Tue Mar 29 12:56:56 2011 -0700 rcu: add DEBUG_OBJECTS_RCU_HEAD check for alignment Verify that rcu_head structures are aligned to a four-byte boundary. This check is enabled by CONFIG_DEBUG_OBJECTS_RCU_HEAD. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit fc2ecf7ec76c5ee150b83dcefc863fa03fd365fb Author: Mathieu Desnoyers Date: Wed Feb 23 09:42:14 2011 -0800 rcu: Enable DEBUG_OBJECTS_RCU_HEAD from !PREEMPT The prohibition of DEBUG_OBJECTS_RCU_HEAD from !PREEMPT was due to the fixup actions. So just produce a warning from !PREEMPT. Signed-off-by: Mathieu Desnoyers Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 5ece5bab3ed8594ce2c85c6c6e6b82109db36ca7 Author: Paul E. McKenney Date: Fri Apr 22 18:08:51 2011 -0700 rcu: Add forward-progress diagnostic for per-CPU kthreads Increment a per-CPU counter on each pass through rcu_cpu_kthread()'s service loop, and add it to the rcudata trace output. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 15ba0ba860871cf74b48b1bb47c26c91a66126f3 Author: Paul E. McKenney Date: Wed Apr 6 16:01:16 2011 -0700 rcu: add grace-period age and more kthread state to tracing This commit adds the age in jiffies of the current grace period along with the duration in jiffies of the longest grace period since boot to the rcu/rcugp debugfs file. It also adds an additional "O" state to kthread tracing to differentiate between the kthread waiting due to having nothing to do on the one hand and waiting due to being on the wrong CPU on the other hand. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit a9f4793d8900dc5dc09b3951bdcd4731290e06fe Author: Paul E. McKenney Date: Mon May 2 03:46:10 2011 -0700 rcu: fix tracing bug thinko on boost-balk attribution The rcu_initiate_boost_trace() function mis-attributed refusals to initiate RCU priority boosting that were in fact due to its not yet being time to boost. This patch fixes the faulty comparison. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit 90e6ac3657fd3b0446d585082000af3cf46439a7 Author: Paul E. McKenney Date: Wed Apr 6 15:20:47 2011 -0700 rcu: update tracing documentation for new rcutorture and rcuboost This commit documents the new debugfs rcu/rcutorture and rcu/rcuboost trace files. The description has been updated as suggested by Josh Triplett. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit 4a29865689dbb87a02e3b0fff4a4ae5041273173 Author: Paul E. McKenney Date: Sun Apr 3 21:33:51 2011 -0700 rcu: make rcutorture version numbers available through debugfs It is not possible to accurately correlate rcutorture output with that of debugfs. This patch therefore adds a debugfs file that prints out the rcutorture version number, permitting easy correlation. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit d71df90eadfc35aa549ff9a850842673febca71f Author: Paul E. McKenney Date: Tue Mar 29 17:48:28 2011 -0700 rcu: add tracing for RCU's kthread run states. Add tracing to help debugging situations when RCU's kthreads are not running but are supposed to be. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 0ac3d136b2e3cdf1161178223bc5da14a06241d0 Author: Paul E. McKenney Date: Mon Mar 28 15:47:07 2011 -0700 rcu: add callback-queue information to rcudata output This commit adds an indication of the state of the callback queue using a string of four characters following the "ql=" integer queue length. The first character is "N" if there are callbacks that have been queued that are not yet ready to be handled by the next grace period, or "." otherwise. The second character is "R" if there are callbacks queued that are ready to be handled by the next grace period, or "." otherwise. The third character is "W" if there are callbacks waiting for the current grace period, or "." otherwise. Finally, the fourth character is "D" if there are callbacks that have been handled by a prior grace period and are waiting to be invoked, or ".". Note that callbacks that are in the process of being invoked are not shown. These callbacks would have been removed from the rcu_data structure's list by rcu_do_batch() prior to being executed. (These callbacks are also not reflected in the "ql=" total, FWIW.) Also, document the new callback-queue trace information. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 2fa218d8bbcff239302f9f36e19d7187077dd636 Author: Paul E. McKenney Date: Sun Mar 27 21:37:58 2011 -0700 rcu: Update RCU's trace.txt documentation for new format The trace.txt file had obsolete output for the debugfs rcu/rcudata file, so update it. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 0ea1f2ebeb217d38770aebf91c4ecaa8e01b3305 Author: Paul E. McKenney Date: Tue Feb 22 13:42:43 2011 -0800 rcu: Add boosting to TREE_PREEMPT_RCU tracing Includes total number of tasks boosted, number boosted on behalf of each of normal and expedited grace periods, and statistics on attempts to initiate boosting that failed for various reasons. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 67b98dba474f293c389fc2b7254dcf7c0492e3bd Author: Paul E. McKenney Date: Mon Feb 21 13:31:55 2011 -0800 rcu: eliminate unused boosting statistics The n_rcu_torture_boost_allocerror and n_rcu_torture_boost_afferror statistics are not actually incremented anymore, so eliminate them. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 3acf4a9a3d63f23430f940842829175b0778a1b8 Author: Paul E. McKenney Date: Sun Apr 17 23:45:23 2011 -0700 rcu: avoid hammering sched with yet another bound RT kthread The scheduler does not appear to take kindly to having multiple real-time threads bound to a CPU that is going offline. So this commit is a temporary hack-around to avoid that happening. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit e3995a25fa361ce987a7d0ade00b17e3151519d7 Author: Paul E. McKenney Date: Mon Apr 18 15:31:26 2011 -0700 rcu: put per-CPU kthread at non-RT priority during CPU hotplug operations If you are doing CPU hotplug operations, it is best not to have CPU-bound realtime tasks running CPU-bound on the outgoing CPU. So this commit makes per-CPU kthreads run at non-realtime priority during that time. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 0f962a5e7277c34987b77dc82fc9aefcedc95e27 Author: Paul E. McKenney Date: Thu Apr 14 12:13:53 2011 -0700 rcu: Force per-rcu_node kthreads off of the outgoing CPU The scheduler has had some heartburn in the past when too many real-time kthreads were affinitied to the outgoing CPU. So, this commit lightens the load by forcing the per-rcu_node and the boost kthreads off of the outgoing CPU. Note that RCU's per-CPU kthread remains on the outgoing CPU until the bitter end, as it must in order to preserve correctness. Also avoid disabling hardirqs across calls to set_cpus_allowed_ptr(), given that this function can block. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney commit 27f4d28057adf98750cf863c40baefb12f5b6d21 Author: Paul E. McKenney Date: Mon Feb 7 12:47:15 2011 -0800 rcu: priority boosting for TREE_PREEMPT_RCU Add priority boosting for TREE_PREEMPT_RCU, similar to that for TINY_PREEMPT_RCU. This is enabled by the default-off RCU_BOOST kernel parameter. The priority to which to boost preempted RCU readers is controlled by the RCU_BOOST_PRIO kernel parameter (defaulting to real-time priority 1) and the time to wait before boosting the readers who are blocking a given grace period is controlled by the RCU_BOOST_DELAY kernel parameter (defaulting to 500 milliseconds). Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit a26ac2455ffcf3be5c6ef92bc6df7182700f2114 Author: Paul E. McKenney Date: Wed Jan 12 14:10:23 2011 -0800 rcu: move TREE_RCU from softirq to kthread If RCU priority boosting is to be meaningful, callback invocation must be boosted in addition to preempted RCU readers. Otherwise, in presence of CPU real-time threads, the grace period ends, but the callbacks don't get invoked. If the callbacks don't get invoked, the associated memory doesn't get freed, so the system is still subject to OOM. But it is not reasonable to priority-boost RCU_SOFTIRQ, so this commit moves the callback invocations to a kthread, which can be boosted easily. Also add comments and properly synchronized all accesses to rcu_cpu_kthread_task, as suggested by Lai Jiangshan. Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 12f5f524cafef3ab689929b118f2dfb8bf2be321 Author: Paul E. McKenney Date: Mon Nov 29 21:56:39 2010 -0800 rcu: merge TREE_PREEPT_RCU blocked_tasks[] lists Combine the current TREE_PREEMPT_RCU ->blocked_tasks[] lists in the rcu_node structure into a single ->blkd_tasks list with ->gp_tasks and ->exp_tasks tail pointers. This is in preparation for RCU priority boosting, which will add a third dimension to the combinatorial explosion in the ->blocked_tasks[] case, but simply a third pointer in the new ->blkd_tasks case. Also update documentation to reflect blocked_tasks[] merge Signed-off-by: Paul E. McKenney Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit e59fb3120becfb36b22ddb8bd27d065d3cdca499 Author: Paul E. McKenney Date: Tue Sep 7 10:38:22 2010 -0700 rcu: Decrease memory-barrier usage based on semi-formal proof Commit d09b62d fixed grace-period synchronization, but left some smp_mb() invocations in rcu_process_callbacks() that are no longer needed, but sheer paranoia prevented them from being removed. This commit removes them and provides a proof of correctness in their absence. It also adds a memory barrier to rcu_report_qs_rsp() immediately before the update to rsp->completed in order to handle the theoretical possibility that the compiler or CPU might move massive quantities of code into a lock-based critical section. This also proves that the sheer paranoia was not entirely unjustified, at least from a theoretical point of view. In addition, the old dyntick-idle synchronization depended on the fact that grace periods were many milliseconds in duration, so that it could be assumed that no dyntick-idle CPU could reorder a memory reference across an entire grace period. Unfortunately for this design, the addition of expedited grace periods breaks this assumption, which has the unfortunate side-effect of requiring atomic operations in the functions that track dyntick-idle state for RCU. (There is some hope that the algorithms used in user-level RCU might be applied here, but some work is required to handle the NMIs that user-space applications can happily ignore. For the short term, better safe than sorry.) This proof assumes that neither compiler nor CPU will allow a lock acquisition and release to be reordered, as doing so can result in deadlock. The proof is as follows: 1. A given CPU declares a quiescent state under the protection of its leaf rcu_node's lock. 2. If there is more than one level of rcu_node hierarchy, the last CPU to declare a quiescent state will also acquire the ->lock of the next rcu_node up in the hierarchy, but only after releasing the lower level's lock. The acquisition of this lock clearly cannot occur prior to the acquisition of the leaf node's lock. 3. Step 2 repeats until we reach the root rcu_node structure. Please note again that only one lock is held at a time through this process. The acquisition of the root rcu_node's ->lock must occur after the release of that of the leaf rcu_node. 4. At this point, we set the ->completed field in the rcu_state structure in rcu_report_qs_rsp(). However, if the rcu_node hierarchy contains only one rcu_node, then in theory the code preceding the quiescent state could leak into the critical section. We therefore precede the update of ->completed with a memory barrier. All CPUs will therefore agree that any updates preceding any report of a quiescent state will have happened before the update of ->completed. 5. Regardless of whether a new grace period is needed, rcu_start_gp() will propagate the new value of ->completed to all of the leaf rcu_node structures, under the protection of each rcu_node's ->lock. If a new grace period is needed immediately, this propagation will occur in the same critical section that ->completed was set in, but courtesy of the memory barrier in #4 above, is still seen to follow any pre-quiescent-state activity. 6. When a given CPU invokes __rcu_process_gp_end(), it becomes aware of the end of the old grace period and therefore makes any RCU callbacks that were waiting on that grace period eligible for invocation. If this CPU is the same one that detected the end of the grace period, and if there is but a single rcu_node in the hierarchy, we will still be in the single critical section. In this case, the memory barrier in step #4 guarantees that all callbacks will be seen to execute after each CPU's quiescent state. On the other hand, if this is a different CPU, it will acquire the leaf rcu_node's ->lock, and will again be serialized after each CPU's quiescent state for the old grace period. On the strength of this proof, this commit therefore removes the memory barriers from rcu_process_callbacks() and adds one to rcu_report_qs_rsp(). The effect is to reduce the number of memory barriers by one and to reduce the frequency of execution from about once per scheduling tick per CPU to once per grace period. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit a00e0d714fbded07a7a2254391ce9ed5a5cb9d82 Author: Paul E. McKenney Date: Tue Feb 8 17:14:39 2011 -0800 rcu: Remove conditional compilation for RCU CPU stall warnings The RCU CPU stall warnings can now be controlled using the rcu_cpu_stall_suppress boot-time parameter or via the same parameter from sysfs. There is therefore no longer any reason to have kernel config parameters for this feature. This commit therefore removes the RCU_CPU_STALL_DETECTOR and RCU_CPU_STALL_DETECTOR_RUNNABLE kernel config parameters. The RCU_CPU_STALL_TIMEOUT parameter remains to allow the timeout to be tuned and the RCU_CPU_STALL_VERBOSE parameter remains to allow task-stall information to be suppressed if desired. Signed-off-by: Paul E. McKenney Reviewed-by: Josh Triplett commit 2202a5a7490a9de282846ea8d4a56d0249e09033 Author: Joe Perches Date: Tue May 3 19:29:02 2011 -0700 staging: pcmcia: Convert pcmcia_device_id declarations to const Reduces data, increases text. Signed-off-by: Joe Perches Signed-off-by: Dominik Brodowski commit 25f8f54f6e178acfd503a95441b0ea05c525f751 Author: Joe Perches Date: Tue May 3 19:29:01 2011 -0700 pcmcia: Convert pcmcia_device_id declarations to const Saves about 50KB of data. Old/new size of all objects: text data bss dec hex filename 563015 80096 130684 773795 bcea3 (TOTALS) 610916 32256 130632 773804 bceac (TOTALS) Signed-off-by: Joe Perches Acked-by: Kurt Van Dijck (for drivers/net/can/softing/softing_cs.c) Signed-off-by: Dominik Brodowski commit e9fb13bfec7e017130ddc5c1b5466340470f4900 Author: Joe Perches Date: Tue May 3 19:29:00 2011 -0700 pcmcia: Make declaration and uses of struct pcmcia_device_id const Const allows tables to be moved into text sections. Signed-off-by: Joe Perches Signed-off-by: Dominik Brodowski commit 37fac4b6e6fde4ea4f5fd76948ba6f3e5dc63c01 Author: Uwe Kleine-König Date: Wed Apr 6 16:31:02 2011 +0200 pcmcia/sa1100: put sa11x0_pcmcia_hw_init[] to .devinit.data sa11x0_pcmcia_hw_init is only used by sa11x0_drv_pcmcia_probe which lives in .devinit.text so it can go to .devinit.data. Signed-off-by: Uwe Kleine-König Signed-off-by: Dominik Brodowski commit a0496d450ab8c17f6c4d86979b1f6ba486fe9365 Author: Jack Miller Date: Thu Apr 14 22:32:08 2011 +0000 powerpc: Add early debug for WSP platforms Signed-off-by: Jack Miller Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit a1d0d98daf6ce580d017a43b09fe30a375cde3e8 Author: David Gibson Date: Thu Apr 14 22:32:06 2011 +0000 powerpc: Add WSP platform Add a platform for the Wire Speed Processor, based on the PPC A2. This includes code for the ICS & OPB interrupt controllers, as well as a SCOM backend, and SCOM based cpu bringup. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: David Gibson Signed-off-by: Jack Miller Signed-off-by: Ian Munsie Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 82578e192bb837b984ed5d8389245ea1fee09dd5 Author: Richard A Lary Date: Wed May 4 12:57:18 2011 +0000 powerpc/eeh: Display eeh error location for bus and device For adapters which have devices under a PCIe switch/bridge it is informative to display information for both the PCIe switch/bridge and the device on which the bus error was detected. rebased to powerpc-next Signed-off-by: Richard A Lary Signed-off-by: Benjamin Herrenschmidt commit 40bd587a88fcd425f489f3d9f0be7daa84014141 Author: Benjamin Herrenschmidt Date: Tue May 3 14:07:01 2011 +0000 powerpc: Rename slb0_limit() to safe_stack_limit() and add Book3E support slb0_limit() wasn't a very descriptive name. This changes it along with a comment explaining what it's used for, and provides a 64-bit BookE implementation. Signed-off-by: Benjamin Herrenschmidt commit 77eafe101a65b609b0693ee4eda381f60a4a5bab Author: Tseng-Hui (Frank) Lin Date: Thu May 5 12:32:48 2011 +0000 powerpc/pseries: Add support for IO event interrupts This patch adds support for handling IO Event interrupts which come through at the /event-sources/ibm,io-events device tree node. The interrupts come through ibm,io-events device tree node are generated by the firmware to report IO events. The firmware uses the same interrupt to report multiple types of events for multiple devices. Each device may have its own event handler. This patch implements a plateform interrupt handler that is triggered by the IO event interrupts come through ibm,io-events device tree node, pull in the IO events from RTAS and call device event handlers registered in the notifier list. Device event handlers are expected to use atomic_notifier_chain_register() and atomic_notifier_chain_unregister() to register/unregister their event handler in pseries_ioei_notifier_list list with IO event interrupt. Device event handlers are responsible to identify if the event belongs to the device event handler. The device event handle should return NOTIFY_OK after the event is handled if the event belongs to the device event handler, or NOTIFY_DONE otherwise. Signed-off-by: Tseng-Hui (Frank) Lin Signed-off-by: Benjamin Herrenschmidt commit 4cb4638079a487627232ffee5b48ca19c127aed8 Author: Tseng-Hui (Frank) Lin Date: Tue May 3 18:28:43 2011 +0000 powerpc/pseries: Add RTAS event log v6 definition This patch adds definitions of non-IBM specific v6 extended log definitions to rtas.h. Signed-off-by: Tseng-Hui (Frank) Lin Signed-off-by: Benjamin Herrenschmidt commit 79af2187fa27442e89437d8ee637578cdb1a036c Author: Stephen Rothwell Date: Fri May 6 10:39:08 2011 +1000 powerpc: Fix compile with icwsx support Due to a collision between NO_CONTEXT->MMU_NO_CONTEXT change and Anton's patch. Signed-off-by: Stephen Rothwell Signed-off-by: Benjamin Herrenschmidt commit 3185847957d4834d1b30b253b1c71bb05bad7265 Author: Joonyoung Shim Date: Fri May 6 09:37:17 2011 +0900 ARM: S3C64XX: Remove gpio-bank-X header files The gpio-bank-X header files of S3C64XX have definitions which can be substituted by other common GPIO API. Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 14587b8d4be652fccc8e0e82ae9baa4365b06d9b Author: Kukjin Kim Date: Fri Mar 25 10:30:08 2011 +0900 ARM: exynos4_defconfig: Update for adding machines This patch adds MACH_ARMLEX4210 and MACH_NURI in exynos4_defconfig. Signed-off-by: Kukjin Kim commit 3260ecd859ba842c709f205cbc01408b826bb387 Author: Joonyoung Shim Date: Wed Mar 23 15:25:14 2011 +0900 ARM: EXYNOS4: Add Atmel mXT touchscreen device to the NURI board This patch is to support Atmel mXT touchscreen device to the NURI board. Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Signed-off-by: Kukjin Kim commit 3d73998558beac1e56efaaf7c5bf3469ee4c6ba2 Author: Jaecheol Lee Date: Wed Mar 16 07:28:23 2011 +0900 ARM: EXYNOS4: CPUIDLE Support This patch supports cpuidle framework for EXYNOS4210. Currently, Only one idle state is possible to use, but more idle states can be added following by this patch. Signed-off-by: Jaecheol Lee Signed-off-by: Kukjin Kim commit 490b94be0282c3b67f56453628ff0aaae827a670 Author: Kees Cook Date: Thu May 5 18:02:12 2011 -0600 iosched: remove redundant sprintf After the anticipatory scheduler was dropped, there was no need to special-case the request_module string. As such, drop the redundant sprintf and stack variable. Signed-off-by: Kees Cook Signed-off-by: Jens Axboe commit 7143b7d41218d4fc2ea33e6056c73609527ae687 Merge: 90864fb 87e9af6 Author: David S. Miller Date: Thu May 5 14:59:02 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/tg3.c commit addd0a09fc06179f2e02b4221775d9ab265c9fc7 Author: Tao Ma Date: Thu May 5 15:10:05 2011 -0600 block: Remove 'plug/unplug' comment in blk_execute_rq_nowait unplug is replaced with blk_run_queue now in blk_execute_rq_nowait, so change the comment accordingly. Signed-off-by: Tao Ma Signed-off-by: Jens Axboe commit 90864fbc7639d7a2300c67a18c9fb9fbcf7d51d2 Merge: 228e548 a70171d Author: David S. Miller Date: Thu May 5 14:09:28 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit e4eefec73ea0a740bfe8736e3ac30dfe92fe392b Author: Yogesh Ashok Powar Date: Thu May 5 16:30:48 2011 +0530 mwl8k: Do not ask mac80211 to generate IV for crypto keys Since firmware is capable of generating IV's for all crypto suits (TKIP, CCMP and WEP), do not ask mac80211 to generate IV when HW crypto is being used. Instead only reserve appropriate space in tx skb's in the driver, so that the firmware can write IV's values. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit eee40820e95e6dbd7b0709e7b8cca453004ae7b1 Author: Rafał Miłecki Date: Thu May 5 12:46:04 2011 +0200 b43legacy: drop invalid IMCFGLO workaround We were performing it on wrong core, it was outdated and is already implemented in ssb. Signed-off-by: Rafał Miłecki Tested-by: Larry Finger Signed-off-by: John W. Linville commit fc2b1e0cfe9b4cabde8afeacc2bb81a95bf83afb Author: Rafał Miłecki Date: Thu May 5 12:45:52 2011 +0200 b43: drop invalid IMCFGLO workaround We were performing it on wrong core, it was outdated and is already implemented in ssb. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit cf3a03b9c99a0b2715741d116f50f513f545bb2d Author: Luis R. Rodriguez Date: Wed May 4 14:01:26 2011 -0700 ath9k_hw: fix power for the HT40 duplicate frames With AR9003 at about ~ 10 feet from an AP that uses RTS / CTS you will be able to associate but not not get data through given that the power for the rates used was set too low. This increases the power and permits data connectivity at longer distances from access points when connected with HT40. Without this you will not get any data through when associated to APs configured in HT40 at about more than 10 feet away. Cc: stable@kernel.org Cc: Fiona Cain Cc: Zhen Xie Cc: Kathy Giori Cc: Neha Choksi Cc: Wayne Daniel Cc: Gaurav Jauhar Cc: Samira Naraghi CC: Ashok Chennupati Cc: Lance Zimmerman Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 4268d8ed64ed918384954924284ba396cdb0e388 Author: Ivo van Doorn Date: Wed May 4 21:42:05 2011 +0200 rt2x00: Fix transfer speed regression for USB hardware Patch: rt2x00: Make rt2x00_queue_entry_for_each more flexible commit: 10e11568ca8b8a15f7478f6a4ceebabcbdba1018 introduced a severe regression on the throughput for USB hardware. It turns out that the exiting of the rt2x00queue_for_each_entry() was done too early. The exact cause for this regression is unknown, but by disabling the premature exiting of the loop seems to resolve the issue. Signed-off-by: Ivo van Doorn Reported-by: Yasushi SHOJI Reported-by: Balint Viragh Tested-by: Balint Viragh Signed-off-by: John W. Linville commit aca355b9784fbc960c9caa6b30f953a965296420 Author: Gertjan van Wingerde Date: Wed May 4 21:41:36 2011 +0200 rt2x00: Initial support for RT5370 USB devices. Add necessary RF chipset define and basic support for these devices. Tested-by: Juan Carlos Garza Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 28ef6450f0182f95c4f50aaa0ab2043a09c72b0a Author: Rajkumar Manoharan Date: Wed May 4 19:37:17 2011 +0530 ath9k_hw: do noise floor calibration only on required chains At present the noise floor calibration is processed in supported control and extension chains rather than required chains. Unnccesarily doing nfcal in all supported chains leads to invalid nf readings on extn chains and these invalid values got updated into history buffer. While loading those values from history buffer is moving the chip to deaf state. This issue was observed in AR9002/AR9003 chips while doing associate/dissociate in HT40 mode and interface up/down in iterative manner. After some iterations, the chip was moved to deaf state. Somehow the pci devices are recovered by poll work after chip reset. Raading the nf values in all supported extension chains when the hw is not yet configured in HT40 mode results invalid values. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit eecc48000afe2ca6da22122d553b7cad294e42fc Author: Johannes Berg Date: Wed May 4 15:37:29 2011 +0200 mac80211: add basic support for WoWLAN This adds basic support for the new WoWLAN configuration in mac80211. The behaviour is completely offloaded to the driver though, with two new callbacks (suspend/resume). Options for the driver include a complete reconfiguration after wakeup, and exposing all the triggers it wants to support. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ff1b6e69ad4f31fb3c9c6da2665655f2e798dd70 Author: Johannes Berg Date: Wed May 4 15:37:28 2011 +0200 nl80211/cfg80211: WoWLAN support This is based on (but now quite far from) the original work from Luis and Eliad. Add support for configuring WoWLAN triggers, and getting the configuration out again. Changes from the original patchset are too numerous to list, but one important change needs highlighting: the suspend() callback is passed NULL for the trigger configuration if userspace has not configured WoWLAN at all. Signed-off-by: Luis R. Rodriguez Signed-off-by: Eliad Peller Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 8f7f3b2fcc4ccbba0be776049df41a2f96c986ac Author: Nicolas Cavallari Date: Wed May 4 15:26:52 2011 +0200 carl9170: fix allmulticast mode Currently, the driver only disable multicast filtering when the FIF_ALLMULTI driver flag has been just set (ie, if changed_flags& FIF_ALLMULTI and *new_flags& FIF_ALLMULTI) or else it will reenable multicast filtering. But next time, this condition will be false and multicast filtering will be reenabled, even through FIF_ALLMULTI is still set. This mean that allmulticast only works for less than two minutes in ad-hoc mode. This patch fixes that to disable multicast filtering as long as FIF_ALLMULTI is set. Signed-off-by: Nicolas Cavallari Acked-by: Christian Lamparter Signed-off-by: John W. Linville commit 9b571e24a9922f79ed2440b4482cb9f11a8f1889 Author: Yogesh Ashok Powar Date: Wed May 4 17:22:16 2011 +0530 mwl8k: Fix broken WEP The WEP key length was being set to 0 erroneously which broke WEP support. Fix the same by setting the key length appropriately. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit f0dc7999b54ae0464d7144b81d21e1d39a389d49 Author: Jouni Malinen Date: Tue May 3 22:50:15 2011 -0700 cfg80211: Remove unused wiphy flag The only user of WIPHY_FLAG_SUPPORTS_SEPARATE_DEFAULT_KEYS was removed and consequently, this flag can be removed, too. In addition, a single capability flag was not enough to indicate this capability clearly since the device behavior may be different based on which operating mode is being used. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 0e579d6a8f4aea346da818f13ee71401c125e639 Author: Jouni Malinen Date: Tue May 3 22:45:16 2011 -0700 nl80211: Fix set_key regression with some drivers Commit dbd2fd656f2060abfd3a16257f8b51ec60f6d2ed added a mechanism for user space to indicate whether a default key is being configured for only unicast or only multicast frames instead of all frames. This commit added a driver capability flag for indicating whether separate default keys are supported and validation of the set_key command based on that capability. However, this single capability flag is not enough to cover possible difference based on mode (AP/IBSS/STA) and the way this change was introduced resulted in a regression with drivers that do not indicate the new capability (i.e.., more or less any non-mac80211 driver using cfg80211) when using a recent wpa_supplicant snapshot. Fix the regression by removing the new check which is not strictly speaking needed. The new separate default key functionality is needed only for RSN IBSS which has a separate capability indication. Cc: stable@kernel.org Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit 270e58e8898c8be40451ebee45b6c9b5bd5db04b Author: Yogesh Ashok Powar Date: Tue May 3 20:11:46 2011 -0700 mwifiex: remove unnecessary variable initialization Skip initialization of local variables with some default values if the values are not going to be used further down the code path. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 57f16b5da03784d1660133fbec7281ea5735da69 Author: Amitkumar Karwar Date: Tue May 3 20:11:45 2011 -0700 mwifiex: fix simultaneous assoc and scan issue When scan and assoc (infra/ibss) commands are simultaneously given in two terminals, association response is erroneously served while serving the scan response. mwifiex_cfg80211_results() is the common routine for sending ioctl (scan, assoc etc.) results to cfg80211 stack. In above scenario even if the common routine is called for scan ioctl context, it also tries to send information about assoc ioctl to cfg80211 because "priv->assoc_request/priv->ibss_join_request" flag is on at that time. Fix the issue by updating request variable after assoc handling and modifying the variable check in mwifiex_cfg80211_results. Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 85e09b40405b44b049500702beb6856646b4be46 Author: Chaoming Li Date: Tue May 3 09:49:36 2011 -0500 rtlwifi: rtl8192se: Modify Kconfig and Makefile routines for new driver Modify rtlwifi routines for rtl8192se and set up Kconfig and Makefile for new driver. This patch also disables ASPM for the RTL8192SE to prevent some strange crashes on LF's system. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 84f494cef7d98d67aa7d50ede12784464aa0c274 Author: Chaoming Li Date: Tue May 3 09:49:26 2011 -0500 rtlwifi: rtl8192se: Merge TX and RX routines Merge routines trx.c and trx.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 18906ae27d233914d54f41e5fcf3fdfdf2fb69a9 Author: Chaoming Li Date: Tue May 3 09:49:16 2011 -0500 rtlwifi: rtl8192se: Merge table routines Merge routines table.c and table.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 5a183eec6247d3d992afbd3a1a9658571d9c4970 Author: Chaoming Li Date: Tue May 3 09:49:06 2011 -0500 rtlwifi: rtl8192se: Merge main (sw) routines Merge routines sw.c and sw.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit e5e8cd76511cb62391a5b64fa4ffdf88b09b6826 Author: Chaoming Li Date: Tue May 3 09:48:56 2011 -0500 rtlwifi: rtl8192se: Merge rf routines Merge routines rf.c and rf.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit cf76bbf7c0d0315ec17c950d14de939a81465f6b Author: Chaoming Li Date: Tue May 3 09:48:45 2011 -0500 rtlwifi: rtl8192se: Merge register definitions Merge routines reg.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit d15853163bea3d31c3b2cc9c74d018a861c128cf Author: Chaoming Li Date: Tue May 3 09:48:35 2011 -0500 rtlwifi: rtl8192se: Merge phy routines Merge routines phy.c and phy.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 293380046bf1a80872d611143a5ee6a23f662472 Author: Chaoming Li Date: Tue May 3 09:48:25 2011 -0500 rtlwifi: rtl8192se: Merge led routines Merge routines led.c and led.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 24284531497def77d0c3c0de9046880b1c4e6b13 Author: Chaoming Li Date: Tue May 3 09:48:15 2011 -0500 rtlwifi: rtl8192se: Merge hardware routines Merge routines hw.c and hw.h for RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 701307a885b13a1790b94e232923de1d199e3cc9 Author: Chaoming Li Date: Tue May 3 09:48:05 2011 -0500 rtlwifi: rtl8192se: Merge firmware routines Merge routines fw.c and fw.h for RTL8192SE. In addition, make changes to rtlwifi/wifi.h to support RTL8192SE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 9fe255ee3c0dd81c134b354e4b328c51f863ac40 Author: Chaoming Li Date: Tue May 3 09:47:55 2011 -0500 rtlwifi: rtl8192se: Merge dynamic management routines Merge routines dm.c and dm.h for RTL8192SE. Signed-off-by: Larry Finger Signed-off-by: Chaoming_Li Signed-off-by: John W. Linville commit e52dadb341c9c5ac25d6abd9216dd62752784f03 Author: Chaoming Li Date: Tue May 3 09:47:45 2011 -0500 rtlwifi: rtl8192se: Merge def.h Introduce routine def.h for rtl8192se. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1ddc286731134ad52a74b6956d9bc2a4369219a8 Author: Rajkumar Manoharan Date: Tue May 3 17:03:59 2011 +0530 mac80211: Postpond ps timer if tx is stopped by others Whenever the driver's queue depth reaches the max, the queues are stopped by the driver till the driver can accept the frames. At the mean time dynamic_ps_timer can be expired due to not receiving packet from upper layer which could restart the transmission at the end of ps work. Due to the mismatch with driver state, mac80211 is unneccesarity buffering all the frames till the driver wakes up the queue. Check whether there is no transmit or the tx queues were stopped by some reasons. If any of the queue was stopped, the postpond ps timer and do not restart netif_tx. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 4c468fe559f7910b1c6b10d3d223943fdd1b653c Author: Arik Nemtsov Date: Tue May 3 11:53:07 2011 +0300 mac80211: set TID of internal mgmt packets to 7 The queue mapping of internal mgmt packets is set to VO. Set the TID value to match the queue mapping. Otherwise drivers that only look at the TID might get confused. Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit cbe8c735f1af88037c3dab570f816e3a77896cc7 Author: Mohammed Shafi Shajakhan Date: Tue May 3 13:14:06 2011 +0530 ath9k_hw: remove aggregation protection mode when aggregation protection mode is enabled the hardware needs to send RTS/CTS for each HT frame. Currently its disabled so remove the unused call backs. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 7e4b4eecedb3c6bd5f9fec479ef33ccc6ce72375 Author: Daniel Drake Date: Mon May 2 21:38:16 2011 +0100 libertas: remove tx_timeout handler As described at http://marc.info/?l=linux-netdev&m=130428493104730&w=2 libertas frequently generates spurious tx timeouts, because the tx queue is brought down for extended periods during scanning. The net layer takes a look and incorrectly assumes the queue has been down for several seconds, and generates a tx_timeout. One way to fix this is to bump the trans_start counter while scanning so that the network layer knows that the device is still alive, but I think the tx_timeout handler is implemented wrongly here and not of any real use, so I vote to remove it. As explained at http://marc.info/?l=linux-wireless&m=130430311115755&w=2 the watchdog is primarily meant to deal with lockup on the hardware TX path (detected by the tx queue being stopped for an extended period of time), but this is unlikely to happen with libertas. In this case, the tx queue is stopped only while waiting for lbs_thread to send the queued frame to the driver, and lbs_thread wakes up the queue immediately after, even if the frame could not be sent correctly. So, the only hardware-related possibility that this catches is if hw_host_to_card hangs - this is something I have never seen. And if it were to happen, nothing done by lbs_tx_timeout would actually wake up lbs_thread any quicker than otherwise. Removing this oddly-behaving spuriously-firing tx_timeout handler should fix an occasional kernel crash during resume (http://dev.laptop.org/ticket/10748) Signed-off-by: Daniel Drake Acked-by: Dan Williams Signed-off-by: John W. Linville commit 470ab2a23b453518ac86937572b4531d8925ca55 Author: Rajkumar Manoharan Date: Fri Apr 29 14:48:45 2011 +0530 mac80211: use wake_queue to restart trasmit netif_tx_start_all_queues is used to allow the upper layer to transmit frames but it does not restart transmission. To restart the trasmission use netif_tx_wake_all_queues. Not doing so, sometimes stalls the transmission and the application has to be restarted to proceed further. This issue was originally found while sending udp traffic in higer bandwidth in open environment without bgscan. Cc: stable@kernel.org Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 2f6fc351e6e8c1b6a95140e733607e32bc3a4322 Author: Rajkumar Manoharan Date: Thu Apr 28 15:31:57 2011 +0530 ath9k: Fix drain txq failure in flush While draining the txq in flush, the buffers can be added into the tx queue by tx_tasklet which leads to unneccesary chip reset. This issue was originially found with AR9382 and running heavy uplink udp traffic with higher bandwidth and doing frequent bgscan. Cc: stable@kernel.org Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 228e548e602061b08ee8e8966f567c12aa079682 Author: Anton Blanchard Date: Mon May 2 20:21:35 2011 +0000 net: Add sendmmsg socket system call This patch adds a multiple message send syscall and is the send version of the existing recvmmsg syscall. This is heavily based on the patch by Arnaldo that added recvmmsg. I wrote a microbenchmark to test the performance gains of using this new syscall: http://ozlabs.org/~anton/junkcode/sendmmsg_test.c The test was run on a ppc64 box with a 10 Gbit network card. The benchmark can send both UDP and RAW ethernet packets. 64B UDP batch pkts/sec 1 804570 2 872800 (+ 8 %) 4 916556 (+14 %) 8 939712 (+17 %) 16 952688 (+18 %) 32 956448 (+19 %) 64 964800 (+20 %) 64B raw socket batch pkts/sec 1 1201449 2 1350028 (+12 %) 4 1461416 (+22 %) 8 1513080 (+26 %) 16 1541216 (+28 %) 32 1553440 (+29 %) 64 1557888 (+30 %) We see a 20% improvement in throughput on UDP send and 30% on raw socket send. [ Add sparc syscall entries. -DaveM ] Signed-off-by: Anton Blanchard Signed-off-by: David S. Miller commit 1c5cae815d19ffe02bdfda1260949ef2b1806171 Author: Jiri Pirko Date: Sat Apr 30 01:21:32 2011 +0000 net: call dev_alloc_name from register_netdevice Force dev_alloc_name() to be called from register_netdevice() by dev_get_valid_name(). That allows to remove multiple explicit dev_alloc_name() calls. The possibility to call dev_alloc_name in advance remains. This also fixes veth creation regresion caused by 84c49d8c3e4abefb0a41a77b25aa37ebe8d6b743 Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 890641b2512f491f28e4ef7536dca1ea93dae997 Merge: eaef6a9 25eaea30 Author: John W. Linville Date: Thu May 5 13:56:27 2011 -0400 Merge branch 'for-linville' of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx commit e8920674979705392abc4db4ebbe78feb68a4da1 Author: Dmitry Kravkov Date: Wed May 4 23:52:40 2011 +0000 bnx2x: function descriptions format fixed Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 5de924086aca9f17eee9ad569e0af2f699f591b3 Author: Dmitry Kravkov Date: Wed May 4 23:51:13 2011 +0000 bnx2x: update year to 2011 and version to 1.62.12-0 Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit b3b83c3f3c640b239f1f1dfc49c0ecafbc074fdb Author: Dmitry Kravkov Date: Wed May 4 23:50:33 2011 +0000 bnx2x: improve memory handling, low memory recovery flows Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 426b92415074d6d268c7aac4561efecd3785d0b1 Author: Dmitry Kravkov Date: Wed May 4 23:49:53 2011 +0000 bnx2x: Do storage mac address validation for SF mode. Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit f9a3ebbe657b5dcd562224b32d1703da499063db Author: Dmitry Kravkov Date: Wed May 4 23:49:11 2011 +0000 bnx2x: allow WoL on every function in MF modes Signed-off-by: Dmitry Kravkov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 2ae17f666099c952053eea7c64cac8189dd76f72 Author: Vladislav Zolotarov Date: Wed May 4 23:48:23 2011 +0000 bnx2x: link report improvements To avoid link notification duplication Signed-off-by: Dmitry Kravkov Signed-off-by: Vladislav Zolotarov Signed-off-by: Eilon Greenstein Signed-off-by: David S. Miller commit 3d68b39926b3b247d76cc4da0256e979b2b730e3 Author: Konrad Rzeszutek Wilk Date: Thu May 5 13:42:10 2011 -0400 xen/blkback: Fix up some of the comments. They had the wrong data or were in the wrong spot. Signed-off-by: Konrad Rzeszutek Wilk commit fc53bf757ede292312eee10d64f4e691c8c8cebf Author: Konrad Rzeszutek Wilk Date: Thu May 5 13:37:23 2011 -0400 xen/blkback: Squash the checking for operation into dispatch_rw_block_io We do a check for the operations right before calling dispatch_rw_block_io. And then we do the same check in dispatch_rw_block_io. This patch squashes those checks into the 'dispatch_rw_block_io' function. Signed-off-by: Konrad Rzeszutek Wilk commit 24f567f952aa308c3352f3340b9d296fc72bd066 Author: Konrad Rzeszutek Wilk Date: Wed May 4 17:07:27 2011 -0400 xen/blkback: Add support for BLKIF_OP_FLUSH_DISKCACHE and drop BLKIF_OP_WRITE_BARRIER. We drop the support for 'feature-barrier' and add in the support for the 'feature-flush-cache' if the real backend storage supports flushing. Signed-off-by: Konrad Rzeszutek Wilk commit 73d842af27b863cbc816e75003edbc287bf57130 Author: Konrad Rzeszutek Wilk Date: Thu May 5 12:41:03 2011 -0400 xen-blkfront: Provide for 'feature-flush-cache' the BLKIF_OP_WRITE_FLUSH_CACHE operation. The operation BLKIF_OP_WRITE_FLUSH_CACHE has existed in the Xen tree header file for years but it was never present in the Linux tree because the frontend (nor the backend) supported this interface. Signed-off-by: Konrad Rzeszutek Wilk commit 34da9e50e908c4553ddefb38da2c5bacbe2bba58 Author: Giuseppe CAVALLARO Date: Thu May 5 00:10:50 2011 +0000 stmmac: removed not used definitions Reported-by: Karim Hamiti Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit a70171dce9cd44cb06c7d299eba9fa87a8933045 Merge: 5a412ad eaef6a9 Author: John W. Linville Date: Thu May 5 13:32:35 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: drivers/net/wireless/libertas/if_cs.c drivers/net/wireless/rtlwifi/pci.c net/bluetooth/l2cap_sock.c commit 23691d75cdc69c3b285211b4d77746aa20a17d18 Author: Gustavo F. Padovan Date: Wed Apr 27 18:26:32 2011 -0300 Bluetooth: Remove l2cap_sk_list A new list was added to replace the socket based one. This new list doesn't depent on sock and then fits better inside l2cap_core.c code. It also rename l2cap_chan_alloc() to l2cap_chan_create() and l2cap_chan_free() to l2cap_chan_destroy) Signed-off-by: Gustavo F. Padovan commit 73b2ec18532f45e9028ce4c7bc8d7f8818eabd2a Author: Gustavo F. Padovan Date: Mon Apr 18 19:36:44 2011 -0300 Bluetooth: Handle psm == 0 case inside l2cap_add_psm() When the user doesn't specify a psm we have the choose one for the channel. Now we do this inside l2cap_add_psm(). Signed-off-by: Gustavo F. Padovan commit 9e4425fff9e0a0fb6a8c705777ed861f991f8747 Author: Gustavo F. Padovan Date: Mon Apr 18 18:38:43 2011 -0300 Bluetooth: Add l2cap_add_psm() and l2cap_add_scid() The intention is to get rid of the l2cap_sk_list usage inside l2cap_core.c. l2cap_sk_list will soon be replaced by a list that does not depend on socket usage. Signed-off-by: Gustavo F. Padovan commit 7388754e0399d341e6d02fc7394b3727cad57371 Author: Ville Syrjala Date: Wed May 4 20:54:27 2011 -0700 Input: ati_remote2 - return the error code from sysfs channel_mask store If the channel_mask setup fails when configuring it through sysfs, return the error code to the caller instead of claiming success. Signed-off-by: Ville Syrjala Signed-off-by: Dmitry Torokhov commit 9cc7c80b57c66d08e67f297169783d1f07288066 Author: Dmitry Torokhov Date: Wed May 4 20:54:27 2011 -0700 Input: sh_keysc - only compile PM code if PM is enabled Signed-off-by: Dmitry Torokhov commit 7372b0b122af0f6675f3ab65bfd91c8a438e0480 Author: Andi Kleen Date: Wed May 4 15:09:27 2011 -0700 clockevents: Move C3 stop test outside lock Avoid taking broadcast_lock in the idle path for systems where the timer doesn't stop in C3. [ tglx: Removed the stale label and added comment ] Signed-off-by: Andi Kleen Cc: Dave Kleikamp Cc: Chris Mason Cc: Peter Zijlstra Cc: Tim Chen Cc: lenb@kernel.org Cc: paulmck@us.ibm.com Link: http://lkml.kernel.org/r/%3C20110504234806.GF2925%40one.firstfloor.org%3E Signed-off-by: Thomas Gleixner commit eaef6a93bd52a2cc47b9fce201310010707afdb4 Author: Mohammed Shafi Shajakhan Date: Thu May 5 10:59:24 2011 +0530 mac80211: Fix a warning due to skipping tailroom reservation for IV The devices that require IV generation in software need tailroom reservation for ICVs used in TKIP or WEP encryptions. Currently, decision to skip the tailroom reservation in the tx path was taken only on whether driver wants MMIC to be generated in software or not. Following patch appends IV generation check for such decisions and fixes the following warning. WARNING: at net/mac80211/wep.c:101 ieee80211_wep_add_iv+0x56/0xf3() Hardware name: 64756D6 Modules linked in: ath9k ath9k_common ath9k_hw Pid: 0, comm: swapper Tainted: G W 2.6.39-rc5-wl Call Trace: [] warn_slowpath_common+0x65/0x7a [] ? ieee80211_wep_add_iv+0x56/0xf3 [] warn_slowpath_null+0xf/0x13 [] ieee80211_wep_add_iv+0x56/0xf3 [] ieee80211_crypto_wep_encrypt+0x63/0x88 [] ieee80211_tx_h_encrypt+0x2f/0x63 [] invoke_tx_handlers+0x93/0xe1 [] ieee80211_tx+0x4b/0x6d [] ieee80211_xmit+0x180/0x188 [] ? ieee80211_skb_resize+0x95/0xd9 [] ieee80211_subif_start_xmit+0x64f/0x668 [] dev_hard_start_xmit+0x368/0x48c [] sch_direct_xmit+0x4d/0x101 [] dev_queue_xmit+0x2c1/0x43f [] ? eth_header+0x1e/0x90 [] ? eth_type_trans+0x91/0xc2 [] ? eth_rebuild_header+0x53/0x53 [] neigh_resolve_output+0x223/0x27e [] ip_finish_output2+0x1d4/0x1fe [] ip_finish_output+0x79/0x7d [] T.1075+0x43/0x48 [] ip_output+0x75/0x7b [] dst_output+0xc/0xe [] ip_local_out+0x17/0x1a [] ip_queue_xmit+0x2aa/0x2f8 [] ? sk_setup_caps+0x21/0x92 [] ? __tcp_v4_send_check+0x7e/0xb7 [] tcp_transmit_skb+0x6a1/0x6d7 [] ? tcp_established_options+0x20/0x8b [] tcp_retransmit_skb+0x43a/0x527 [] tcp_retransmit_timer+0x32e/0x45d [] tcp_write_timer+0x87/0x16c [] run_timer_softirq+0x156/0x1f9 [] ? tcp_retransmit_timer+0x45d/0x45d [] __do_softirq+0x97/0x14a [] ? irq_enter+0x4d/0x4d Cc: Yogesh Powar Reported-by: Fabio Rossi Tested-by: Fabio Rossi Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 8c4e708d01424f88afde64a96ffd05146c9978b8 Author: Bruno Prémont Date: Wed May 4 21:08:42 2011 +0200 HID: picolcd: Avoid compile warning/error triggered by copy_from_user() With CONFIG_DEBUG_STRICT_USER_COPY_CHECKS=y compilation of PicoLCD driver fails on copy_from_user(), without it a warning is generated: CC [M] drivers/hid/hid-picolcd.o In file included from /usr/src/linux-2.6/arch/x86/include/asm/uaccess.h:571, from /usr/src/linux-2.6/arch/x86/include/asm/sections.h:5, from /usr/src/linux-2.6/arch/x86/include/asm/hw_irq.h:26, from /usr/src/linux-2.6/include/linux/irq.h:359, from /usr/src/linux-2.6/arch/x86/include/asm/hardirq.h:5, from /usr/src/linux-2.6/include/linux/hardirq.h:7, from /usr/src/linux-2.6/include/linux/interrupt.h:12, from /usr/src/linux-2.6/include/linux/usb.h:15, from /usr/src/linux-2.6/drivers/hid/hid-picolcd.c:25: In function 'copy_from_user', inlined from 'picolcd_debug_eeprom_write' at drivers/hid/hid-picolcd.c:1592: arch/x86/include/asm/uaccess_32.h:212: error: call to 'copy_from_user_overflow' declared with attribute error: copy_from_user() buffer size is not provably correct gcc-4.4.5 is not able to track size calculation when it is stored into a variable, thus tell copy_from_user() maximum size via min(*max-size*, *effective-size*) explicitly and inline how much to copy at most. Signed-off-by: Bruno Prémont Signed-off-by: Jiri Kosina commit 588da3b3be8b3225c2dd192aa782bf6c5c32eb84 Author: Steven Whitehouse Date: Thu May 5 12:36:38 2011 +0100 GFS2: Don't use a try lock when promoting to a higher mode Previously we marked all locks being promoted to a higher mode with the try flag to avoid any potential deadlocks issues. The DLM is able to detect these and report them in way that GFS2 can deal with them correctly. So we can just request the required mode and wait for a response without needing to perform this check. Signed-off-by: Steven Whitehouse commit d192a8e5c6fec4fe8cdafebccc415db4074dee88 Author: Steven Whitehouse Date: Thu May 5 12:35:40 2011 +0100 GFS2: Double check link count under glock To avoid any possible races relating to the link count, we need to recheck it under the inode's glock in all cases where it matters. Also to ensure we never get any nasty surprises, this patch also ensures that once the link count has hit zero it can never be elevated by rereading in data from disk. The only place we cannot provide a proper solution is in rename in the case where we are removing a target inode and we discover that the target inode has been already unlinked on another node. The race window is very small, and we return EAGAIN in this case to indicate what has happened. The proper solution would be to move the lookup parts of rename from the vfs into library calls which the fs could call directly, but that is potentially a very big job and this fix should cover most cases for now. Signed-off-by: Steven Whitehouse commit c8d55a9d9e257e67d02a6f673a943dd77e6bf24e Author: Kurt Van Dijck Date: Tue May 3 18:42:04 2011 +0000 can: rename can_try_module_get to can_get_proto can: rename can_try_module_get to can_get_proto can_try_module_get does return a struct can_proto. The name explains what is done in so much detail that a caller may not notice that a struct can_proto is locked/unlocked. Signed-off-by: Kurt Van Dijck Acked-by: Oliver Hartkopp Signed-off-by: David S. Miller commit 1650629d1800bf05ad775f974e931ca2fa03b0ff Author: Kurt Van Dijck Date: Tue May 3 18:40:57 2011 +0000 can: make struct can_proto const commit 53914b67993c724cec585863755c9ebc8446e83b had the same message. That commit did put everything in place but did not make can_proto const itself. Signed-off-by: Kurt Van Dijck Acked-by: Oliver Hartkopp Signed-off-by: David S. Miller commit e1287eb891e326ea8451b03ba1f9b0d66abdb13d Author: Arun Sharma Date: Wed May 4 13:48:11 2011 -0700 Replace '-' in kernel version with '_' Removing the '-' results in hard to read filenames such as: kernel-2.6.35.2000042g76e4caf-28.x86_64.rpm kernel-2.6.35.2_000042_g76e4caf-28.x86_64.rpm is easier to read. Signed-off-by: Arun Sharma Signed-off-by: Michal Marek commit 5a412ad7f4c95bb5b756aa12b52646e857e7c75d Merge: 301102c 6716344 Author: David S. Miller Date: Wed May 4 13:54:50 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-next-2.6 commit 76ce94a37187327c09343a98726ccea81f9eab54 Author: Michal Marek Date: Fri Apr 29 16:24:20 2011 +0200 MAINTAINERS: Update KCONFIG entry Roman Zippel hasn't been active for several years. Add myself as kconfig maintainer, but change the mode to "Odd Fixes" to not set expectations too high. Also, remove the patchwork link, since it is not used for kbuild/kconfig. Signed-off-by: Michal Marek Acked-by: Geert Uytterhoeven commit 301102cc832f9f3e24c5748705f152eaa7c307f6 Author: David S. Miller Date: Wed May 4 12:46:24 2011 -0700 ipv6: Use flowi4->{daddr,saddr} in ipip6_tunnel_xmit(). Instead of rt->rt_{dst,src} Signed-off-by: David S. Miller commit cbb1e85f9cfd2bd9b7edfd21d167e89a4279faf0 Author: David S. Miller Date: Wed May 4 12:33:34 2011 -0700 ipv4: Kill rt->rt_{src, dst} usage in IP GRE tunnels. First, make callers pass on-stack flowi4 to ip_route_output_gre() so they can get at the fully resolved flow key. Next, use that in ipgre_tunnel_xmit() to avoid the need to use rt->rt_{dst,src}. Signed-off-by: David S. Miller commit 9a1b9496cd2b013f74885218947fa7120d53e74c Author: David S. Miller Date: Wed May 4 12:18:54 2011 -0700 ipv4: Pass explicit saddr/daddr args to ipmr_get_route(). This eliminates the need to use rt->rt_{src,dst}. Signed-off-by: David S. Miller commit 6716344c521bb585c1b89987c918d4b83b81adbe Author: Don Skidmore Date: Tue Apr 26 08:00:00 2011 +0000 ixgbe: Cleanup PCIe bus speed info PCIe connections should be expressed as GT/s (GigaTransfers per second) instead of the current Gb/s (Gigabits per second). In addition, it is incorrect because (due to PCIe gen 1 & 2 having a 20% overhead) the actually data rate, when expressed in Gb/s, is only 80% of the rate of GT/s. Signed-off-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 68c7005d664724eab87627b042e149a736622d54 Author: Emil Tantilov Date: Wed Apr 20 08:49:06 2011 +0000 ixgbe: improve EEPROM read/write operations Introduce buffered read/writes which greatly improves performance on parts with large EEPROMs. Previously reading/writing a word requires taking/releasing of synchronization semaphores which adds 10ms to each operation. The optimization is to read/write in buffers, but make sure the semaphore is not held for >500ms according to the datasheet. Since we can't read the EEPROM page size ixgbe_detect_eeprom_page_size() is used to discover the EEPROM size when needed and keeps the result in word_page_size for the rest of the run time. Use buffered reads for ethtool -e. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 95a46011843a3c49e1a002eddb6b2735c201e378 Author: Emil Tantilov Date: Thu Apr 14 07:46:41 2011 +0000 ixgbe: fix sparse warning warning: symbol 'before' shadows an earlier one Convert large macros to functions similar to e1000e. Signed-off-by: Emil Tantilov Acked-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 2698b20842884d7d4de55ea559baa57e2f2ebea4 Author: Don Skidmore Date: Wed Apr 13 07:01:52 2011 +0000 ixgbe: fix typo error with software defined pins on 82599 Correcting a simple typo with enabling software defined pins. I don't believe this was causing any issues but this is how it was meant to be implemented. Signed-off-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 6d980c3e50189e5437fdb5ef2c6e6d3c282035dc Author: Emil Tantilov Date: Wed Apr 13 04:56:15 2011 +0000 ixgbe: Use function pointer for ixgbe_acquire/release_swfw_sync() Change remaining direct calls to function pointers. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 97322b3303a1de979b973dc1d0a43091f27258ac Author: stephen hemminger Date: Tue Apr 5 04:26:27 2011 +0000 igbvf: remove bogus phys_id This device lies about supporting phys_id. Remove it and just let the upper layer report not supported. Signed-off-by: Stephen Hemminger Tested-by: Signed-off-by: Jeff Kirsher commit f6b1bfd17d42f9dc1d799b7e0eed817ed75005ec Author: Carolyn Wyborny Date: Wed May 4 04:29:51 2011 +0000 igb: Add check for invalid size to igb_get_invariants_82575() Recent commits have changed how EEPROM size is checked and if the size word is misconfigured, the driver will fail to load. This patch adds a check for invalid size word in the EEPROM and uses default size instead for 82576 parts. Reported-by: Stefan Assmann Signed-off-by: Carolyn Wyborny Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit ec7e97e9a0265255485e217f4f2d3513949e7083 Author: Jeff Kirsher Date: Tue May 3 05:17:34 2011 +0000 ixgb: convert to set_phys_id Based on the original patch sent by Stephen Hemminger. This version incorporates the ethtool changes that Bruce Allan submitted. CC: Stephen Hemminger Signed-off-by: Jeff Kirsher Tested-by: Evan Swanson commit dd927a2694ee412b440284dd72dd8e32caada3fc Author: David S. Miller Date: Wed May 4 12:03:30 2011 -0700 ipv4: In ip_build_and_send_pkt() use 'saddr' and 'daddr' args passed in. Instead of rt->rt_{dst,src} The only tricky part is source route option handling. If the source route option is enabled we can't just use plain 'daddr', we have to use opt->opt.faddr. Signed-off-by: David S. Miller commit dca97ad2ec37aa98c45dfe1d531d9ba7048e814e Author: Emil Tantilov Date: Wed Apr 27 08:51:29 2011 +0000 e100: fix build warning In function 'e100_hw_init': warning: 'err' may be used uninitialized in this function Signed-off-by: Emil Tantilov Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit d2e48c1d4184a0baa4bf09920b63661e0b860b8c Author: Chris Metcalf Date: Tue May 3 16:47:22 2011 -0400 arch/tile: update defconfig file to something more useful Signed-off-by: Chris Metcalf commit ceca3c193e73bb409d093515fae9e5ef02ffa2de Author: Oleg Nesterov Date: Tue Apr 26 22:37:11 2011 +0200 tile: do_hardwall_trap: do not play with task->sighand 1. do_hardwall_trap() checks ->sighand != NULL and then takes ->siglock. This is unsafe even if the task can't run (I assume it is pinned to the same CPU), its parent can reap the task and set ->sighand = NULL right after this check. Even if the compiler dosn't read ->sighand twice and this memory can't to away __group_send_sig_info() is wrong after that. Use do_send_sig_info(). 2. Send SIGILL to the thread, not to the whole process. Unless it has the handler or blocked this kills the whole thread-group as before. IIUC, different threads can be bound to different rect's. 3. Check PF_EXITING instead of ->sighand. A zombie thread can go away but its ->sighand can be !NULL. Reported-by: Matt Fleming Signed-off-by: Oleg Nesterov Signed-off-by: Chris Metcalf commit dc0b124d8edc6c2f95fc3a689cd40ec05ad85108 Author: KOSAKI Motohiro Date: Mon Apr 18 21:18:11 2011 +0900 tile: replace mm->cpu_vm_mask with mm_cpumask() We plan to change mm->cpu_vm_mask definition later. Thus, this patch convert it into proper macro. Signed-off-by: KOSAKI Motohiro Signed-off-by: Chris Metcalf commit ef0aaf873ebadd7576f4fb2085ec4557a9df8bf5 Author: James Hogan Date: Mon Apr 4 16:21:47 2011 +0100 tile,mn10300: add device parameter to dma_cache_sync() Since v2.6.20 "Pass struct dev pointer to dma_cache_sync()" (d3fa72e4556ec1f04e46a0d561d9e785ecaa173d), dma_cache_sync() takes a struct dev pointer, but these appear to be missing from the tile and mn10300 implementations, so add them. Signed-off-by: James Hogan [cmetcalf@tilera.com: took only the "tile" portion as I don't maintain mn10300] Signed-off-by: Chris Metcalf commit aaeb012fe4700cb808562c2daf7ccc464e7f18cf Author: Chris Metcalf Date: Mon May 2 16:52:19 2011 -0400 audit: support the "standard" Many of the syscalls mentioned in the audit code are not present for architectures that implement only the "standard" set of Linux syscalls (e.g. openat, but not open, etc.). This change adds proper #ifdefs for all those syscalls. Acked-by: Arnd Bergmann Signed-off-by: Chris Metcalf commit d07bd86d82622247dba8cc29974d3860f857ea33 Author: Chris Metcalf Date: Mon May 2 16:36:48 2011 -0400 arch/tile: clarify flush_buffer()/finv_buffer() function names They are only applicable for locally-homecached memory ranges, so change their names to {flush,finv}_buffer_local(). Change inv_buffer() to just do an mf instead of any kind of fancier barrier, since you're obviously not going to be waiting for anything once the local homecache is invalidated. Fix tilepro.c network driver not to bother calling finv_buffer when stopping the EPP, but just mf after memset to ensure that it will not see any packet data after we finish stopping; use finv_buffer_remote() when doing exit-time cleanup. This also fixes a (not very interesting) generic Linux build failure where drivers/scsi/st.c declares its own flush_buffer(). Signed-off-by: Chris Metcalf commit 5386e735897afd8bcd332caf21a5f68d9e0e81c6 Author: Chris Metcalf Date: Mon May 2 16:21:12 2011 -0400 arch/tile: kernel-related cleanups from removing static page size User space code has been able to discover the static page size by including a special file. In the current release, that file is now gone, and doesn't rely on it. The getpagesize() API is now the only way for userspace to get the page size. Signed-off-by: Chris Metcalf commit 28d717411badb78df71ecf087a07b93caf418f59 Author: Chris Metcalf Date: Mon May 2 16:06:42 2011 -0400 arch/tile: various header improvements for building drivers This change adds a number of missing headers in asm (fb.h, parport.h, serial.h, and vga.h) using the minimal generic versions. It also adds a number of missing interfaces that showed up as build failures when trying to build various drivers not normally included in the "tile" distribution: ioremap_wc(), memset_io(), io{read,write}{16,32}be(), virt_to_bus(), bus_to_virt(), irq_canonicalize(), __pte(), __pgd(), and __pmd(). I also added a cast in virt_to_page() since not all callers pass a pointer. I fixed to properly include a __KERNEL__ guard for the __ARCH_WANT_STAT64 symbol, and to use __builtin_bswap32() even for our 64-bit architecture, since the same code is produced. I added an export for get_cycles(), since it's used in some modules. And I made properly include the __KERNEL__ guard, even though it's not yet exported, since it likely will be soon. Signed-off-by: Chris Metcalf commit dbb434214e34014dc7acb0e7811c37471df26a72 Author: Chris Metcalf Date: Mon May 2 15:54:32 2011 -0400 arch/tile: disable GX prefetcher during cache flush Otherwise, it's possible to end up with the prefetcher pulling data into cache that the code believes has been flushed. Signed-off-by: Chris Metcalf commit 43d9ebba93b4e775f89efc1eeeed3075a4ab4741 Author: Chris Metcalf Date: Mon May 2 15:51:32 2011 -0400 arch/tile: tolerate disabling CONFIG_BLK_DEV_INITRD The code accidentally was relying on this configuration option being selected. Signed-off-by: Chris Metcalf commit 229f4df1fb84e5d3306b4fc49b41f7847340092d Author: Chris Metcalf Date: Mon May 2 15:35:06 2011 -0400 arch/tile: properly flush the I$ when unloading kernel modules Otherwise, in principle, there could be stale I$ data present next time the page that previously held the kernel module code was used to run some new code. Signed-off-by: Chris Metcalf commit 7194988fb5add6341b95f4501f6778bf27b4d3de Author: Chris Metcalf Date: Mon May 2 15:22:18 2011 -0400 arch/tile: disable SD_WAKE_AFFINE flag on CPU/NODE scheduling domain This allows processes to spread more effectively to multiple cores (particularly important on 64-core chips!). Signed-off-by: Chris Metcalf commit df29ccb6c06dcb65867d4fd3c2fa473017f60ecc Author: Chris Metcalf Date: Mon May 2 15:13:13 2011 -0400 arch/tile: allow nonatomic stores to interoperate with fast atomic syscalls This semantic was already true for atomic operations within the kernel, and this change makes it true for the fast atomic syscalls (__NR_cmpxchg and __NR_atomic_update) as well. Previously, user-space had to use the fast atomic syscalls exclusively to update memory, since raw stores could lose a race with the atomic update code even when the atomic update hadn't actually modified the value. With this change, we no longer write back the value to memory if it hasn't changed. This allows certain types of idioms in user space to work as expected, e.g. "atomic exchange" to acquire a spinlock, followed by a raw store of zero to release the lock. Signed-off-by: Chris Metcalf commit 398fa5a9319797e43f67b215337afe62e39475ef Author: Chris Metcalf Date: Mon May 2 15:09:42 2011 -0400 arch/tile: improve support for PCI hotplug Note that this is not complete hot-plug support; hot-unplug is not included. Signed-off-by: Chris Metcalf commit 69458cb194e82972347a004054e0baed719ed008 Author: David S. Miller Date: Wed May 4 11:10:28 2011 -0700 ipv4: Use flowi4->{daddr,saddr} in ipip_tunnel_xmit(). Instead of rt->rt_{dst,src} Signed-off-by: David S. Miller commit 9cddf15f18865c4f7124d829be41799f59aaa5cf Author: Randy Dunlap Date: Wed May 4 11:06:05 2011 -0700 x86/net: only select BPF_JIT when NET is enabled Fix kconfig unmet dependency warning: HAVE_BPF_JIT depends on NET, so make the "select" of it depend on NET also. warning: (X86) selects HAVE_BPF_JIT which has unmet direct dependencies (NET) Signed-off-by: Randy Dunlap Signed-off-by: David S. Miller commit f428c94c842343b8580751cf637794050ca12d77 Author: Randy Dunlap Date: Wed May 4 09:53:10 2011 -0700 ALSA: lola - fix lola build sound/pci/lola/Makefile was trying to build lola modules even when PCI and SND_LOLA were not enabled, causing build errors: ERROR: "snd_pcm_hw_constraint_step" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_period_elapsed" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_dma_alloc_pages" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_hw_constraint_integer" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_sgbuf_ops_page" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_set_ops" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_lib_free_pages" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_lib_ioctl" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_lib_malloc_pages" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_sgbuf_get_chunk_size" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_dma_free_pages" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_lib_preallocate_pages_for_all" [sound/pci/lola/snd-lola.ko] undefined! ERROR: "snd_pcm_new" [sound/pci/lola/snd-lola.ko] undefined! Fix the Makefile to build only when CONFIG_SND_LOLA is enabled. Signed-off-by: Randy Dunlap Signed-off-by: Takashi Iwai commit 447ee6a7cbbfb5ae7ab8f9b8b058b4a04fe398bf Author: Takashi Iwai Date: Wed May 4 18:28:50 2011 +0200 ALSA: hda - Use position_fix=3 as default for AMD chipsets AMD chipsets often behave pretty badly regarding the DMA position reporting. It results in the bad quality audio recording. Using position_fix=3 works well in general for them, so let's enable it as default for AMD. Signed-off-by: Takashi Iwai commit 1a8e1463a49aaa452da1cefe184a00d4df47f1ef Author: Kees Cook Date: Wed May 4 08:38:56 2011 -0700 [CPUFREQ] remove redundant sprintf from request_module call. Since format string handling is part of request_module, there is no need to construct the module name. As such, drop the redundant sprintf and heap usage. Signed-off-by: Kees Cook Signed-off-by: Dave Jones commit 469057d587a9de2cd6087d71a008b908e785a5b6 Author: Karthigan Srinivasan Date: Fri Apr 1 17:34:47 2011 -0500 [CPUFREQ] cpufreq_stats.c: Fixed brace coding style issue Fixed brace coding style issue. Signed-off-by: Karthigan Srinivasan Signed-off-by: Dave Jones commit 98586ed8b8878e10691203687e89a42fa3355300 Author: steven finney Date: Mon May 2 11:29:17 2011 -0700 [CPUFREQ] Fix memory leak in cpufreq_stat When a CPU is taken offline in an SMP system, cpufreq_remove_dev() nulls out the per-cpu policy before cpufreq_stats_free_table() can make use of it. cpufreq_stats_free_table() then skips the call to sysfs_remove_group(), leaving about 100 bytes of sysfs-related memory unclaimed each time a CPU-removal occurs. Break up cpu_stats_free_table into sysfs and table portions, and call the sysfs portion early. Signed-off-by: Steven Finney Signed-off-by: Dave Jones Cc: stable@kernel.org commit 335dc3335ff692173bc766b248f7a97f3a23b30a Author: Thiago Farina Date: Thu Apr 28 20:42:53 2011 -0300 [CPUFREQ] cpufreq.h: Fix some checkpatch.pl coding style issues. Before: $ scripts/checkpatch.pl --file --terse include/linux/cpufreq.h total: 14 errors, 11 warnings, 419 lines checked After: $ scripts/checkpatch.pl --file --terse include/linux/cpufreq.h total: 2 errors, 4 warnings, 422 lines checked Signed-off-by: Thiago Farina Signed-off-by: Dave Jones commit 2d06d8c49afdcc9bb35a85039fa50f0fe35bd40e Author: Dominik Brodowski Date: Sun Mar 27 15:04:46 2011 +0200 [CPUFREQ] use dynamic debug instead of custom infrastructure With dynamic debug having gained the capability to report debug messages also during the boot process, it offers a far superior interface for debug messages than the custom cpufreq infrastructure. As a first step, remove the old cpufreq_debug_printk() function and replace it with a call to the generic pr_debug() function. How can dynamic debug be used on cpufreq? You need a kernel which has CONFIG_DYNAMIC_DEBUG enabled. To enabled debugging during runtime, mount debugfs and $ echo -n 'module cpufreq +p' > /sys/kernel/debug/dynamic_debug/control for debugging the complete "cpufreq" module. To achieve the same goal during boot, append ddebug_query="module cpufreq +p" as a boot parameter to the kernel of your choice. For more detailled instructions, please see Documentation/dynamic-debug-howto.txt Signed-off-by: Dominik Brodowski Signed-off-by: Dave Jones commit 27ecddc2a9f99ce4ac9a59a0acd77f7100b6d034 Author: Jacob Shin Date: Wed Apr 27 13:32:11 2011 -0500 [CPUFREQ] CPU hotplug, re-create sysfs directory and symlinks When we discover CPUs that are affected by each other's frequency/voltage transitions, the first CPU gets a sysfs directory created, and rest of the siblings get symlinks. Currently, when we hotplug off only the first CPU, all of the symlinks and the sysfs directory gets removed. Even though rest of the siblings are still online and functional, they are orphaned, and no longer governed by cpufreq. This patch, given the above scenario, creates a sysfs directory for the first sibling and symlinks for the rest of the siblings. Please note the recursive call, it was rather too ugly to roll it out. And the removal of redundant NULL setting (it is already taken care of near the top of the function). Signed-off-by: Jacob Shin Acked-by: Mark Langsdorf Reviewed-by: Thomas Renninger Signed-off-by: Dave Jones Cc: stable@kernel.org commit 904cc1e637a00dba1b58e7752f485f90ebf2a568 Author: Naga Chumbalkar Date: Tue Apr 26 17:05:18 2011 +0000 [CPUFREQ] Fix _OSC UUID in pcc-cpufreq UUID needs to be written out the way it is described in Sec 18.5.124 of ACPI 4.0a Specification. Platform firmware's use of this UUID/_OSC is optional, which is why we didn't notice this bug earlier. Signed-off-by: Naga Chumbalkar Signed-off-by: Dave Jones Cc: stable@kernel.org commit 621496f4fd56195b7b273521f467c2945165481f Author: David Sterba Date: Wed May 4 12:56:49 2011 +0200 btrfs: remove unused function prototypes function prototypes without a body Signed-off-by: David Sterba commit 81024fc41a9353160bc445fda4f96d1aa5e82791 Author: Jiri Kosina Date: Wed May 4 13:41:31 2011 +0200 APM: take over maintainership Commit 04a6553f076 ("apm: orphan the driver") Orphaned the APM driver as Stephen is not willing/able to maintain it any more. As I still have some hardware that is using APM and running 2.6, I can take it over. Signed-off-by: Jiri Kosina commit 931aeeda0dca81152aec48f30be01e86a268bf89 Author: Vladimir Davydov Date: Tue May 3 22:31:07 2011 +0400 sched: Remove unused 'this_best_prio arg' from balance_tasks() It's passed across multiple functions but is never really used, so remove it. Signed-off-by: Vladimir Davydov Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1304447467-29200-1-git-send-email-vdavydov@parallels.com Signed-off-by: Ingo Molnar commit e7e7ee2eab2080248084d71fe0a115ab745eb2aa Author: Ingo Molnar Date: Wed May 4 08:42:29 2011 +0200 perf events: Clean up definitions and initializers, update copyrights Fix a few inconsistent style bits that were added over the past few months. Cc: Peter Zijlstra Link: http://lkml.kernel.org/n/tip-yv4hwf9yhnzoada8pcpb3a97@git.kernel.org Signed-off-by: Ingo Molnar commit 179eb03268aa1da03d90f1566ea85dc1478d3ae3 Author: Thomas Gleixner Date: Wed May 4 08:18:34 2011 +0200 alarmtimer: Drop device refcount after rtc_open() class_find_device() takes a refcount on the rtc device. rtc_open() takes another one, so we can drop it after the rtc_open() call. Signed-off-by: Thomas Gleixner Cc: John Stultz commit ce788f930b0cdf821de7ee8f84cfe8cf7fcb6311 Author: Thomas Gleixner Date: Wed May 4 08:00:47 2011 +0200 alarmtimer: Check return value of class_find_device() alarmtimer_late_init() uses class_find_device() to find a alarm capable rtc device. The match callback stores a pointer to the name in the char pointer handed in from the call site. alarmtimer_late_init() checks the char pointer for NULL, but the pointer is on the stack and not initialized to NULL before the call. So it can have random content when the match function did not identify a device, which leads to random access in the following rtc_open() call where the pointer is dereferenced Instead of relying on the char pointer, check the return value of class_find_device. If a device is found then the name pointer is valid as well. Reported-by: Ingo Molnar Cc: John Stultz Signed-off-by: Thomas Gleixner commit cce36444173b943f7b27e726ab38b3340cdebc41 Author: Robert P. J. Day Date: Thu Apr 21 10:00:18 2011 +0000 powerpc/pseries/bsr: Remove redundant initialization of bsr dev_t declaration. Remove the unnecessary initialization of "dev_t bsr_dev" since it's subsequently used in an "alloc_chrdev_region()" call which uses that variable in an output-only fashion. Signed-off-by: Robert P. J. Day Signed-off-by: Benjamin Herrenschmidt commit ecb7390211fe9cb14ff0bae116a3f4f1149c0b6c Author: Richard A Lary Date: Fri Apr 22 10:00:05 2011 +0000 powerpc/pseries/eeh: Handle functional reset on non-PCIe device Fundamental reset is an optional reset type supported only by PCIe adapters. Handle the unexpected case where a non-PCIe device has requested a fundamental reset. Try hot-reset as a fallback to handle this case. Signed-off-by: Richard A Lary Signed-off-by: Benjamin Herrenschmidt commit 308fc4f8e10b5239cde46104bb9fca79b46230c8 Author: Richard A Lary Date: Fri Apr 22 09:59:47 2011 +0000 powerpc/pseries/eeh: Propagate needs_freset flag to device at PE For multifunction adapters with a PCI bridge or switch as the device at the Partitionable Endpoint(PE), if one or more devices below PE sets dev->needs_freset, that value will be set for the PE device. In other words, if any device below PE requires a fundamental reset the PE will request a fundamental reset. Signed-off-by: Richard A Lary Signed-off-by: Benjamin Herrenschmidt commit 9ee820fa005254dfc816330f6654f14dcb2beee1 Author: Brian King Date: Wed May 4 16:01:20 2011 +1000 powerpc/pseries: Add page coalescing support Adds support for page coalescing, which is a feature on IBM Power servers which allows for coalescing identical pages between logical partitions. Hint text pages as coalesce candidates, since they are the most likely pages to be able to be coalesced between partitions. This patch also exports some page coalescing statistics available from firmware via lparcfg. [BenH: Moved a couple of things around to fix compile problems] Signed-off-by: Brian King Signed-off-by: Benjamin Herrenschmidt commit 7707e4110e5692fe85e7e6c471c9bb2a9254d313 Author: Ben Hutchings Date: Sun Apr 24 15:04:31 2011 +0000 powerpc/kexec: Fix build failure on 32-bit SMP Commit b987812b3fcaf70fdf0037589e5d2f5f2453e6ce left crash_kexec_wait_realmode() undefined for UP. Commit 7c7a81b53e581d727d069cc45df5510516faac31 defined it for UP but left it undefined for 32-bit SMP. Seems like people are getting confused by nested #ifdef's, so move the definitions of crash_kexec_wait_realmode() after the #ifdef CONFIG_SMP section. Compile-tested with 32-bit UP, 32-bit SMP and 64-bit SMP configurations. Signed-off-by: Ben Hutchings Tested-by: Paul Gortmaker Signed-off-by: Benjamin Herrenschmidt commit 104699c0ab473535793b5fea156adaf309afd29b Author: KOSAKI Motohiro Date: Thu Apr 28 05:07:23 2011 +0000 powerpc: Convert old cpumask API into new one Adapt new API. Almost change is trivial. Most important change is the below line because we plan to change task->cpus_allowed implementation. - ctx->cpus_allowed = current->cpus_allowed; Signed-off-by: KOSAKI Motohiro Signed-off-by: Benjamin Herrenschmidt commit 48404f2e95ef0ffd8134d89c8abcd1a15e15f1b0 Author: Paul Mackerras Date: Sun May 1 19:48:20 2011 +0000 powerpc: Save Come-From Address Register (CFAR) in exception frame Recent 64-bit server processors (POWER6 and POWER7) have a "Come-From Address Register" (CFAR), that records the address of the most recent branch or rfid (return from interrupt) instruction for debugging purposes. This saves the value of the CFAR in the exception entry code and stores it in the exception frame. We also make xmon print the CFAR value in its register dump code. Rather than extend the pt_regs struct at this time, we steal the orig_gpr3 field, which is only used for system calls, and use it for the CFAR value for all exceptions/interrupts other than system calls. This means we don't save the CFAR on system calls, which is not a great problem since system calls tend not to happen unexpectedly, and also avoids adding the overhead of reading the CFAR to the system call entry path. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 1977b502120d44b9b4897703adfb2e2fab346880 Author: Paul Mackerras Date: Sun May 1 19:46:44 2011 +0000 powerpc: Save register r9-r13 values accurately on interrupt with bad stack When we take an interrupt or exception from kernel mode and the stack pointer is obviously not a kernel address (i.e. the top bit is 0), we switch to an emergency stack, save register values and panic. However, on 64-bit server machines, we don't actually save the values of r9 - r13 at the time of the interrupt, but rather values corrupted by the exception entry code for r12-r13, and nothing at all for r9-r11. This fixes it by passing a pointer to the register save area in the paca through to the bad_stack code in r3. The register values are saved in one of the paca register save areas (depending on which exception this is). Using the pointer in r3, the bad_stack code now retrieves the saved values of r9 - r13 and stores them in the exception frame on the emergency stack. This also stores the normal exception frame marker ("regshere") in the exception frame. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit 851d2e2fe8dbcbe3afcad6fc4569c881d8ad4ce9 Author: Tseng-Hui (Frank) Lin Date: Mon May 2 20:43:04 2011 +0000 powerpc: Add Initiate Coprocessor Store Word (icswx) support Icswx is a PowerPC instruction to send data to a co-processor. On Book-S processors the LPAR_ID and process ID (PID) of the owning process are registered in the window context of the co-processor at initialization time. When the icswx instruction is executed the L2 generates a cop-reg transaction on PowerBus. The transaction has no address and the processor does not perform an MMU access to authenticate the transaction. The co-processor compares the LPAR_ID and the PID included in the transaction and the LPAR_ID and PID held in the window context to determine if the process is authorized to generate the transaction. The OS needs to assign a 16-bit PID for the process. This cop-PID needs to be updated during context switch. The cop-PID needs to be destroyed when the context is destroyed. Signed-off-by: Sonny Rao Signed-off-by: Tseng-Hui (Frank) Lin Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit a32e252f7cdfb3675a4e50215cfac356ed8952c4 Author: Michael Neuling Date: Wed Apr 6 18:23:29 2011 +0000 powerpc: Use new CPU feature bit to select 2.06 tlbie This removes MMU_FTR_TLBIE_206 as we can now use CPU_FTR_HVMODE_206. It also changes the logic to select which tlbie to use to be based on this new CPU feature bit. This also duplicates the ASM_FTR_IF/SET/CLR defines for CPU features (copied from MMU features). Signed-off-by: Michael Neuling Signed-off-by: Benjamin Herrenschmidt commit de2954d66408da3ae34effda777bb564fd17781b Author: Kim Phillips Date: Mon May 2 18:29:17 2011 -0500 crypto: caam - fix printk recursion for long error texts during recent descriptor development, an Invalid Sequence Command error triggered a: BUG: recent printk recursion! due to insufficient memory allocated for the error text. The Invalid Sequence Command error text is the longest. The length of the maximum error string is computed as the sum of: "DECO: ": 6 "jump tgt desc idx 255: ": 23 Invalid Sequence Command text: 272 zero termination character: 1 i.e, 302 characters. Define this maximum error string length in error.h and fix caam_jr_strstatus callsites. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 701af31ce0cc6a1114001d792c21108c7f49ac86 Author: Kim Phillips Date: Mon May 2 18:27:41 2011 -0500 crypto: caam - remove unused keylen from session context Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 3023b5b6f1d9e3f12827d0437f6bf096dddac944 Author: Dmitry Eremin-Solenikov Date: Wed Apr 27 23:21:16 2011 +0400 hwrng: amd - enable AMD hw rnd driver for Maple PPC boards PPC 970FX Evaluation kit (Maple) boards bear AMD8111 southbridge. Allow this driver to be compiled in if PPC_MAPLE is selected. Signed-off-by: Dmitry Eremin-Solenikov Acked-by: Matt Mackall Signed-off-by: Herbert Xu commit bd68ccb390f0d91e26e6f3252ba457ee4e06974a Author: Dmitry Eremin-Solenikov Date: Wed Apr 27 23:21:15 2011 +0400 hwrng: amd - manage resource allocation As amd driver doesn't bind to PCI device, we'd better manage reource allocation on our own to disallow (possible) conflicts. Signed-off-by: Dmitry Eremin-Solenikov Acked-by: Matt Mackall Signed-off-by: Herbert Xu commit 0200f3ecc19660bebeabbcbaf212957fcf1dbf8f Author: Gerald Schaefer Date: Wed May 4 15:09:44 2011 +1000 crypto: s390 - add System z hardware support for CTR mode This patch adds System z hardware acceleration support for AES, DES and 3DES in CTR mode. The hardware support is available starting with System z196. Signed-off-by: Gerald Schaefer Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit 9996e3421cae20a17c99881b2ac0f7562f760e04 Author: Jan Glauber Date: Tue Apr 26 16:34:01 2011 +1000 crypto: tcrypt - CTR mode speed test for AES Add the CTR mode speed test for AES. Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit d393d9b8ca7f3296b50cb6fd0dc550ed6f72cdbc Author: Jan Glauber Date: Tue Apr 19 21:29:19 2011 +0200 crypto: s390 - cleanup s390 Kconfig options Cleanup the remaining s390 crypto options by mentioning the earliest machine type that supports an accelerated algorithm. Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit df1309ce955a490eac6697a41159b43e24d35995 Author: Gerald Schaefer Date: Tue Apr 19 21:29:18 2011 +0200 crypto: s390 - add System z hardware support for GHASH This patch adds System z hardware acceleration support for the GHASH algorithm for GCM (Galois/Counter Mode). The hardware support is available beginning with System z196. Signed-off-by: Jan Glauber Signed-off-by: Gerald Schaefer Signed-off-by: Herbert Xu commit 99d97222150a24e6096805530e141af94183b9a1 Author: Gerald Schaefer Date: Tue Apr 26 16:12:42 2011 +1000 crypto: s390 - add System z hardware support for XTS mode This patch adds System z hardware acceleration support for the AES XTS mode. The hardware support is available beginning with System z196. Signed-off-by: Jan Glauber Signed-off-by: Gerald Schaefer Signed-off-by: Herbert Xu commit 98971f8439b1bb9a61682fe24a865ddd25167a6b Author: Jan Glauber Date: Tue Apr 19 21:29:15 2011 +0200 crypto: s390 - cleanup DES code Remove a stale file left over from 1efbd15c3bc2b79d33e033e898211109c32159fa and and cleanup the DES code a bit to make it easier to add new code. Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit 1822bc9093e05059e4144d6041b0f5450ad275e1 Author: Jan Glauber Date: Tue Apr 19 21:29:14 2011 +0200 crypto: s390 - extend crypto facility check The specification which crypto facility is required for an algorithm is added as a parameter to the availability check which is done before an algorithm is registered. With this change it is easier to add new algorithms that require different facilities. Signed-off-by: Jan Glauber Signed-off-by: Herbert Xu commit ba0e14acc417eceb895efda1ff46366f4d1728f8 Author: Puneet Saxena Date: Wed May 4 15:04:10 2011 +1000 crypto: testmgr - add support for aes ofb mode the fix add testcase for testing aes ofb mode. Signed-off-by: Puneet Saxena Signed-off-by: Herbert Xu commit 476eb4912601a8c01e6702b9a029f476b4b131d2 Author: Grant Likely Date: Wed May 4 15:02:15 2011 +1000 powerpc/irq: Stop exporting irq_map First step in eliminating irq_map[] table entirely Signed-off-by: Benjamin Herrenschmidt commit 18a353f42817f08e3501162ceda9d2efddb08a40 Author: David S. Miller Date: Tue May 3 20:55:05 2011 -0700 sctp: Use flowi4's {saddr,daddr} in sctp_v4_dst_saddr() and sctp_v4_get_dst() Instead of rt->rt_{src,dst} Signed-off-by: David S. Miller commit 492f64ce12e259abd85714d05b885e105bd8aeef Author: David S. Miller Date: Tue May 3 20:53:12 2011 -0700 ipv4: Use flowi4's {saddr,daddr} in igmpv3_newpack() and igmp_send_report() Instead of rt->rt_{src,dst} Signed-off-by: David S. Miller commit d4a3b10c16a1bdb09483233bd7aeac684ccc160a Author: Alex Williamson Date: Sun May 1 18:49:33 2011 -0600 vga_switcheroo: Remove unbalanced pci_enable_device This is unbalanced and probably more fitting for the client to take care of. Remove it. Signed-off-by: Alex Williamson Signed-off-by: Dave Airlie commit f4bfd99f8519e2d35541cc4fc383b1b3141a657a Author: David S. Miller Date: Tue May 3 20:43:40 2011 -0700 libcxgbi: Use flowi4's saddr in cxgbi_check_route(). Instead of rt->rt_src Signed-off-by: David S. Miller commit 28c90da02ed7367fc5714adefce2a961e5bae306 Author: David S. Miller Date: Tue May 3 20:41:42 2011 -0700 pptp: Use flowi4's daddr/saddr in pptp_xmit(). Instead of rt->rt_{src,dst} Signed-off-by: David S. Miller commit f19467c509e36e5ba3498efd7d4072d3581a1d6c Author: Dave Airlie Date: Tue Mar 22 14:10:27 2011 +1000 nouveau: add optimus detection to DSM code. optimus has another DSM GUID, so we check for its existance, also allow the BIOS stuff is we find it. Signed-off-by: Dave Airlie commit 3448a19da479b6bd1e28e2a2be9fa16c6a6feb39 Author: Dave Airlie Date: Tue Jun 1 15:32:24 2010 +1000 vgaarb: use bridges to control VGA routing where possible. So in a lot of modern systems, a GPU will always be below a parent bridge that won't share with any other GPUs. This means VGA arbitration on those GPUs can be controlled by using the bridge routing instead of io/mem decodes. The problem is locating which GPUs share which upstream bridges. This patch attempts to identify all the GPUs which can be controlled via bridges, and ones that can't. This patch endeavours to work out the bridge sharing semantics. When disabling GPUs via a bridge, it doesn't do irq callbacks or touch the io/mem decodes for the gpu. Signed-off-by: Dave Airlie commit 8116188fdef5946bcbb2d73e41d7412a57ffb034 Author: Dave Airlie Date: Mon Dec 6 12:57:45 2010 +1000 nouveau/acpi: hook up to the MXM method for mux switching. this hooks up nouveau to the MXM mux switching method. With this in place I can switch the LVDS MUX on my T410s, I expect we need a bit more work for other laptops. Signed-off-by: Dave Airlie commit 99b38b4acc0d7dbbab443273577cff60080fcfad Author: Dave Airlie Date: Mon Dec 6 12:43:33 2010 +1000 platform/x86: add MXM WMI driver. MXM is a laptop graphics card form-factor + interface specification, this adds an initial stub driver to talk to the MXM WMI interface. The only method used is the MUX switching method needed to do switchable graphics on the nvidia chipsets. Signed-off-by: Dave Airlie Acked-by: Matthew Garrett commit 31e4543db29fb85496a122b965d6482c8d1a2bfe Author: David S. Miller Date: Tue May 3 20:25:42 2011 -0700 ipv4: Make caller provide on-stack flow key to ip_route_output_ports(). Signed-off-by: David S. Miller commit 508c8d60bd08640db39146edbbfdbf01a802163d Author: Alex Deucher Date: Tue May 3 19:47:44 2011 -0400 drm/radeon/kms: fix up r1xx-rs4xx i2c buses Fix the vbios mapping and only add the actual buses that the cards have. The existing code was mostly correct. Just clean up a few cases on r2xx/r3xx and document that buses the hw actually has. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 87d7a1f9e6487bb4cc8d04bd0e27e11a97b5a7b3 Author: Alex Deucher Date: Tue May 3 13:32:36 2011 -0400 drm/radeon/kms: set i2c adapter class to I2C_CLASS_DDC The most common use of the radeon i2c buses is for ddc. Signed-off-by: Alex Deucher Acked-by: Jean Delvare Signed-off-by: Dave Airlie commit 63f7d9828bf55cc8ee6f460830c5285fe06bef3e Author: Alex Deucher Date: Tue May 3 12:44:54 2011 -0400 drm/radeon/kms: add support for thermal chips on combios asics Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit cb3c438ea4c0e638cba08bfaa8e2b64ffb8a6ce3 Author: Dave Airlie Date: Wed May 4 13:08:58 2011 +1000 drm/fb: fix CONFIG_DRM=m && CONFIG_FB=n The previous commit to move the parsing into the core drm created a new situation and a soft dependency on the CONFIG_FB. We really don't want to make this a hard dependency so just wrap the one place that actually needs an fb symbol. Reported-by: Randy Dunlap Signed-off-by: Dave Airlie commit f1390160ddcd64a3cfd48b3280d0a616a31b9520 Author: David S. Miller Date: Tue May 3 20:06:41 2011 -0700 dccp: Use flowi4->saddr in dccp_v4_connect() Signed-off-by: David S. Miller commit 475949d8e86bbde5ea3ffa4d95e022ca69233b14 Author: David S. Miller Date: Tue May 3 19:45:15 2011 -0700 ipv4: Renamt struct rtable's rt_tos to rt_key_tos. To more accurately reflect that it is purely a routing cache lookup key and is used in no other context. Signed-off-by: David S. Miller commit 417da66fa9d2f14b1a90b04095413b87907d8183 Author: David S. Miller Date: Tue May 3 19:42:43 2011 -0700 ipv4: Rework ipmr_rt_fib_lookup() flow key initialization. Use information from the skb as much as possible, currently this means daddr, saddr, and TOS. Signed-off-by: David S. Miller commit 57a503c61db077b923e23f36050c02166a4a1db2 Author: Viresh KUMAR Date: Mon May 2 18:36:45 2011 +0000 net/stmmac: Move "#include " to linux/stmmac.h stmmac.h uses struct platform_device and doesn't include . Whereas drivers/net/stmmac/stmmac.h includes it, but doesn't directly use it. And so we get following compilation warning while using this file: warning: ‘struct platform_device’ declared inside parameter list This patch includes in linux/stmmac.h and removes it from drivers/net/stmmac/stmmac.h Signed-off-by: Viresh Kumar Acked-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit 20ed0938bfb132638f68618ba2e694aafe24d3e2 Merge: e1a0206 9ab8843 Author: Mark Brown Date: Tue May 3 23:30:36 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit e1a02066080da55026c193603c7468c2d95d14a9 Author: Mark Brown Date: Tue May 3 19:31:20 2011 +0100 ASoC: Remove outdated FIXME from WM8915 Actually the current code is perfectly sensible given the hardware. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit abc9d5aa085a4316e1abcd3c3f12ff0bb0133d57 Author: Mark Brown Date: Tue May 3 19:29:52 2011 +0100 ASoC: Use shared controls for input signal path in WM8915 Gives finer grained power management. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit b06c16dc3252018d0cad8fbd026cb9d65af31a4a Merge: af46800 87023ff Author: Mark Brown Date: Tue May 3 23:28:51 2011 +0100 Merge branch 'topic/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.40 commit 7cc82439baf3faa45cbb9f05a6a8b6b55891621a Author: pefoley2@verizon.net Date: Tue May 3 17:40:30 2011 -0400 staging: hv: make HYPERV_UTILS depend on NLS to prevent a build error When HYPERV_UTILS=y and NLS=n the build fails with this error: MODPOST 3 modules ERROR: "utf8s_to_utf16s" [drivers/staging/hv/hv_utils.ko] undefined! This patch fixes this by adding a dependency on NLS to HYPERV_UTILS. Signed-off-by: Peter Foley Signed-off-by: Greg Kroah-Hartman commit a8a854d38b5071788890f3ef626e5068bc2a31ba Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:16 2011 -0700 Staging: hv: Get rid of an unused variable from struct hv_driver The name field is unused in struct hv_driver. Get rid of it. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b0069f43fc6bc9c91f7133922ceb4e08373ff675 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:15 2011 -0700 Staging: hv: VMBUS is a acpi enumerated device; get irq value from bios On some Windows hosts, the Linux PCI sub-system is not allocating irq resources to the vmbus driver. It looks like VMBUS is an ACPI enumerated device. Retrieve the irq information from DSDT. Currently we use this bios specified irq, if the PCI sub-system fails to allocate the irq. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ca6887fb830371d050227f2295dba483f6a6d26b Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:14 2011 -0700 Staging: hv: Use the shutdown() function in struct hv_driver Use the newly introduced shutdown() function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b858e74503e6489190aafb84d16ef75ba267eef2 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:13 2011 -0700 Staging: hv: Add shutdown() function to struct hv_driver Add shutdown() function to struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 415b023ab8d6dfb88f106163a7f202a8665fb20a Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:12 2011 -0700 Staging: hv: Use the remove() function in struct hv_driver Use the newly introduced remove() function in struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 63e69e01d7de3ce49d4312e8d78e43a5efe2f737 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:11 2011 -0700 Staging: hv: Add remove() function to struct hv_driver Add remove() function to struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9efd21e1f53359e2f4e53ba87002c69a7908142b Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:10 2011 -0700 Staging: hv: Use the probe function in struct hv_driver Use the newly introduced probe function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit db1c19691c596375f7cae9a94b65865e523b3e6c Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:09 2011 -0700 Staging: hv: Add probe function to struct hv_driver Add probe function to struct hv_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9adcac5c16853116dab934270967e864ceeb9c41 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:08 2011 -0700 Staging: hv: Get rid of struct hv_bus Now, get rid of struct hv_bus. We will no longer be embedding struct bus_type. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 66d9229c2a0823e73002c71bed28c2000c4c5670 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:07 2011 -0700 Staging: hv: Make event_dpc a stand alone variable In preparation for getting rid of struct hv_bus, Make event_dpc a stand alone variable. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 59c0e4f0a665396bb5301f82764ebda8e3153783 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:06 2011 -0700 Staging: hv: Make msg_dpc a stand alone variable In preparation for cleaning up (getting rid of) of the hv_bus structure, make msg_dpc a stand alone variable. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ef58f5d13537da06a131c1a2505a81fdd7d4a059 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:05 2011 -0700 Staging: hv: Make hv_pci_dev a static variable Make hv_pci_dev a static variable. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 71a6655dedc2d8be8a292fc96840924d846ab925 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:04 2011 -0700 Staging: hv: Properly handle errors in hv_pci_probe() Much of the vmbus driver initialization is done within the hv_pci_probe() function. Properly handle errors in hv_pci_probe so that we can appropriately deal with loading of the vmbus driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b14a7b3014b1151597d526f2e24f291ebc3a4f5b Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:03 2011 -0700 Staging: hv: Cleanup vmbus_probe() function The logic for handling probe failure was broken. Now that we have cleaned up error handling, get rid of the vmbus_probe_failed_cb() function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 703027d0e4b329dc27fd152934a5ddb3d9f2ddab Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:02 2011 -0700 Staging: hv: Cleanup error handling in vmbus_child_device_register() Cleanup error handling in vmbus_child_device_register(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7a8488e0da9335360ba539f05d92c8e150a102e8 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:01 2011 -0700 Staging: hv: Get rid of the drv field in struct hv_device Now, we can rid of the drv field in struct hv_device. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 404aaed16b31ea34efc5fc58c7b0ba71d7f09077 Author: K. Y. Srinivasan Date: Fri Apr 29 13:45:00 2011 -0700 Staging: hv: Get rid of vmbus_release_unattached_channels() as it is not used Since vmbus_release_unattached_channels() is only used in module unload path and since the vmbus driver cannot be unloaded, get rid of this "dead" code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 360926923b184fddf4e570b7f970b33e4e52af40 Author: K. Y. Srinivasan Date: Fri Apr 29 13:44:59 2011 -0700 Staging: hv: vmbus_driver cannot be unloaded; cleanup accordingly The vmbus driver cannot be unloaded; the windows host does not permit this: A) All guest resources given to the host cannot be recovered and B) Windows host does not permit reloading the vmbus_driver without re-booting the guest. Both these issues are host related. Acknowledge this reality and cleanup the vmbus driver accordingly. Note that, ideally we will want to handle the root device through the Hyper-V block driver. In this case unloading the vmbus driver will not be possible because of the dependency issues. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c93212f387fdf5180d9d13cc207419abd5b3ec17 Merge: 5933f2a f5178dd Author: Russell King Date: Tue May 3 21:09:11 2011 +0100 Merge git://git.kernel.org/pub/scm/linux/kernel/git/nico/orion into devel-stable commit da548cb3f1ec3b1fd4ec2a848401398462ce3124 Author: Cho, Yu-Chen Date: Tue May 3 17:53:35 2011 +0800 staging/rts_pstor: fix Polling thread wakeups CPU RealTek PCI-E Card Reader rts_pstor driver causes CPU wakeup very frequently, thatt's bad for power consumption. Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 56aec662152b57c57191c5407cebcf5a09a74a70 Author: Roland Vossen Date: Tue May 3 11:36:01 2011 +0200 staging: brcm80211: removed function wlc_calloc() Code cleanup. After the previous patches, this function does not have any added value anymore. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e0c6bf1315656a8bb1be095b6e43dcef1b1074a7 Author: Roland Vossen Date: Tue May 3 11:36:00 2011 +0200 staging: brcm80211: got rid of WL_FFPLD message log macro Code cleanup. Partially removed, remaining replaced with BCMMSG. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 222508d78ff484cac34109c5cf2e936e40e82c28 Author: Roland Vossen Date: Tue May 3 11:35:59 2011 +0200 staging: brcm80211: replaced WL_AMPDU_* with BCMMSG Remove WL_AMPDU_* tracing macros with BCMMSG as it does not need to be so specific. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 792aa4084da918f6615a2d4d2b9e021d7e6c1fea Author: Roland Vossen Date: Tue May 3 11:35:58 2011 +0200 staging: brcm80211: replaced WL_TRACE by BCMMSG Code cleanup. Make code more readable by converting different macro's (WL_TRACE, WL_AMPDU, etc) into one BCMMSG. This single macro uses wiphy_err() instead of printk(), so the user is able to correlate a log message to our driver. This patch only replaces WL_TRACE, subsequent patches will replace WL_AMPDU etc. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0176a203bdce12a4584362d7d64031a6b944cc25 Author: Arend van Spriel Date: Tue May 3 11:35:57 2011 +0200 staging: brcm80211: remove unused functions from wlc_phy_qmath.c The phy code only uses a subset of functions in wlc_phy_qmath.c and the remaining are unused so those have been removed to cleanup the codebase. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 652dfad2dc8ff6daa976585d91de4f26ea3a3a2c Author: Arend van Spriel Date: Tue May 3 11:35:56 2011 +0200 staging: brcm80211: move qmath sources to phy directory The functions provided by qmath sources are only used by the phy source code so qmath sources have been moved there. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 085a5cf16299e139672e51f9cf9e605b5b294af2 Author: Arend van Spriel Date: Tue May 3 11:35:55 2011 +0200 staging: brcm80211: remove CRC_INNER_LOOP macro With the removal of hndcrc16 and hndcrc32 this macro is not needed anymore. Also the crc-ccitt library functions provide an equivalent static inline function for this operation. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c19cf5d022cdc9fcfac69bc634d9c02dd4f9475e Author: Arend van Spriel Date: Tue May 3 11:35:54 2011 +0200 staging: brcm80211: remove unused hndcrc32 function hndcrc32 is not used so it is removed from the driver codebase. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9a189f763e6a4c4a630efdeb393559ff7b59b8c3 Author: Arend van Spriel Date: Tue May 3 11:35:53 2011 +0200 staging: brcm80211: replace hndcrc16 with crc-ccitt function The implementation of hndcrc16 is identical to that of the crc-ccitt function available in linux kernel library functions. The driver now uses the crc-ccitt function. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 13f401cb5320a027ab79c53f5089b0a0c8bd5adb Author: Roland Vossen Date: Tue May 3 11:35:52 2011 +0200 staging: brcm80211: moved ASSERT logic to fullmac driver Code cleanup. Softmac driver does not use ASSERTs anymore. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 93af5a4833ae3387fa929ff2821251aca81ccbe0 Author: Roland Vossen Date: Tue May 3 11:35:51 2011 +0200 staging: brcm80211: removed ASSERTs from wlc_pmu.c Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit dc98693b2af042bc2089156dc698379dd48eecac Author: Roland Vossen Date: Tue May 3 11:35:50 2011 +0200 staging: brcm80211: removed ASSERTs from aiutils.c Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 6fa05a5e0cbe59fec0b45dce6b62a40918691e75 Author: Arend van Spriel Date: Tue May 3 11:35:49 2011 +0200 staging: brcm80211: remove socitype member for struct si_pub definition The attribute socitype is no longer required so it is removed here. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 98034c4c370cf904f529d28d8b505d13d007f7a9 Author: Arend van Spriel Date: Tue May 3 11:35:48 2011 +0200 staging: brcm80211: use local variable for socitype during ai_scan The SOC interface type is only needed to verify that we are accessing a chip with AMBA AXI interconnect during ai_scan function. Therefor this can be done with a local variable. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 97a18a6b7db2843a40a37ab1f6d76c6ea9617ee6 Author: Arend van Spriel Date: Tue May 3 11:35:47 2011 +0200 staging: brcm80211: remove check on interconnect type in ai_setcore All functions in aiutils are only used for AI SOC interconnect chipsets so no software check is needed other then during the ai_scan function. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 51fd7b754ae40221e5c66e7116f9d7cf03b757cd Author: Arend van Spriel Date: Tue May 3 11:35:46 2011 +0200 staging: brcm80211: move aiutils source files to brcmsmac folder The aiutils functions are only used by the brcmsmac driver so it has been moved to the driver specific folder. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b21c892d78aee4c6f2a8c2dfacca27074ac4d798 Author: Arend van Spriel Date: Tue May 3 11:35:45 2011 +0200 staging: brcm80211: cleanup code in source file aiutils.c The aiutils functions that were taken from siutils have been renamed with proper ai_ prefix. Calling functions have been updated accordingly. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 803d226ea238b71f0e3293fcd4a5607f40a542c5 Author: Arend van Spriel Date: Tue May 3 11:35:44 2011 +0200 staging: brcm80211: cleanup definitions in aiutils header file The aiutils header file contained a few prototypes that are not defined in the source file so these are removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit efc39e39f3888a62fcfe4465b8ebd246246514f8 Author: Arend van Spriel Date: Tue May 3 11:35:43 2011 +0200 staging: brcm80211: fix checkpatch warning in si_pmu_otp_power Patch "remove dependency between aiutils and siutils sources" introduced several checkpatch warnings. This patch remove those in si_pmu_otp_power(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit aa4eec9350e07a3d6ac331b0f5fc62a6065b01d2 Author: Arend van Spriel Date: Tue May 3 11:35:42 2011 +0200 staging: brcm80211: fix checkpatch issues in si_pmu_measure_alpclk Patch "remove dependency between aiutils and siutils sources" introduced several checkpatch warnings. This patch removes those in the function si_pmu_measure_alpclk(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 2d1a826db7f73692e6895455f5d9c297447b5025 Author: Arend van Spriel Date: Tue May 3 11:35:41 2011 +0200 staging: brcm80211: fix checkpatch warning in si_pmu_res_init Patch "remove dependency between aiutils and siutils sources" introduced several checkpatch warnings. This patch removes one from si_pmu_res_init(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5ac71a1dda960b2166dd04bcf6c3d606cb7903bb Author: Arend van Spriel Date: Tue May 3 11:35:40 2011 +0200 staging: brcm80211: remove zero initialization of static in si_pmu_ilp_clock The static variable ilpcycles_per_sec was initialized with zero value, which is not necessary (checkpatch error). Initialization has been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 683d06921d7a7e75e310fd2d579ffdc8c6e88e27 Author: Arend van Spriel Date: Tue May 3 11:35:39 2011 +0200 staging: brcm80211: fix checkpatch warnings in si_pmu_spuravoid_pllupdate patch "remove dependency between aiutils and siutils sources" resulted in several checkpatch warnings and errors. This patch fixes those in function si_pmu_spuravoid_pllupdate(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 27302e8fa2d05f9aafa09a096da181dd02cc12ea Author: Arend van Spriel Date: Tue May 3 11:35:38 2011 +0200 staging: brcm80211: remove dependency between aiutils and siutils sources The two source files have been separated where aiutils is only used by the brcmsmac driver and the siutils is only used by the brcmfmac driver. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 36648b8bdaf75991ce1bea5bdf6699cd23c425fc Author: Arend van Spriel Date: Tue May 3 11:35:37 2011 +0200 staging: brcm80211: separate hndpmu functionality for brcmsmac driver The hndpmu source file has functions for brcmfmac and brcmsmac driver but it turns out that on function level there is no reuse so for the brcmsmac its set of functions now reside in wlc_pmu.c. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 7754116bab5b69491dbb6eb320e59b244624df63 Author: Arend van Spriel Date: Tue May 3 11:35:36 2011 +0200 staging: brcm80211: remove use of si_* functions from wlc_phy_lcn.c The source file used si_alp_clock to determine crystal frequency. It now uses the si_pmu_alp_clock call instead to remove dependency from siutils functionality. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit da065a5c524c0ea2589d12f69884b2f8305dc6d4 Author: Arend van Spriel Date: Tue May 3 11:35:35 2011 +0200 staging: brcm80211: remove unused functions from hndpmu.c The source file contained several functions that are not being used in the brcmsmac and/or brcmfmac driver. These functions have been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c142eae26d92549dd9abdc5815dc7251f6ae7779 Author: Arend van Spriel Date: Tue May 3 11:35:34 2011 +0200 Revert "staging: brcm80211: separate hndpmu functionality for brcmsmac driver" This reverts commit 29811f9d8973e65b46da4283d52f02f78a21f6e0 as it depends on another patch that was not yet applied. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d7918e6c65b4eb1453e5c07308eb37f091d714bb Author: Arend van Spriel Date: Tue May 3 11:35:33 2011 +0200 staging: brcm80211: remove retrieval function for tsf in wlc_main.c wlc_main.c provides a function to read the tsf, but it is not used. Consequently, it is removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 069f4439b9a05902999e49c37d3fe5f83523089d Author: Arend van Spriel Date: Tue May 3 11:35:32 2011 +0200 staging: brcm80211: remove tsf retrieval from wlc_bmac.c Upon receiving a packet the lowest 32 bits of tsf are filled in by wlc_bmac in wlc_bmac_recv, but this is not useful as wlc_main needs to reconstruct 64 bit tsf which is retrieves to recover the actual tsf value at which packet is received. Therefore tsf retrieval is removed from wlc_bmac.c. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 88ddf0c94bfcc293d033f4cfcc0b438ead968582 Author: Arend van Spriel Date: Tue May 3 11:35:31 2011 +0200 staging: brcm80211: provide TSF value in receive status Packets passed to the mac80211 stack have a mactime field in the receive status indicating the actual time it was received by the phy radio. It was not (properly) filled in before this change. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 931f64a9d674e37d9d1fd1168e7f74f0a46aeb63 Author: Arend van Spriel Date: Tue May 3 11:35:30 2011 +0200 staging: brcm80211: remove queue info parameter from wlc_send_q There is only one queue on which the wlc_send_q has to operate. This queue is available under the struct wlc_info parameter passed so the additional queue info parameter is redundant. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 3a7305002ccfefb9dc1effd066bc3e0f5a74beb8 Author: Arend van Spriel Date: Tue May 3 11:35:29 2011 +0200 staging: brcm80211: rename active_queue identifier The queue for pending transmit packets is called active_queue, but the driver is only using one single queue. Therefor a more appro- priate name has been given, ie. pkt_queue. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 12392c6d4dff6db1cf10091c2515ac41bfa58c76 Author: Arend van Spriel Date: Tue May 3 11:35:28 2011 +0200 staging: brcm80211: implement flush driver callback for mac80211 The mac80211 interface has a flush callback which is used by mac80211 to assure all pending transmit packets have been transmitted. This is used before scanning off-channel. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit be2fee08bb876bd8156d5f0c3e2b2a6ae8885b97 Author: Roland Vossen Date: Tue May 3 11:35:27 2011 +0200 staging: brcm80211: removed remaining ASSERTs from phy Partially deleted, partially replaced by WARN_ON to indicate hardware failure to the user. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b78442d12bfccad78e94102f02ef87f143b950c8 Author: Roland Vossen Date: Tue May 3 11:35:26 2011 +0200 staging: brcm80211: removed all ASSERTs from wlc_ampdu.c Either removed ASSERTs or replaced with WARN_ON in case of HW failure. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 155142fcc25aef3c9a60cf1661429a32c51fa683 Author: Roland Vossen Date: Tue May 3 11:35:25 2011 +0200 staging: brcm80211: removed all ASSERTs from wl_mac80211.c Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5dfa128f42da6296e62a7387f16d213a308135ea Author: Roland Vossen Date: Tue May 3 11:35:24 2011 +0200 staging: brcm80211: delete ASSERTs in 4 files in brcmsmac dir wlc_antsel.c, wlc_channel.c, wlc_rate.c and wlc_stf.c are now ASSERT free. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 5672cfa335d2518f3168ff1ad654d8e392181f51 Author: Roland Vossen Date: Tue May 3 11:35:23 2011 +0200 staging: brcm80211: removed ASSERTs from util dir, part 2 Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 909f43a0c6340284503d20650ea9bb74efa10c39 Author: Roland Vossen Date: Tue May 3 11:35:22 2011 +0200 staging: brcm80211: removed ASSERTs from util dir, part 1 Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 1bc93cec2cfa53f52681e29eab3c3254eed2e63a Author: Roland Vossen Date: Tue May 3 11:35:21 2011 +0200 staging: brcm80211: made fullmac error codes more consistent Code cleanup. The code contains several checks on the condition SDIOH_API_SUCCESS(status). On failure, the error returned depended on the check, instead of being consistent. This has been corrected. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b74ac12ecdc23cfc4b13c71f9a2356f51d15c7e8 Author: Roland Vossen Date: Tue May 3 11:35:20 2011 +0200 staging: brcm80211: replace error codes part 2 Replacing part of the proprietary error code values with native error code values. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e10d82d47dc4fe1d98ab46337324a2f7facc0491 Author: Roland Vossen Date: Tue May 3 11:35:19 2011 +0200 staging: brcm80211: replace error codes part 1 Replacing part of the proprietary error code values with native error code values. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c2be548d3d23dd996e42863bb02122032fbba6bb Author: Roland Vossen Date: Tue May 3 11:35:18 2011 +0200 staging: brcm80211: removed error string function Only fullmac used this functionality, in which a broadcom specific error code was converted to a human readable string. Since this functionality is not needed, a function and accompanying data structures have been removed. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4ff956a68b8b6cbfc67ce52d14bbb273f0688ffd Author: Roland Vossen Date: Tue May 3 11:35:17 2011 +0200 staging: brcm80211: removed ASSERTs from wlc_bmac.c Driver contains far too many ASSERTs. Extraneous asserts removed. Only asserts that signal a hardware problem have been converted into WARN_ON. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a6b967715e4b1b13c34d76f061c8376a76b13161 Author: Roland Vossen Date: Tue May 3 11:35:16 2011 +0200 staging: brcm80211: removed ASSERTs from wlc_ampdu.c Driver contains far too many ASSERTs. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit af4e9c095599d491c8f7d39078d18a13208a9487 Author: Roland Vossen Date: Tue May 3 11:35:15 2011 +0200 staging: brcm80211: removed ASSERTs from wlc_main.c Driver contains far too many ASSERTs. Functions that were only used from within removed ASSERTs have also been deleted, such as wlc_bmac_taclear() in wlc_bmac.c. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 94da409ef37c66aba3e4639f49d3696b141a090e Author: Arend van Spriel Date: Tue May 3 11:35:14 2011 +0200 staging: brcm80211: honour basic rate configuration from mac80211 The basic rates to be used are provided by the wireless access point within the beacon information. The station should conform to those rates and this information is passed by mac80211 to the driver. The patch processes the information and applies the basic rates accor- dingly. This is required functionality for mac80211 drivers. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 78e1914dc977e1a1c970be7d4afd110735c92882 Author: Arend van Spriel Date: Tue May 3 11:35:13 2011 +0200 staging: brcm80211: rename rate related definitions Added prefix WLC_ to the rate related definition. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 2afa554be44d155c9de757f2671642a34e6593be Author: Arend van Spriel Date: Tue May 3 11:35:12 2011 +0200 staging: brcm80211: remove wl_ops_set_rts_threshold The function is not required as the driver does honour the USE_RTS_CTS flag. The mac80211 API notes state that either one or the other is required (see http://wireless.kernel.org/en/developers/Documentation/mac80211/API). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b5c60b5fdbb3e27fa70f182bba98cdbca02f5c3f Author: Arend van Spriel Date: Tue May 3 11:35:11 2011 +0200 staging: brcm80211: remove unnecessary if statements from bss_info_changed The mac80211 api callback bss_info_changed contained two placeholders that were expected to need to be implemented. However, reading the mac80211 notes (http://wireless.kernel.org/en/developers/Documentation/mac80211/API) shows that it is not needed as the driver honours the flags provided with the transmit sk_buff. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 09a4847085cb9c1a687940d12cc2b61d86099ad1 Author: Roland Vossen Date: Tue May 3 11:35:10 2011 +0200 staging: brcm80211: replaced WL_ERROR in rest of softmac. Code cleanup. Replaced proprietary function by wiphy_err(). Removed WL_ERROR() on spots where struct wlc was not available and message was redundant. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b8f092c998b97624125243d87b694915fa8f9d3a Author: Roland Vossen Date: Tue May 3 11:35:09 2011 +0200 staging: brcm80211: replaced WL_ERROR in wlc_main.c Code cleanup. Replaced proprietary function by wiphy_err(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 384235ee6d9658f0b7f6fad099f5c51ed8923a3b Author: Roland Vossen Date: Tue May 3 11:35:08 2011 +0200 staging: brcm80211: replaced WL_ERROR in wlc_bmac.c Code cleanup. Replaced proprietary function by wiphy_err(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit cd67038e698950effab9150165f2a820d82a29af Author: Roland Vossen Date: Tue May 3 11:35:07 2011 +0200 staging: brcm80211: replaced WL_ERROR in wlc_ampdu.c Code cleanup. Replaced proprietary function by wiphy_err(). Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 9b289c7b9a8c9200798c4d181d59c87341958cf3 Author: Roland Vossen Date: Tue May 3 11:35:06 2011 +0200 staging: brcm80211: replaced WL_ERROR in two files. Code cleanup. Use Linux functions instead of Broadcom specific one. On spots where the wiphy object is not yet available, pr_err() is used instead. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8c2c8216091bc8d4ac904da04a0a3563b948da81 Author: Roland Vossen Date: Tue May 3 11:35:05 2011 +0200 staging: brcm80211: making wiphy object accessible from wlc and phy Next commits will replace WL_ERROR and friends with BCMMSG. Because this new message log function require a wiphy object, device object pointers have been added to three data structures. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 13e059c3e1f37f4a0e63649cf6ac794cdfc4f9d7 Author: Roland Vossen Date: Tue May 3 11:35:04 2011 +0200 staging: brcm80211: removed WL_NONE Code cleanup. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 2c09ded5763751beb7fc7c2968480fa5cb21a219 Author: Roland Vossen Date: Tue May 3 11:35:03 2011 +0200 staging: brcm80211: bugfix for fullmac return codes Some code paths in the fullmac driver did not return a negative value on error. This has been corrected. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit b7ef2a9590479efc45e3acf3b193174da26aa561 Author: Roland Vossen Date: Tue May 3 11:35:02 2011 +0200 staging: brcm80211: made error codes in bcmutils.h positive Code cleanup. Bringing driver more inline with Linux code style. Does not introduce behavioral changes. Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 745492c254c8cd202632c3f8f92a896c5037e249 Author: Roland Vossen Date: Tue May 3 11:35:01 2011 +0200 staging: brcm80211: fixed error in non-DHD_DEBUG fullmac build A build error was introduced with recent fullmac changes when building without debug option configured: drivers/staging/brcm80211/brcmfmac/dhd_sdio.c: In function ‘dhdsdio_sdiod_drive_strength_init’: drivers/staging/brcm80211/brcmfmac/dhd_sdio.c:6366:3: error: ‘chn’ undeclared Cc: devel@linuxdriverproject.org Cc: linux-wireless@vger.kernel.org Cc: Brett Rudley Cc: Henry Ptasinski Cc: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit f5178ddd2f09de8b1cfc5e19043892e8b24666cb Author: Nicolas Pitre Date: Tue May 3 15:30:34 2011 -0400 ARM: PJ4: remove the ARMv6 compatible cache method entries The Marvell PJ4 is ARMv7 capable, so we don't support it in ARMv6 mode anymore. Signed-off-by: Nicolas Pitre Acked-by: Saeed Bishara Acked-by: Haojian Zhuang commit 0ffd3c4805446dc00a042140443fd7342a35d0b4 Author: Konstantin Porotchkin Date: Thu Apr 7 13:49:42 2011 +0300 ARM: Sync Marvell Dove defconfig with latest kernel Re-generate defconfig for Marvell Dove platform Signed-off-by: Konstantin Porotchkin Signed-off-by: Nicolas Pitre commit 7b769bb3e859b0de65999468dd1660e3364f8994 Author: Konstantin Porotchkin Date: Thu Apr 7 13:49:41 2011 +0300 ARM: Moving Marvell Dove platform defaults to ARMv7 Disabled legacy support for ARMv6 architecture on Dove platform. Latest Dove HW uses only ARMv7 model. Signed-off-by: Konstantin Porotchkin Signed-off-by: Nicolas Pitre commit 7e0ddb5049c6c1d8ef8d59d5bf588cab69fdfdc5 Author: Vasanthakumar Thiagarajan Date: Mon May 2 17:50:59 2011 +0530 ath6kl: Remove few more unused header files Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 0b0c87416fd69541ce8efc8703c839500671e7d6 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:49 2011 +0530 ath6kl: Replace data type macros with kernel defined ones Now athtypes_linux.h and a_types.h are unused, remove them. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit cb8a13aade3bec47ac8bdbf9ea86efec786ebe2e Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:48 2011 +0530 ath6kl: Remove unused macros from gpio_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 79d16c20102e0d46678e562371cac96c3a17ec1e Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:47 2011 +0530 ath6kl: Remove unused regdump.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 30eb73696116341c133ab993e707fff73de395c5 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:46 2011 +0530 ath6kl: Remove somemore unused header files from hw4.0/hw/ Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 053db30673107b7b53549b5dec227cd2b3b0c967 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:45 2011 +0530 ath6kl: Remove unused hw4.0/hw/vmc_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit e2da2c0f58d3381b32288e663d63b9c6cd8ac757 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:44 2011 +0530 ath6kl: Remove unused bb_lc_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 21e43d965e13d9132c3e718439bba88e33f4fd1b Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:43 2011 +0530 ath6kl: Remove unused hw2.0/hw/uart_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 05177f4020c01215b39fc934181fba2351c1170e Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:42 2011 +0530 ath6kl: Remove duplicate si_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 1ecf2f1c3ddce3f97e51e29a9b99d644eaec3c00 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:41 2011 +0530 ath6kl: Remove duplicate rtc_reg.h Also remove unused rtc register definition from rtc_reg.h. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit 3dc8f80dbf2767139d7b175ad1405016c3908b99 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:40 2011 +0530 ath6kl: Remove duplicate mbox_wlan_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit e428b6d67d33d2ea8a0d68ddf5cb4809e0cc1900 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:39 2011 +0530 ath6kl: Remove duplicate mbox_host_reg.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit b783adb7d54764db6d7e5f3a9b5aafb836c22805 Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:38 2011 +0530 ath6kl: Remove duplicate abp_map.h Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit a9d4d476dfef07a7e17341a3b792b260fea74dcb Author: Vasanthakumar Thiagarajan Date: Mon May 2 11:22:37 2011 +0530 ath6kl: Remove unused analog_register header files Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: Greg Kroah-Hartman commit d713680f2a7a91864e3722420222952f30a0346e Author: Greg Dietsche Date: Sat Apr 30 15:03:20 2011 -0500 staging: lirc: fixed coding style fixed a few minor coding style issues reported by checkpatch.pl Signed-off-by: Greg Dietsche Signed-off-by: Greg Kroah-Hartman commit 3b70a26bcbe05db12965de702368ca0b9ec945f1 Author: Javier M. Mellid Date: Sat Apr 30 17:44:26 2011 +0200 staging: sm7xx: minor cleanup Sync code comments with TODO, fix some style and format issues Signed-off-by: Javier M. Mellid Signed-off-by: Greg Kroah-Hartman commit 59815677555746f8263672f25cebcf4c27fc5d31 Author: Javier M. Mellid Date: Sat Apr 30 17:44:25 2011 +0200 staging: sm7xx: smtcfb.c: Use the new PCI PM The sm7xx driver uses the legacy PCI power management (suspend and resume) callbacks. This patch adds the new PCI PM and let the PCI core code handles the PCI-specific details of power transitions. Tested in 2.6.38, including standby and hibernation support. Tested-by: Wu Zhangjin Signed-off-by: Javier M. Mellid Signed-off-by: Greg Kroah-Hartman commit 9ae62107fb9010e902e60259c6a461c68885d0c7 Author: Naveen Singh Date: Fri Apr 29 20:02:31 2011 +0300 staging: ath6kl: open/shared auth implementation If the wpa_supplicant conf file supplies both open and shared algorithm, and AP is configured as shared then connection never happens. Since it is a FMAC driver additional logic is added in driver which first detects this, then tries open algorithm for the first time and when it fails tries the shared algo. kvalo: fix style issues Signed-off-by: Naveen Singh Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit 60c87f1453e8d53e14941c2d99861a21282942a5 Author: Naveen Singh Date: Fri Apr 29 20:02:20 2011 +0300 staging: ath6kl: cfg80211_roam issue; driver wedge If a heavy traffic is undergoing and a link is lost (bcn miss), wlan driver does a reconnection on its own and after connection is re-established, reports it as ROAM_EVENT to cfg. Now this event is handled as work queue. It could very well happen that by the time this event gets handled, cfg would have aged out the bss and we get the following WARN_ON in __cfg80211_roamed function in file net/wireless/sme.c. /* internal error -- how did we get to CONNECTED w/o BSS? */ if (WARN_ON(!wdev->current_bss)) { return; } To resolve the issue we report the BSS whenever we send a connect or roam event to the cfg. kvalo: fix style issues Signed-off-by: Naveen Singh Signed-off-by: Kalle Valo Signed-off-by: Greg Kroah-Hartman commit abc15bdd87171f9150e58e3f5237cd9372b185d7 Author: Marek Belisko Date: Fri Apr 29 07:41:10 2011 +0200 staging: ft1000: Removed unused variable InterruptsEnabled. Removed beacuse was only assigned and never used. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 2989b19ff838f3863cc1c32b288fce86cf639b3c Author: Marek Belisko Date: Fri Apr 29 07:41:09 2011 +0200 staging: ft1000: Remove unused variable CurrentInterruptEnableMask. Removed because was only assigned and never used. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 3d20634100d9ae74d38dac70d012f2e7af4e7558 Author: Marek Belisko Date: Fri Apr 29 07:41:08 2011 +0200 staging: ft1000: Remove unused variable DSPResetNum. Removed because was only assigned and never used. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 8016a34d95f281ad6497978a21124236a7eaa6cf Author: Marek Belisko Date: Fri Apr 29 07:41:07 2011 +0200 staging: ft1000: Remove unused variable ASICResetNum. Removed because was only assigned and not used on other places. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 8cfff928a7a8bf946570adce259e80635321e82b Author: Marek Belisko Date: Fri Apr 29 07:41:06 2011 +0200 staging: ft1000: Remove unused variables in ft1000_info. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit bb40876e436a025896aeb9c745e3cfb4f25700b2 Author: Marek Belisko Date: Fri Apr 29 07:41:05 2011 +0200 staging: ft1000: Remove unused declaration in ft1000_usb.h. Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 9be0392989306361d4a63a06a8ee281efbead548 Author: Jan Andersson Date: Tue May 3 20:11:58 2011 +0200 USB: EHCI: Add bus glue for GRLIB GRUSBHC controller This patch adds support for the GRLIB GRUSBHC EHCI controller from Aeroflex Gaisler. The controller is typically found on LEON/GRLIB SoCs. Tested on GR-LEON4-ITX with with little endian interface and on LEON3 system on GR-PCI-XC5V development board for big endian controller. Signed-off-by: Jan Andersson Signed-off-by: Greg Kroah-Hartman commit c430131a02d677aa708f56342c1565edfdacb3c0 Author: Jan Andersson Date: Tue May 3 20:11:57 2011 +0200 USB: EHCI: Support controllers with big endian capability regs The two first HC capability registers (CAPLENGTH and HCIVERSION) are defined as one 8-bit and one 16-bit register. Most HC implementations have selected to treat these registers as part of a 32-bit register, giving the same layout for both big and small endian systems. This patch adds a new quirk, big_endian_capbase, to support controllers with big endian register interfaces that treat HCIVERSION and CAPLENGTH as individual registers. Signed-off-by: Jan Andersson Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1810b3bb7bfeaad1fa782235ff0d06c30d6cbf06 Author: Michael Hennerich Date: Fri Apr 29 14:17:04 2011 +0200 IIO: GYRO: ADXRS450: Don't exit probe, in case the power on default is not met. If the part get's probed twice without hard reset in between, the power on default register read-back can't be met. This shouldn't cause the second probe to fail. So warn but don't exit. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7dd04eb04e0cf6593ff8ee30e9a4a403c1256834 Author: Michael Hennerich Date: Fri Apr 29 14:17:03 2011 +0200 IIO: GYRO: ADXRS450: Fix sign issues, properly shift results and limit values RATE and QUADRATURE_CORRECTION data is formatted as a twos complement number, and therefore must be handled as type signed short. TEMP result should be properly shifted. Dynamic Null Correction is a 10-bit signed number. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8ffc4e72131eb0103abf2be382b56f4fac0123c8 Author: Michael Hennerich Date: Fri Apr 29 14:17:02 2011 +0200 IIO: GYRO: ADXRS450: enforce sequential transfer delay of at least 0.1ms Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 232b1648e5d54b1e3f73463b0b26348889f12ae3 Author: Michael Hennerich Date: Fri Apr 29 14:17:01 2011 +0200 IIO: GYRO: ADXRS450: Add missing parity bit generation Add missing parity bit generation. Failure to add the parity bit caused half of the register accesses to fail. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit caca8c89c24d1fe1470aafacebe7d80910888235 Author: Michael Hennerich Date: Fri Apr 29 14:17:00 2011 +0200 IIO: GYRO: ADXRS450: Cleanup result extraction and update license notice Cleanup result extraction and update license notice, no functional changes. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 31f6a29a58c0c9aa5c6e13abe0b00b81bb3c9601 Author: Michael Hennerich Date: Fri Apr 29 14:16:59 2011 +0200 IIO: GYRO: ADXRS450: Don't issue two messages, use two transfers Don't issue the same message twice, use two transfers and group them together Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit bd5a793fec23c1ee7f98b9b68001dcee0089ab35 Author: Michael Hennerich Date: Wed Apr 27 17:22:36 2011 +0200 IIO: DDS: AD9834: Add support for AD9837 and AD9838 DDS devices Add support for AD9837 and AD9838 DDS devices Update copyright and license notice Fix typo Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ba1c2bb2cc29eada78a6d35488291892431918e5 Author: Michael Hennerich Date: Wed Apr 27 17:13:58 2011 +0200 IIO: DAC: AD5791: Add support for the AD5760/AD5780 High Resolution DACs Add support for the AD5760/AD5780 High Resolution Voltage Output DACs Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit af46800b9a3947724baeffb1a1649276971297c7 Author: Stephen Warren Date: Thu Apr 28 17:38:01 2011 -0600 ASoC: Implement mux control sharing Control sharing is enabled when two widgets include pointers to the same kcontrol_new in their definition. Specifically: static const struct snd_kcontrol_new adcinput_mux = SOC_DAPM_ENUM("ADC Input", adcinput_enum); static const struct snd_soc_dapm_widget wm8903_dapm_widgets[] = { SND_SOC_DAPM_MUX("Left ADC Input", SND_SOC_NOPM, 0, 0, &adcinput_mux), SND_SOC_DAPM_MUX("Right ADC Input", SND_SOC_NOPM, 0, 0, &adcinput_mux), }; This is useful when a single register bit or field affects multiple muxes at once. The common case is to have separate control bits or fields for each mux (channel). An alternative way of looking at this is that the mux is a stereo (or even n-channel) mux, rather than independant mono muxes. Without this change, a separate kcontrol will be created for each DAPM_MUX. This has the following disadvantages: * Confuses the user/programmer with redundant controls that don't map to separate hardware. * When one of the controls is changed, ASoC fails to update the DAPM logic for paths solely affected by the other controls impacted by the same register bits. This causes some paths not to be correctly powered up or down. Prior to this change, to work around this, the user or programmer had to manually toggle all duplicate controls away from the intended setting, and then back to it. Control sharing implies that the control is named based on the kcontrol_new itself, not any of the widgets that are affected by it. Control sharing is implemented by: When creating kcontrols, if a kcontrol does not yet exist for a particular kcontrol_new, then a new kcontrol is created with a list of widgets containing just a single entry. This is the normal case. However, if a kcontrol does already exists for the given kcontrol_new, the current widget is simply added to that kcontrol's list of affected widgets. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fafd2176f72148e83c64a1f818ff33fceed83d08 Author: Stephen Warren Date: Thu Apr 28 17:38:00 2011 -0600 ASoC: Store a list of widgets in a DAPM mux/mixer kcontrol A future change will allow multiple widgets to be affected by the same control. For example, a single register bit that controls separate muxes in both the L and R audio paths. This change updates the code that handles relevant controls to be able to iterate over a list of affected widgets. Note that only the put functions need significant modification to implement the iteration; the get functions do not need to iterate, nor unify the results, since all affected widgets reference the same kcontrol. When creating the list of widgets, always create a 1-sized list, since the control sharing is not implemented in this change. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fad598887dc0d89ffee3e51281a8143beb2ae58c Author: Stephen Warren Date: Thu Apr 28 17:37:59 2011 -0600 ASoC: Add w->kcontrols, and populate it Future changes will need reference to the kcontrol created for a given kcontrol_new. Store the created kcontrol values now. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 82cfecdc03499be63262d60daf859b4cc1ea3fba Author: Stephen Warren Date: Thu Apr 28 17:37:58 2011 -0600 ASoC: s/w->kcontrols/w->kcontrol_news/g A future change will modify struct snd_soc_dapm_widget to store the actual kcontrol pointers for each kcontrol_new in a field named kcontrols. Rename the existing kcontrols field to enable this. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 65f7e32520fcc31c32d72e61198a4eb457656860 Merge: 6c45e12 005967a Author: Mark Brown Date: Tue May 3 19:07:45 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit 62819fd9481021db7f87d5f61f2e2fd2be1dfcfa Author: Jeff Chua Date: Wed Apr 27 11:25:14 2011 -0500 staging: r8712u: Fix driver to support ad-hoc mode Driver r8712u is unable to handle ad-hoc mode. The issue is that when the driver first starts, there will not be an SSID for association. The fix is to always call the "select and join from scan" routine when in ad-hoc mode. Note: Ad-hoc mode worked intermittently before. If the driver had previously been associated, then things were OK. Signed-off-by: Jeff Chua Signed-off-by: Larry Finger Cc: Stable Signed-off-by: Greg Kroah-Hartman commit 6c45e126567eb9f96519ca97917ce317fcbe5218 Author: Lars-Peter Clausen Date: Sat Apr 30 19:45:50 2011 +0200 ASoC: Remove DAPM debugfs entries before freeing widgets Remove the DAPM debugfs entries before freeing the context's widgets, otherwise a use after free situation might occur. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d5d1e0bef4385a0cd726613c0fc1909cd23efd39 Author: Lars-Peter Clausen Date: Sat Apr 30 19:45:49 2011 +0200 ASoC: Move DAPM widget debugfs entry creation to snd_soc_dapm_new_widgets Currently debugfs entries for a DAPM widgets are only added in snd_soc_dapm_debugfs_init. If a widget is added later (for example in the dai_link's probe callback) it will not show up in debugfs. This patch moves the creation of the widget debugfs entry to snd_soc_dapm_new_widgets where it will be added after the widget has been properly instantiated. As a side-effect this will also reduce the number of times the DAPM widget list is iterated during a card's instantiation. Since it is possible that snd_soc_dapm_new_widgets is invoked form the codecs or cards probe callbacks, the creation of the debugfs dapm directory has to be moved before these are called. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8eecaf62445e175572ffabaab090b471001c5a2c Author: Lars-Peter Clausen Date: Sat Apr 30 19:45:48 2011 +0200 ASoC: Move DAPM debugfs directory creation to snd_soc_dapm_debugfs_init Move the creation of the DAPM debugfs directory to snd_soc_dapm_debugfs_init instead of having the same duplicated code in both codec and card DAPM setup. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 0aaae527c71e6af571093d90474f37c8662008d5 Author: Lars-Peter Clausen Date: Sat Apr 30 19:45:47 2011 +0200 ASoC: Free the card's DAPM context Free the card's DAPM context when the card is removed. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 1307394afd2d6cf8f41f5e691b43ffc9e027630c Author: Mike Rapoport Date: Tue Apr 26 11:52:42 2011 +0300 ASoC: tegra: TrimSlice machine support Signed-off-by: Mike Rapoport Acked-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 61ec9016988f5c030e96e3c8a42ee9e11b8517aa Author: John Linn Date: Sat Apr 30 00:07:43 2011 -0400 tty/serial: add support for Xilinx PS UART The Xilinx PS Uart is used on the new ARM based SoC. This UART is not compatible with others such that a seperate driver is required. Signed-off-by: John Linn Signed-off-by: Greg Kroah-Hartman commit 2ce2c3ac8852cfc8f74f4b7b9a2c4cdff007f96a Author: Pavankumar Kondeti Date: Mon May 2 11:56:33 2011 +0530 USB: OTG: msm: Clear in_lpm flag before enabling the IRQ in resume The current code is clearing in_lpm flag after enabling the IRQ. If IRQ comes immediately before in_lpm flag is set, it thinks that hardware is in low power mode and disables the IRQ. Fix this by clearing in_lpm flag before enabling the IRQ. Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit ac1aa6a21747d02a93b1becb4ab19f1fc9de2beb Author: Anji jonnala Date: Mon May 2 11:56:32 2011 +0530 USB: gadget: Initialize ep0 once while registering gadget in ci13xxx_udc Some of the simulators may cache the ep0 maxpacket size to zero if the ep0 dQh is not setup before enabling the pullup. Hence Setup ep0 and initialize the dQh fields once while registering the gadget(before enabling the pullup). HSUSB Chipidea link controller spec says ep0 is enabled always in the HW. Hence disabling and enabling the ep0 as a part of reset interrupt is unneccesary. Remove the disable/enable ep0 logic from reset interrupt handling. Signed-off-by: Anji jonnala Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 76cd9cfb2e022d19bfc008a6e993e1e407034241 Author: Pavankumar Kondeti Date: Mon May 2 11:56:31 2011 +0530 USB: gadget: Use ep0out for control OUT data phase in ci13xxx_udc The current code queue the control OUT data request to ep0in instead of ep0out. Check ep0_dir and use the correct control endpoint. Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 4c5212b7688955075b166def5ce08b34beb87a9c Author: Pavankumar Kondeti Date: Mon May 2 11:56:30 2011 +0530 USB: gadget: Fix bug in endpoint feature request processing in ci13xxx_udc The OUT endpoints are stored in 0 - hw_ep_max/2 and IN endpoints are stored from hw_ep_max/2 - hw_ep_max in ci13xxx_ep array. Retrieve the IN endpoint correctly while processing endpoint feature requests. Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 986b11b8c7ac3d8752790654637bd944ea18ee79 Author: Pavankumar Kondeti Date: Mon May 2 11:56:29 2011 +0530 USB: gadget: Fix unused variable warning in ci13xxx_udc Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 8c2387a71ccbae699cfdc315382afc9a89b01b2d Author: Pavankumar Kondeti Date: Mon May 2 11:56:28 2011 +0530 USB: gadget: Use bitwise AND operator to test flags in ci13xxx_udc Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit ef90748216d80f4afc95657925873a6fc3d3d6e2 Author: Pavankumar Kondeti Date: Mon May 2 11:56:27 2011 +0530 USB: gadget: Fix typo (s/EBUSY/-EBUSY) in ci13xxx_udc Signed-off-by: Pavankumar Kondeti Signed-off-by: Greg Kroah-Hartman commit 2887ba9e3e478522a4a3f1f64506fe1e8b0c740c Author: Dmitry Eremin-Solenikov Date: Tue May 3 12:46:46 2011 +0400 USB: gpio-vbus: ask for vbus_draw regulator before registering xceiv Ask for vbus_draw regulator before registering tranceiver to disallow possible race between registration and set_power/etc. Signed-off-by: Dmitry Eremin-Solenikov Cc: Eric Miao Signed-off-by: Greg Kroah-Hartman commit ce97cac813340eb8ecb1c5410041c9eade58f870 Author: Michael Hund Date: Tue May 3 10:12:00 2011 -0700 USB: ldusb: add several new devices Added several new devices to ldusb and excluded them from the HID driver. Signed-off-by: Michael Hund Signed-off-by: Greg Kroah-Hartman commit 139540170d9d9b7ead3caaf540f161756b356d56 Author: Rabin Vincent Date: Wed Apr 27 21:07:28 2011 +0530 USB: ehci: remove structure packing from ehci_def As pointed out by Arnd Bergmann, in include/linux/usb/ehci_def.h, struct ehci_caps is defined with __attribute__((packed)) for no good reason, and this triggers undefined behaviour when using ARM's readl() on pointers to elements of this structure: http://lkml.kernel.org/r/201102021700.20683.arnd@arndb.de The same problem exists with the other two structures in ehci_def.h too, so remove the __attribute__((packed)) from all of them. Cc: Arnd Bergmann Signed-off-by: Rabin Vincent Signed-off-by: Greg Kroah-Hartman commit 14be249c969817e05c4f1ce042906e1c5be68873 Author: David Daney Date: Wed Apr 27 10:54:22 2011 -0700 usb: Configure octeon2 glue logic for proper uSOF cycle period. The reset value of the uSOF cycle period is incorrect. Set it to 60,000 bits. Without this, several commercial USB flash memory devices and hubs fail to work properly. Signed-off-by: David Daney Signed-off-by: Greg Kroah-Hartman commit bf5417152154038bbae429e2357731b1dad03328 Author: David Daney Date: Wed Apr 27 10:54:21 2011 -0700 usb: octeon2-common.c: Configure ports for proper electrical characteristics. Additional PHY tuning is needed to obtain compliant 'eye' diagram electrical characteristics. Signed-off-by: David Daney Signed-off-by: Greg Kroah-Hartman commit f5ced99725d05f521ef0f597e688c19835e59c55 Author: David Daney Date: Wed Apr 27 10:54:20 2011 -0700 USB: octeon2-common: Don't reinitialize the clocks. The UCTL clock initialization will cause the ehci and ohci blocks to become inoperable if the clocks are reinitialized. Check to see if the clocks have already been initialized. Also use a mutex to protect the clock initialization code so that there can be no attempt to use the clocks before they are fully configured. Signed-off-by: David Daney Signed-off-by: Greg Kroah-Hartman commit f2e0192519b31974009c0da55dc39c497240df06 Author: Takashi Iwai Date: Tue May 3 18:48:29 2011 +0200 ALSA: lola - Yet another linux/delay.h inclusion Signed-off-by: Takashi Iwai commit 667eff35a1f56fa74ce98a0c7c29a40adc1ba4e3 Author: Yongqiang Yang Date: Tue May 3 12:25:07 2011 -0400 ext4: reimplement convert and split_unwritten Reimplement ext4_ext_convert_to_initialized() and ext4_split_unwritten_extents() using ext4_split_extent() Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" Tested-by: Allison Henderson commit 47ea3bb59cf47298b1cbb4d7bef056b3afea0879 Author: Yongqiang Yang Date: Tue May 3 12:23:07 2011 -0400 ext4: add ext4_split_extent_at() and ext4_split_extent() Add two functions: ext4_split_extent_at(), which splits an extent into two extents at given logical block, and ext4_split_extent() which splits an extent into three extents. Signed-off-by: Yongqiang Yang Signed-off-by: "Theodore Ts'o" Tested-by: Allison Henderson commit f044785d0afc6c173ca7298c1a1cb4559423112f Author: Takashi Iwai Date: Tue May 3 18:21:01 2011 +0200 ALSA: lola - Add missing inclusion of linux/delay.h Signed-off-by: Takashi Iwai commit 4296f1ad5aa513500a87a4709579d31be8ba461f Author: Axel Lin Date: Tue May 3 08:56:56 2011 -0700 Input: h3600_ts_input - fix a leak of the IRQ during init failure Make sure we are passing the same cookie in all calls to request_irq() and free_irq(). Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 12d0cef701775f7f52667c33e57a5fe61fa49bd5 Author: Dmitry Torokhov Date: Mon May 2 23:09:19 2011 -0700 Input: sh_keysc - make sh_keysc_device_driver static This variable is not used outside of the module so we should mark it as static. Signed-off-by: Dmitry Torokhov commit 197217a5af79c23609da03eda2a52ee8603eec52 Author: Yongqiang Yang Date: Tue May 3 11:45:29 2011 -0400 ext4: add a function merging extents right and left 1) Rename ext4_ext_try_to_merge() to ext4_ext_try_to_merge_right(). 2) Add a new function ext4_ext_try_to_merge() which tries to merge an extent both left and right. 3) Use the new function in ext4_ext_convert_unwritten_endio() and ext4_ext_insert_extent(). Signed-off-by: Yongqiang Yang Tested-by: Allison Henderson commit df5e6223407e3e645065c4bd968fee007f0e0287 Author: Jan Kara Date: Tue May 3 11:12:58 2011 -0400 ext4: fix deadlock in ext4_symlink() in ENOSPC conditions ext4_symlink() cannot call __page_symlink() with transaction open. __page_symlink() calls ext4_write_begin() which can wait for transaction commit if we are running out of space thus causing a deadlock. Also error recovery in ext4_truncate_failed_write() does not count with the transaction being already started (although I'm not aware of any particular deadlock here). Fix the problem by stopping a transaction before calling __page_symlink() (we have to be careful and put inode to orphan list so that it gets deleted in case of crash) and starting another one after __page_symlink() returns for addition of symlink into a directory. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit fe4af1b55ed76e3051bbd8abce7d6b3c504272a5 Author: Takashi Iwai Date: Tue May 3 17:06:53 2011 +0200 ALSA: lola - Implement polling_mode like hd-audio Also protect the call of lola_update_rirb() with spinlock. Signed-off-by: Takashi Iwai commit 7ad8e4e6ae2a7c95445ee1715b1714106fb95037 Author: Jan Kara Date: Tue May 3 11:05:55 2011 -0400 ext4: Fix fs corruption when make_indexed_dir() fails When make_indexed_dir() fails (e.g. because of ENOSPC) after it has allocated block for index tree root, we did not properly mark all changed buffers dirty. This lead to only some of these buffers being written out and thus effectively corrupting the directory. Fix the issue by marking all changed data dirty even in the error failure case. Signed-off-by: Jan Kara Signed-off-by: "Theodore Ts'o" commit 2db3002029d6c8fbd8ad4ab21f501475cd8c96f9 Author: Takashi Iwai Date: Tue May 3 17:05:08 2011 +0200 ALSA: lola - Rename to Digital SRC Capture Switch Renamed to Digial SRC Capture Switch for more correct representation. Also fixed analog volume control on Lola161611 and lola881. Signed-off-by: Takashi Iwai commit c7aad3c317afc05418414c95e877173799145d0b Author: Takashi Iwai Date: Tue May 3 17:02:35 2011 +0200 ALSA: lola - Add sync in loop implementation For assuring the synchronized state with the pause operation, loop over the all linked streams and waits until all get ready in a loop. Signed-off-by: Takashi Iwai commit 7e79f2267605e59492fef92b966dddc3c6a68b41 Author: Takashi Iwai Date: Tue May 3 16:59:27 2011 +0200 ALSA: lola - Add SRC refcounting Added the refcounting for the exclusive SRC control. Also, fixed the possible stall after PCM pause operations. Signed-off-by: Takashi Iwai commit 8bd172dc96fba8ba5a7560afdc1ff7461c278e86 Author: Takashi Iwai Date: Tue May 3 16:51:56 2011 +0200 ALSA: lola - Allow granularity changes Add some sanity checks. Change PCM parameters appropriately per granularity. Signed-off-by: Takashi Iwai commit 972505ccde9a3bdc8455f4cf3d3f37d17f8f10a3 Author: Takashi Iwai Date: Tue May 3 16:50:51 2011 +0200 ALSA: lola - Use SG-buffer Completely switch to SG-buffer now, as it's working stably. Signed-off-by: Takashi Iwai commit fe3d393eda2a716c2ea7fcd63e105657911ed245 Author: Takashi Iwai Date: Tue May 3 16:48:59 2011 +0200 ALSA: lola - Add Lola-specific module options Added granularity and sample_rate_min module options. The former controls the h/w access granularity. As default, it's set to the max value 32. The latter controls the minimum sample rate in Hz, as default 16000. Signed-off-by: Takashi Iwai commit 0f8f56c959c9c4a65a5ad13f1b49d97db30b5c2f Author: Takashi Iwai Date: Tue May 3 16:47:03 2011 +0200 ALSA: lola - Fix PCM stalls Signed-off-by: Takashi Iwai commit 333ff3971f374d9a057fd6d1492a2ef78989974d Author: Takashi Iwai Date: Tue May 3 16:41:02 2011 +0200 ALSA: lola - Use a single BDL Use a single BDL for both buffers instead of allocating for each. Also a few tune-up to avoid the stream stalls in the PCM code and the prelimianry work for SG-buffer support are added, too. Signed-off-by: Takashi Iwai commit a426c787233c87587b6cac797ac840162bdb09c2 Author: Takashi Iwai Date: Tue May 3 16:36:09 2011 +0200 ALSA: lola - Suppress the debug print Use snd_printdd() for less important debug messages. Signed-off-by: Takashi Iwai commit c772bbe69a0171f12ad2adde5c150b4e211365ec Author: Takashi Iwai Date: Tue May 3 16:32:48 2011 +0200 ALSA: lola - Changes in proc file The codec proc file becomes a read only that shows the codec widgets in a text form. A new proc file, codec_rw, is introduced instead for accessing the Lola verb directly by reading and writing to it. Also, regs proc file shows the contents of DSD, too. Signed-off-by: Takashi Iwai commit 1c5d7b312f9d0e18e2051eac058257db3586f54d Author: Takashi Iwai Date: Tue May 3 16:39:37 2011 +0200 ALSA: lola - Make SRC helper global Make lola_sample_rate_convert() global so that it can be accessed from other files. Signed-off-by: Takashi Iwai commit d43f3010b8fa7530c3780c087fad9b0a8a437ba1 Author: Takashi Iwai Date: Tue May 3 16:14:46 2011 +0200 ALSA: Add the driver for Digigram Lola PCI-e boards Added a new driver for supporting Digigram Lola PCI-e boards. Lola has a similar h/w design like HD-audio but with extended verbs. Thus the driver is written similarly like HD-audio driver in the bus part. The codec part is rather written in a fixed way specific to the Lola board because of the verb incompatibility. The driver provides basic PCM, supporting multi-streams and mixing. Signed-off-by: Takashi Iwai commit 74e4e6db38918620bdf8a46e94982ead2b228d43 Author: Theodore Ts'o Date: Tue May 3 09:34:42 2011 -0400 ext4: set extents flag when migrating file to use extents Fix a typo that was introduced in commit 07a038245b (in 2.6.36) which caused the extents flag not to be set at the conclusion of converting an inode to use extents. Reported-by: Peter Uchno Signed-off-by: "Theodore Ts'o" commit 48dbb6dc86ca5d1b2224937d774c7ba98bc3a485 Author: Borislav Petkov Date: Tue May 3 15:26:43 2011 +0200 hw breakpoints: Move to kernel/events/ As part of the events sybsystem unification, relocate hw_breakpoint.c into its new destination. Cc: Frederic Weisbecker Signed-off-by: Borislav Petkov commit fae85b7c8bcc7de9c0a2698587e20c15beb7d5a6 Author: Borislav Petkov Date: Tue Oct 26 20:24:03 2010 +0200 perf: Start the restructuring mv kernel/perf_event.c -> kernel/events/core.c. From there, all further sensible splitting can happen. The idea is that due to perf_event.c becoming pretty sizable and with the advent of the marriage with ftrace, splitting functionality into its logical parts should help speeding up the unification and to manage the complexity of the subsystem. Signed-off-by: Borislav Petkov commit 87023ff74b2358b5e51d3c790704f786e89ff769 Author: Takashi Iwai Date: Tue May 3 12:50:29 2011 +0200 ASoC: Declare const properly for enum texts The enum texts are supposed to be const char * const []. Without the second const, it gets compile warnings like sound/soc/codecs/max98095.c:607:2: warning: initialization discards qualifiers from pointer target type Signed-off-by: Takashi Iwai commit 8f065d36508f283ee6cbeb05829f032d0b782a16 Author: Steven Whitehouse Date: Tue May 3 11:49:19 2011 +0100 GFS2: Improve bug trap code in ->releasepage() If the buffer is dirty or pinned, then as well as printing a warning, we should also refuse to release the page in question. Currently this can occur if there is a race between mmap()ed writers and O_DIRECT on the same file. With the addition of ->launder_page() in the future, we should be able to close this gap. Signed-off-by: Steven Whitehouse commit 4f1de018215fb56940ce5793e11becd1e8cd6e44 Author: Steven Whitehouse Date: Tue Apr 26 10:23:56 2011 +0100 GFS2: Fix ail list traversal In the recent patches to update the AIL list code, I managed to forget that the ail list lock got dropped, even though I added a comment specifically to remind myself :( Reported-by: Barry Marson Signed-off-by: Steven Whitehouse commit 6905d9e4dda6112f007e9090bca80507da158e63 Author: Benjamin Marzinski Date: Tue Apr 26 01:13:24 2011 -0500 GFS2: make sure fallocate bytes is a multiple of blksize The GFS2 fallocate code chooses a target size to for allocating chunks of space. Whenever it can't find any resource groups with enough space free, it halves its target. Since this target is in bytes, eventually it will no longer be a multiple of blksize. As long as there is more space available in the resource group than the target, this isn't a problem, since gfs2 will use the actual space available, which is always a multiple of blksize. However, when gfs couldn't fallocate a bigger chunk than the target, it was using the non-blksize aligned number. This caused a BUG in later code that required blksize aligned offsets. GFS2 now ensures that bytes is always a multiple of blksize Signed-off-by: Benjamin Marzinski Signed-off-by: Steven Whitehouse commit 9a3f39ff36e11ea6b6c8b5f90337a864cb7e81f6 Author: Mike Rapoport Date: Mon Apr 25 01:09:07 2011 +0300 omap: move detection of NAND CS to common-board-devices and reduce amount of copy/paste Signed-off-by: Mike Rapoport CC: Oleg Drokin Signed-off-by: Tony Lindgren commit fbd8071c188e3053fb318d78214e54d4615d93f2 Author: Mike Rapoport Date: Mon Apr 25 01:09:06 2011 +0300 omap: use common initialization for PMIC i2c bus Introduce omap_pmic_init that registers i2c bus and PMIC device on that bus and add omap2/3/4 wrappers for common cases. Signed-off-by: Mike Rapoport Signed-off-by: Tony Lindgren commit 96974a249b0cf3537f49115a59be67e2c54f315c Author: Mike Rapoport Date: Mon Apr 25 01:09:05 2011 +0300 omap: consolidate touch screen initialization among different boards Add common-board-devices.c that will contain the code for peripheral devices initializatoin shared between multiple boards. Start small with touchscreen initialization. Signed-off-by: Mike Rapoport Signed-off-by: Tony Lindgren commit d14f81741f4ca5c96f52eff0210c8da0b0997d6f Author: Nishanth Menon Date: Wed Apr 27 06:13:46 2011 -0700 OMAP3+: voltage: remove spurious pr_notice for debugfs cat of debugfs entry for vp_volt provides voltage. The additional pr_notice is just spam on console and provides no additional information. Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman Signed-off-by: Tony Lindgren commit 34549009a1a48e9212508aa32a90281e682c52b1 Author: Nishanth Menon Date: Wed Apr 27 06:13:05 2011 -0700 OMAP4: PM: remove redundant #ifdef CONFIG_PM pm44xx.c is built only when CONFIG_PM is setup, remove redundant CONFIG_PM check. This also fixes: https://bugzilla.kernel.org/show_bug.cgi?id=25022 Reported-by: Martin Etti Signed-off-by: Nishanth Menon Signed-off-by: Kevin Hilman Signed-off-by: Tony Lindgren commit 283a1c1f276d879ab8bafec8ec9f8fca03f159bb Author: Aaro Koskinen Date: Tue Apr 26 02:25:32 2011 -0700 OMAP3+: smartreflex: delete debugfs entries on probe error Delete created debugfs entries if probe fails. Signed-off-by: Aaro Koskinen Signed-off-by: Kevin Hilman commit 833d78fc58774738a6fe7175794b9a9b251afa88 Author: Aaro Koskinen Date: Tue Apr 26 02:25:27 2011 -0700 OMAP3+: smartreflex: delete instance from sr_list on probe error If the probe fails, the node should be deleted from sr_list. Signed-off-by: Aaro Koskinen Signed-off-by: Kevin Hilman commit 0c49cc167c6365a1a514b1e44d7fa8378ff16c4c Author: Aaro Koskinen Date: Tue Apr 26 02:25:21 2011 -0700 OMAP3+: smartreflex: fix ioremap leak on probe error Add missing iounmap() to error paths. Signed-off-by: Aaro Koskinen Signed-off-by: Kevin Hilman commit da9e7392f4b0c295a47ec7def38629959eb51ff2 Author: Aaro Koskinen Date: Tue Apr 26 02:25:16 2011 -0700 OMAP3+: smartreflex: request the memory region We are releasing the memory region, but never actually request it. Signed-off-by: Aaro Koskinen Signed-off-by: Kevin Hilman commit 0bf6e2eca2a32fc6ea69eb499313234476a526d7 Author: Aaro Koskinen Date: Tue Apr 26 02:25:10 2011 -0700 OMAP3+: smartreflex: fix sr_late_init() error path in probe sr_late_init() will take care of freeing the resources. Signed-off-by: Aaro Koskinen Signed-off-by: Kevin Hilman commit e15d13f45ec5dd0217317eddacd4e92565b300a1 Author: Tony Lindgren Date: Wed Apr 20 23:37:06 2011 -0700 omap: Run make savedefconfig on omap2plus_defconfig to shrink it After commit ffb63e3 (omap2/3/4: Select all omaps and boards by default) many explicit settings can be dropped from the defconfig. This shrinks it down a bit more and makes it easier to patch later on. Signed-off-by: Tony Lindgren commit 35f7b961054021fd89b73a15988f10d38da71beb Author: omar ramirez Date: Mon Apr 18 16:39:42 2011 +0000 OMAP3/4: l3: minor cleanup for parenthesis and extra spaces Removing extra lines, spaces and unneeded parenthesis. Collapsing an if statement to detect the type of error. l3_smx: - Fixing the message printed on error. So now: looks like: "No Error Error seen..." "No Error seen..." "In-Band Error Error seen..." "In-Band Error seen..." Other messages are self explanatory, no "Error" added to them. (E.g.: "Address Hole seen...") Signed-off-by: Omar Ramirez Luna Acked-by: Santosh Shilimkar Signed-off-by: Tony Lindgren commit 7529b703869d59e799a0c0eb4f3df7a418f7dc99 Author: omar ramirez Date: Mon Apr 18 16:39:41 2011 +0000 OMAP3/4: l3: fix omap3_l3_probe error path l3_smx: - Add missing free_irq and remove an empty goto label. l3_noc: - If kzalloc fails driver shouldn't continue with a NULL pointer. - Add missing free_irq and remove empty goto labels. - Safe to assume that if we reached the end point of execution without errors, then return value is 0, so replacing instead another goto. Signed-off-by: Omar Ramirez Luna Acked-by: Santosh Shilimkar Signed-off-by: Tony Lindgren commit 8417da6f2128008c431c7d130af6cd3d9079922e Author: Michal Marek Date: Mon May 2 12:51:15 2011 +0200 kbuild: Fix passing -Wno-* options to gcc 4.4+ Starting with 4.4, gcc will happily accept -Wno- in the cc-option test and complain later when compiling a file that has some other warning. This rather unexpected behavior is intentional as per http://gcc.gnu.org/PR28322, so work around it by testing for support of the opposite option (without the no-). Introduce a new Makefile function cc-disable-warning that does this and update two uses of cc-option in the toplevel Makefile. Reported-and-tested-by: Stephen Rothwell Signed-off-by: Michal Marek commit ce85c9ac8dd53a658d85b4f39f612c23aa704e49 Author: Raymond Yau Date: Tue May 3 13:33:53 2011 +0800 ALSA: hda - fix NULL-dereference in patch_realtek Fix NULL-dereference when try to use alt_playback since those codecs which support multistreaming playback usually have more than 1 adc but the driver should create alt_capture when spec->stream_analog_alt_capture is also defined. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit fdc6807fcd09416c5537f479e1dcd624118e234c Author: Peter Gundermann Date: Tue May 3 10:15:03 2011 +0200 HID: add support for Logitech G27 wheel Gere's a small patch to add support for the Logitech G27 wheel, since the prior patch only added FF support for the Driving Force Pro and G25. The patch contains the changes from the G25 and DFP, too. I tested the changes with wine/LFS and got full support for all axes and buttons. Signed-off: Peter Gundermann Signed-off-by: Jiri Kosina commit 11383a9bcc213cd2b55e2aef863ef2a8b3d7b62c Author: Igor Grinberg Date: Tue Apr 26 16:25:56 2011 +0000 arm: omap: gpmc-smsc911x: minor style fixes replace "printk(KERN_ERR" by "pr_err(" and fix needlessly multi-lined #ifdef Signed-off-by: Igor Grinberg Acked-by: Nishanth Menon Signed-off-by: Tony Lindgren commit 3a852d3bd53e718206a18b015909c4b575952692 Author: David Howells Date: Thu Apr 28 16:26:38 2011 +0100 CRED: Fix load_flat_shared_library() to initialise bprm correctly Fix binfmt_flag's load_flat_shared_library() to initialise bprm correctly. Currently, prepare_binprm() is called with only .filename .file and .cred fields set in bprm, but the .cred_prepared and .per_clear fields at least need initialising. Reported-by: Tetsuo Handa Signed-off-by: David Howells Signed-off-by: James Morris commit dbc265465a3fc8ac8d75d3ede7e84ea122a8fd0a Merge: 71a9f9d b61d378 Author: Greg Kroah-Hartman Date: Mon May 2 17:05:19 2011 -0700 Merge branch 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-next * 'for-usb-next' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/sarah/xhci: xhci 1.0: Set transfer burst last packet count field. xhci 1.0: Set transfer burst count field. xhci 1.0: Update TD size field format. xhci 1.0: Only interrupt on short packet for IN EPs. xhci: Remove sparse warning about cmd_status. usbcore: warm reset USB3 port in SS.Inactive state usbcore: Refine USB3.0 device suspend and resume xHCI: report USB3.0 portstatus comply with USB3.0 specification xHCI: Set link state support xHCI: Clear link state change support xHCI: warm reset support usb/ch9: use proper endianess for wBytesPerInterval xhci: Remove recursive call to xhci_handle_event xhci: Add an assertion to check for virt_dev=0 bug. xhci: Add rmb() between reading event validity & event data access. xhci: Make xHCI driver endian-safe commit 71a9f9d268a5c2b0a80ae606cf8e502f3410a5df Author: Arvid Brodin Date: Tue Apr 26 21:48:30 2011 +0200 usb/isp1760: Improve urb queueing, get rid of BUG():s in normal code paths This patch replaces the code that handles qtds. Intead of directly allocating chip mem and chip slot, enqueue the transfer in a list of queue heads. Use a centralized function enqueue_qtds() to prioritize and enqueue transfers. This removes all of the interrupt context BUG() calls when out of chip mem or transfer slots. It also makes it possible to efficiently use the dual-port mem on the chip for double-buffered transfers, which improve transfer times to/from/between usb sticks by about 40 % on my HW. With this patch it should also be possible to handle qtd scheduling outside of the interrupt handler, for significantly improved kernel latency. I have not implemented this since there are some locking issues which I haven't had time to look at. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit 22bea9cef810ec54abdb057de46cea04c972dc64 Author: Arvid Brodin Date: Tue Apr 26 21:46:47 2011 +0200 usb/isp1760: Report correct urb status after unlink This fixes a bug in my previous (2.6.38) patch series which caused urb->status value to be wrong after unlink (broke usbtest 11, 12). Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit eb1a796868effbf33ec2cfa3d15567d7e31f2ee2 Author: Arvid Brodin Date: Tue Apr 26 21:48:02 2011 +0200 usb/isp1760: Remove unneeded OR map and HcBufferStatus code Since we always set the OR flag for each transfer, we can just as well set all these bits to 1 at init and be done with it. Also, HcBufferStatus can be set at init as per the ISP1761 datasheet page 47 with no loss of performance. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit 34537731d7f64d20116fbef4a665ec6a37195573 Author: Arvid Brodin Date: Tue Apr 26 21:47:37 2011 +0200 usb/isp1760: Clean up urb enqueueing This collects urb enqueue code that was spread out all over the place into a couple of more readable functions. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit 847ed3e8f18b9cc401677e6e14eb7c89c7b8dfb6 Author: Arvid Brodin Date: Tue Apr 26 21:47:12 2011 +0200 usb/isp1760: Remove false error printout This removes the "qh is 0" printout. qh == NULL if the urb has been unlinked, so this condition is normal. Signed-off-by: Arvid Brodin Signed-off-by: Greg Kroah-Hartman commit dfbc6fa3e1f19d31aeb6afdffeede7271e29bfbf Author: Anton Tikhomirov Date: Thu Apr 21 17:06:43 2011 +0900 USB: s3c-hsotg: Add copyright string Signed-off-by: Anton Tikhomirov Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit f8acb08d8a1b2edab352430bd32c0e694bc65bc5 Author: Anton Tikhomirov Date: Thu Apr 21 17:06:42 2011 +0900 USB: s3c-hsotg: Fix hang up after reset When File Storage gadget receives SET CONFIGURATION request it tries to cancel all pending transfers. If some request is in progress, gadget waits for its completion. This commit allows gadget to dequeue invalid requests in progress left after reset. Signed-off-by: Anton Tikhomirov Reviewed-by: Kyoungil Kim Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit 9c39ddc60ee9eb70569d1658e512cfa232b9dd16 Author: Anton Tikhomirov Date: Thu Apr 21 17:06:41 2011 +0900 USB: s3c-hsotg: Fix stall condition processing The following should be done for requests after endpoint stall condition is cleared: 1) 'in progress' request (if any) should be completed since Tx FIFO was flushed; 2) next request from queue (if any) should be started. This commit does that. Additionally set/clear stall condition code is fixed. Signed-off-by: Anton Tikhomirov Reviewed-by: Kyoungil Kim Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit 26ab3d0ce95c270b1ca491d6970aa14852d8e5a3 Author: Anton Tikhomirov Date: Thu Apr 21 17:06:40 2011 +0900 USB: s3c-hsotg: Fix control request processing UDC driver does not need to generate reply to host if request is delivered to gadget. This is gadget's responsibility. This commit fixes that. Signed-off-by: Anton Tikhomirov Reviewed-by: Kyoungil Kim Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit a3395f0dd016f18273eac8e689e1e81e075e025e Author: Anton Tikhomirov Date: Thu Apr 21 17:06:39 2011 +0900 USB: s3c-hsotg: Fix interrupt cleaning code This commit does the following: 1) clears all pending interrupts before unmasking; 2) clears interrupts as soon as possible to avoid missing next coming that may occur during handling; 3) removes ineffective interrupt cleaning code. Signed-off-by: Anton Tikhomirov Reviewed-by: Kyoungil Kim Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit d00f500400a6e309f9bc43d385572f395eba2871 Author: Anton Tikhomirov Date: Thu Apr 21 17:06:38 2011 +0900 USB: s3c-hsotg: Fix core reset This patch fixes code responsible for core reset. Signed-off-by: Anton Tikhomirov Reviewed-by: Kyoungil Kim Cc: Ben Dooks Signed-off-by: Kukjin Kim Signed-off-by: Greg Kroah-Hartman commit 83722bc9430424de1614ff31696f73a40b3d81a9 Author: Anatolij Gustschin Date: Mon Apr 18 22:02:00 2011 +0200 USB: extend ehci-fsl and fsl_udc_core driver for OTG operation Signed-off-by: Anatolij Gustschin Cc: Li Yang Signed-off-by: Greg Kroah-Hartman commit 0807c500a1a6d7fa20cbd7bbe7fea14a66112463 Author: Li Yang Date: Mon Apr 18 22:01:59 2011 +0200 USB: add Freescale USB OTG Transceiver driver Slightly reworked and cleaned up driver from Freescale LTIB for MPC5121E. The driver has been ported to the current kernel, proc interface "/proc/driver/fsl_usb2_otg" has been replaced by sysfs interface. Signed-off-by: Li Yang Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit 2ea6698d7b9266da53044dddc5f6743adf097fb5 Author: Anatolij Gustschin Date: Mon Apr 18 22:01:58 2011 +0200 USB: fsl_udc_core: support device mode of MPC5121E DR USB Controller Extend the FSL UDC driver to support MPC5121E DR USB Controller operation in device mode. Add MPC5121E specific init/uninit at probe and remove and isolate system interface register accesses when running on MPC5121E SoC, as these registers are not available on this platform. This patch relies on previous patch for supporting big endian registers and descriptors access in the FSL UDC driver. Additionally support endpoint FIFO status operation by providing appropriate callback in endpoint ops structure. Also flush cache for the req buffer used for GetStatus reply. Without this, the correct reply to an endpoint GetStatus is written to 'req', but doesn't make it out to the USB bus since the buffer hasn't been flushed. This would cause the USBCV Halt Endpoint test to fail (according to changelog in Freescale LTIB driver code). Signed-off-by: Anatolij Gustschin Cc: Li Yang Signed-off-by: Greg Kroah-Hartman commit 09ba0def9aefc16c1c8a6d166f024c9d704f0ab0 Author: Anatolij Gustschin Date: Mon Apr 18 22:01:57 2011 +0200 USB: fsl_udc_core: prepare for SoCs with BE registers and descriptors On some SoCs, the USB controller registers and descriptors can be big or little endian, depending on the version of the chip. In order to be able to run the same kernel binary on different versions of an SoC, the BE/LE decision must be made at run time. Provide appropriate register and descriptor accessors which are configurable at run time using the configuration flags from fsl_usb2_platform_data data structure. This is in preparation for adding support for MPC5121E DR USB2 Controller to the FSL UDC driver. Signed-off-by: Anatolij Gustschin Cc: Li Yang Signed-off-by: Greg Kroah-Hartman commit b703e47ec0d16ccaf2895e2069b6c83a92c51efc Author: Anatolij Gustschin Date: Mon Apr 18 22:01:56 2011 +0200 USB: fix build of FSL MPH DR OF platform driver When only FSL USB gadget driver is selected in the kernel configuration the MPH DR OF driver for creation of FSL USB platform devices from device tree won't be built. As a result no USB platform devices for MPH DR USB controller will be created at run time and no probing will be done in the fsl_udc_core driver. Add an entry to the Makefile to build the MPH DR OF platform driver if CONFIG_USB_FSL_MPH_DR_OF is defined. Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit 13b7ee2a953f07d994b6bc3439cdd4a718de6f80 Author: Anatolij Gustschin Date: Mon Apr 18 22:01:55 2011 +0200 USB: ehci-fsl: add MPC5121E specific suspend and resume Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit ec8e8dfe5f862a01bf1b5cdac441c083ce0a2a22 Author: Kim Phillips Date: Mon Apr 11 19:15:28 2011 -0500 crypto: caam - remove duplicate dev_err keep the hex error value reporting version (a) to be consistent with decrypt_done(), and (b) to keep our hardware guys happy. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit d37d36e31cb8b4bd7c4e052e29674bf897ea466c Author: Kim Phillips Date: Mon Apr 11 19:15:24 2011 -0500 crypto: caam - remove WAIT-FOR-COMPLETIONs from givencrypt descriptor remains from descriptor debugging - not required for normal operation. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit f3af98681f16063d110075eba79a8621ae9a376a Author: Kim Phillips Date: Mon Apr 11 19:15:21 2011 -0500 crypto: caam - fix queue interface detection The presence of a h/w Queue Interface would fail due to this cut-n-paste snafu. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 9620fd959fb169358f2ba349c9fd1bcd96944c28 Author: Kim Phillips Date: Mon Apr 11 19:15:16 2011 -0500 crypto: caam - handle interrupt lines shared across rings - add IRQF_SHARED to request_irq flags to support parts such as the p1023 that has one IRQ line per couple of rings. - resetting a job ring triggers an interrupt, so move request_irq prior to jr_reset to avoid 'got IRQ but nobody cared' messages. - disable IRQs in h/w to avoid contention between reset and interrupt status - delete invalid comment - if there were incomplete jobs, module would be in use, preventing an unload. Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit b61d378f2da41c748aba6ca19d77e1e1c02bcea5 Author: Sarah Sharp Date: Tue Apr 19 17:43:33 2011 -0700 xhci 1.0: Set transfer burst last packet count field. The xHCI 1.0 specification defines a new isochronous TRB field, called transfer burst last packet count (TBLPC). This field defines the number of packets in the last "burst" of packets in a TD. Only SuperSpeed endpoints can handle more than one burst, so this is set to the number for packets in a TD for all non-SuperSpeed devices (minus one, since the field is zero based). This patch should have no effect on host controllers that don't advertise the xHCI 1.0 (0x100) version number in their hci_version field. Signed-off-by: Sarah Sharp commit 5cd43e33b9519143f06f507dd7cbee6b7a621885 Author: Sarah Sharp Date: Fri Apr 8 09:37:29 2011 -0700 xhci 1.0: Set transfer burst count field. The xHCI 1.0 specification adds a new field to the fourth dword in an isochronous TRB: the transfer burst count (TBC). This field is only non-zero for SuperSpeed devices. Each SS endpoint sets the bMaxBurst field in the SuperSpeed endpoint companion descriptor, which indicates how many max-packet-sized "bursts" it can handle in one service interval. The device driver may choose to burst less max packet sized chunks each service interval (which is defined by one TD). The xHCI driver indicates to the host controller how many bursts it needs to schedule through the transfer burst count field. This patch will only effect xHCI hosts that advertise 1.0 support (0x100) in the HCI version field of their capabilities register. Signed-off-by: Sarah Sharp commit 4da6e6f247a2601ab9f1e63424e4d944ed4124f3 Author: Sarah Sharp Date: Fri Apr 1 14:01:30 2011 -0700 xhci 1.0: Update TD size field format. The xHCI 1.0 specification changes the format of the TD size field in Normal and Isochronous TRBs. The field in control TRBs is still set to reserved zero. Instead of representing the number of bytes left to transfer in the TD (including the current TRB's buffer), it now represents the number of packets left to transfer (*not* including this TRB). See section 4.11.2.4 of the xHCI 1.0 specification for details. The math is basically copied straight from there. Create a new function, xhci_v1_0_td_remainder(), that should be called for all xHCI 1.0 host controllers. The field location and maximum value is still the same, so reuse the old function, xhci_td_remainder(), to handle the bit shifting. Signed-off-by: Sarah Sharp commit af8b9e636065ba1701c4215a8dc4f7a1d69d934b Author: Sarah Sharp Date: Wed Mar 23 16:26:26 2011 -0700 xhci 1.0: Only interrupt on short packet for IN EPs. It doesn't make sense to set the interrupt on short packet (TRB_ISP) flag for TRBs queued to endpoints that only receive packets from the host controller (i.e. OUT endpoints). Packets can only be short when they are sent from a USB device. Plus, the xHCI 1.0 specification forbids setting the flag for anything but IN endpoints. While we're at it, remove some of my snide remarks about the inefficiency of event data TRBs. Signed-off-by: Sarah Sharp commit 00161f7d04eb1668fde5e22d3e5a17bf90356d2c Author: Sarah Sharp Date: Thu Apr 28 12:23:23 2011 -0700 xhci: Remove sparse warning about cmd_status. Sparse complains about the arguments to xhci_evaluate_context_result() and xhci_configure_endpoint_result(): CHECK drivers/usb/host/xhci.c drivers/usb/host/xhci.c:1647:53: warning: incorrect type in argument 3 (different signedness) drivers/usb/host/xhci.c:1647:53: expected int *cmd_status drivers/usb/host/xhci.c:1647:53: got unsigned int [usertype] *[assigned] cmd_status drivers/usb/host/xhci.c:1648:50: warning: incorrect type in argument 3 (different signedness) drivers/usb/host/xhci.c:1648:50: expected int *cmd_status drivers/usb/host/xhci.c:1648:50: got unsigned int [usertype] *[assigned] cmd_status The command status is taken from the command completion event TRB, and will always be a positive number. Change the signature of xhci_evaluate_context_result() and xhci_configure_endpoint_result() to take a u32 for cmd_status. Signed-off-by: Sarah Sharp commit 5e467f6ebab151b2f0166e17348e5b85ae3c87fa Author: Andiry Xu Date: Wed Apr 27 18:07:54 2011 +0800 usbcore: warm reset USB3 port in SS.Inactive state Some USB3.0 devices go to SS.Inactive state when hot plug to USB3 ports. Warm reset the port to transition it to U0 state. This patch fixes the issue that Kingston USB3.0 flash drive can not be recognized when hot plug to USB3 port. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit a7114230f6bd925f1c734d8ca1c32c93bf956aed Author: Andiry Xu Date: Wed Apr 27 18:07:50 2011 +0800 usbcore: Refine USB3.0 device suspend and resume In the past, we use USB2.0 request to suspend and resume a USB3.0 device. Actually, USB3.0 hub does not support Set/Clear PORT_SUSPEND request, instead, it uses Set PORT_LINK_STATE request. This patch makes USB3.0 device suspend/resume comply with USB3.0 specification. This patch fixes the issue that USB3.0 device can not be suspended when connected to a USB3.0 external hub. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 0ed9a57e052a3d20df052a2ff12a3b42380867aa Author: Andiry Xu Date: Wed Apr 27 18:07:43 2011 +0800 xHCI: report USB3.0 portstatus comply with USB3.0 specification USB3.0 specification has different wPortStatus and wPortChange definitions from USB2.0 specification. Since USB3 root hub and USB2 root hub are split now and USB3 hub only has USB3 protocol ports, we should modify the portstatus and portchange report of USB3 ports to comply with USB3.0 specification. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 2c44178032b046c4113c40d0d459a0d36e39b920 Author: Andiry Xu Date: Wed Apr 27 18:07:39 2011 +0800 xHCI: Set link state support This patch adds support for Set Port Feature(PORT_LINK_STATE) request. The most significant byte (bits 15..8) of the wIndex field specifies the U state the host software wants to put the link connected to the port into. This request is only valid when the PORT_ENABLE bit is set and the PORT_LINK_STATE should not be above value '5' (Rx.Detect). This request will be later used to replace the set/clear suspend USB3 protocol ports in hub driver. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 85387c0ea3e1cd85ad9d7215917ff5e71ca2aea3 Author: Andiry Xu Date: Wed Apr 27 18:07:35 2011 +0800 xHCI: Clear link state change support This patch adds support for Clear Port Feature(C_PORT_LINK_STATE) request from usbcore. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit a11496ebf37534177d67222285e8debed7a39788 Author: Andiry Xu Date: Wed Apr 27 18:07:29 2011 +0800 xHCI: warm reset support This patch adds warm reset support to xhci hub control. It handles Set Port Feature(BH_PORT_RESET) and Clear Port Feature (C_BH_PORT_RESET) request from usbcore. Note warm reset is called BH reset some places in USB3.0 specification. Signed-off-by: Andiry Xu Signed-off-by: Sarah Sharp commit 64b3c304bed25388fed48dbdc098dfcad7063d9c Author: Sebastian Andrzej Siewior Date: Mon Apr 11 20:19:12 2011 +0200 usb/ch9: use proper endianess for wBytesPerInterval while going through Tatyana's changes for the gadget framework I noticed that this type is not defined as __le16. Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Sarah Sharp commit 9dee9a213cb90fdc13118ab221f65c9fa6944f7a Author: Matt Evans Date: Tue Mar 29 13:41:02 2011 +1100 xhci: Remove recursive call to xhci_handle_event Make the caller loop while there are events to handle, instead. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 7ed603ecf8b68ab81f4c83097d3063d43ec73bb8 Author: Matt Evans Date: Tue Mar 29 13:40:56 2011 +1100 xhci: Add an assertion to check for virt_dev=0 bug. During a "plug-unplug" stress test on an NEC xHCI card, a null pointer dereference was observed. xhci_address_device() dereferenced a null virt_dev (possibly an erroneous udev->slot_id?); this patch adds a WARN_ON & message to aid debug if it can be recreated. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 92a3da410aac6e14daaefe13c60368ca28e85830 Author: Matt Evans Date: Tue Mar 29 13:40:51 2011 +1100 xhci: Add rmb() between reading event validity & event data access. On weakly-ordered systems, the reading of an event's content must occur after reading the event's validity. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 28ccd2962c66556d7037b2d9f1c11cdcd3b805d5 Author: Matt Evans Date: Tue Mar 29 13:40:46 2011 +1100 xhci: Make xHCI driver endian-safe This patch changes the struct members defining access to xHCI device-visible memory to use __le32/__le64 where appropriate, and then adds swaps where required. Checked with sparse that all accesses are correct. MMIO accesses use readl/writel so already are performed LE, but prototypes now reflect this with __le*. There were a couple of (debug) instances of DMA pointers being truncated to 32bits which have been fixed too. Signed-off-by: Matt Evans Signed-off-by: Sarah Sharp commit 3dacdf11f1f82b98d301d5e1d42cdaea9a39968a Author: Anatolij Gustschin Date: Fri Apr 15 16:18:38 2011 +0200 usb: factor out state_string() on otg drivers Provide common otg_state_string() and use it in drivers. Signed-off-by: Anatolij Gustschin Signed-off-by: Greg Kroah-Hartman commit 67e7d64bcece93c84fd6e3832e7c6d91e57c06dc Author: Sebastian Andrzej Siewior Date: Thu Apr 14 16:17:21 2011 +0200 usb/usbtest: fix test10 on superpseed dummy_hcd + g_zero: |./testusb -a -s 1024 -v 1024 -t 10 | usbtest 2-1:3.0: subtest 14 error, status 0 with patch: ./testusb -a -t 10 |unknown speed /proc/bus/usb/001/002 | dummy_udc dummy_udc: disabled ep-a | dummy_udc dummy_udc: disabled ep-b | dummy_udc dummy_udc: enabled ep-a (ep1in-bulk) maxpacket 1024 | dummy_udc dummy_udc: enabled ep-b (ep2out-bulk) maxpacket 1024 | zero gadget: source/sink enabled | usbtest 1-1:3.0: TEST 10: queue 32 control calls, 1000 times | dummy_hcd dummy_hcd: timer fired with no URBs pending? |/proc/bus/usb/001/002 test 10, 0.022370 secs Signed-off-by: Sebastian Andrzej Siewior Signed-off-by: Greg Kroah-Hartman commit 14b76ed9e613965e02603c31febd85c96e32e094 Author: Sebastian Andrzej Siewior Date: Thu Apr 14 15:45:42 2011 +0200 usb/usbtest: print super on super speed Signed-off-by: Sebastian Andrzej Siewior Reviewed-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 313ce674d3cbc2d48ed34a9462427920ac54f4ad Author: Chris Metcalf Date: Mon May 2 14:50:06 2011 -0400 arch/tile: support TIF_NOTIFY_RESUME This support is required for CONFIG_KEYS, NFSv4 kernel DNS, etc. The change is slightly more complex than the minimal thing, since I took advantage of having to go into the assembly code to just move a bunch of stuff into C code: specifically, the schedule(), do_async_page_fault(), do_signal(), and single_step_once() support, in addition to the TIF_NOTIFY_RESUME support. Signed-off-by: Chris Metcalf commit e67f88dd12f610da98ca838822f2c9b4e7c6100e Author: Eric Dumazet Date: Wed Apr 27 22:56:07 2011 +0000 net: dont hold rtnl mutex during netlink dump callbacks Four years ago, Patrick made a change to hold rtnl mutex during netlink dump callbacks. I believe it was a wrong move. This slows down concurrent dumps, making good old /proc/net/ files faster than rtnetlink in some situations. This occurred to me because one "ip link show dev ..." was _very_ slow on a workload adding/removing network devices in background. All dump callbacks are able to use RCU locking now, so this patch does roughly a revert of commits : 1c2d670f366 : [RTNETLINK]: Hold rtnl_mutex during netlink dump callbacks 6313c1e0992 : [RTNETLINK]: Remove unnecessary locking in dump callbacks This let writers fight for rtnl mutex and readers going full speed. It also takes care of phonet : phonet_route_get() is now called from rcu read section. I renamed it to phonet_route_get_rcu() Signed-off-by: Eric Dumazet Cc: Patrick McHardy Cc: Remi Denis-Courmont Acked-by: Stephen Hemminger Signed-off-by: David S. Miller commit dcfd9cdc1222f14d6180514e533289493a0716fb Merge: 5615787 32ae9b2 Author: David S. Miller Date: Mon May 2 15:04:46 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit 5615787257742aab42ecf17c11e3244d9536a48d Author: David S. Miller Date: Mon May 2 14:37:45 2011 -0700 ipv4: Make sure flowi4->{saddr,daddr} are always set. Slow path output route resolution always makes sure that ->{saddr,daddr} are set, and also if we trigger into IPSEC resolution we initialize them as well, because xfrm_lookup() expects them to be fully resolved. But if we hit the fast path and flowi4->flowi4_proto is zero, we won't do this initialization. Therefore, move the IPSEC path initialization to the route cache lookup fast path to make sure these are always set. Signed-off-by: David S. Miller commit bffd2020a972a188750e5cf4b9566950dfdf25a2 Author: Peter Foley Date: Mon May 2 22:48:03 2011 +0200 kbuild: move scripts/basic/docproc.c to scripts/docproc.c Move docproc from scripts/basic to scripts so it is only built for *doc targets instead of every time the kernel is built. commit 7a04fc94d9e45de50827ba6ff764f22990d55823 Author: Michal Marek Date: Mon May 2 18:01:06 2011 +0200 kbuild: Fix Makefile.asm-generic for um Do nothing if arch/$(SRCARCH)/include/asm/Kbuild does not exist, which is the case of um. Reported-by: Randy Dunlap Signed-off-by: Michal Marek Acked-by: Randy Dunlap Acked-by: Sam Ravnborg commit 99ee5315dac6211e972fa3f23bcc9a0343ff58c4 Author: Thomas Gleixner Date: Wed Apr 27 14:16:42 2011 +0200 timerfd: Allow timers to be cancelled when clock was set Some applications must be aware of clock realtime being set backward. A simple example is a clock applet which arms a timer for the next minute display. If clock realtime is set backward then the applet displays a stale time for the amount of time which the clock was set backwards. Due to that applications poll the time because we don't have an interface. Extend the timerfd interface by adding a flag which puts the timer onto a different internal realtime clock. All timers on this clock are expired whenever the clock was set. The timerfd core records the monotonic offset when the timer is created. When the timer is armed, then the current offset is compared to the previous recorded offset. When it has changed, then timerfd_settime returns -ECANCELED. When a timer is read the offset is compared and if it changed -ECANCELED returned to user space. Periodic timers are not rearmed in the cancelation case. Signed-off-by: Thomas Gleixner Acked-by: John Stultz Cc: Chris Friesen Tested-by: Kay Sievers Cc: "Kirill A. Shutemov" Cc: Peter Zijlstra Cc: Davide Libenzi Reviewed-by: Alexander Shishkin Link: http://lkml.kernel.org/r/%3Calpine.LFD.2.02.1104271359580.3323%40ionos%3E Signed-off-by: Thomas Gleixner commit b12a03ce4880bd13786a98db6de494a3e0123129 Author: Thomas Gleixner Date: Mon May 2 16:48:57 2011 +0200 hrtimers: Prepare for cancel on clock was set timers Make clock_was_set() unconditional and rename hres_timers_resume to hrtimers_resume. This is a preparatory patch for hrtimers which are cancelled when clock realtime was set. Signed-off-by: Thomas Gleixner commit 942c3c5c329274fa6de5998cb911cf3d0a42d0b1 Author: Mike Frysinger Date: Mon May 2 15:24:27 2011 -0400 hrtimer: Make lookup table const Signed-off-by: Mike Frysinger Link: http://lkml.kernel.org/r/%3C1304364267-14489-1-git-send-email-vapier%40gentoo.org%3E Signed-off-by: Thomas Gleixner commit 3687a2c0d81b23d30db4384ca804a701fc686e16 Merge: b4d246b c7bcecb Author: Thomas Gleixner Date: Mon May 2 21:37:03 2011 +0200 Merge branch 'linus' into timers/core Reason: Pick up the hrtimer_clock_to_base_table fix from mainline Signed-off-by: Thomas Gleixner commit b4d246b12410b53506c311e5e0b6abb71ead65c6 Author: John Stultz Date: Fri Apr 29 15:03:11 2011 -0700 RTC: Disable CONFIG_RTC_CLASS from being built as a module The RTC subsystem has a number of accessors that are available via include/linux/rtc.h. However many of these interfaces are not available for use if CONFIG_RTC_CLASS=m. So in order to support wider use of the RTC in the kernel, I'm removing the tristate config option for a bool, so that code can easily be conditionalized if the RTC class is present or not. Signed-off-by: John Stultz Cc: Ingo Molnar Signed-off-by: Thomas Gleixner commit 472647dcd7e351dbeda750e5ab3e8f7b06d1199a Author: John Stultz Date: Fri Apr 29 15:03:10 2011 -0700 timers: Fix alarmtimer build issues when CONFIG_RTC_CLASS=n Ingo pointed out that the alarmtimers won't build if CONFIG_RTC_CLASS=n. This patch adds proper ifdefs to the alarmtimer code to disable the rtc usage if it is not built in. Reported-by: Ingo Molnar Signed-off-by: John Stultz Signed-off-by: Thomas Gleixner commit 1a5b306f5d7398c7ffb0f69fe9a2d0023f28deb9 Author: Bing Zhao Date: Mon May 2 11:00:45 2011 -0700 mwifiex: fix missing tsf_val TLV In mwifiex_cmd_append_tsf_tlv(), two tsf_val TLVs should be filled in the buffer and then sent to firmware. The missing first TLV for tsf_val is added back in this patch. Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 982d96bbb7f084644ee10214812ab167e52c2c5d Author: Larry Finger Date: Sun May 1 22:30:54 2011 -0500 rtlwifi: Fix typo in pci.c Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 1c0bcf89d85cc97a0d9ce4cd909351a81fa4fdde Author: Ivo van Doorn Date: Sat Apr 30 17:18:18 2011 +0200 rt2x00: Add autowake support for USB hardware The USB drivers don't support automatically waking up when in powersaving mode, add a work object which will wakeup the device in time to receive the next beacon. Based on that beacon, we either go back into powersaving mode, or we remain awake to receive the buffered frames for our station. Some part of the code, especially rt2x00lib_find_ie and rt2x00lib_rxdone_check_ps are inspired on the code from carl9170. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fdbc7b0a262e24a3ee00f1f9acb5a97309a173d5 Author: Gertjan van Wingerde Date: Sat Apr 30 17:15:37 2011 +0200 rt2x00: Introduce capability flag for Bluetooth co-existence. Use flag instead of re-reading the eeprom every time. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9328fdac499b969ec57a195845f168e7c5168ccd Author: Gertjan van Wingerde Date: Sat Apr 30 17:15:13 2011 +0200 rt2x00: Streamline rt2800 eeprom initialisations. In rt2800lib.c the rt2800_init_eeprom function the same eeprom words were read multiple times, due to inefficient ordering of the eeprom checks. Reorder the checks so that each EEPROM word only has to be read once. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit d4c838ef5e5c2c7e205adf9e011d2e8bd6eae738 Author: Ivo van Doorn Date: Sat Apr 30 17:14:49 2011 +0200 rt2x00: Fix optimize register access for rt2800pci The patch rt2x00: Optimize register access in rt2800pci from Helmut Schaa missed one register call, namely the rt2800_register_multiwrite which should be changed to rt2x00pci_register_multiwrite. Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Signed-off-by: John W. Linville commit a073fdef46d50440ee573452a436023dcf4f9edf Author: Ivo van Doorn Date: Sat Apr 30 17:14:23 2011 +0200 rt2x00: Optimize TX_STA_FIFO register reading Add recycling functionality to rt2x00usb_register_read_async. When the callback function returns true, resubmit the urb to read the register again. This optimizes the rt2800usb driver when multiple TX status reports are pending in the register, because now we don't need to allocate the rt2x00_async_read_data and urb structure each time. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 16763478892c271293d02872475a67a648ae12fc Author: Ivo van Doorn Date: Sat Apr 30 17:13:46 2011 +0200 rt2x00: Reduce tx status reading timeout When no TX status was available, the default timeout of 20ms is a bit high. The frame is highly likely already send out, so the TX status should be available within only a few milliseconds. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 816c04fe7ef01dd9649f5ccfe796474db8708be5 Author: Christian Lamparter Date: Sat Apr 30 15:24:30 2011 +0200 mac80211: consolidate MIC failure report handling Currently, mac80211 handles MIC failures differently depending on whenever they are detected by the stack's own software crypto or when are handed down from the driver. This patch tries to unify both by moving the special branch out of mac80211 rx hotpath and into into the software crypto part. This has the advantage that we can run a few more sanity checks on the data and verify if the key type was TKIP. This is very handy because several devices generate false postive MIC failure reports. Like carl9170, ath9k and wl12xx: "mac80211: report MIC failure for truncated packets in AP mode" Cc: Luciano Coelho Cc: Arik Nemtsov Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit 0ca699552c441e2c4201a6f60eac98b8865c1743 Author: Rafał Miłecki Date: Wed Apr 27 17:40:11 2011 +0200 ssb: cc: prepare clockmode support for cores rev 10+ Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 041f10d46f97c87f8ae1cdb4117682214732cc45 Author: Wolfram Sang Date: Fri Apr 29 15:06:43 2011 +0200 ARM: plat-stmp: remove plat Now that both users of plat-stmp have been deleted in previous patches, delete the platform, too. Signed-off-by: Wolfram Sang Acked-by: Shawn Guo Signed-off-by: Russell King commit f295dc6874bf271253f70cb75a483d4a23911117 Author: Wolfram Sang Date: Fri Apr 29 15:06:42 2011 +0200 ARM: mach-stmp378x: remove mach This mach has not seen any updates since the initial inclusion besides generic cleanup. Furthermore: - The i.MX23 covered in mach-mxs is just a renamed version of the STMP378x. - mach-stmp378x has a lot of reinvented interfaces, leaking all sorts of mach-related includes into the drivers. One example is the dmaengine which does not use the linux dmaengine-API but some privately exported symbols. So drivers cannot be reused. mach-mxs does it better. - There is only one board defined (which I couldn't find any trace of despite being a development board). It has been converted to mach-mxs in a previous patch. Since the only user of this mach was converted, it means that mach-stmp378x can go. Signed-off-by: Wolfram Sang Acked-by: Shawn Guo Signed-off-by: Russell King commit 7635965891761a732a610aa7ad9371de742ef52b Author: Wolfram Sang Date: Fri Apr 29 15:06:41 2011 +0200 ARM: mach-stmp37xx: remove mach This mach has not seen any updates since the initial inclusion besides generic cleanup. Furthermore: - It has a lot of reinvented interfaces, leaking all sorts of mach-related includes into the drivers. One example is the dmaengine which does not use the linux dmaengine-API but some privately exported symbols. So, drivers cannot be reused. mach-mxs is very similar and does it better. - It can be doubted that this worked at all. Check the DMA routines in stmp37xx.c for copy/paste bugs. A lot of APBX-related stuff is actually writing into registers for APBH. - There is only one board defined (which I couldn't find any trace of despite being a development board). In this board, only two devices have resources, the debug uart and the application uart. Neither of those have the needed custom drivers merged (and never will). debug uart is amba-pl011 which has an in-kernel driver without the mach-specific-stuff. appuart has a driver which was introduced for mach-mxs, and this one is reusable for a properly done mach. So, this single board registers only unsupported devices and the generic code looks suspicious and has poor design. Delete this stuff. If there is interest, it is wiser to restart using mach-mxs. Signed-off-by: Wolfram Sang Acked-by: Shawn Guo Signed-off-by: Russell King commit cde7c41feaa06cb6bfc748b2fc3c7d809091c2b0 Author: Wolfram Sang Date: Fri Apr 29 15:06:40 2011 +0200 ARM: configs: add defconfig for mach-mxs Covers MX23, MX28 and STMP378x. Signed-off-by: Wolfram Sang Cc: Shawn Guo Signed-off-by: Russell King commit a98253e8006a016bcb49c2d9c77041266ea3c5f5 Author: Wolfram Sang Date: Fri Apr 29 15:06:39 2011 +0200 ARM: mach-mxs: add stmp378x-devb STMP378x and MX23 are the same and just relabeled. There is a mach-stmp378x, however, it has a lot of reinvented interfaces, leaking all sorts of mach-specific functions into the drivers. One example is the dmaengine which does not use the linux dmaengine-API but some privately exported symbols. This makes generic use of the drivers impossible. mach-mxs does it better, so convert the board to mach-mxs. After that, it is possible to delete all stmp-specific code which should ease further ARM-consolidation. Compile tested only due to no hardware (seems not available anymore). Signed-off-by: Wolfram Sang Acked-by: Shawn Guo Signed-off-by: Russell King commit 93013a0f533fb3dd6875ca670d8e0bb4166a796e Author: Chris Metcalf Date: Mon May 2 13:49:14 2011 -0400 arch/tile: refactor backtracing code This change is the result of some work to make the backtrace code more shareable between kernel, libc, and gdb. For the kernel, some good effects are to eliminate the hacky "VirtualAddress" typedef in favor of "unsigned long", to eliminate a bunch of spurious kernel doc comments, to remove the dead "bt_read_memory" function, and to use "__tilegx__" in #ifdefs instead of "TILE_CHIP". Signed-off-by: Chris Metcalf commit c42321c76b0ef472e3bae4bfcb0f46ab19e038ef Author: Thomas Gleixner Date: Mon May 2 18:16:22 2011 +0200 genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP Only compile it in when there are users. Signed-off-by: Thomas Gleixner Cc: linux-arm-kernel@lists.infradead.org commit 64b81ed7fb1e45c914317b20316f32827bc6444b Author: Randy Dunlap Date: Thu Apr 28 10:58:52 2011 -0700 kconfig-language: add to hints Explain a little about kconfig symbol dependencies and symbol existence given optional kconfig language scenarios. Yes, I was bitten by this. Signed-off-by: Randy Dunlap Signed-off-by: Michal Marek commit a6de553da01c2c110c647fbd1c5bad29f5a82487 Author: Michal Marek Date: Fri Apr 29 14:45:31 2011 +0200 kbuild: Allow to combine multiple W= levels Add support for make W=12, make W=123 and so on, to enable warnings from multiple W= levels. Normally, make W= does not include warnings from the previous level. Signed-off-by: Michal Marek Acked-by: Sam Ravnborg Reviewed-By: Valdis Kletnieks commit df835c2e7fa875618cc14ced0110ea96f79536fb Author: Michal Marek Date: Fri Nov 26 17:15:11 2010 +0100 kconfig: Document the new "visible if" syntax Signed-off-by: Michal Marek commit e5a10c1bd12a5d71bbb6406c1b0dbbc9d8958397 Author: Yinghai Lu Date: Mon May 2 17:24:49 2011 +0200 x86, NUMA: Trim numa meminfo with max_pfn in a separate loop During testing 32bit numa unifying code from tj, found one system with more than 64g fails to use numa. It turns out we do not trim numa meminfo correctly against max_pfn in case start address of a node is higher than 64GiB. Bug fix made it to tip tree. This patch moves the checking and trimming to a separate loop. So we don't need to compare low/high in following merge loops. It makes the code more readable. Also it makes the node merge printouts less strange. On a 512GiB numa system with 32bit, before: > NUMA: Node 0 [0,a0000) + [100000,80000000) -> [0,80000000) > NUMA: Node 0 [0,80000000) + [100000000,1080000000) -> [0,1000000000) after: > NUMA: Node 0 [0,a0000) + [100000,80000000) -> [0,80000000) > NUMA: Node 0 [0,80000000) + [100000000,1000000000) -> [0,1000000000) Signed-off-by: Yinghai Lu [Updated patch description and comment slightly.] Signed-off-by: Tejun Heo commit a56bca80db8903bb557b9ac38da68dc5b98ea672 Author: Yinghai Lu Date: Mon May 2 17:24:49 2011 +0200 x86, NUMA: Rename setup_node_bootmem() to setup_node_data() After using memblock to replace bootmem, that function only sets up node_data now. Change the name to reflect what it actually does. tj: Minor adjustment to the patch description. Signed-off-by: Yinghai Lu Signed-off-by: Tejun Heo commit 1b7e03ef7570568d2fb9e6640d7006a0edd728f6 Author: Tejun Heo Date: Mon May 2 17:24:48 2011 +0200 x86, NUMA: Enable emulation on 32bit too Now that NUMA init path is unified, NUMA emulation can be enabled on 32bit. Make numa_emluation.c safe on 32bit by doing the followings. * Define MAX_DMA32_PFN on 32bit too. * Include bootmem.h for max_pfn declaration. * Use u64 explicitly and always use PFN_PHYS() when converting page number to address. * Avoid __udivdi3() generation on 32bit by doing number of pages calculation instead in split_nodes_interleave(). And drop X86_64 dependency from Kconfig. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 2706a0bf7b02693ed88752df877f10c2206292ff Author: Tejun Heo Date: Mon May 2 17:24:48 2011 +0200 x86, NUMA: Enable CONFIG_AMD_NUMA on 32bit too Now that NUMA init path is unified, amdtopology can be enabled on 32bit. Make amdtopology.c safe on 32bit by explicitly using u64 and drop X86_64 dependency from Kconfig. Inclusion of bootmem.h is added for max_pfn declaration. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit c6f58878204b0414e00b43f9bcebf754284f95b4 Author: Tejun Heo Date: Mon May 2 17:24:48 2011 +0200 x86, NUMA: Rename amdtopology_64.c to amdtopology.c amdtopology is going to be used by 32bit too drop _64 suffix. This is pure rename. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 752d4f372f90a2f6eb562aaffb639957890cbcab Author: Tejun Heo Date: Mon May 2 17:24:48 2011 +0200 x86, NUMA: Make numa_init_array() static numa_init_array() no longer has users outside of numa.c. Make it static. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit bd6709a91a593d8fe35d08da542e9f93bb74a304 Author: Tejun Heo Date: Mon May 2 17:24:48 2011 +0200 x86, NUMA: Make 32bit use common NUMA init path With both _numa_init() methods converted and the rest of init code adjusted, numa_32.c now can switch from the 32bit only init code to the common one in numa.c. * Shim get_memcfg_*()'s are dropped and initmem_init() calls x86_numa_init(), which is updated to handle NUMAQ. * All boilerplate operations including node range limiting, pgdat alloc/init are handled by numa_init(). 32bit only implementation is removed. * 32bit numa_add_memblk(), numa_set_distance() and memory_add_physaddr_to_nid() removed and common versions in numa_32.c enabled for 32bit. This change causes the following behavior changes. * NODE_DATA()->node_start_pfn/node_spanned_pages properly initialized for 32bit too. * Much more sanity checks and configuration cleanups. * Proper handling of node distances. * The same NUMA init messages as 64bit. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 8cc33e5c19bf01c7617608669be8c1b4f663eb2f Author: David Sterba Date: Mon May 2 15:29:25 2011 +0200 btrfs: Document a mutex lock/unlock sequence commit 7888e96b264fad27f97f58c0f3a4d20326eaf181 Author: Tejun Heo Date: Mon May 2 14:18:54 2011 +0200 x86, NUMA: Initialize and use remap allocator from setup_node_bootmem() setup_node_bootmem() is taken from 64bit and doesn't use remap allocator. It's about to be shared with 32bit so add support for it. If NODE_DATA is remapped, it's noted in the debug message and node locality check is skipped as the __pa() of the remapped address doesn't reflect the actual physical address. On 64bit, remap allocator becomes noop and doesn't affect the behavior. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 99cca492ea8ced305bfd687521ed69fb9e0147aa Author: Tejun Heo Date: Mon May 2 14:18:54 2011 +0200 x86-32, NUMA: Add @start and @end to init_alloc_remap() Instead of dereferencing node_start/end_pfn[] directly, make init_alloc_remap() take @start and @end and let the caller be responsible for making sure the range is sane. This is to prepare for use from unified NUMA init code. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 38f3e1ca24cc3ec416855e02676f91c898a8a262 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86, NUMA: Remove long 64bit assumption from numa.c Code moved from numa_64.c has assumption that long is 64bit in several places. This patch removes the assumption by using {s|u}64_t explicity, using PFN_PHYS() for page number -> addr conversions and adjusting printf formats. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 744baba0c4072b04664952a89292e4708eaf949a Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86, NUMA: Enable build of generic NUMA init code on 32bit Generic NUMA init code was moved to numa.c from numa_64.c but is still guaraded by CONFIG_X86_64. This patch removes the compile guard and enables compiling on 32bit. * numa_add_memblk() and numa_set_distance() clash with the shim implementation in numa_32.c and are left out. * memory_add_physaddr_to_nid() clashes with 32bit implementation and is left out. * MAX_DMA_PFN definition in dma.h moved out of !CONFIG_X86_32. * node_data definition in numa_32.c removed in favor of the one in numa.c. There are places where ulong is assumed to be 64bit. The next patch will fix them up. Note that although the code is compiled it isn't used yet and this patch doesn't cause any functional change. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit a4106eae650a4d5d30fcdd36d998edfa5ccb0ec4 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86, NUMA: Move NUMA init logic from numa_64.c to numa.c Move the generic 64bit NUMA init machinery from numa_64.c to numa.c. * node_data[], numa_mem_info and numa_distance * numa_add_memblk[_to](), numa_remove_memblk[_from]() * numa_set_distance() and friends * numa_init() and all the numa_meminfo handling helpers called from it * dummy_numa_init() * memory_add_physaddr_to_nid() A new function x86_numa_init() is added and the content of numa_64.c::initmem_init() is moved into it. initmem_init() now simply calls x86_numa_init(). Constants and numa_off declaration are moved from numa_{32|64}.h to numa.h. This is code reorganization and doesn't involve any functional change. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 299a180aec6a8ee3069cf0fe90d722ac20c1f837 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86-32, NUMA: Update numaq to use new NUMA init protocol Update numaq such that it calls numa_add_memblk() and sets numa_nodes_parsed instead of directly diddling with NUMA states. The original get_memcfg_numaq() is renamed to numaq_numa_init() and new get_memcfg_numaq() is created in numa_32.c. The shim numa_add_memblk() implementation handles node_start/end_pfn[] and node_set_online() for nodes with memory. The new get_memcfg_numaq() exactly the same with get_memcfg_from_srat() other than calling the numaq init function. Things get_memcfgs_numaq() do are not strictly necessary for numaq but added for consistency and to help unifying NUMA init handling. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 5acd91ab837c9d066af7345aea6462dc55695db7 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86-32, NUMA: Replace srat_32.c with srat.c SRAT support implementation in srat_32.c and srat.c are generally similar; however, there are some differences. First of all, 64bit implementation supports more types of SRAT entries. 64bit supports x2apic, affinity, memory and SLIT. 32bit only supports processor and memory. Most other differences stem from different initialization protocols employed by 64bit and 32bit NUMA init paths. On 64bit, * Mappings among PXM, node and apicid are directly done in each SRAT entry callback. * Memory affinity information is passed to numa_add_memblk() which takes care of all interfacing with NUMA init. * Doesn't directly initialize NUMA configurations. All the information is recorded in numa_nodes_parsed and memblks. On 32bit, * Checks numa_off. * Things go through one more level of indirection via private tables but eventually end up initializing the same mappings. * node_start/end_pfn[] are initialized and memblock_x86_register_active_regions() is called for each memory chunk. * node_set_online() is called for each online node. * sort_node_map() is called. There are also other minor differences in sanity checking and messages but taking 64bit version should be good enough. This patch drops the 32bit specific implementation and makes the 64bit implementation common for both 32 and 64bit. The init protocol differences are dealt with in two places - the numa_add_memblk() shim added in the previous patch and new temporary numa_32.c:get_memcfg_from_srat() which wraps invocation of x86_acpi_numa_init(). The shim numa_add_memblk() handles the folowings. * node_start/end_pfn[] initialization. * node_set_online() for memory nodes. * Invocation of memblock_x86_register_active_regions(). The shim get_memcfg_from_srat() handles the followings. * numa_off check. * node_set_online() for CPU nodes. * sort_node_map() invocation. * Clearing of numa_nodes_parsed and active_ranges on failure. The shims are temporary and will be removed as the generic NUMA init path in 32bit is replaced with 64bit one. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit b0d310801a4c1f95b44357e4ebc22a9903e3bf3d Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86-32, NUMA: implement temporary NUMA init shims To help transition to common NUMA init, implement temporary 32bit shims for numa_add_memblk() and numa_set_distance(). numa_add_memblk() registers the memblk and adjusts node_start/end_pfn[]. numa_set_distance() is noop. These shims will allow using 64bit NUMA init functions on 32bit and gradual transition to common NUMA init path. For detailed description, please read description of commits which make use of the shim functions. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit e6df595b37c7c033ef7400b4fdd382a2dc4f4131 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86, NUMA: Move numa_nodes_parsed to numa.[hc] Move numa_nodes_parsed from numa_64.[hc] to numa.[hc] to prepare for NUMA init path unification. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit daf4f480ae24270bac06db4293908d36b4834e21 Author: Tejun Heo Date: Mon May 2 14:18:53 2011 +0200 x86-32, NUMA: Move get_memcfg_numa() into numa_32.c There's no reason get_memcfg_numa() to be implemented inline in mmzone_32.h. Move it to numa_32.c and also make get_memcfg_numa_flag() static. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit eca9ad313293c41021bfcf23e985a14f6991a121 Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86, NUMA: make srat.c 32bit safe Make srat.c 32bit safe by removing the assumption that unsigned long is 64bit. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 7b2600f8ee0536bb738f3387cf2c30e8e334e149 Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86, NUMA: rename srat_64.c to srat.c Rename srat_64.c to srat.c. This is to prepare for unification of NUMA init paths between 32 and 64bit. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 1201e10a092adc9c88a6ce5f27740cc5cd0d26e5 Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86, NUMA: trivial cleanups * Kill no longer used struct bootnode. * Kill dangling declaration of pxm_to_nid() in numa_32.h. * Make setup_node_bootmem() static. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 797390d8554b1e07aabea37d0140933b0412dba0 Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86-32, NUMA: use sparse_memory_present_with_active_regions() Instead of calling memory_present() for each region from NUMA init, call sparse_memory_present_with_active_regions() from paging_init() similarly to x86-64. For flat and numaq, this results in exactly the same memory_present() calls. For srat, if there are multiple memory chunks for a node, after this change, memory_present() will be called separately for each chunk instead of being called once to encompass the whole range, which doesn't cause any harm and actually is the better behavior. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 84914ed0ec6787d38e84b510f92ad4ca3a572fd8 Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86-32, NUMA: Make apic->x86_32_numa_cpu_node() optional NUMAQ is the only meaningful user of this callback and setup_local_APIC() the only callsite. Stop torturing everyone else by making the callback optional and removing all the boilerplate implementations and assignments. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 6bd262731bf7559bab8c749786e8652e2df1fb4e Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86, NUMA: Unify 32/64bit numa_cpu_node() implementation Currently, the only meaningful user of apic->x86_32_numa_cpu_node() is NUMAQ which returns valid mapping only after CPU is initialized during SMP bringup; thus, the previous patch to set apicid -> node in setup_local_APIC() makes __apicid_to_node[] always contain the correct mapping whether custom apic->x86_32_numa_cpu_node() is used or not. So, there is no reason to keep separate 32bit implementation. We can always consult __apicid_to_node[]. Move 64bit implementation from numa_64.c to numa.c and remove 32bit implementation from numa_32.c. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit c4b90c11992e61123071977c0e5556e59a70852c Author: Tejun Heo Date: Mon May 2 14:18:52 2011 +0200 x86-32, NUMA: Automatically set apicid -> node in setup_local_APIC() Some x86-32 NUMA implementations (NUMAQ) don't initialize apicid -> node mapping using set_apicid_to_node() during NUMA init but implement custom apic->x86_32_numa_cpu_node() instead. This patch automatically initializes the default apic -> node mapping table from apic->x86_32_numa_cpu_node() from setup_local_APIC() such that the mapping table is in sync with the actual mapping. As the table isn't used by custom implementations, this doesn't make any difference at this point. This is in preparation of unifying numa_cpu_node() between x86-32 and 64. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit acd26d611e60c1a7c2a14269ab99760f779121f4 Author: Tejun Heo Date: Mon May 2 14:18:51 2011 +0200 x86-64, NUMA: simplify nodedata allocation With top-down memblock allocation, the allocation range limits in ealry_node_mem() can be simplified - try node-local first, then any node but in any case don't allocate below DMA limit. Remove early_node_mem() and implement simplified allocation directly in setup_node_bootmem(). Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit ebe685f24eeb85fbdb0f33792f1dabdbf35eff38 Author: Tejun Heo Date: Mon May 2 14:18:51 2011 +0200 x86-64, NUMA: trivial cleanups for setup_node_bootmem() Make the following trivial changes in preparation for further updates. * nodeid -> nid, nid -> tnid * use nd_ prefix for nodedata related variables * remove start/end_pfn and use start/end directly Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit 9688678a6670c7f0ae3872450a8047c0ad401efb Author: Tejun Heo Date: Mon May 2 14:18:51 2011 +0200 x86-64, NUMA: Simplify hotadd memory handling The only special handling NUMA needs to do for hotadd memory is determining the node for the hotadd memory given the address of it and there's nothing specific to specific config method used. srat_64.c does somewhat elaborate error checking on ACPI_SRAT_MEM_HOT_PLUGGABLE regions, remembers them and implements memory_add_physaddr_to_nid() which determines the node for given hotadd address. This is almost completely redundant. All the information is already available to the generic NUMA code which already performs all the sanity checking and merging. All that's necessary is not using __initdata from numa_meminfo and providing a function which uses it to map address to node. Drop the specific implementation from srat_64.c and add generic memory_add_physaddr_to_nid() in numa_64.c, which is enabled if CONFIG_MEMORY_HOTPLUG is set. Other than dropping the code, srat_64.c doesn't need any change as it already calls numa_add_memblk() for hot pluggable regions which is enough. While at it, change CONFIG_MEMORY_HOTPLUG_SPARSE in srat_64.c to CONFIG_MEMORY_HOTPLUG, for NUMA on x86-64, the two are always the same. Signed-off-by: Tejun Heo Cc: Ingo Molnar Cc: Yinghai Lu Cc: David Rientjes Cc: Thomas Gleixner Cc: "H. Peter Anvin" commit ba67cf5cf2ce10ad86a212b70f8c7c75d93a5016 Merge: aff3648 2be1910 Author: Tejun Heo Date: Mon May 2 14:16:37 2011 +0200 Merge branch 'x86/urgent' into x86-mm Merge reason: Pick up the following two fix commits. 2be19102b7: x86, NUMA: Fix empty memblk detection in numa_cleanup_meminfo() 765af22da8: x86-32, NUMA: Fix ACPI NUMA init broken by recent x86-64 change Scheduled NUMA init 32/64bit unification changes depend on these. Signed-off-by: Tejun Heo commit aff364860aa105b2deacc6f21ec8ef524460e3fc Merge: c7a7b814 993ba15 Author: Tejun Heo Date: Mon May 2 14:08:43 2011 +0200 Merge branch 'x86/numa' into x86-mm Merge reason: Pick up x86-32 remap allocator cleanup changes - 14 commits, 3fe14ab541^..993ba1585c. 3fe14ab541: x86-32, numa: Fix failure condition check in alloc_remap() 993ba1585c: x86-32, numa: Update remap allocator comments Scheduled NUMA init 32/64bit unification changes depend on them. Signed-off-by: Tejun Heo commit 20ec8b24636e2d43435a27a55dbb7e8331c563ca Merge: 90dd48a 24af2b1 Author: Takashi Iwai Date: Mon May 2 13:58:23 2011 +0200 Merge branch 'fix/hda' into topic/hda commit b3b4aa74b58bded927f579fff787fb6fa1c0393c Author: David Sterba Date: Thu Apr 21 01:20:15 2011 +0200 btrfs: drop unused parameter from btrfs_release_path parameter tree root it's not used since commit 5f39d397dfbe140a14edecd4e73c34ce23c4f9ee ("Btrfs: Create extent_buffer interface for large blocksizes") Signed-off-by: David Sterba commit ba14419264684b290f0d0b7f48d26eafb11fc0c6 Author: David Sterba Date: Thu Apr 21 01:12:06 2011 +0200 btrfs: drop gfp parameter from alloc_extent_buffer pass GFP_NOFS directly to kmem_cache_alloc Signed-off-by: David Sterba commit f09d1f60e6aa82fb4cfaa525e21f6287fc1516f4 Author: David Sterba Date: Thu Apr 21 01:08:01 2011 +0200 btrfs: drop gfp parameter from find_extent_buffer pass GFP_NOFS directly to kmem_cache_alloc Signed-off-by: David Sterba commit 172ddd60a662c4d8bf2809462866ddddd6431ea5 Author: David Sterba Date: Thu Apr 21 00:48:27 2011 +0200 btrfs: drop gfp parameter from alloc_extent_map pass GFP_NOFS directly to kmem_cache_alloc Signed-off-by: David Sterba commit a8067e022ab54fde8953880a64572c3acca644dc Author: David Sterba Date: Thu Apr 21 00:34:43 2011 +0200 btrfs: drop unused parameter from extent_map_tree_init the GFP flags are not stored anywhere and all allocations are done via alloc_extent_map(GFP_NOFS). Signed-off-by: David Sterba commit f993c883ad8e111fb9e9ae603540acbe94f7246c Author: David Sterba Date: Wed Apr 20 23:35:57 2011 +0200 btrfs: drop unused argument from extent_io_tree_init all callers pass GFP_NOFS, but the GFP mask argument is not used in the function; GFP_ATOMIC is passed to radix tree initialization and it's the only correct one, since we're using the preload/insert mechanism of radix tree. Let's drop the gfp mask from btrfs function, this will not change behaviour. Signed-off-by: David Sterba commit 62a45b60923a576170a1a0c309c240d9f40d193d Author: David Sterba Date: Wed Apr 20 15:52:26 2011 +0200 btrfs: make functions static when possible Signed-off-by: David Sterba commit c704005d886cf0bc9bc3974eb009b22fe0da32c7 Author: David Sterba Date: Tue Apr 19 18:00:01 2011 +0200 btrfs: unify checking of IS_ERR and null use IS_ERR_OR_NULL when possible, done by this coccinelle script: @ match @ identifier id; @@ ( - BUG_ON(IS_ERR(id) || !id); + BUG_ON(IS_ERR_OR_NULL(id)); | - IS_ERR(id) || !id + IS_ERR_OR_NULL(id) | - !id || IS_ERR(id) + IS_ERR_OR_NULL(id) ) Signed-off-by: David Sterba commit 4891aca2dac612a2f21a3278d9906ade13b55788 Author: David Sterba Date: Tue Apr 19 16:45:00 2011 +0200 btrfs: fix dereference before check The superblock's ->s_fs_info is properly set in btrfs_fill_super, after a call to open_ctree, which derefereces it before check. Although tree_root is set via btrfs_set_super, let's be defensive and leave the check in place. Signed-off-by: David Sterba commit edc95aec57661c8e568e18f6c3f002aefa07ebc8 Author: David Sterba Date: Tue Apr 19 14:31:08 2011 +0200 btrfs: remove nested duplicate variable declarations Signed-off-by: David Sterba commit 306e16ce13c0f3d4fc071b45803b5b83c2606011 Author: David Sterba Date: Tue Apr 19 14:29:38 2011 +0200 btrfs: rename variables clashing with global function names reported by gcc -Wshadow: page_index, page_offset, new_inode, dev_name Signed-off-by: David Sterba commit 90dd48a1a941d0efd413ce011895e3b6edd49b9a Author: Takashi Iwai Date: Mon May 2 12:38:19 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_via.c Signed-off-by: Takashi Iwai commit 2b63536f0cc20c30619a90dc2d36cc64a9d75c28 Author: Takashi Iwai Date: Mon May 2 12:33:43 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_sigmatel.c Signed-off-by: Takashi Iwai commit 9cf0aa9ebae703c117421d94f20b2ece8112218e Author: Takashi Iwai Date: Mon May 2 12:22:39 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_si3054.c Signed-off-by: Takashi Iwai commit fb79e1e0a2eef3859f9bcc0df67fa3f1352735d3 Author: Takashi Iwai Date: Mon May 2 12:17:41 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_hdmi.c Signed-off-by: Takashi Iwai commit 34cbe3a6faa8715c4f9e07484248aa32c1c7577e Author: Takashi Iwai Date: Mon May 2 11:38:21 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_conexant.c Signed-off-by: Takashi Iwai commit c42d47829a8e62bd00b551782760d836d65d8888 Author: Takashi Iwai Date: Mon May 2 11:36:09 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_cirrus.c Signed-off-by: Takashi Iwai commit 728850a7f25f4f4b41f5685945b02579f6b19276 Author: Takashi Iwai Date: Mon May 2 11:36:00 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_ca0110.c Signed-off-by: Takashi Iwai commit 779d065983f30b952d66e34d230b244f44a4e032 Author: Takashi Iwai Date: Mon May 2 11:34:20 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_cmedia.c Signed-off-by: Takashi Iwai commit 498f5b175b90597608e48390183933d3875d5429 Author: Takashi Iwai Date: Mon May 2 11:33:15 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_analog.c Signed-off-by: Takashi Iwai commit 4c6d72d1380f2f4056635592c07bc50f5d08296c Author: Takashi Iwai Date: Mon May 2 11:30:18 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_realtek.c Signed-off-by: Takashi Iwai commit ae14d4b5e0a4ebc4e674831cbb97b73ba66dba08 Author: Nicolas Ferre Date: Sat Apr 30 16:57:49 2011 +0200 dmaengine: at_hdmac: specialize AHB interfaces to optimize transfers DMA controller has two AHB interfaces on the SOC internal matrix. It is more efficient to specialize each interface as the access to memory can introduce latencies that are not compatible with peripheral accesses requirements. Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit 2f432823ec6e693d7b934e805ce1838f41d66ce7 Author: Nicolas Ferre Date: Sat Apr 30 16:57:48 2011 +0200 dmaengine: at_hdmac: remove channel status testing in tasklet There is no need to test if channel is enabled in tasklet: - in error path, channel is disabled in interrupt routine - in normal path, this test is performed in sub functions to report a misuse of the engine. Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit cc52a10a048fc1fbe4ffba58c2f0afc79ae0f56f Author: Nicolas Ferre Date: Sat Apr 30 16:57:47 2011 +0200 dmaengine: at_hdmac: debug information sg_len for prep_slave_sg Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit 53830cc75974a199b6b654c062ff8c54c58caa0b Author: Nicolas Ferre Date: Sat Apr 30 16:57:46 2011 +0200 dmaengine: at_hdmac: add cyclic DMA operation support Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit 9b3aa589eaa1366200062ce1f9cc7ddca8d1d578 Author: Nicolas Ferre Date: Sat Apr 30 16:57:45 2011 +0200 dmaengine: at_hdmac: modify way to use interrupts Now we use Buffer Transfer Completed interrupts. If we want a chained buffer completed information, we setup the ATC_IEN bit in CTRLB register in the lli. This is done by set_desc_eol() function and used by memcpy/slave_sg functions. Signed-off-by: Nicolas Ferre Signed-off-by: Vinod Koul commit dda144103c4a47a504fcaa8cddd08a4440c87060 Author: Takashi Iwai Date: Mon May 2 11:29:30 2011 +0200 ALSA: hda - Constify some API function arguments Also fixed the assignment of multiout.dac_nids to satisfy const. Signed-off-by: Takashi Iwai commit 25eaea30cd7b009ba2ca693708330d2f395cbc4d Author: Luciano Coelho Date: Mon May 2 12:37:33 2011 +0300 Revert "wl12xx: support FW TX inactivity triggers" This reverts commit 47684808fd89d6809c0886e06f8ac324252499d8. Conflicts: drivers/net/wireless/wl12xx/conf.h drivers/net/wireless/wl12xx/main.c commit a9111321f2fb6a23fbed82b8b4cbd77f5580ba75 Author: Takashi Iwai Date: Mon May 2 11:30:18 2011 +0200 ALSA: hda - Constify fixup and other array data in patch_realtek.c Signed-off-by: Takashi Iwai commit 031024eea8d4b2a11331a7c269216e067a46625e Author: Takashi Iwai Date: Mon May 2 11:29:30 2011 +0200 ALSA: hda - Constify some API function arguments Signed-off-by: Takashi Iwai commit a3ea8e8f2474c35b4c3e22262991afddb93c4c0e Merge: c2de187 ebb4724 Author: Takashi Iwai Date: Mon May 2 10:41:40 2011 +0200 Merge branch 'fix/hda' into topic/hda commit 2d66bee7fbd38d28e9ed12f45b8e9db8e6aa0c49 Author: Arik Nemtsov Date: Mon Apr 18 14:15:29 2011 +0300 wl12xx: export driver state to debugfs By reading the "driver_state" debugfs value we get all the important state information from the wl12xx driver. This helps testing and debugging, particularly in situations where the driver seems "stuck". Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 7dece1c8e1044287287d44ac183a946333b55fc3 Author: Arik Nemtsov Date: Mon Apr 18 14:15:28 2011 +0300 wl12xx: fix race condition during recovery in AP mode When operating as AP, the TX queues are not stopped when we start recovery. mac80211 is notified only after the fact. When there is pending TX, it will be queued even after the FW is down. This leads to situations where the TX queues are stopped (because of the TX-watermark mechanism), and are never woken up when we return from recovery. Fix this by explicitly stopping the TX queues when before initiating recovery. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 2dc5a5c2c656b9029a0e635bb3a1cbcfbcb4ca5c Author: Arik Nemtsov Date: Mon Apr 18 14:15:27 2011 +0300 wl12xx: add debugfs entry for starting recovery This entry is useful for debugging the driver state machine during recovery. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit c45a85b5a3c0ca841a7ffc700bdece8ee01486be Author: Arik Nemtsov Date: Mon Apr 18 14:15:26 2011 +0300 wl12xx: AP-mode - reconfigure templates after basic rates change When there's a change in the basic rates of the AP, reconfigure relevant templates with the new rates. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 70f474241b3d5fb633635a2ce39ea9da4afeea6c Author: Arik Nemtsov Date: Mon Apr 18 14:15:25 2011 +0300 wl12xx: AP-mode - overhaul rate policy configuration Use the minimal rate configured in the basic rates set as the AP broadcast and multicast rate. The minimal rate is used to ensure weak links can still communicate. When the basic rates contains at least one OFDM rate, configure all unicast TX rates to OFDM only. Unify rate configuration on initialization and on change notification into a single function. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 52dcaf577f3b6d878a337a44a99a122017c85ff6 Author: Arik Nemtsov Date: Mon Apr 18 14:15:24 2011 +0300 wl12xx: print firmware program counter during recovery When performing recovery, print the firmware version and program counter (by reading the SCR_PAD4 register). The value of the firmware program counter during assert can be useful for debugging. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit f482b76202f4ac0f62a77b0e55ac1a1cfe480e2b Author: Arik Nemtsov Date: Mon Apr 18 14:15:23 2011 +0300 wl12xx: schedule recovery on command timeout We use a long timeout (2 seconds) when sending commands to the FW. When a command times out, it means the FW is stuck, and we should commence recovery. This should make recovery times shorter as we'll recover on the first timeout indication. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 521a4a23261354885c01bf75b42150629004ed83 Author: Arik Nemtsov Date: Mon Apr 18 14:15:22 2011 +0300 wl12xx: AP-mode - disable beacon filtering on start up New AP-mode FWs filter external beacons by default. Disable this filtering on start up so we can properly configure ERP protection. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 5f704d180e448d05859e1cb6572822ba27dbcdc7 Author: Arik Nemtsov Date: Mon Apr 18 14:15:21 2011 +0300 wl12xx: use wiphy values for setting rts, frag thresholds on init Use the wiphy RTS and fragmentation thresholds for initializing the FW when possible. This mitigates a bug where previously set values are forgotten after interface down/up. Add checks before settings these values to ensure they are valid. Use default values when invalid thresholds are configured. Update the default RTS threshold to the maximum value given by the specification. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 801f870bc0524bad7ebef9cea52d20e4d4992e4a Author: Arik Nemtsov Date: Mon Apr 18 14:15:20 2011 +0300 wl12xx: add BT-coexistance for AP Initialize AP specific BT coexitance parameters to default values and enable them in AP mode. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit f7c7c7e69cbc3c5b660a32cc2cb31720b2b420c8 Author: Luciano Coelho Date: Fri Apr 29 22:25:28 2011 +0300 wl12xx: strict_stroul introduced converted to kstrtoul One new patch applied added a couple of new strict_strtoul calls. Converted those to kstroul(). Signed-off-by: Luciano Coelho commit 86c438f40cf3e0f6ce2da80f2d759e61d3e85ad7 Author: Hauke Mehrtens Date: Tue Apr 26 23:27:44 2011 +0200 wl12xx: do not set queue_mapping directly It is preferred to use the setter that to set queue_mapping directly. This also helps backporting in compat-wireless. Signed-off-by: Hauke Mehrtens Signed-off-by: Luciano Coelho commit 34c8e3d2bb901b2920d2a8930c0de82e7fefac76 Author: Arik Nemtsov Date: Tue Apr 26 23:35:40 2011 +0300 wl12xx: discard corrupted packets in RX When packets arrive with a RX descriptor indicating corruption, discard them. In general white-list the RX descriptor status to prevent rouge data from being sent up. Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 33437893025aa3c0195b933ac99ef7de924019f4 Author: Arik Nemtsov Date: Tue Apr 26 23:35:39 2011 +0300 wl12xx: implement the tx_frames_pending mac80211 callback Frames are considered pending when they reside in the driver TX queue or already queued in the FW. This notion of "pending" is appropriate for power save considerations in STA mode, but not necessarily in other modes (for instance P2P-GO). [Fixed a sparse warning about missing "static" in a function declaration -- Luca] Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 4cf557fcf01e352fb418e110dd013e4128493c5f Author: Ido Yariv Date: Mon Apr 18 16:45:10 2011 +0300 wl12xx: Enable dynamic memory for 127x The FW can dynamically manage its internal TX & RX memory pools, moving blocks from one pool to another when necessary. This can significantly improve performance. Currently this feature is enabled only for 128x. Enable dynamic memory for 127x as well. Other parameters in the memory configuration structure may need to be fine tuned, as the optimal values for these may change once dynamic memory is enabled. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit ef2e3004855e90d2919105e4a91d7df6ab9845a9 Author: Ido Yariv Date: Mon Apr 18 16:44:11 2011 +0300 wl12xx: Restart TX when TX descriptors are available The driver stops sending TX packets when either there aren't enough memory blocks, or it runs out of TX descriptors. The driver continues to send packets to the FW only when more memory blocks are available. The FW might free TX descriptors without freeing the corresponding memory blocks, especially when dynamic memory is enabled. In cases where memory blocks are not freed at all, the driver will keep waiting for more memory blocks indefinitely. Fix this by clearing the WL1271_FLAG_FW_TX_BUSY flag when there are available TX descriptors. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit ae825e4ba81203e1b3d3159f24327cdc2629dbd8 Author: Ido Yariv Date: Mon Apr 18 16:40:14 2011 +0300 wl12xx: Modify memory configuration for 128x/AP The 128x/AP firmware does not yet support dynamic memory. Temporarily, the memory configuration for the 127x was used both for 127x/AP as well as 128x/AP. Since the two chips don't have the same number of memory blocks, TP was significantly degraded. This hasn't been fine tuned yet, but using the base 128x numbers (without dynamic memory) seems to yield much better results (around 30% more). Additional fine tuning will be required in the future. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 1fe9e2464c667903d7eec0314db26c462ca9d276 Author: Eliad Peller Date: Sun Apr 17 11:20:47 2011 +0300 wl12xx: add debugfs entries for dtim_interval and beacon_interval When configuring ACX_WAKE_UP_CONDITIONS (before entering psm), we tell the firmware to wake up once in N DTIMs/beacons. Allow control of this value via debugfs (for debugging purposes). Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 2370841bf1a735661db3d3ae63385be3475b7452 Author: Shahar Levi Date: Wed Apr 13 14:52:50 2011 +0300 wl12xx: Update Power Save Exit Retries Packets Reducing the retries of sending PS exit packets to the peer AP. That fix is to avoid sending unrealizable number of PS exit packets in case of ap lost. Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit ff86843dfbb368766d0aecd0147821d9a2b60edb Author: Shahar Levi Date: Mon Apr 11 15:41:46 2011 +0300 wl12xx: FM WLAN coexistence Add support to FM WLAN coexistence (STA only). Some WiFi harmonics may interfere with FM operation, to avoid this problem special coexistence techniques are activated around some FM frequencies. Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit cb5ae0530e0e2af86d128ce758645b6b4a9132e1 Author: Eliad Peller Date: Thu Apr 7 15:52:05 2011 +0300 wl12xx: configure rates when working in ibss mode When working in ibss mode, we don't configure rate policy per station (as we use the same link for multiple stations), so currently the 1mb/s rate is being used. Instead, configure the firmware to use the whole 11b rates by default. Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 30df14d0d35dd166d50b8ea80d5f0b7ef1edb6da Author: Eliad Peller Date: Tue Apr 5 19:13:28 2011 +0300 wl12xx: avoid redundant join on interface reconfiguration ieee80211_reconfig() sets most of the "changed" flags regardless of the actual change (e.g. BSS_CHANGED_ASSOC will be set even if the interface is still not associated). in this case the driver will issue some unneeded commands. Since the driver relies solely on the BSS_CHANGED_ASSOC flag, without checking if there was an actual change, it will end up issuing unjoin() and dummy_join() commands, although it was never associated and should just remain idle. Avoid it by checking the actual state change, in addition to the "changed" flag. (there seem to be more redundant configuration commands being issued, but they shouldn't harm) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit a20a5b7e48e24c1bf9c10ba27cb1862f8f777d00 Author: Eliad Peller Date: Tue Apr 5 18:21:31 2011 +0300 wl12xx: print actual rx packet size (without padding) When debugging, reduce the padding size from each rx packet, to get the actual packet size (so comparing it against a cap file will be easier) Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit b03acadea4f46884aa3c3e4d3a6ce03d283525e6 Author: Shahar Levi Date: Sun Apr 3 13:54:54 2011 +0300 wl12xx: Set correct REF CLK and TCXO CLK values to the FW Fix mismatch between the REF CLK and TCXO CLK information that is set in the platform data and the NVS, so we override what comes from the NVS and replace it with what comes from the platform data. [Small fix in a comment -- Luca] Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit a665d6e260f0233aac73f74d15bb6a029cc5ec47 Author: Eliad Peller Date: Sun Apr 3 02:01:59 2011 +0300 wl12xx: avoid premature elp entrance The elp_work is being enqueued on wl1271_ps_elp_sleep, but doesn't get cancelled on wl1271_ps_elp_wakeup. This might cause immediate entrance to elp when the wl->mutex is being released, rather than using the delayed enqueueing optimization. Cancel elp_work on wakeup request, and add a new WL1271_FLAG_ELP_REQUESTED flag to further synchronize the elp actions. [Fixed a couple of typos in some comments -- Luca] Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit c75bbcdb200e2815c855e42a4685d170858af306 Author: Eliad Peller Date: Mon Apr 4 10:38:47 2011 +0300 wl12xx: sleep instead of wakeup after tx work commit d05c806 ("wl12xx: rearrange some ELP wake_up/sleep calls") introduced a bug in which wl1271_ps_elp_wakeup() was called instead of wl1271_ps_elp_sleep() after completing the tx work. Reported-by: Arik Nemtsov Signed-off-by: Eliad Peller Signed-off-by: Luciano Coelho commit 564f59509e26355965949c677f9d6eb064a3aa0b Author: Shahar Levi Date: Mon Apr 4 10:20:39 2011 +0300 wl12xx: Set End-of-transaction Flag at Wl127x AP Mode End-of-transaction flag should be set when working with wl127x chip on AP mode. Thanks Ido Yariv for the guidance with that. Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit deeeaf13b291420fe4a4a52606b9fc9128387340 Author: Theodore Ts'o Date: Sun May 1 18:16:26 2011 -0400 jbd2: fix fsync() tid wraparound bug If an application program does not make any changes to the indirect blocks or extent tree, i_datasync_tid will not get updated. If there are enough commits (i.e., 2**31) such that tid_geq()'s calculations wrap, and there isn't a currently active transaction at the time of the fdatasync() call, this can end up triggering a BUG_ON in fs/jbd2/commit.c: J_ASSERT(journal->j_running_transaction != NULL); It's pretty rare that this can happen, since it requires the use of fdatasync() plus *very* frequent and excessive use of fsync(). But with the right workload, it can. We fix this by replacing the use of tid_geq() with an equality test, since there's only one valid transaction id that we is valid for us to wait until it is commited: namely, the currently running transaction (if it exists). Signed-off-by: "Theodore Ts'o" commit 59802db0745ddfe5cfd0d965e9d489f1b4713868 Author: Theodore Ts'o Date: Sun May 1 18:14:26 2011 -0400 ext4: remove obsolete mount options from ext4's documentation The block reservation code from ext3 was removed long ago... Signed-off-by: "Theodore Ts'o" commit dc2070a241cf3f86395afe7b969020d99aad8f00 Author: Shaohua Li Date: Sun May 1 18:11:18 2011 -0400 ext4: remove dead code in ext4_has_free_blocks() percpu_counter_sum_positive() never returns a negative value. Signed-off-by: Shaohua Li Signed-off-by: "Theodore Ts'o" commit 8a025bbc8ff897c36c6e2b91c2e852ea5e569394 Author: Jayamohan Kallickal Date: Fri Apr 29 14:30:08 2011 -0500 [SCSI] be2iscsi: update version Bump version. Signed-off-by: Jayamohan Kallickal Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 069adc7b0617348dd4c5cace1b35a90d6ddf1013 Author: Jayamohan Kallickal Date: Fri Apr 29 14:30:07 2011 -0500 [SCSI] be2iscsi: fix chip cleanup This patch fixes a bug where proper queue id's were not passed to chip for cleanup. Signed-off-by: Jayamohan Kallickal Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 665d6d94b73f1d706d6c006264cce7537ac708f4 Author: Jayamohan Kallickal Date: Fri Apr 29 14:30:06 2011 -0500 [SCSI] be2iscsi: fix boot hang due to interrupts not getting rearmed This patch fixes a bug where the interrupts were not rearmed if the Interrupt Mask was enabled. This patch checks for Interrupt mask enabled and still rearms interrupt generation even if the Interrupt mask was enabled Signed-off-by: Jayamohan Kallickal Signed-off-by: Mike Christie Signed-off-by: James Bottomley commit 87f76152dfb1bf3de18dc01cf97c70a5c9d2583e Author: Tomas Henzl Date: Fri Apr 29 16:28:30 2011 +0200 [SCSI] arcmsr: simplify assumptions in dma_alloc_coherent() The code currently computes an offset into a dma_alloc_coherent() area on the assumption that the alignment is imprecise. In fact, the API guarantees PAGE_SIZE alignment, so the offset calculation is always zero: remove it. [jejb: make description actually descriptive] Signed-off-by: Tomas henzl Acked-by: Nick Cheng Signed-off-by: James Bottomley commit 8b7eb86f61a10132aad7f90e89a15dc89e495d9e Author: Tomas Henzl Date: Fri Apr 29 16:28:24 2011 +0200 [SCSI] arcmsr: simplify some double loops in sleeping functions I removed outer loops in ...wait_msgint_ready the sleeptime and retrycount are in fact never changed so I changed them into defines. In arcmsr_flush_hba_cache is a loop removed, which printed the same printk 100 times, one line in log is enough I think. The arcmsr_sleep_for_bus_reset has lost a functionality with the latest patches, The only thing the function does is a long sleep, so it's replaced with a ssleep. [jejb: checkpatch fixes] Signed-off-by: Tomas henzl Acked-by: Nick Cheng Signed-off-by: James Bottomley commit 134a4e27a2c4372f23b94fd3be041133cb69b52a Author: Vasu Dev Date: Thu Apr 28 15:55:44 2011 -0700 [SCSI] bnx2fc: setup em for npiv port Use fc_exch_mgr_list_clone to setup em for npiv port. Also remove redundant vport and lport initializations. Signed-off-by: Vasu Dev Acked-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 32ae9b221e788413ce68feaae2ca39e406211a0a Author: Marek Lindner Date: Wed Apr 20 15:40:58 2011 +0200 batman-adv: Make bat_priv->primary_if an rcu protected pointer The rcu protected macros rcu_dereference() and rcu_assign_pointer() for the bat_priv->primary_if need to be used, as well as spin/rcu locking. Otherwise we might end up using a primary_if pointer pointing to already freed memory. Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 71e4aa9c465fd66c110667ab5d620fb6a4ef2157 Author: Antonio Quartulli Date: Mon Apr 25 22:44:32 2011 +0200 batman-adv: fix gw_node_update() and gw_election() This is a regression from c4aac1ab9b973798163b34939b522f01e4d28ac9 - gw_node_update() doesn't add a new gw_node in case of empty curr_gw. This means that at the beginning no gw_node is added, leading to an empty gateway list. - gw_election() is terminating in case of curr_gw == NULL. It has to terminate in case of curr_gw != NULL Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit 5f657ec0d2103571a31707711926b443a27b0c66 Author: Antonio Quartulli Date: Wed Apr 20 09:52:56 2011 +0200 batman-adv: Move definition of atomic_dec_not_zero() into main.h atomic_dec_not_zero() is very useful and it is currently defined multiple times. So it is possible to move it in main.h Signed-off-by: Antonio Quartulli Signed-off-by: Sven Eckelmann commit b5a6f69c5ca024bea43496d517c3b7ccfdb084a6 Author: Antonio Quartulli Date: Sat Apr 16 11:30:57 2011 +0200 batman-adv: orig_hash_find() manages rcu_lock/unlock internally orig_hash_find() manages rcu_lock/unlock internally and doesn't need to be surrounded by rcu_read_lock() / rcu_read_unlock() anymore Signed-off-by: Antonio Quartulli Acked-by: Marek Lindner Signed-off-by: Sven Eckelmann commit e37c4913c555bd149eba3af953fb5d3a1686dfbd Author: Jeff Mahoney Date: Wed Apr 27 16:22:20 2011 -0400 [SCSI] iterate over devices individually for /proc/scsi/scsi On systems with very large numbers (> 1600 or so) of SCSI devices, cat /proc/scsi/scsi ends up failing with -ENOMEM. This is due to the show routine simply iterating over all of the devices with bus_for_each_dev(), and trying to dump all of them into the buffer at the same time. On my test system (using scsi_debug with 4064 devices), the output ends up being ~ 632k, far more than kmalloc will typically allow. This patch defines its own seq_file opreations to iterate over the scsi devices.The result is that each show() operation only dumps ~ 180 bytes into the buffer at a time so we don't run out of memory. If the "Attached devices" header isn't required, we can dump the sfile->private bit completely. Signed-off-by: Jeff Mahoney Signed-off-by: James Bottomley commit 9de4966a4d218f29c68e96e8e7b4d2840dedec79 Author: Bart Van Assche Date: Sun May 1 14:09:21 2011 +0200 x86: Fix spelling error in the memcpy() source code comment Signed-off-by: Bart Van Assche Cc: "H. Peter Anvin" Link: http://lkml.kernel.org/r/201105011409.21629.bvanassche@acm.org Signed-off-by: Ingo Molnar commit ac0a3260f37b8616da8d33488ec94b94e6ae5b31 Merge: 809435f b9df92d Author: Ingo Molnar Date: Sun May 1 19:11:42 2011 +0200 Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 9c324b8ba8e3ee8772a0c716d557e1582699d481 Author: Kleber Sacilotto de Souza Date: Wed Apr 27 14:43:40 2011 -0300 [SCSI] ipr: Driver version 2.5.2 Bump the driver version. Signed-off-by: Kleber Sacilotto de Souza Signed-off-by: James Bottomley commit 201aed678482f247aa96bd8fcd9e960fefd82d59 Author: Brian King Date: Wed Apr 27 10:27:08 2011 -0500 [SCSI] ibmvscsi: Improve CRQ reset reliability This patch fixes an issue seen where an event occurs which causes the ibmvscsi driver to reset its CRQ. Upon re-registering its CRQ, it receives H_CLOSED, indicating the Virtual I/O Server is not yet ready to receive commands. This resulted in the ibmvscsi driver essentially offlining the adapter and not recovering. The fix is to re-enable our interrupt so that when the Virtual I/O server is ready and sends a CRQ init, we will be able to receive it and resume initialization of the VSCSI adapter. Signed-off-by: Brian King Signed-off-by: James Bottomley commit 809435ff4f43a5c0cb0201b3b89176253d5ade18 Merge: 3267382 058e297 Author: Ingo Molnar Date: Sun May 1 19:09:39 2011 +0200 Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core commit 4d4dd7065572225bf6d97e5eb9915d94f9d53548 Author: Kleber Sacilotto de Souza Date: Tue Apr 26 19:23:29 2011 -0300 [SCSI] ipr: increase the dump size for 64 bit adapters Currently the size of the dump generated by the driver is limited in 4MB, which is insufficient to gather much useful data from the new 64 bit adapters. This patch makes the needed changes to increase the dump limit for the 64 bit adapters to 32MB, or even to a bigger value in the future, but keeping the current limitations for the legacy 32 bit adapters. Signed-off-by: Kleber Sacilotto de Souza Acked-by: Brian King Signed-off-by: James Bottomley commit 0b15fb1fdfd403726542cb6111bc916b7a9f7fad Author: Xiangliang Yu Date: Tue Apr 26 06:36:51 2011 -0700 [SCSI] mvsas: add support for Task collector mode and fixed relative bugs 1. Add support for Task collector mode. 2. Fixed relative collector mode bug: - I/O failed when disks is on two ports - system hang when hotplug disk - system hang when unplug disk during run IO 3. Unlock ap->lock within .lldd_execute_task for direct mode to improve performance Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit 8214028344b4a38aabf73d95347e1e35538c75f6 Author: Xiangliang Yu Date: Tue Apr 26 06:34:01 2011 -0700 [SCSI] mvsas: add support for Marvell 88SE9445/88SE9485 This is support for Marvell 88SE9445/88SE9485 SAS/SATA HBA, which is based on Marvell 88SE9480. Signed-off-by: Xiangliang Yu Signed-off-by: James Bottomley commit c0d289b3e59577532c45ee9110ef81bd7b341272 Author: Martin George Date: Tue Apr 26 18:27:05 2011 +0530 [SCSI] scsi_dh_alua: Attach to UNAVAILABLE/OFFLINE AAS devices The SCSI ALUA handler currently fails to attach to devices reporting an UNAVAILABLE/OFFLINE AAS. But given that an UNAVAILABLE/OFFLINE AAS can transition to other states like ACTIVE/OPTIMIZED, ACTIVE/NON-OPTIMIZED, etc. as per SPC4, this ALUA handler behavior should be rectified so as to attach to devices which also report an UNAVAILABLE/OFFLINE AAS. Signed-off-by: Martin George Reviewed-by: Mike Christie Signed-off-by: James Bottomley commit cbc78ae73bcab6b3277977a6a30e74d1be3cedfa Author: Kashyap, Desai Date: Tue Apr 26 12:10:08 2011 +0530 [SCSI] mptfusion: Bump version 3.4.19 Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 19fff154e7ee35d1297eb27d7d41e6f8742101ec Author: Kashyap, Desai Date: Tue Apr 26 12:09:46 2011 +0530 [SCSI] mptfusion: Adding inline data padding support for TAPE drive. Adding support for inline data padding for TAPE drive when running U320. [jejb: whitespace fixes] Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit 56cee8d57744ec5782e3a8722c1bc45951d2c037 Author: Kashyap, Desai Date: Tue Apr 26 12:09:15 2011 +0530 [SCSI] mptfusion: Remove debug print from mptscsih_qcmd() Remove debug print from mptscsih_qcmd function call. This debug print cause flood of prints and difficult to debug other issues. Signed-off-by: Kashyap Desai Signed-off-by: James Bottomley commit befc9b4dda55a146f3e7e1d00abcb4a18fd75887 Author: Nithin Nayak Sujir Date: Mon Apr 25 12:30:10 2011 -0700 [SCSI] bnx2fc: increase cleanup wait time FW may take more time cleaning up IOs issued to multiple targets. Signed-off-by: Nithin Nayak Sujir Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 068bdce41297b69e75f72a029d42e70c282273f6 Author: Nithin Nayak Sujir Date: Mon Apr 25 12:30:09 2011 -0700 [SCSI] bnx2fc: Do not use HBA_DBG macro when lport is not available Use MISC_DBG instead. Signed-off-by: Nithin Nayak Sujir Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 35dd71ae82afaef3980638c528b21f018c46211a Author: Nithin Nayak Sujir Date: Mon Apr 25 12:30:08 2011 -0700 [SCSI] bnx2fc: call scsi_done if session goes to not ready from ready If the session is not ready yet, we ask the SCSI-ml to retry. However, if the session is just uploaded, we should not retry, but instead call scsi_done to fail the IO. Signed-off-by: Nithin Nayak Sujir Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 0117ddb0c8df8e107bc8e9713c6638270638fff9 Author: Nithin Nayak Sujir Date: Mon Apr 25 12:30:07 2011 -0700 [SCSI] bnx2fc: Release the reference to hba only after the interface is destroyed Prematurely decrementing the reference may lead to cmd_mgr becoming NULL with the cmds are still active. Signed-off-by: Nithin Nayak Sujir Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit 112f661d6dac9af1235d2d05299fc2c9cb876ae7 Author: Nithin Nayak Sujir Date: Mon Apr 25 12:30:06 2011 -0700 [SCSI] scsi_transport_fc: Fix deadlock during fc_remove_host Creating and destroying fcoe interface in a tight loop leads to a system deadlock with the following call traces: Call Trace: [] schedule_timeout+0x1fd/0x2c0 [] ? wait_for_common+0x4f/0x190 [] ? wait_for_common+0x4f/0x190 [] wait_for_common+0xe7/0x190 [] ? default_wake_function+0x0/0x20 [] ? trace_hardirqs_on+0xd/0x10 [] wait_for_completion+0x1d/0x20 [] flush_workqueue+0x290/0x5f0 [] ? flush_workqueue+0x0/0x5f0 [] destroy_workqueue+0x38/0x340 [] fc_remove_host+0x1b9/0x1f0 [scsi_transport_fc] [] bnx2fc_if_destroy+0xc5/0x1f0 [bnx2fc] [] bnx2fc_destroy+0x7a/0x100 [bnx2fc] [] fcoe_transport_destroy+0x9b/0x1b0 [libfcoe] [] param_attr_store+0x52/0x80 [] module_attr_store+0x26/0x30 [] sysfs_write_file+0xe6/0x170 [] vfs_write+0xd0/0x1a0 [] sys_write+0x54/0xa0 [] system_call_fastpath+0x16/0x1b Call Trace: [] async_synchronize_cookie_domain+0x75/0x120 [] ? autoremove_wake_function+0x0/0x40 [] async_synchronize_cookie+0x15/0x20 [] async_synchronize_full+0x1c/0x40 [] sd_remove+0x36/0xc0 [sd_mod] [] __device_release_driver+0x75/0xe0 [] device_release_driver+0x2f/0x50 [] bus_remove_device+0xbe/0x120 [] device_del+0x12f/0x1e0 [] __scsi_remove_device+0xbd/0xc0 [] scsi_remove_device+0x35/0x50 [] __scsi_remove_target+0xe7/0x110 [] ? __remove_child+0x0/0x30 [] __remove_child+0x23/0x30 [] device_for_each_child+0x4c/0x80 [] scsi_remove_target+0x33/0x60 [] fc_starget_delete+0x26/0x30 [scsi_transport_fc] [] fc_rport_final_delete+0xaa/0x200 [scsi_transport_fc] [] process_one_work+0x1aa/0x540 [] ? process_one_work+0x13b/0x540 [] ? fc_rport_final_delete+0x0/0x200 [scsi_transport_fc] [] worker_thread+0x179/0x410 [] ? worker_thread+0x0/0x410 [] kthread+0xb6/0xc0 [] ? finish_task_switch+0x4b/0xe0 [] kernel_thread_helper+0x4/0x10 [] ? restore_args+0x0/0x30 [] ? kthread+0x0/0xc0 [] ? kernel_thread_helper+0x0/0x10 fc_remove_host() waits for flushing the workqueue, but it is stuck at flushing the first work. The first work doesnt complete, because it is waiting for async layer to complete the IOs. The async layer cannot complete the IO as the terminate_rport_io for the second work was not called, which will be called only when the first work completes. Hence the deadlock. To resolve this deadlock, the workqueue allocation has been modified from create_singlethread_workqueue() to alloc_workqueue(). In addition, fc_terminate_rport_io() should be called before the scsi_flush_work() to avoid the similar deadlock as above. scsi fc alloc queue. move terminate rport io before flush Signed-off-by: Nithin Nayak Sujir Signed-off-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit b413f498e12faaf5912de89e7ac7e882956e0b0a Author: James Smart Date: Sat Apr 16 11:03:52 2011 -0400 [SCSI] lpfc 8.3.23: Update driver version to 8.3.23 Update driver version to 8.3.22 Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit b6e3b9c606f271824bdeb6a40a080452eb086598 Author: James Smart Date: Sat Apr 16 11:03:43 2011 -0400 [SCSI] lpfc 8.3.23: BSG additions and fixes - Fixed the mixed declarations and codes which violate ISO C90 (declarations in subsections that assign at declaration) - Add BSG data transfer size protection in mailbox command pass-through path - Invoke BSG job_done while holding spinlock to fix deadlock - Added support for checking SLI_CONFIG subcommands - Fixed bug in BSG mailbox size check to non-embedded external buffer Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit c31098cef5e091e22a02ff255f911e0ad71cc393 Author: James Smart Date: Sat Apr 16 11:03:33 2011 -0400 [SCSI] lpfc 8.3.23: Fixes related to new hardware Fixes related to new hardware - Restrict driver to look at BAR2 or BAR4 only for if_type 0. - Allow SLI4 with FCOE_MODE not set for new SLI4 FC adapters. - Add Temporary RPI field to the ELS request WQE. - Do not override CT field in issue_els_flogi for SLI4 IF type 2 - For RQ_CREATE_V2 mbx cmd: fill in the rqe_size and page_size for RQ_CREATE. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 9589b062f53e314ea3abfaca8de7a260b4ef69c2 Author: James Smart Date: Sat Apr 16 11:03:17 2011 -0400 [SCSI] lpfc 8.3.23: Miscellaneous fixes Miscellaneous fixes - Do not limit RPI Count to a minimum of 64 - Fix FCFI incorrect on received unsolicited frames. - Save the FCFI returned in the REG_FCFI mailbox command if it was successful. - Fixed Vports not sending FDISC after lips. - Align based on the SLI4_PAGE_SIZE. - Fixed double byte swap on received RRQ. - Fixed mask size for the wq_id mask from 0x7F to 0x7FFF. - Clear FC_FABRIC flag when NPIV LOGO completes (and add a log message). - Modified driver to skip round robin only when ulpStatus==LOCAL_REJECT and word4=SEQUENCE_TIMEOUT to prevent FLOGI to disconnected FCF. - Don't add rport if driver unloading Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 86a80846a68eeb8575119db61f6b262f49522e6f Author: James Smart Date: Sat Apr 16 11:03:04 2011 -0400 [SCSI] lpfc 8.3.23: Debugfs enhancements Debugfs enhancements - Added iDiag support for new adapters. - Added queue entry access methods. - Fix host/port index in decimal - Added Doorbell register access methods. Signed-off-by: Alex Iannicelli Signed-off-by: James Smart Signed-off-by: James Bottomley commit 7c38c05b3ef1a8a9f7e0416072a8ea2730841c91 Author: Krishna Gudipati Date: Thu Apr 14 16:50:35 2011 -0700 [SCSI] bfa: Move debugfs initialization before bfa init. Move the initialization of debugfs before bfa init, to enable us to collect driver/firmware traces if init fails. Also add a printk to display message on bfa_init failure. Signed-off-by: Krishna Gudipati Signed-off-by: James Bottomley commit 61338a0b3493fddfca2980ece4423839748fcbab Author: Jing Huang Date: Wed Apr 13 11:44:03 2011 -0700 [SCSI] bfa: firmware download fix This patch includes fixes for two issues releated to firmware download implementation: 1) Merged memory leak fix provided by Jesper Juhl . Basically we need to call release_firmware() after request_firmware(). 2) fixed issues with the firmware download interface as pointed out by Rolf Eike Beer in linux-scsi. Rearranged the code and fixed related function protypes. Signed-off-by: Jing Huang Signed-off-by: James Bottomley commit 7dacb64f49848f1f28018fd3e58af8d6ba234960 Author: Wayne Boyer Date: Tue Apr 12 10:29:02 2011 -0700 [SCSI] ipr: improve interrupt service routine performance During performance testing on P7 machines it was observed that the interrupt service routine was doing unnecessary MMIO operations. This patch rearranges the logic of the routine and moves some of the code out of the main routine. The result is that there are now fewer MMIO operations in the performance path of the code. As a result of the above change, an existing condition was exposed where the driver could get an "unexpected" hrrq interrupt. The original code would flag the interrupt as unexpected and then reset the adapter. After further analysis it was confirmed that this condition can occasionally occur and that the interrupt can safely be ignored. Additional code in this patch detects this condition, clears the interrupt and allows the driver to continue without resetting the adapter. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit 3425fbfe2293244abba72c80b215d09ead32d1ad Author: Moger, Babu Date: Fri Apr 8 11:39:30 2011 -0600 [SCSI] scsi_dh_rdac : decide whether to send mode select based on operating mode Based on the operating modes, handler decides whether to send mode select or not. Purpose here is to reduce io-shipping as much as possible whenever there is an option. Signed-off-by: Babu Moger Reviewed-by: Yanling Qi Reviewed-by: Sudhir Dachepalli Reviewed-by: Somasundaram Krishnasamy Reviewed-by: Bob Stankey Reviewed-by: Vijay Chauhan Signed-off-by: James Bottomley commit 1c3afc423460035a6c2d0e4f01217e953bad3fd7 Author: Moger, Babu Date: Fri Apr 8 11:38:33 2011 -0600 [SCSI] scsi_dh_rdac : Detect the different RDAC operating modes This patch detects different operating RDAC modes during the discovery. It also collects the information about the preferred path. Signed-off-by: Babu Moger Reviewed-by: Yanling Qi Reviewed-by: Sudhir Dachepalli Reviewed-by: Somasundaram Krishnasamy Reviewed-by: Bob Stankey Reviewed-by: Vijay Chauhan Signed-off-by: James Bottomley commit eebe9b96dda9018cc68a2855ca506ec26a1e449e Author: Moger, Babu Date: Fri Apr 8 11:37:40 2011 -0600 [SCSI] scsi_dh_rdac : Add definitions for different RDAC operating modes This patch adds definitions to support for different operating modes for LSI rdac storage. Currently, rdac support 3 operation modes. 1. RDAC mode(legacy) 2. AVT mode 3. IOSHIP mode These definitions are used while activating the path(rdac_activate). Signed-off-by: Babu Moger Reviewed-by: Yanling Qi Reviewed-by: Sudhir Dachepalli Reviewed-by: Somasundaram Krishnasamy Reviewed-by: Bob Stankey Reviewed-by: Vijay Chauhan Signed-off-by: James Bottomley commit 630ad8317feed51c55fa5c1c701e67430923aad8 Author: Wayne Boyer Date: Thu Apr 7 12:12:30 2011 -0700 [SCSI] ipr: remove unneeded volatile declarations This patch removes three volatile declarations based on some feedback and code analysis. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit 0bdccdb0a090ad8dc5f851cad5e843244c410ee8 Author: Kashyap, Desai Date: Thu Apr 7 12:32:49 2011 +0530 [SCSI] mpt2sas : WarpDrive New product SSS6200 support added This patch has Support for the new solid state device product SSS6200 from LSI and relavent features w.r.t SSS6200. The major feature added in this driver is supporting Direct-I/O to the SSS6200 storage.There are some additional changes done to avoid exposing the RAID member disks to the OS and hiding/exposing drives based on the OEM Specific Flag in Manufacturing Page10 (this is required to handle specific changes in the SSS6200 firmware). Each and every changes are listed below. 1. Hiding IR related messages. For SSS6200, the driver is modified not to print IR related events. Even if the debugging is enabled the IR related messages will not be displayed. In some places if there is a need to display a message related to IR the string "IR" is replaced with string "DD" and the string "volume" is replaced with "direct drive". But the function names are not changed hence there are some places where the reference to volume can be seen if debug level is set. 2. Removed RAID transport support In Linux the user can retrieve RAID volume information from the sysfs directory. This support is removed for SSS6200. 3. Direct I/O support. The driver tries to enable direct I/O when a volume is reported to the driver by the firmware through IRCC events and the driver does this just before reporting to the OS, hence all the OS issued I/O can go through direct path if they can, The first validation is to see whether the manufacturing page10 flag is set to expose all drives always. If that is set, the driver will not enable direct I/O and displays the message "DDIO" is disabled globally as drives are exposed. The driver checks whether there is more than one volume in the controller, if so the direct I/O will be disabled globally for all volumes in the controller and the message displayed will be "DDIO is disabled globally as number of drives > 1. If retrieving number of PD is failed the driver will not enable direct I/O and displays the message Failure in computing number of drives DDIO disabled. If memory allocation for RAIDVolumePage0 is failed, the driver will not enable direct I/O and displays the message Memory allocation failure for RVPG0 DDIO disabled. If retrieving RAIDVolumePage0 is failed the driver will not enable direct I/O and displays the message Failure in retrieving RVPG0 DDIO disabled If the number of PD in a volume is greater than 8, then the direct I/O will be disabled. If any of individual drives handle retrieval is failed then the DD-IO will be disabled. If the volume is not RAID0 or if the block size is not 512 then the DD-IO will be disabled. If the volume size is greater than 2TB then the DD-IO will be disabled. If the driver is not able to find a valid stripe exponent using the configured stripe size then the DD-IO will be disabled When the DD-IO is enabled the driver will check every I/O request issued to the storage and checks whether the request is either READ6/WRITE6/READ10/WRITE10, if it is and if the complete I/O transfer is within a stripe size then the I/O is redirected to the drive directly instead of the volume. On completion of every I/O, if the completion is failure means if the reply is address reply with a reply frame associated with it, then the type of I/O will be checked, if the I/O is direct then the I/O will be retried to the volume once. Signed-off-by: Kashyap Desai Reviewed-by: Eric Moore Reviewed-by: Sathya Prakash Signed-off-by: James Bottomley commit aeaeb5cec5a5477b392e627883fdb46d8a5dcc1f Author: Christoph Hellwig Date: Mon Apr 4 09:42:41 2011 -0400 [SCSI] fusion: do not check serial_number in the abort handler The SCSI midlayer stops all command processing when in error handling, which means there is no chance for command reuse when the abort handler is called. Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit a7c44d4ad147d54f041ba3885cc28549da72f55a Author: Christoph Hellwig Date: Mon Apr 4 09:42:30 2011 -0400 [SCSI] mpt2sas: do not check serial_number in the abort handler The SCSI midlayer stops all command processing when in error handling, which means there is no chance for command reuse when the abort handler is called. Signed-off-by: Christoph Hellwig Acked-by: "Moore, Eric" Signed-off-by: James Bottomley commit 05d1091fd9fe3672bde444506fe426d864c52013 Author: Christoph Hellwig Date: Mon Apr 4 09:42:22 2011 -0400 [SCSI] usb-storage: do not increment cmd->serial_number The isd200 sub-driver increments the command serial number despite not using it at all in it's routine for sending internal scsi commands. Remove the increment to prepare for removing the serial_number field. Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit 5cd049a59913f359e7d30c11d2dc6187822e77b1 Author: Christoph Hellwig Date: Mon Apr 4 09:42:14 2011 -0400 [SCSI] remove cmd->serial_number litter Stop using cmd->serial_number in printks. Signed-off-by: Christoph Hellwig Signed-off-by: James Bottomley commit f04ca1b65480df9ecbaaa797e62b063387429410 Author: Vasu Dev Date: Fri Apr 1 16:06:45 2011 -0700 [SCSI] fcoe: have fcoe log off and lport destroy before ndo_fcoe_disable Currently fcoe interface cleanup is done after ndo_fcoe_disable and that prevents logoff going out to the peer, so this patch moves all netdev cleanup and its releasing inside fcoe_interface_cleanup to have log off before ndo_fcoe_disable disables the fcoe. This patch also fixes asymmetric rtnl locking around fcoe_if_destroy, as currently this function requires rtnl held by its caller and then have this func drops the lock, instead now don't have any processing under rtnl inside fcoe_if_destroy, this required moving few func to get build working again. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit f2817ec2e0faece03959888050730ed35e5f2bd2 Author: Vasu Dev Date: Fri Apr 1 16:06:40 2011 -0700 [SCSI] libfc: rec tov value and REC_TOV_CONST units usages is incorrect Added REC_TOV_CONST intent was to have rec tov as e_d_tov + 1s but currently it is e_d_tov + 1ms since e_d_tov is stored in ms unit. Also returned rec tov by get_fsp_rec_tov is in ms and this ms tov is used as-is with fc_fcp_timer_set expecting jiffies tov. Fixed this by having get_fsp_rec_tov return rec tov in jiffies as e_d_tov + 1s and then use jiffies tov w/ fc_fcp_timer_set. Also some cleanup, no need to cache get_fsp_rec_tov return value in local rec_tov at various places. Signed-off-by: Vasu Dev Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 66a5b3acba563b53cfbca96c7fff2207c94a87e2 Author: Vasu Dev Date: Fri Apr 1 16:06:35 2011 -0700 [SCSI] libfc: remove duplicate ema_list init As ema_list is already initialized by libfc_host_alloc. Signed-off-by: Vasu Dev Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 4ef7fb150f3002c5e494b2a327fa532bf8fd0927 Author: Yi Zou Date: Fri Apr 1 16:06:30 2011 -0700 [SCSI] libfcoe: fix wrong comment in fcoe_transport_detach fix typo of '_attach' -> '_detach' in the comment. Reported-by: Frank Zhang Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit a01a5a5789287113cd6bb25c79cf2a826874c918 Author: Yi Zou Date: Fri Apr 1 16:06:25 2011 -0700 [SCSI] libfcoe: fix possible buffer overflow in fcoe_transport_show possible buffer overflow in fcoe_transport_show when reaching the end of buffer and crossing PAGE_SIZE boundary. Signed-off-by: Yi Zou Signed-off-by: Tomas Henzl Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 69922fcd534cfc82e2d44374fa219e7c3b27c492 Author: Yi Zou Date: Fri Apr 1 16:06:19 2011 -0700 [SCSI] libfcoe: clean up netdev mapping properly when the transport goes away When rmmoving the underlying fcoe transport driver module by force when it's attached and in use, the correspoding netdev mapping should be cleaned up properly as well, otherwise the lookup for a given netdev for the transport would still return non NULL pointer, causing "unable to handle paging request" bug. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 9c8cce8e416b3286720379b5efa1c7fa81b2ec36 Author: Robert Love Date: Fri Apr 1 16:06:14 2011 -0700 [SCSI] libfc: Move host_lock usage into ramp_up/down routines The host_lock is still used to protect the can_queue value in the Scsi_Host, but it doesn't need to be held and released by each caller. This patch moves the lock usage into the fc_fcp_can_queue_ramp_up and fc_fcp_can_queue_ramp_down routines. Signed-off-by: Robert Love Tested-by: Ross Brattain Signed-off-by: James Bottomley commit 63ce2499947683dcc026373e24a4cb5a9d086e7d Author: Kirill A. Shutemov Date: Fri Apr 1 16:06:09 2011 -0700 [SCSI] esp, scsi_tgt_lib, fcoe: use list_move() instead of list_del()/list_add() combination Signed-off-by: Kirill A. Shutemov Signed-off-by: Robert Love Signed-off-by: James Bottomley commit 38b34aca30ef1296bbc552505d80c69f274f0872 Author: Yi Zou Date: Fri Apr 1 16:06:04 2011 -0700 [SCSI] fcoe: remove unnecessary module state check The check of module state being MODULE_STATE_LIVE is no longer needed for the individual fcoe transport driver, e.g., fcoe.ko, as sysfs entries now go to libfcoe now, if it reaches fcoe.ko, it has to be already registered. The module state check for libfcoe will guard the possible race condition of sysfs being writable before module_init function is called and after module_exit. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Robert Love Signed-off-by: James Bottomley commit ee5df628c1d7f3ff4db3174f7c00873c94f616d9 Author: Robert Love Date: Fri Apr 1 16:05:59 2011 -0700 [SCSI] fcoe: Remove mutex_trylock/restart_syscall checks These checks were initially added to avoid a lockdep false positive when dealing with the s_active, rtnl and fcoe_config_mutex mutexes. Recently the create, destroy, enable and disable sysfs entries were moved from fcoe.ko to libfcoe.ko. With this change the mutex usage was shuffled around and the lockdep false positive stopped happening. We can now remove these checks. Signed-off-by: Robert Love Tested-by: Ross Brattain Signed-off-by: James Bottomley commit b3960afe0477781c84faa2e92dfb00016d6d4e30 Author: Robert Love Date: Fri Apr 1 16:05:53 2011 -0700 [SCSI] libfcoe: Remove mutex_trylock/restart_syscall checks This code was incorrectly ported from fcoe.c when the fcoe transport infrastructure was put into place. It was originally needed in fcoe.c when dealing with the rtnl mutex. In that code it was only needed to avoid a lockdep false positive. In libfcoe we don't deal with the rtnl mutex, we don't get the lockdep false positive and therefore we don't need these checks. Signed-off-by: Robert Love Tested-by: Ross Brattain Signed-off-by: James Bottomley commit 5c2dce26fd670607b5ff04f18efa38739805f6d6 Author: Julia Lawall Date: Fri Apr 1 16:23:46 2011 +0200 [SCSI] bnx2fc: introduce missing kfree Error handling code following a kmalloc should free the allocated data. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S; expression E; identifier f,f1,l; position p1,p2; expression *ptr != NULL; @@ x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...x...+> } ( x->f1 = E | (x->f1 == NULL || ...) | f(...,x->f1,...) ) ...> ( return \(0\|<+...x...+>\|ptr\); | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Acked-by: Bhanu Prakash Gollapudi Signed-off-by: James Bottomley commit ab6c10b136d5f8eb856a0f17247edc7c19805e1b Author: Wayne Boyer Date: Thu Mar 31 09:56:10 2011 -0700 [SCSI] ipr: fix synchronous request flags for better performance In testing it was noticed that Extended Delay after Reset flag was being set for gscsi and volume set devices. This had a negative effect on performance for volume sets. The fix is to only set the flag for gscsi devices. Signed-off-by: Wayne Boyer Acked-by: Brian King Signed-off-by: James Bottomley commit c9c2a14047447251838334045e7af99b3b15f725 Author: Madhuranath Iyengar Date: Wed Mar 30 11:46:33 2011 -0700 [SCSI] qla2xxx: Update version number to 8.03.07.03-k. A minor change in the versioning. We'll be attaching the "-k" in the end. Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit ec426e106c410b000ac590b6e776d5a6cd9bccd9 Author: Chad Dupuis Date: Wed Mar 30 11:46:32 2011 -0700 [SCSI] qla2xxx: Log fcport state transitions when debug messages are enabled. Add the inline function qla2x00_set_port_state() so that when a fcport state transition happens we can log the state transition if debug messages are enabled. Signed-off-by: Chad Dupuis Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit a4f92a32a0fb827f7bd40c69f021cf57d3dc4249 Author: Andrew Vasquez Date: Wed Mar 30 11:46:31 2011 -0700 [SCSI] qla2xxx: Verify login-state has transitioned to PRLI-completed. Before driver's own internal state is marked as PLOGI/PRLI complete. This additional check closes a window seen with dual-personality initiator/target devices where a driver's PLOGI/PRLI request occurs within the window after the target's PLOGI request has completed, but prior to the target's PRLI arriving and processed by the firmware. Without this additional check, the firmware will return port-information stating that the port neither supports target nor initiator functions, causing the driver to register the rport prematurely to the FC-transport without the proper 'roles' being set. Signed-off-by: Andrew Vasquez Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 92dbf273921eb53a9d5b760a8f3b32eefd776b1b Author: Giridhar Malavali Date: Wed Mar 30 11:46:30 2011 -0700 [SCSI] qla2xxx: Limit the logs in case device state does not change for ISP82xx. Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit ed0de87ce6be92bd84858ad496ffaf60344495a3 Author: Giridhar Malavali Date: Wed Mar 30 11:46:29 2011 -0700 [SCSI] qla2xxx: Add the ql2xdontresethba module_param. Also, change the ISP82xx code to only reset if this module_param is set and reset is intended via the QLA82XX_DEV_NEED_RESET case. Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 0e8edb0303a97717a9518428329adad3d6fe3b4d Author: Giridhar Malavali Date: Wed Mar 30 11:46:28 2011 -0700 [SCSI] qla2xxx: Display hardware/firmware registers to get more information about the error for ISP82xx. Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 03bcfb57c098016e318e2672028f93ec072a2333 Author: Joe Carnuccio Date: Wed Mar 30 11:46:27 2011 -0700 [SCSI] qla2xxx: Add test for valid loop id to qla2x00_relogin(). If fabric device has invalid loop id (FC_NO_LOOP_ID) then call qla2x00_find_new_loop_id() to attempt to obtain valid loop id. Signed-off-by: Joe Carnuccio Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 8f7daead3c7861f9d0caa55269773136ab443b41 Author: Giridhar Malavali Date: Wed Mar 30 11:46:26 2011 -0700 [SCSI] qla2xxx: Perform FCoE context reset before trying adapter reset for ISP82xx. For certain failures, try to recover first by doing FCoE context reset before attempting big hammer approach(adpater reset). Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit aee3dbcdd1f8f7dea4500824ae1ac9cfbbe71700 Author: Giridhar Malavali Date: Wed Mar 30 11:46:25 2011 -0700 [SCSI] qla2xxx: Remove extra call to qla82xx_check_fw_alive(). The stanadlone call to qla82xx_check_fw_alive() in qla82xx_watchdog() is a typo, so remove it. Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 02be22155689d4e3a8bd04243547262b2915f4e3 Author: Giridhar Malavali Date: Wed Mar 30 11:46:24 2011 -0700 [SCSI] qla2xxx: Updated the reset sequence for ISP82xx. Signed-off-by: Giridhar Malavali Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 07e264b76d1db5794614ca3d726fdf1c0399dac0 Author: Andrew Vasquez Date: Wed Mar 30 11:46:23 2011 -0700 [SCSI] qla2xxx: Update copyright banner. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 2fb0ee8a7f23e5f4df31f73da06731990ebb0044 Author: Madhuranath Iyengar Date: Wed Mar 30 11:46:22 2011 -0700 [SCSI] qla2xxx: Update License file. Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit c8d6691b95eccce0033e925ba88b04eef4deac05 Author: Andrew Vasquez Date: Wed Mar 30 11:46:21 2011 -0700 [SCSI] qla2xxx: Free firmware PCB on logout request. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit a74ec14ffb17bb8033e7b41470019d30c8300707 Author: Mike Hernandez Date: Wed Mar 30 11:46:20 2011 -0700 [SCSI] qla2xxx: Include request queue ID in the upper 16-bits of the I/O handle for Abort I/O IOCBs. The upper 16-bits of the handle for all I/O in multi-queue supported drivers carries the ID of the request queue it was submitted on. When using Abort I/O IOCB, the driver needs to also populate the upper 16-bits in the handle_to_abort field so the fw can correlate with the actual I/O. Signed-off-by: Mike Hernandez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 3e8bb8410fafb36739beeb27e1c2fe76261a80dc Author: Andrew Vasquez Date: Wed Mar 30 11:46:19 2011 -0700 [SCSI] qla2xxx: Remove extraneous setting of FCF_ASYNC_SENT during login-done completion. The bit is already set upon entry. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit f28a0a96130e7557d0cdcba0bcd394735eadfad8 Author: Andrew Vasquez Date: Wed Mar 30 11:46:18 2011 -0700 [SCSI] qla2xxx: Check for a match before attempting to set FCP-priority information. Modifying qla24xx_get_fcp_prio() to return a 'found' status allows the driver to short circuit the 'set FCP-priority' call and reduce the amount of noise generated in the messages file: scsi(5): Unable to activate fcp priority, ret=0x102 scsi(5): Unable to activate fcp priority, ret=0x102 Also make qla24xx_get_fcp_prio() static. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 80d79440ad98a660bd6d81e5c06e85581ff6ac46 Author: Andrew Vasquez Date: Wed Mar 30 11:46:17 2011 -0700 [SCSI] qla2xxx: Correct calling contexts of qla2x00_mark_device_lost() in async paths. The respective done() functions are called from process context, so there's no reason to 'defer' the request. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit 1940ce7317826c230055e826727acb891fb8bece Author: Andrew Vasquez Date: Wed Mar 30 11:46:16 2011 -0700 [SCSI] qla2xxx: Display PortID information during FCP command-status handling. To provide a clearer translation of the command-status origin in relation to the midlayer's standard SCSI nexus. Signed-off-by: Andrew Vasquez Signed-off-by: Madhuranath Iyengar Signed-off-by: James Bottomley commit d9f34504e6952e909a6932c5b2d1857716606380 Author: Theodore Ts'o Date: Sat Apr 30 13:47:24 2011 -0400 ext4: ignore errors when issuing discards This is an effective revert of commit a30eec2a8: "ext4: stop issuing discards if not supported by device". The problem is that there are some devices that may return errors in response to a discard request some times but not others. (One example would be a hybrid dm device which concatenates an SSD and an HDD device). By this logic, I also removed the error checking from ext4's FITRIM code; so that an error from a discard will not stop the FITRIM from trying to trim the rest of the file system. Signed-off-by: "Theodore Ts'o" commit 39db00f1c45e770856264bdb3ceca27980b01965 Author: Curt Wohlgemuth Date: Sat Apr 30 13:26:26 2011 -0400 ext4: don't set PageUptodate in ext4_end_bio() In the bio completion routine, we should not be setting PageUptodate at all -- it's set at sys_write() time, and is unaffected by success/failure of the write to disk. This can cause a page corruption bug when the file system's block size is less than the architecture's VM page size. if we have only written a single block -- we might end up setting the page's PageUptodate flag, indicating that page is completely read into memory, which may not be true. This could cause subsequent reads to get bad data. This commit also takes the opportunity to clean up error handling in ext4_end_bio(), and remove some extraneous code: - fixes ext4_end_bio() to set AS_EIO in the page->mapping->flags on error, which was left out by mistake. This is needed so that fsync() will return an error if there was an I/O error. - remove the clear_buffer_dirty() call on unmapped buffers for each page. - consolidate page/buffer error handling in a single section. Signed-off-by: Curt Wohlgemuth Signed-off-by: "Theodore Ts'o" Reported-by: Jim Meyering Reported-by: Hugh Dickins Cc: Mingming Cao commit d6d023a1948d13652d719238f8039c09acceda8c Author: Wey-Yi Guy Date: Sat Apr 30 09:10:53 2011 -0700 iwlagn: remove un-necessary debugfs callback After driver split, no need for debugfs callback, remove those Signed-off-by: Wey-Yi Guy commit ebf8dc8060e4b10e8e13abbf98544f5c6cc8b25e Author: Johannes Berg Date: Wed Apr 27 05:19:34 2011 -0700 iwlagn: prefer BSS context If an interface type changes from a type that is only supported on the PAN context (e.g. P2P GO) to a type that is supported on the BSS context, and the BSS context is not in use, then we need to use the BSS context instead of changing the device type within the context. To achieve this, refuse the type change, which causes a down/up cycle that will allocate the BSS context for the interface. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit c914ac26caf462567078f9615ffcedf1962087f2 Author: Johannes Berg Date: Thu Apr 21 10:57:23 2011 -0700 iwlagn: improve RXON checking The current RXON checking doesn't verify that the channel is valid (or at least non-zero), so add that. Also, add a WARN() so we get a stacktrace, and capture a bitmask of errors in order to capture all necessary information in the warning itself (in case the previous messages are snipped off.) Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit bbf18ff1be8a3c6567bc052e690189b55e16b8eb Author: Johannes Berg Date: Thu Apr 21 07:09:43 2011 -0700 iwlagn: remove spectrum measurement header This header file isn't used, and if we ever need these definitions they shouldn't be added to a driver but rather to the common 802.11 include file that has all frame definitions. Thus, just remove it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 16b80b714f8ef86d47680e4afa0eeb8cc61daef4 Author: Don Fry Date: Wed Apr 20 15:25:14 2011 -0700 iwlagn: semaphore and calib cleanup All agn devices use the same eeprom semaphore and calib version routines. Delete the indirection and move the semaphore routines to where they are used and make static. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy commit 9d143e9a0d68025efe902d86eb6207cbec36dcdb Author: Don Fry Date: Wed Apr 20 15:23:57 2011 -0700 iwlagn: mod param cleanup All agn devices use the same module parameter structure. Delete the indirection and access the structure diretly. Signed-off-by: Don Fry Signed-off-by: Wey-Yi Guy commit b4ed221daba1b129c3efff8a7352d9791d034330 Author: Wey-Yi Guy Date: Sat Apr 30 08:55:16 2011 -0700 iwlagn: new 105 series device Correction for new 105 series devices Signed-off-by: Wey-Yi Guy commit d2690c0db7146b12e4fc2d572053c823e512758a Author: Johannes Berg Date: Wed Apr 20 09:10:39 2011 -0700 iwlagn: use proper good CRC threshold behaviour New microcode versions use the good CRC threshold field differently, as a flag, and in that case we should set it to 1/0 instead of 1/65535 for an active/passive scan. The new behaviour is advertised by the uCode with a feature flag. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit c1821c95c13240c2c8d3da8845c2021e575e29c6 Author: Wey-Yi Guy Date: Tue Apr 19 16:52:59 2011 -0700 iwlagn: connect and disconnect sequence for RXON No functional changes, separate the connect and disconnect sequences in RXON commit function, easier to read and understand. Signed-off-by: Wey-Yi Guy commit 89e746b244064406c3bfe442bb64c3230f42fa98 Author: Wey-Yi Guy Date: Tue Apr 19 16:52:58 2011 -0700 iwlagn: remove 5000 from rxon_assoc structure The data structure is shared by all _agn devices, remove the reference to 5000 Signed-off-by: Wey-Yi Guy commit c3f6e9cff950c312d409e5767365aeb2475b2ab7 Author: Wey-Yi Guy Date: Tue Apr 19 16:52:57 2011 -0700 iwlagn: make rxon_assoc static function Move rxon_assoc to static function from ops Signed-off-by: Wey-Yi Guy commit e43e85c40d83f0a7a6ff5631d1009d142b72dbca Author: Johannes Berg Date: Tue Apr 19 07:45:16 2011 -0700 iwlagn: refactor restart The WoWLAN resume code will have to essentially do a restart, but without going through the work struct. To support that, refactor the restart by splitting out the preparation code into a new function. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 4119904f3ebf30c25afb42195740f9ee5dc7749c Author: Johannes Berg Date: Tue Apr 19 07:42:03 2011 -0700 iwlagn: introduce silent grabbing of NIC access There are a few cases like the WoWLAN support I'm writing that require attempting to access the NIC when it is known that it might not be accessible, e.g. after the system woke up and the platform might have reset the device. To avoid messages in this case, introduce the new function iwl_grab_nic_access_silent(), it will only return an error status. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 9d39e5bad76a8830a8fa0c03cadc1e36ce2ec2ef Author: Johannes Berg Date: Tue Apr 19 07:38:23 2011 -0700 iwlagn: avoid hangs when restarting device If a device error happens while the uCode is being loaded or initialised, we will attempt to restart the device (which will likely fail again, but that's not the issue here). During this new restart, we turn off the device, but as the uCode failed to initialise it already is turned off. As a consequence, grabbing NIC access will fail and cause excessive messages and hangs. To fix this issue, introduce a new status bit and only attempt to reprogram the device when it isn't already disabled. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit b9df92d2a94eef8811061aecb1396290df440e2e Author: Steven Rostedt Date: Thu Apr 28 20:32:08 2011 -0400 ftrace: Consolidate the function match routines for normal and mods The code used for matching functions is almost identical between normal selecting of functions and using the :mod: feature of set_ftrace_notrace. Consolidate the two users into one function. Signed-off-by: Steven Rostedt commit 491d0dcfb9707e1f83eff93ca503eb7573162ef2 Author: Steven Rostedt Date: Wed Apr 27 21:43:36 2011 -0400 ftrace: Consolidate updating of ftrace_trace_function There are three locations that perform almost identical functions in order to update the ftrace_trace_function (the ftrace function variable that gets called by mcount). Consolidate these into a single function called update_ftrace_function(). Signed-off-by: Steven Rostedt commit 996e87be7f537fb34638875dd37083166c733425 Author: Steven Rostedt Date: Tue Apr 26 16:11:03 2011 -0400 ftrace: Move record update for normal and modules into a separate function The updating of a function record is moved to a single function. This will allow us to add specific changes in one location for both modules and kernel functions. Later patches will determine if the function record itself needs to be updated (which enables the mcount caller), or just the ftrace_ops needs the update. Signed-off-by: Steven Rostedt commit d2c8c3eafbf715306ec891e7ca52d3d999acbe31 Author: Steven Rostedt Date: Mon Apr 25 14:32:42 2011 -0400 ftrace: Remove FTRACE_FL_CONVERTED flag Since we disable all function tracer processing if we detect that a modification of a instruction had failed, we do not need to track that the record has failed. No more ftrace processing is allowed, and the FTRACE_FL_CONVERTED flag is pointless. The FTRACE_FL_CONVERTED flag was used to denote records that were successfully converted from mcount calls into nops. But if a single record fails, all of ftrace is disabled. Signed-off-by: Steven Rostedt commit 45a4a2372b364107cabea79f255b333236626416 Author: Steven Rostedt Date: Thu Apr 21 23:16:46 2011 -0400 ftrace: Remove FTRACE_FL_FAILED flag Since we disable all function tracer processing if we detect that a modification of a instruction had failed, we do not need to track that the record has failed. No more ftrace processing is allowed, and the FTRACE_FL_FAILED flag is pointless. Removing this flag simplifies some of the code, but some ftrace_disabled checks needed to be added or move around a little. Signed-off-by: Steven Rostedt commit 3499e461147636bf55c41128d83b679ac6ab2d86 Author: Steven Rostedt Date: Thu Apr 21 22:59:12 2011 -0400 ftrace: Remove failures file The failures file in the debugfs tracing directory would list the functions that failed to convert when the old dead ftrace daemon tried to update code but failed. Since this code is now dead along with the daemon the failures file is useless. Remove it. Signed-off-by: Steven Rostedt commit 8ab2b7efd3e2ccf2c2dda3206b8171ecdbd0af40 Author: Steven Rostedt Date: Thu Apr 21 22:41:35 2011 -0400 ftrace: Remove unnecessary disabling of irqs The disabling of interrupts around ftrace_update_code() was used to protect against the evil ftrace daemon from years past. But that daemon has long been killed. It is safe to keep interrupts enabled while updating the initial mcount into nops. The ftrace_mutex is also held which keeps other users at bay. Signed-off-by: Steven Rostedt commit 0778d9ad33898faab7bf6316108b471790376e35 Author: Steven Rostedt Date: Fri Apr 29 10:36:31 2011 -0400 ftrace: Make FTRACE_WARN_ON() work in if condition Let FTRACE_WARN_ON() be used as a stand alone statement or inside a conditional: if (FTRACE_WARN_ON(x)) Signed-off-by: Steven Rostedt commit 058e297d34a404caaa5ed277de15698d8dc43000 Author: Steven Rostedt Date: Fri Apr 29 22:35:33 2011 -0400 ftrace: Only update the function code on write to filter files If function tracing is enabled, a read of the filter files will cause the call to stop_machine to update the function trace sites. It should only call stop_machine on write. Cc: stable@kernel.org Signed-off-by: Steven Rostedt commit a1d9a09ae8003380a7f2297ee4367947cbdf874f Author: Mike Waychison Date: Fri Apr 29 17:39:31 2011 -0700 Introduce CONFIG_GOOGLE_FIRMWARE In order to keep Google's firmware drivers organized amongst themselves, all Google firmware drivers are gated on CONFIG_GOOGLE_FIRMWARE=y, which defaults to 'n' in the kernel build. Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit e561bc45920aade3f8a5aad9058a00e750af1345 Author: Mike Waychison Date: Fri Apr 29 17:39:25 2011 -0700 driver: Google Memory Console This patch introduces the 'memconsole' driver. Our firmware gives us access to an in-memory log of the firmware's output. This gives us visibility in a data-center of headless machines as to what the firmware is doing. The memory console is found by the driver by finding a header block in the EBDA. The buffer is then copied out, and is exported to userland in the file /sys/firmware/log. Signed-off-by: San Mehat Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 74c5b31c6618f01079212332b2e5f6c42f2d6307 Author: Mike Waychison Date: Fri Apr 29 17:39:19 2011 -0700 driver: Google EFI SMI The "gsmi" driver bridges userland with firmware specific routines for accessing hardware. Currently, this driver only supports NVRAM and eventlog information. Deprecated functions have been removed from the driver, though their op-codes are left in place so that they are not re-used. This driver works by trampolining into the firmware via the smi_command outlined in the FADT table. Three protocols are used due to various limitations over time, but all are included herein. This driver should only ever load on Google boards, identified by either a "Google, Inc." board vendor string in DMI, or "GOOGLE" in the OEM strings of the FADT ACPI table. This logic happens in gsmi_system_valid(). Signed-off-by: Duncan Laurie Signed-off-by: Aaron Durbin Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 6ce2357f1e73e0da8ebeace6ec829f48a646bb8c Author: Bryan Schumaker Date: Wed Apr 27 15:47:16 2011 -0400 NFSD: Remove unused variable from nfsd4_decode_bind_conn_to_session() Compiling gave me this warning: fs/nfsd/nfs4xdr.c: In function ‘nfsd4_decode_bind_conn_to_session’: fs/nfsd/nfs4xdr.c:427:6: warning: variable ‘dummy’ set but not used [-Wunused-but-set-variable] The local variable "dummy" wasn't being used past the READ32() macro that set it. READ_BUF() should ensure that the xdr buffer is pushed past the data read into dummy already, so nothing needs to be read in. Signed-off-by: Bryan Schumaker [bfields@redhat.com: minor comment fixup.] Signed-off-by: J. Bruce Fields commit 1db2b9dde3317e181f76860410cb0e7433896f28 Author: Bryan Schumaker Date: Wed Apr 27 15:47:15 2011 -0400 NFSD: Check status from nfsd4_map_bcts_dir() Compiling gave me this warning: fs/nfsd/nfs4state.c: In function ‘nfsd4_bind_conn_to_session’: fs/nfsd/nfs4state.c:1623:9: warning: variable ‘status’ set but not used [-Wunused-but-set-variable] The local variable "status" was being set by nfsd4_map_bcts_dir() and then ignored before calling nfsd4_new_conn(). Signed-off-by: Bryan Schumaker Signed-off-by: J. Bruce Fields commit fccb13c947de83a368e1f3c2216bbf4d8d41efa1 Author: Bryan Schumaker Date: Wed Apr 27 15:47:14 2011 -0400 NFSD: Remove setting unused variable in nfsd_vfs_read() Compiling gave me this warning: fs/nfsd/vfs.c: In function ‘nfsd_vfs_read’: fs/nfsd/vfs.c:880:16: warning: variable ‘inode’ set but not used [-Wunused-but-set-variable] I discovered that a local variable "inode" was being set towards the beginning of nfsd_vfs_read() and then ignored for the rest of the function. Signed-off-by: Bryan Schumaker Signed-off-by: J. Bruce Fields commit bcecf1ccc336200ee488e8eb68acdafc4b0dbd1a Author: Mi Jinlong Date: Wed Apr 27 09:14:30 2011 +0800 nfsd41: error out on repeated RECLAIM_COMPLETE Servers are supposed to return nfserr_complete_already to clients that attempt to send multiple RECLAIM_COMPLETEs. Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit 868b89c3dc25eec03985b31ff070e8f73c818980 Author: Mi Jinlong Date: Wed Apr 27 09:09:58 2011 +0800 nfsd41: compare request's opcnt with session's maxops at nfsd4_sequence Make sure nfs server errors out if request contains more ops than channel allows. Signed-off-by: Mi Jinlong [bfields@redhat.com: use helper function] Signed-off-by: J. Bruce Fields commit b7c66360dc34e64742edabf4dc410070aa883119 Author: Andy Adamson Date: Fri Apr 22 12:45:59 2011 -0400 nfsd v4.1 lOCKT clientid field must be ignored RFC 5661 Section 18.11.3 The clientid field of the owner MAY be set to any value by the client and MUST be ignored by the server. The reason the server MUST ignore the clientid field is that the server MUST derive the client ID from the session ID from the SEQUENCE operation of the COMPOUND request. Signed-off-by: Andy Adamson Signed-off-by: J. Bruce Fields commit a62573dc353b255dbbc8520bfdcb1c8a8c1ada87 Author: Mi Jinlong Date: Wed Mar 23 17:57:07 2011 +0800 nfsd41: add flag checking for create_session Teach the NFS server to reject invalid create_session flags. Also do some minor formatting adjustments. Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit ac6721a13e5b1a90728e790600f827a5e5f5da2f Author: Mi Jinlong Date: Wed Apr 20 17:06:25 2011 +0800 nfsd41: make sure nfs server process OPEN with EXCLUSIVE4_1 correctly The NFS server uses nfsd_create_v3 to handle EXCLUSIVE4_1 opens, but that function is not prepared to handle them. Rename nfsd_create_v3() to do_nfsd_create(), and add handling of EXCLUSIVE4_1. Signed-off-by: Mi Jinlong Signed-off-by: J. Bruce Fields commit 68d93184352f2e723f135b0a9bad93b58f9d120b Author: J. Bruce Fields Date: Fri Apr 8 17:00:50 2011 -0400 nfsd4: fix wrongsec handling for PUTFH + op cases When PUTFH is followed by an operation that uses the filehandle, and when the current client is using a security flavor that is inconsistent with the given filehandle, we have a choice: we can return WRONGSEC either when the current filehandle is set using the PUTFH, or when the filehandle is first used by the following operation. Follow the recommendations of RFC 5661 in making this choice. (Our current behavior prevented the client from doing security negotiation by returning WRONGSEC on PUTFH+SECINFO_NO_NAME.) Signed-off-by: J. Bruce Fields commit 7fc2a61638ef78cdf8d65d5934782963a6e0fc66 Author: Ben Hutchings Date: Mon Apr 25 16:54:28 2011 +0100 xhci-hcd: Include in xhci-pci.c Commit b02d0ed677acb3465e7600366f2353413bf24074 ('xhci: Change hcd_priv into a pointer') added calls to kzalloc() and kfree() in xhci-pci.c. On most architectures is indirectly included, but on some it is not. Signed-off-by: Ben Hutchings Cc: Sarah Sharp , Signed-off-by: Greg Kroah-Hartman commit 643de6240b0b59c420ad71dfeeb3125a3607af92 Author: Michal Nazarewicz Date: Thu Apr 14 17:47:09 2011 +0200 usb: core: Change usb_create_sysfs_intf_files()' return type to void The usb_create_sysfs_intf_files() function always returned zero even if it failed to create sysfs fails. Since this is a desired behaviour there is no need to return return code at all. This commit changes function's return type (form int) to void. Signed-off-by: Michal Nazarewicz Cc: Sergey Senozhatsky Signed-off-by: Greg Kroah-Hartman commit 869410f82cbbb1464772046d87de8d18a916e706 Author: Alan Stern Date: Thu Apr 14 11:21:04 2011 -0400 USB: add queued-unlinks test case to usbtest driver This patch (as1452b) adds a new test case to the usbtest driver. Test 24 exercises the unlink-from-queue pathways in the host. It queues a user-specified number of bulk-OUT URBs of user-specified size, unlinks the fourth- and second-from-last URBs in the queue, and then waits to see if all the URBs complete in the expected way (except of course that the unlinked URBs might complete normally, if they weren't unlinked soon enough). This new test has confirmed the existence of a bug in the ehci-hcd driver, to be fixed by a separate patch. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1f594b64a4f74ece0b7166ca4db05a71a64bd685 Author: Jim Lin Date: Sun Apr 17 11:58:25 2011 +0300 USB: ehci: tegra: fix USB1 port reset issue Tegra USB1 port needs to issue Port Reset twice internally, otherwise it fails to enumerate devices attached to it Signed-off-by: Jim Lin Signed-off-by: Olof Johansson [ squash two patches into one and minor style cleanups ] Signed-off-by: Mike Rapoport Signed-off-by: Greg Kroah-Hartman commit 3c86c07baaa22e1ebae1922b5285f79a39e93d83 Author: Jingoo Han Date: Thu Apr 14 21:09:16 2011 +0900 USB: ohci-s3c2410: use resource_size() This patch uses the resource_size help function instead of manually calculating the resource size. It can reduce the chance of introducing off-by-one errors. Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit e7f84331c21408fecc872aaabc41c7b97fe15ae4 Author: Jingoo Han Date: Thu Apr 14 21:09:37 2011 +0900 USB: ohci-s3c2410: use __devinit and __devexit macros for probe and remove The __devinit and __devexit macros were added to probe and remove functions. The macros move the probe and remove functions to the devinit and devexit sections. Signed-off-by: Jingoo Han Signed-off-by: Greg Kroah-Hartman commit fd4477b09e13f60c7d9e497311ea6410a94aaae8 Author: Michal Nazarewicz Date: Thu Apr 14 11:55:43 2011 +0200 usb: gadget: storage_common: use kstrto*() [bug fix] This commit fixes an embarrassing bug in the "storage_common: use kstrto*()" patch which caused fsg_store_ro() to return zero instead of the length of the consumed buffer. Signed-off-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 865835fa441fcabc65251f14280df3055fe82d0f Author: Sebastian Andrzej Siewior Date: Fri Apr 15 20:37:06 2011 +0200 usb/dummy_hcd: don't probe for udc if hcd failed the_controller is allocated in dummy_hcd_probe() and is NULL if the allocation failed. The probe function of the udc driver is dereferencing this pointer and fault. Alan Stern suggested to abort the dummy_hcd driver probing so the module is not loaded. The is abort-on-error has been also added to the udc driver. Signed-off-by: Sebastian Andrzej Siewior Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 1d15ee4cd7c9ddacfb4b517131b257d8c0d74d42 Author: Sebastian Andrzej Siewior Date: Thu Apr 14 11:22:32 2011 +0200 usb/hcd: don't return 0 on error in usb_add_hcd() If USB type detections fails, we run into default and return 0. Signed-off-by: Sebastian Andrzej Siewior Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit b002ff6e268b6024d6927a1ce330a14ca162b6ab Author: Kuninori Morimoto Date: Thu Apr 28 16:41:20 2011 +0900 usb: renesas_usbhs: add autonomy mode Current renesas_usbhs was designed to save power when USB is not connected. And it assumed platform uses callback to notify connection/disconnection by external interrupt. But some SuperH / platform board doesn't have such feature. This patch adds autonomy mode which detect USB connection/disconnection by internal interrupt. But power will be always ON when autonomy mode is selected. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit bc57381e634782009b1cb2e86b18013699ada576 Author: Kuninori Morimoto Date: Thu Apr 28 16:41:14 2011 +0900 usb: renesas_usbhs: use delayed_work instead of work_struct This delay is used to overjump debounce. And, this patch also move usbhsc_drvcllbck_notify_hotplug to global, because it will be called from other files. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 5ea68d541df200d10a373c06f945f98225c2486b Author: Kuninori Morimoto Date: Thu Apr 28 16:41:07 2011 +0900 usb: renesas_usbhs: prevent NULL pointer crash usbhs_status_get_each_irq/usbhs_irq_callback_update might be called with mod == NULL Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 6e267da8f10b1a6551b6c4dee3779f6f56e2644d Author: Kuninori Morimoto Date: Thu Apr 28 16:41:02 2011 +0900 usb: renesas_usbhs: add power control function Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 206dcc2cfe15b6174f15293ae15a097ee03eb386 Author: Kuninori Morimoto Date: Thu Apr 28 16:40:54 2011 +0900 usb: renesas_usbhs: move pdev_to_priv to global usbhs_pdev_to_priv function will be used in other files. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit f429ea3f3488e1a0683f6f9ce76b420b5ebd2d63 Author: Kuninori Morimoto Date: Thu Apr 21 14:10:24 2011 +0900 usb: renesas_usbhs: add error reason for usbhs_pipe_malloc Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit af32fe511374f17feb137d7fbfe2f4c73a8f531c Author: Kuninori Morimoto Date: Thu Apr 21 14:10:16 2011 +0900 usb: renesas_usbhs: remove callback when module removed. The callback function which is called from platform must be removed if module removed. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 9a28b7bd4f1fb388a15b12fb425a589ba6188425 Author: Kuninori Morimoto Date: Thu Apr 21 14:10:12 2011 +0900 usb: renesas_usbhs: return error if wrong recip request There are some USB Host which doesn't notice disconnection at once. And it might try some request after reconnection with old settings. Current renesas_usbhs will crash in such case. This patch prevent this issue. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit cb96632c185f13f746d009ec1125539e0b5cd899 Author: Kuninori Morimoto Date: Thu Apr 21 14:10:08 2011 +0900 usb: renesas_usbhs: modify spinlock method Current renesas_usbhs driver was using spin_trylock to avoid dead lock / nest lock. But acording to CONFIG_DEBUG_SPINLOCK, it is BUG under UP environment. This patch add usbhsg_trylock to avoid this issue. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 409ba9e7c023bdbfd2ecab960532523124de5c81 Author: Kuninori Morimoto Date: Tue Apr 26 09:21:35 2011 +0900 usb: renesas_usbhs: don't re-allocation pipe buffer Because pipe buffer allocation is very picky and difficult, current renesas_usbhs driver is not caring pipe re-allocation. In this situation, driver will create new pipe without caring old pipe if "usbhsg_ep_enable" is called after "usbhsg_ep_disable" on current driver. This mean the limited pipe and buffer will be used as waste. But it is possible to re-use same buffer to same pipe. By this patch, driver will initialize pipe when it detected new connection or new gadget, and doesn't try re-allocation for same pipe in above case. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 45e13e6e0aa954af2d4779a07262f4c12d6f032f Author: Kuninori Morimoto Date: Thu Apr 21 14:09:58 2011 +0900 usb: renesas_usbhs: modify fifo clear timing Pipe buffer should be cleaned before using it, but should NOT be cleaned in pipe "prepare" function. Because the pipe might be working in such timing. This patch fixup this issue. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit a0c25c20502e0c4a467f5d7e27b2a599cfe57abe Author: Jonas Andersson Date: Mon Mar 21 14:54:09 2011 +0100 USB: g_printer required set interface request g_printer reqiured "set interface" request from host. Not all hosts send this request. This patch enable the interface when it get "set configuration" request from host. Signed-off-by: Jonas Andersson Signed-off-by: Greg Kroah-Hartman commit a8779ee94e6114bf071ef3ca6c8c9cb270d179ed Author: Sven Schnelle Date: Wed Mar 23 15:24:56 2011 +0100 USB: dbpg gadget: dont mask out direction bit Stripping the direction bit off will produce an invalid descriptor. Signed-off-by: Sven Schnelle Signed-off-by: Greg Kroah-Hartman commit 83b720199393fe2be38159354ef5a07a1b861e61 Author: Sven Schnelle Date: Wed Mar 23 21:24:55 2011 +0100 USB: dbgp gadget: set MaxpacketSize0 The current code doesn't set it, so linux complains about it when connected, and ignores the device: [104611.068082] usb 1-5: new high speed USB device using ehci_hcd and address 127 [104611.088368] usb 1-5: Invalid ep0 maxpacket: 0 Signed-off-by: Sven Schnelle Signed-off-by: Greg Kroah-Hartman commit 1744020ceb86c83d8116d28c7bdd221d071ca213 Author: Sven Schnelle Date: Wed Mar 23 21:36:17 2011 +0100 USB: dbgp gadget: fix return value of dbgp_setup Current code returns 0 even if it can't handle the request. This leads to timeouts when an unhandled request is sent: Bus 001 Device 003: ID 0525:c0de Netchip Technology, Inc. Device Descriptor: [..] can't get device qualifier: Connection timed out [..] change the code to return EOPNOTSUPP in such cases. Signed-off-by: Sven Schnelle Signed-off-by: Greg Kroah-Hartman commit 25a73c6ce7f3b7b667a11a116d9607d6d5bf5cab Author: Kuninori Morimoto Date: Fri Apr 15 14:19:46 2011 +0900 usb: renesas_usbhs: Driver is depend on SuperH Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit c89d2613b8e13c51a6efe23196fdc509984687e7 Author: Kuninori Morimoto Date: Thu Apr 14 13:57:06 2011 +0900 usb: renesas_usbhs: fixup cast warning This patch fixup cast warning on 64 bit compiler Signed-off-by: Kuninori Morimoto Reported-by: Greg Kroah-Hartman Signed-off-by: Greg Kroah-Hartman commit 6498d9db6d2dad4cf5deb2dd09e0816904f41ca5 Author: Alan Stern Date: Thu Apr 28 10:45:24 2011 -0400 USB: documentation update for the pre_reset method This patch (as1459) updates the documentation for the pre_reset method in struct usb_driver. When a driver is notified of an impending reset, it must cancel all outstanding I/O and not start any new I/O until it has been notified that the reset is complete. As far as I know, most existing drivers that implement pre_reset do this now. The major exceptions appear to be the SpeedTouch and CDC-WDM drivers. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 15b2f3204a5c878c32939094775fb7349f707263 Author: Marius B. Kotsbak Date: Mon Mar 21 23:27:21 2011 +0100 Bind only modem AT command endpoint to option module. Network interface is handled by upcoming gt_b3730 module. Removed "GT-B3710" from comment, it is another modem with another USB ID. Signed-off-by: Marius B. Kotsbak Cc: stable Signed-off-by: Greg Kroah-Hartman commit d771d8aa37805f5bf75808b12b737f39ee97f5d4 Author: Oliver Neukum Date: Fri Apr 29 14:12:21 2011 +0200 USB: cdc-wdm: reset handling according to new requirements This patch - ensures no IO takes place during resets - reports resets to user space Signed-off-by: Oliver Neukum Signed-off-by: Greg Kroah-Hartman commit b4026c4584cd70858d4d3450abfb1cd0714d4f32 Author: Hermann Kneissel Date: Fri Apr 29 08:58:43 2011 +0200 USB: gamin_gps: Fix for data transfer problems in native mode This patch fixes a problem where data received from the gps is sometimes transferred incompletely to the serial port. If used in native mode now all data received via the bulk queue will be forwarded to the serial port. Signed-off-by: Hermann Kneissel Cc: stable Signed-off-by: Greg Kroah-Hartman commit 7701846fd52f86dffe50715e0e63154088b7c982 Author: Michal Nazarewicz Date: Tue Apr 26 19:08:36 2011 +0200 USB: gadget: g_multi: fixed vendor and product ID in inf files Commit 1c6529e92b "USB: gadget: g_multi: fixed vendor and product ID" replaced g_multi's vendor and product ID with proper ID's from Linux Foundation. This commit now updates INF files in the Documentation/usb directory which were omitted in the original commit. Signed-off-by: Michal Nazarewicz Cc: stable Signed-off-by: Greg Kroah-Hartman commit 37909fe588c9e09ab57cd267e98678a17ceda64a Author: Benedek László Date: Wed Apr 20 03:22:21 2011 +0200 USB: serial: ftdi_sio: adding support for TavIR STK500 Adding support for the TavIR STK500 (id 0403:FA33) Atmel AVR programmer device based on FTDI FT232RL. Signed-off-by: Benedek László Cc: stable Signed-off-by: Greg Kroah-Hartman commit 3938a0b32dc12229e76735679b37095bc2bc1578 Author: Elizabeth Jennifer Myers Date: Sat Apr 16 14:49:51 2011 -0400 USB: moto_modem: Add USB identifier for the Motorola VE240. Tested on my phone, the ttyUSB device is created and is fully functional. Signed-off-by: Elizabeth Jennifer Myers Cc: stable Signed-off-by: Greg Kroah-Hartman commit 4eff0b40a7174896b860312910e0db51f2dcc567 Author: Craig Shelley Date: Sun Mar 20 13:51:13 2011 +0000 USB: CP210x Add 4 Device IDs for AC-Services Devices This patch adds 4 device IDs for CP2102 based devices manufactured by AC-Services. See http://www.ac-services.eu for further info. Signed-off-by: Craig Shelley Cc: stable Signed-off-by: Greg Kroah-Hartman commit 85eb8c8d0b0900c073b0e6f89979ac9c439ade1a Author: Rafael J. Wysocki Date: Sat Apr 30 00:25:44 2011 +0200 PM / Runtime: Generic clock manipulation rountines for runtime PM (v6) Many different platforms and subsystems may want to disable device clocks during suspend and enable them during resume which is going to be done in a very similar way in all those cases. For this reason, provide generic routines for the manipulation of device clocks during suspend and resume. Convert the ARM shmobile platform to using the new routines. Signed-off-by: Rafael J. Wysocki commit c63ca0c01d73563d4e2ab174bb3dd1e5efb907e6 Author: David Ahern Date: Fri Apr 29 16:04:15 2011 -0600 perf stat: Tell user about unsupported events in the list Similar to perf-record, tell user about unsupported events that will not be counted if invoked in verbose mode. e.g., $ perf stat -e dTLB-prefetch-misses -v -- sleep 1 dTLB-prefetch-misses event is not supported by the kernel. dTLB-prefetch-misses: 0 0 0 Performance counter stats for 'sleep 1': dTLB-prefetch-misses 1.001884783 seconds time elapsed Signed-off-by: David Ahern Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/r/1304114655-10600-1-git-send-email-dsahern@gmail.com Signed-off-by: Ingo Molnar commit ae54870a1dc978a88377ae8af0780648f2ccd4dc Author: Jan Kara Date: Thu Apr 21 23:47:16 2011 +0200 ext3: Fix lock inversion in ext3_symlink() ext3_symlink() cannot call __page_symlink() with transaction open. __page_symlink() calls ext3_write_begin() which gets page lock which ranks above transaction start (thus lock ordering is violated) and and also ext3_write_begin() waits for a transaction commit when we run out of space which never happens if we hold transaction open. Fix the problem by stopping a transaction before calling __page_symlink() (we have to be careful and put inode to orphan list so that it gets deleted in case of crash) and starting another one after __page_symlink() returns for addition of symlink into a directory. Signed-off-by: Jan Kara commit 0a77c4f9d451a6652f5536548df1b75f4b5b836c Author: Joe Perches Date: Mon Apr 25 16:46:49 2011 -0700 n_gsm: Use print_hex_dump_bytes Use the standard mechanism to print a hex buffer to eliminate empty printf warning. A couple % smaller text and data too. $ size drivers/tty/n_gsm.o* text data bss dec hex filename 23543 312 6376 30231 7617 drivers/tty/n_gsm.o.new 24051 408 6496 30955 78eb drivers/tty/n_gsm.o.old Signed-off-by: Joe Perches Acked-by: Randy Dunlap Signed-off-by: Greg Kroah-Hartman commit df43daaae926c3710eda911ec048808c904572fe Author: Julia Lawall Date: Fri Apr 22 22:46:21 2011 +0200 drivers/tty/moxa.c: Put correct tty value The tty value that should be put is the one that was just gotten by tty_port_tty_get, not the one that is the argument to the enclosing function. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @exists@ local idexpression struct tty_struct *x; expression ra,rr; statement S1,S2; @@ x = tty_port_tty_get(...) ... when != x = rr when any when != tty_kref_put(x,...) when != if (...) { ... tty_kref_put(x,...) ...} ( if(<+...x...+>) S1 else S2 | if(...) { ... when != x = ra when forall when != tty_kref_put(x,...) *return...; } ) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit f548ccd47d608e88d432745091e13f927ced83f7 Author: Mike Waychison Date: Mon Mar 14 23:58:50 2011 -0700 x86: Better comments for get_bios_ebda() Make the comments a bit clearer for get_bios_ebda so that it actually tells us what it is returning. Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 57d5f9f808b7650a92f31e9cd3acd3f415a22530 Author: Mike Waychison Date: Mon Mar 14 23:58:45 2011 -0700 x86: get_bios_ebda_length() Add a wrapper routine that tells us the length of the EBDA if it is present. This guy also ensures that the returned length doesn't let the EBDA run past the 640KiB mark. Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 773d67903ad608d3f64cc5b00e2f881473413c13 Author: Randy Dunlap Date: Tue Apr 26 09:18:51 2011 -0700 misc: fix ti-st build issues st_drv uses skb*() interfaces, so it should depend on NET. It also uses GPIO interfaces, so it should depend on GPIOLIB. st_kim.c uses syss_*() calls, so it should #include . Fixes these observed build errors: ERROR: "skb_queue_purge" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "skb_pull" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "skb_queue_tail" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "__alloc_skb" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "kfree_skb" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "skb_dequeue" [drivers/misc/ti-st/st_drv.ko] undefined! ERROR: "skb_put" [drivers/misc/ti-st/st_drv.ko] undefined! Signed-off-by: Randy Dunlap Cc: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 14ad2513ed5b709e566a853f4b515d91c5d83311 Author: David Decotigny Date: Wed Apr 27 18:32:43 2011 +0000 net/igb/e1000/e1000e: more robust ethtool duplex/speed configuration This makes sure that one cannot request a 99Mbps full-duplex and get a 100Mbps half-duplex configuration in return due to the way the speed/duplex parameters are handled internally. Tested: e1000 works Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit fbef7139a8b89a7f49ba1410593ed894b4c8b017 Author: David Decotigny Date: Wed Apr 27 18:32:42 2011 +0000 tulip/de2104x: don't report different speeds depending on port type Initial driver reported different speeds depending on the port being used. This advertises the speed to be 10Mbps in any case, which is what it actually is on the wire. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 1258c076edcf4a253657320cfc2bd24fd5981d79 Author: David Decotigny Date: Wed Apr 27 18:32:41 2011 +0000 acenic: Fix using the specified speed when configuring NIC This tells the NIC to take the speed specified by ethtool into account when configuring the NIC, instead of keeping the previous speed. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 707394972093e2056e1e8cc39be19cf9bcb3e7b3 Author: David Decotigny Date: Wed Apr 27 18:32:40 2011 +0000 ethtool: cosmetic: Use ethtool ethtool_cmd_speed API This updates the network drivers so that they don't access the ethtool_cmd::speed field directly, but use ethtool_cmd_speed() instead. For most of the drivers, these changes are purely cosmetic and don't fix any problem, such as for those 1GbE/10GbE drivers that indirectly call their own ethtool get_settings()/mii_ethtool_gset(). The changes are meant to enforce code consistency and provide robustness with future larger throughputs, at the expense of a few CPU cycles for each ethtool operation. All drivers compiled with make allyesconfig ion x86_64 have been updated. Tested: make allyesconfig on x86_64 + e1000e/bnx2x work Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 25db0338813a8915457636b1f6abe6a28fa73f8d Author: David Decotigny Date: Wed Apr 27 18:32:39 2011 +0000 ethtool: Use full 32 bit speed range in ethtool's set_settings This makes sure the ethtool's set_settings() callback of network drivers don't ignore the 16 most significant bits when ethtool calls their set_settings(). All drivers compiled with make allyesconfig on x86_64 have been updated. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 8ae6daca85c8bbd6a32c382db5e2a2a989f8bed2 Author: David Decotigny Date: Wed Apr 27 18:32:38 2011 +0000 ethtool: Call ethtool's get/set_settings callbacks with cleaned data This makes sure that when a driver calls the ethtool's get/set_settings() callback of another driver, the data passed to it is clean. This guarantees that speed_hi will be zeroed correctly if the called callback doesn't explicitely set it: we are sure we don't get a corrupted speed from the underlying driver. We also take care of setting the cmd field appropriately (ETHTOOL_GSET/SSET). This applies to dev_ethtool_get_settings(), which now makes sure it sets up that ethtool command parameter correctly before passing it to drivers. This also means that whoever calls dev_ethtool_get_settings() does not have to clean the ethtool command parameter. This function also becomes an exported symbol instead of an inline. All drivers visible to make allyesconfig under x86_64 have been updated. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 36504605432996590f889e33d47e2d9c581f7569 Author: David Decotigny Date: Wed Apr 27 18:32:37 2011 +0000 ethtool: cosmetics: enforce const-ness in ethtool_cmd_speed The 'ep' argument of ethtool_cmd_speed is not altered: advertise it in protoype. +Indentation fix. Also add comments to advise using the ethtool_cmd_speed API to get/set the link speed. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 947b4ad1d198b7303ecc961f4939a331be0c48f0 Author: Ingo Molnar Date: Fri Apr 29 22:52:42 2011 +0200 perf list: Fix max event string size Recent stalled-cycles event names were larger than the 40 chars printout used by perf list. Extend that, make it robust for future extensions and also adjust alignments in face of wider event names. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n009io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 7e610caaa5b32d3be9216f040f178e4a23b678b2 Author: Sony Chacko Date: Thu Apr 28 11:48:19 2011 +0000 qlcnic: Support for GBE port settings Enable setting speed and auto negotiation parameters for GbE ports. Hardware do not support half duplex setting currently. o Update driver version to 5.0.17. Signed-off-by: Sony Chacko Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit f94bc1e70281c5a587049015af8f3e024d45ad66 Author: Sucheta Chakraborty Date: Thu Apr 28 11:48:18 2011 +0000 qlcnic: support rcv ring configuration through ethtool o Support ethtool command ETHTOOL_GCHANNELS and ETHTOOL_SCHANNELS. o Number of rcv rings configuration depend upon number of msix vector. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit ad246c992bea6d33c6421ba1f03e2b405792adf9 Author: Ben Hutchings Date: Tue Apr 26 15:25:52 2011 +0000 ipv4, ipv6, bonding: Restore control over number of peer notifications For backward compatibility, we should retain the module parameters and sysfs attributes to control the number of peer notifications (gratuitous ARPs and unsolicited NAs) sent after bonding failover. Also, it is possible for failover to take place even though the new active slave does not have link up, and in that case the peer notification should be deferred until it does. Change ipv4 and ipv6 so they do not automatically send peer notifications on bonding failover. Change the bonding driver to send separate NETDEV_NOTIFY_PEERS notifications when the link is up, as many times as requested. Since it does not directly control which protocols send notifications, make num_grat_arp and num_unsol_na aliases for a single parameter. Bump the bonding version number and update its documentation. Signed-off-by: Ben Hutchings Signed-off-by: Jay Vosburgh Acked-by: Brian Haley Signed-off-by: David S. Miller commit ff776cecec92fe7cac4a9ce1919576ad6e737e08 Author: Yogesh Ashok Powar Date: Thu Apr 28 17:34:48 2011 +0530 mwl8k: Reducing extra_tx_headroom for tx optimization in AP mode The tx_headroom required for mwl8k driver is 32 bytes and it can use the space for 802.11 header received from mac80211. mwl8k considers the smallest 802.11 frame (CTS2self of 10 bytes) that can be received from mac80211 to compute the extra_tx_headroom as 22 (32 - 10) bytes. When the wireless interface is part of bridge, this extra_tx_headroom requirement results in a memcpy in mac80211 (in function pskb_expand_head) for all the data frames needing L2 forwarding/bridging, when NET_SKB_PAD is defined as 32. This patch reduces the extra_tx_headroom by 8 bytes so that memcpy of data frames in mac80211 is avoided in this case. The resize will be required in driver for frames with 802.11 header size of less than 18 bytes. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Pradeep Nemavat Signed-off-by: John W. Linville commit d244f21e79162b829c9af09845421d9b4fac4253 Author: Sujith Manoharan Date: Thu Apr 28 16:14:05 2011 +0530 ath9k_htc: Revamp LED management Remove all the convoluted hacks in the driver and simplify things by making use of mac80211's LED triggers. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 22450902e4a13479acf6f4e93475af7ca1829d92 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:33 2011 +0200 iwlegacy: remove sync_cmd_mutex We now use priv->mutex to serialize sync command, remove old priv->sync_cmd_mutex and add assertion that priv->mutex must be locked. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 28a6e577c65cc317fed5265efc43ce9282928bd4 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:32 2011 +0200 iwlegacy: more priv->mutex serialization Check status bits with mutex taken, because when we wait for mutex unlock, status can change. Patch should also make remaining sync commands be send with priv->mutex taken. That will prevent execute these commands when we are currently reset firmware, what could possibly cause troubles. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 81e63263aa3c5bfa64aa3206f4be3e59afc1c183 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:31 2011 +0200 iwlegacy: fix enqueue hcmd race conditions We mark command as huge by using meta->flags from other (non huge) command, but flags can be possibly overridden, when non huge command is enqueued, what can lead to: WARNING: at lib/dma-debug.c:696 dma_debug_device_change+0x1a3/0x1f0() DMA-API: device driver has pending DMA allocations while released from device [count=1] To fix introduce additional CMD_MAPPED to mark command as mapped and serialize iwl_enqueue_hcmd() with iwl_tx_cmd_complete() using hcmd_lock. Serialization will also fix possible race conditions, because q->read_ptr, q->write_ptr are modified/used in parallel. Do not change callback, I did (and fixed) that mistake in iwlagn. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 93fd74e3d5471c4c91a239599a88fa7e52686e71 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:30 2011 +0200 iwlegacy: comment typo fix diable -> disable Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 7a55237ac9f133c1d48fbe54d22dc2bd715e7b51 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:29 2011 +0200 iwlegacy: remove scan_tx_antennas Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 5855c7d81530aaf82293aaa252c4f9ff69ef33f9 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:28 2011 +0200 iwlegacy: remove unneeded __packed struct iwl_queue is not part of firmware interface, so __packed is not needed. Remove it since is may affect performance. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 8eb0ac70a7a53cf851027d022616c01591ee4c33 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:27 2011 +0200 iwlegacy: remove unneeded disable_hw_scan check We never set STATUS_SCANNING in softwre scanning mode, disable_hw_scan check is unneeded. Correct debug message while at it. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 3e41de85f8e3419257df62dd6fe6bdd95a1fdcab Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:26 2011 +0200 iwlegacy: simplify init geos Don't need to use conditional as ch->band is already assigned to IEEE80211_BAND_5GHZ or IEEE80211_BAND_2GHZ Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit a078a1fde11b350161e7db2c44353dfae7749212 Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:25 2011 +0200 iwlegacy: enable only rfkill interrupt when device is down Add two below iwlwifi commits to iwlegacy: commit 554d1d027b19265c4aa3f718b3126d2b86e09a08 Author: Stanislaw Gruszka Date: Thu Dec 23 12:38:21 2010 +0100 iwlagn: enable only rfkill interrupt when device is down commit 3dd823e6b86407aed1a025041d8f1df77e43a9c8 Author: Don Fry Date: Sun Feb 6 09:29:45 2011 -0800 iwlagn: Re-enable RF_KILL interrupt when down Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit ab42b4041707f075533845ecb320c7a1c5621f1b Author: Stanislaw Gruszka Date: Thu Apr 28 11:51:24 2011 +0200 iwlegacy: remove duplicate initialization in iwl4956_down() Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 75d80cadf4ceb238e55487ff6d3f9a0706e1028d Author: Stanislaw Gruszka Date: Thu Apr 28 11:12:10 2011 +0200 iwlagn: fix tx power initialization Since commit f844a709a7d8f8be61a571afc31dfaca9e779621 Author: Stanislaw Gruszka Date: Fri Jan 28 16:47:44 2011 +0100 iwlwifi: do not set tx power when channel is changing we set device tx power during initialization to priv->tx_power_next, which itself is initialized to minimum power. That changed default behaviour of driver. Previously we initialized device to transmit at maximum available power by default. Patch change again to previous behaviour and cleanup tx power initialization. Fortunately this is not critical fix, as mac80211 layer setup tx power lately to 14dB, hence device does not operate at minimal transmit power all the time. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 44368796b87d321e6ea84295a23b2e8eb415d300 Author: Sujith Manoharan Date: Thu Apr 28 14:28:51 2011 +0530 ath9k_htc: Dump modal eeprom header for UB91/94/95 Debugfs file location: /ieee80211/phy#/ath9k_htc/modal_eeprom Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 80d887c3b4566f4d14cd7cd5374eba30131d020f Author: Sujith Manoharan Date: Thu Apr 28 14:28:33 2011 +0530 ath9k_htc: Dump base eeprom header for UB91/94/95 Debugfs file location: /ieee80211/phy#/ath9k_htc/base_eeprom Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit dee04cac28b5f8a99e002ec1b2e0a49f3155bda0 Merge: ce6cac8 7cbc9bd Author: John W. Linville Date: Fri Apr 29 15:28:49 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 commit ce6cac88a4f1e52a51a31c31562f4da347543147 Author: John W. Linville Date: Fri Apr 29 15:09:39 2011 -0400 p54: avoid uninitialized variable warning for freq CC [M] drivers/net/wireless/p54/eeprom.o drivers/net/wireless/p54/eeprom.c: In function ‘p54_parse_rssical’: drivers/net/wireless/p54/eeprom.c:494:8: warning: ‘freq’ may be used uninitialized in this function Signed-off-by: John W. Linville commit f9c2fdbab1f1854f2bfcc75c326d0f4537ec2a7e Author: John W. Linville Date: Fri Apr 29 15:04:58 2011 -0400 mwifiex: fix copy-n-paste 'thinko' for tsf_val CC [M] drivers/net/wireless/mwifiex/join.o drivers/net/wireless/mwifiex/join.c: In function ‘mwifiex_cmd_802_11_associate’: drivers/net/wireless/mwifiex/join.c:119:8: warning: ‘tsf_val’ may be used uninitialized in this function drivers/net/wireless/mwifiex/join.c:103:12: note: ‘tsf_val’ was declared here Looks like a copy-n-paste error, identical lines are a few lines below the ones removed, with an actual memcpy to tsf_val in between... Signed-off-by: John W. Linville commit 2eeb6fd063d812a528118536857d078bca5a1e05 Author: John W. Linville Date: Fri Apr 29 14:54:27 2011 -0400 b43: avoid uninitialized variable warnings in phy_n CC [M] drivers/net/wireless/b43/phy_n.o drivers/net/wireless/b43/phy_n.c: In function ‘b43_nphy_set_channel’: drivers/net/wireless/b43/phy_n.c:3848:47: warning: ‘tabent_r2’ may be used uninitialized in this function drivers/net/wireless/b43/phy_n.c:3849:47: warning: ‘tabent_r3’ may be used uninitialized in this function drivers/net/wireless/b43/phy_n.c: In function ‘b43_nphy_poll_rssi.clone.14’: drivers/net/wireless/b43/phy_n.c:2270:6: warning: ‘save_regs_phy$7’ may be used uninitialized in this function drivers/net/wireless/b43/phy_n.c:2270:6: warning: ‘save_regs_phy$8’ may be used uninitialized in this function FWIW, the usage of these variables is goverened by checks that match their initializations. So, I think these are actually false warnings. Still, I would rather avoid the warning SPAM... Signed-off-by: John W. Linville commit e245292e0a98bfbf2b54c5c0f079033f4d06dd32 Author: John W. Linville Date: Fri Apr 29 14:35:14 2011 -0400 ath5k: fix uninitialized var warning for txf2txs CC [M] drivers/net/wireless/ath/ath5k/reset.o drivers/net/wireless/ath/ath5k/reset.c: In function ‘ath5k_hw_init_core_clock’: drivers/net/wireless/ath/ath5k/reset.c:100:51: warning: ‘txf2txs’ may be used uninitialized in this function Signed-off-by: John W. Linville commit 7d36a991e8d36b8ae87e2aa1158d3735e656253b Author: amit salecha Date: Fri Apr 22 16:22:20 2011 +0000 pktgen: create num frags requested Pktgen doesn't generate number of frags requested. Divide packet size by number of frags and fill that in every frags. Example: With packet size 1470, it generate only 11 frags. Initial frags get lenght 706, 353, 177....so on. Last frag get divided by 2. Now with this fix, each frags will get 78 bytes. Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit b6202f97897a13ef531b822ab326dfc7eb90bdaf Author: Eric Dumazet Date: Fri Apr 29 10:20:53 2011 -0700 bpf: depends on MODULES module_alloc() and module_free() are available only if CONFIG_MODULES=y Reported-by: Randy Dunlap Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit af0e5d565d2fffcd97d1e2d89669d627cc04e8b8 Author: Dave Jones Date: Thu Apr 21 17:28:13 2011 -0400 kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0 Disable the new -Wunused-but-set-variable that was added in gcc 4.6.0 It produces more false positives than useful warnings. This can still be enabled using W=1 Signed-off-by: Dave Jones Acked-by: Sam Ravnborg Tested-by: Sam Ravnborg Signed-off-by: Michal Marek commit 301120396b766ae4480e52ece220516a1707822b Author: Ingo Molnar Date: Sat Apr 30 09:14:54 2011 +0200 perf events, x86: Add Westmere stalled-cycles-frontend/backend events Extend the Intel Westmere PMU driver with definitions for generic front-end and back-end stall events. ( These are only approximations. ) Reported-by: David Ahern Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n008io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 370faf1dd0461ad811852c8abbbcd3d73b1e4fc4 Author: Ingo Molnar Date: Fri Apr 29 16:11:03 2011 +0200 perf stat: Fail softly on unsupported events David Ahern reported this perf stat failure: > # /tmp/build-perf/perf stat -- sleep 1 > Error: stalled-cycles-frontend event is not supported. > Fatal: Not all events could be opened. > > This is a Dell R410 with an E5620 processor. Fail in a softer fashion on unknown/unsupported events. Reported-by: David Ahern Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n006io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit fce3c786d3a49eff397583b4b62fa38df90db937 Author: Ingo Molnar Date: Sat Apr 30 09:03:15 2011 +0200 perf stat: Leave more room for percentages Triple digit percentages do not fit otherwise. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n005io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit f07726048d599acd6bac438e304645a78db753c0 Author: Marcin Nowakowski Date: Mon Apr 25 13:35:21 2011 +0100 Fix handling of backlash character in LINUX_COMPILE_BY name When using a domain login, `whoami` returns the login in user\domain format. This leads to either warnings on unrecognised escape sequences or escaped characters being generated for the user. This patch ensures that any backslash is escaped to a double-backslash to make sure the name is preserved correctly. This patch does not enforce escaping on the KBUILD_BUILD_USER variable, as this is something the user has control of and can escape if required. Signed-off-by: Marcin Nowakowski Signed-off-by: Michal Marek commit 6088e9ffa29a92e7b80fdba44929f3225c4c0357 Author: Peter Foley Date: Tue Apr 26 19:07:56 2011 -0400 kbuild: don't warn about include/linux/version.h not including itself This patch makes checkversion.pl not warn that include/linux/version.h dosen't include itself. Signed-off-by: Peter Foley [mmarek: simplified to use 'next if' syntax] Signed-off-by: Michal Marek commit 2b427e14b77dbf3e05f1bd0785f1d07ea5fe924e Author: Ingo Molnar Date: Fri Apr 29 14:16:18 2011 +0200 perf stat: Adjust stall cycles warning percentages Adjust to color thresholds to better match the percentages seen in real workloads. Both are now a bit more sensitive. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n004io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit d3d1e86da07b4565815e3dbcd082f53017d215f8 Author: Ingo Molnar Date: Fri Apr 29 13:49:08 2011 +0200 perf stat: Analyze front-end and back-end stall counts Sample output: Performance counter stats for './loop_1b': 873.691065 task-clock # 1.000 CPUs utilized 1 context-switches # 0.000 M/sec 1 CPU-migrations # 0.000 M/sec 96 page-faults # 0.000 M/sec 2,012,637,222 cycles # 2.304 GHz (66.58%) 1,001,397,911 stalled-cycles-frontend # 49.76% frontend cycles idle (66.58%) 7,523,398 stalled-cycles-backend # 0.37% backend cycles idle (66.76%) 2,004,551,046 instructions # 1.00 insns per cycle # 0.50 stalled cycles per insn (66.80%) 1,001,304,992 branches # 1146.063 M/sec (66.76%) 39,453 branch-misses # 0.00% of all branches (66.64%) 0.874046121 seconds time elapsed Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n003io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 129c04cb8ce2e4bf3f17223f58ef16aa8a2cb3b8 Author: Ingo Molnar Date: Fri Apr 29 14:41:28 2011 +0200 perf tools: Add front-end and back-end stalled cycles support Update perf tooling to deal with front-end and back-end stalled cycles events. Add both the default 'perf stat' output. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n002io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 91fc4cc00099986bc1ba50e1f421c3548cffae42 Author: Ingo Molnar Date: Fri Apr 29 14:17:19 2011 +0200 perf, x86: Add new stalled cycles events for Intel and AMD CPUs Extend the Intel and AMD event definitions with generic front-end and back-end stall events. ( These are only approximations - suggestions are welcome for better events. ) Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n001io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 8f62242246351b5a4bc0c1f00c0c7003edea128a Author: Ingo Molnar Date: Fri Apr 29 13:19:47 2011 +0200 perf events: Add generic front-end and back-end stalled cycle event definitions Add two generic hardware events: front-end and back-end stalled cycles. These events measure conditions when the CPU is executing code but its capabilities are not fully utilized. Understanding such situations and analyzing them is an important sub-task of code optimization workflows. Both events limit performance: most front end stalls tend to be caused by branch misprediction or instruction fetch cachemisses, backend stalls can be caused by various resource shortages or inefficient instruction scheduling. Front-end stalls are the more important ones: code cannot run fast if the instruction stream is not being kept up. An over-utilized back-end can cause front-end stalls and thus has to be kept an eye on as well. The exact composition is very program logic and instruction mix dependent. We use the terms 'stall', 'front-end' and 'back-end' loosely and try to use the best available events from specific CPUs that approximate these concepts. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n000io7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 06268b2a384ece73618c1ad7649d19905ab79806 Author: Peter Waechtler Date: Thu Apr 28 20:53:58 2011 +0200 HID: hiddev: fix error path in hiddev_read when interrupted hiddev_read: in case mutex_lock_interruptible will be interrupted remove the task from the wait queue. Signed-off-by: Peter Waechtler Signed-off-by: Jiri Kosina commit c2de187e5b0f25b572ac1cb6cdf383f16123717d Author: Takashi Iwai Date: Fri Apr 29 13:00:40 2011 +0200 ALSA: hda - Show the line-out type in snd_hda_parse_pin_def_config() Helpful for debugging. Signed-off-by: Takashi Iwai commit 2d80eb0fa39bc4cfcc2e6d4eb1760a578fdeb507 Author: Peter Foley Date: Tue Apr 26 18:16:53 2011 -0400 kconfig: quiet commands when V=0 Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit bdc69ca4cf972494ad06d1271760d94fdbb2e6b9 Author: Peter Foley Date: Tue Apr 26 18:13:56 2011 -0400 kconfig: change update-po-config to reflect new layout of arch/um Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit a24a1b8e2aef10e8987e0a0b2b0dcff78af90ebb Author: Peter Foley Date: Tue Apr 26 18:13:05 2011 -0400 kconfig: make update-po-config work in KBUILD_OUTPUT Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit b24d7d7b98f2697173542fd926f48617649b0bbc Author: Peter Foley Date: Tue Apr 26 18:06:55 2011 -0400 kconfig: rearrange clean-files Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit d02ab886dcc7349cc5d80a045725d3dc9b309a3a Author: Peter Foley Date: Tue Apr 26 18:02:08 2011 -0400 kconfig: change gconf to modify hostprogs-y like nconf and mconf Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit f19430496a3655b6f86283af472f04fea3c6fdf8 Author: Peter Foley Date: Tue Apr 26 18:00:05 2011 -0400 kconfig: change qconf to modify hostprogs-y like nconf and mconf Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit 1f594715bd26628045bf96c1211d5a90a1b51157 Author: Peter Foley Date: Tue Apr 26 17:57:38 2011 -0400 kconfig: only build kxgettext when needed Signed-off-by: Peter Foley Signed-off-by: Michal Marek commit ad227425c9ca907b5498e2558320b7e585d86ec9 Author: David S. Miller Date: Thu Apr 28 23:50:49 2011 -0700 ipv4: Get route daddr from flow key in l2tp_ip_connect(). Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller commit d4fb3d74d7a17833de2ba8cbd4f029b30feb4825 Author: David S. Miller Date: Thu Apr 28 23:50:32 2011 -0700 ipv4: Get route daddr from flow key in tcp_v4_connect(). Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller commit 072d8c94142a3a95151774975f6c1fd1dc1f1e1b Author: David S. Miller Date: Thu Apr 28 23:50:09 2011 -0700 ipv4: Get route daddr from flow key in inet_csk_route_req(). Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller commit 87321c839fb4a65b5d78c16d79d1674cf223a452 Author: David S. Miller Date: Thu Apr 28 23:49:45 2011 -0700 ipv4: Get route daddr from flow key in ip4_datagram_connect(). Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller commit 91ab0b60a12833b4715b838474f23496af8de30c Author: David S. Miller Date: Thu Apr 28 23:49:30 2011 -0700 ipv4: Get route daddr from flow key in dccp_v4_connect(). Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller commit 44901666a1a736b3f43eac7894b07183f127e9a9 Author: David S. Miller Date: Thu Apr 28 23:17:58 2011 -0700 ipv4: Fetch route saddr from flow key in l2tp_ip_connect(). Now that output route lookups update the flow with source address selection, we can fetch it from fl4->saddr instead of rt->rt_src Signed-off-by: David S. Miller commit 4071cfff84c5b084762fe288781cd7faab14cb4b Author: David S. Miller Date: Thu Apr 28 23:17:31 2011 -0700 ipv4: Fetch route saddr from flow key in tcp_v4_connect(). Now that output route lookups update the flow with source address selection, we can fetch it from fl4->saddr instead of rt->rt_src Signed-off-by: David S. Miller commit a406b611b5f26a18773e4237d79f6df3eaed1d32 Author: David S. Miller Date: Thu Apr 28 23:17:16 2011 -0700 ipv4: Fetch route saddr from flow key in ip4_datagram_connect(). Now that output route lookups update the flow with source address selection, we can fetch it from fl4->saddr instead of rt->rt_src Signed-off-by: David S. Miller commit b883187785004cacea053569f1655fada0dfc299 Author: David S. Miller Date: Thu Apr 28 23:16:53 2011 -0700 ipv4: Fetch route saddr from flow key in inet_sk_reselect_saddr(). Now that output route lookups update the flow with source address selection, we can fetch it from fl4->saddr instead of rt->rt_src Signed-off-by: David S. Miller commit 6706b6ebab85dfca4e2886e35ec9c3c4ee13e27e Author: David S. Miller Date: Thu Apr 28 23:13:17 2011 -0700 ipv4: Remove now superfluous code in ip_route_connect(). Now that output route lookups update the flow with source address et al. selections, the fl4->{saddr,daddr} assignments here are no longer necessary. Signed-off-by: David S. Miller commit c7a7b814c9dca9ee01b38e63b4a46de87156d3b6 Author: Tim Gardner Date: Thu Apr 28 11:00:30 2011 -0600 ioremap: Delay sanity check until after a successful mapping While tracking down the reason for an ioremap() failure I was distracted by the WARN_ONCE() in __ioremap_caller(). Performing a WARN_ONCE() sanity check before the mapping is successful seems pointless if the caller sends bad values. A case in point is when the BIOS provides erroneous screen_info values causing vesafb_probe() to request an outrageuous size. The WARN_ONCE is then wasted on bogosity. Move the warning to a point where the mapping has been successfully allocated. Addresses: http://bugs.launchpad.net/bugs/772042 Reviewed-by: Suresh Siddha Signed-off-by: Tim Gardner Link: http://lkml.kernel.org/r/4DB99D2E.9080106@canonical.com Signed-off-by: Ingo Molnar commit 813b3b5db831ddbd92b5ce0fdeb74e3368f1323c Author: David S. Miller Date: Thu Apr 28 14:48:42 2011 -0700 ipv4: Use caller's on-stack flowi as-is in output route lookups. Signed-off-by: David S. Miller commit cf91166223772ef4a2ed98b9874958bf6a2470df Author: David S. Miller Date: Thu Apr 28 14:31:47 2011 -0700 net: Use non-zero allocations in dst_alloc(). Make dst_alloc() and it's users explicitly initialize the entire entry. The zero'ing done by kmem_cache_zalloc() was almost entirely redundant. Signed-off-by: David S. Miller commit 5c1e6aa300a7a669dc469d2dcb20172c6bd8fed9 Author: David S. Miller Date: Thu Apr 28 14:13:38 2011 -0700 net: Make dst_alloc() take more explicit initializations. Now the dst->dev, dev->obsolete, and dst->flags values can be specified as well. Signed-off-by: David S. Miller commit 1d2b71f61b6a10216274e27b717becf9ae101fc7 Author: Rafael J. Wysocki Date: Fri Apr 29 00:36:53 2011 +0200 PM / Runtime: Add subsystem data field to struct dev_pm_info Some subsystems need to attach PM-related data to struct device and they need to use devres for this purpose. For their convenience and to make code more straightforward, add a new field called subsys_data to struct dev_pm_info and let subsystems use it for attaching PM-related information to devices. Convert the ARM shmobile platform to using the new field. Signed-off-by: Rafael J. Wysocki commit 638080c37ae08fd0c44cec13d7948ca5385ae851 Author: Kevin Hilman Date: Fri Apr 29 00:36:42 2011 +0200 OMAP2+ / PM: move runtime PM implementation to use device power domains In commit 7538e3db6e015e890825fbd9f8659952896ddd5b (PM: add support for device power domains) a better way for handling platform-specific power hooks was introduced. Rather than using the platform_bus dev_pm_ops overrides (platform_bus_set_pm_ops()), this patch moves the OMAP runtime PM implementation over to using device power domains. Since OMAP is the only user of platform_bus_set_pm_ops(), that interface can be removed (and will be in a forthcoming patch.) [rjw: Rebased on top of a previous change modifying the handling of power domains by the PM core so that power domain callbacks take precendence over subsystem-level PM callbacks.] Signed-off-by: Kevin Hilman Acked-by: Grant Likely Signed-off-by: Rafael J. Wysocki commit 8b313a38ecffc0ff0b4c5115f0a461f73b7dfdb6 Author: Rafael J. Wysocki Date: Fri Apr 29 00:36:32 2011 +0200 PM / Platform: Use generic runtime PM callbacks directly Once shmobile platforms have been converted to using power domains for overriding the platform bus type's PM callbacks, it isn't necessary to use the __weakly defined wrappers around the generinc runtime PM callbacks in the platform bus type any more. Signed-off-by: Rafael J. Wysocki commit 38ade3a1fa0421c12627c7b48c33e89414fc9b76 Author: Rafael J. Wysocki Date: Fri Apr 29 00:36:21 2011 +0200 shmobile: Use power domains for platform runtime PM shmobile platforms replace the runtime PM callbacks of the platform bus type with their own routines, but this means that the callbacks are replaced system-wide. This may not be the right approach if the platform devices on the system are not of the same type (e.g. some of them belong to an SoC and the others are located in separate chips), because in those cases they may require different handling. Thus it is better to use power domains to override the platform bus type's PM handling, as it generally is possible to use different power domains for devices with different PM requirements. Define a default power domain for shmobile in both the SH and ARM falvors and use it to override the platform bus type's PM callbacks. Since the suspend and hibernate callbacks of the new "default" power domains need to be the same and the platform bus type's suspend and hibernate callbacks for the time being, export those callbacks so that can be used outside of the platform bus type code. Signed-off-by: Rafael J. Wysocki commit 69c9dd1ecf446ad8a830e4afc539a2a1adc85b78 Author: Rafael J. Wysocki Date: Fri Apr 29 00:36:05 2011 +0200 PM: Export platform bus type's default PM callbacks Export the default PM callbacks defined for the platform bus type so that they can be used by power domains for suspending and resuming platform devices in the future. Signed-off-by: Rafael J. Wysocki commit 4d27e9dcff00a6425d779b065ec8892e4f391661 Author: Rafael J. Wysocki Date: Fri Apr 29 00:35:50 2011 +0200 PM: Make power domain callbacks take precedence over subsystem ones Change the PM core's behavior related to power domains in such a way that, if a power domain is defined for a given device, its callbacks will be executed instead of and not in addition to the device subsystem's PM callbacks. The idea behind the initial implementation of power domains handling by the PM core was that power domain callbacks would be executed in addition to subsystem callbacks, so that it would be possible to extend the subsystem callbacks by using power domains. It turns out, however, that this wouldn't be really convenient in some important situations. For example, there are systems in which power can only be removed from entire power domains. On those systems it is not desirable to execute device drivers' PM callbacks until it is known that power is going to be removed from the devices in question, which means that they should be executed by power domain callbacks rather then by subsystem (e.g. bus type) PM callbacks, because subsystems generally have no information about what devices belong to which power domain. Thus, for instance, if the bus type in question is the platform bus type, its PM callbacks generally should not be called in addition to power domain callbacks, because they run device drivers' callbacks unconditionally if defined. While in principle the default subsystem PM callbacks, or a subset of them, may be replaced with different functions, it doesn't seem correct to do so, because that would change the subsystem's behavior with respect to all devices in the system, regardless of whether or not they belong to any power domains. Thus, the only remaining option is to make power domain callbacks take precedence over subsystem callbacks. Signed-off-by: Rafael J. Wysocki Acked-by: Grant Likely Acked-by: Kevin Hilman commit 778865a550e7958c1211242cc481f48d46de0f04 Author: David S. Miller Date: Thu Apr 28 13:54:06 2011 -0700 l2tp: Fix inet_opt conversion. We don't actually hold the socket lock at this point, so the rcu_dereference_protected() isn't' correct. Thanks to Eric Dumazet for pointing this out. Thankfully, we're only interested in fetching the faddr value if srr is enabled, so we can simply make this an RCU sequence and use plain rcu_dereference(). Reported-by: Eric Dumazet Signed-off-by: David S. Miller commit b801a4e7092bb869fb5a7d8ee11a9435c5c7b2b1 Author: Michał Mirosław Date: Thu Apr 28 11:59:15 2011 +1000 net: ibmveth: force reconfiguring checksum settings on startup Commit b9367bf3ee6d ("net: ibmveth: convert to hw_features") accidentally removed call to ibmveth_set_csum_offload() in ibmveth_probe(). Put the call back where it was, but with additional error checking provided by ibmveth_set_features(). Signed-off-by: Michał Mirosław Reported-by: Stephen Rothwell [sfr: dev -> netdev] Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit 89b4208e2861bc7dc325840b44bae302a4e30add Author: Sucheta Chakraborty Date: Wed Apr 27 14:43:44 2011 +0000 qlcnic: fix memory leak in qlcnic_blink_led. o Memory allocated in ETHTOOL_ACTIVE mode, is not getting freed. So, in ETHTOOL_ID_INACTIVE mode, return after freeing allocated memory. o Using set bit instead of blink_down field, as it is also required in internal Loopback test and etc. Signed-off-by: Sucheta Chakraborty Signed-off-by: Amit Kumar Salecha Signed-off-by: David S. Miller commit 63c3a66fe6c827a731dcbdee181158b295626f83 Author: Joe Perches Date: Tue Apr 26 08:12:10 2011 +0000 tg3: Convert u32 flag,flg2,flg3 uses to bitmap Using a bitmap instead of separate u32 flags allows a consistent, simpler and more extensible mechanism to determine capabilities. Convert bitmasks to enum. Add tg3_flag, tg3_flag_clear and tg3_flag_set. Convert the flag & bitmask tests. Signed-off-by: Joe Perches Acked-by: Matt Carlson Signed-off-by: David S. Miller commit 7068b7a16270f1e85a8893d74b0f3c58d7826883 Author: John Stultz Date: Thu Apr 28 13:29:18 2011 -0700 timers: Remove delayed irqwork from alarmtimers implementation Thomas asked about the delayed irq work in the alarmtimers code, and I realized that it was a legacy from when the alarmtimer base lock was a mutex (due to concerns that we'd be interacting with the RTC device, which is protected by mutexes). Since the alarmtimer base is now protected by a spinlock, we can simply execute alarmtimer functions directly from the hrtimer callback. Should any future alarmtimer functions sleep, they can simply manage scheduling any delayed work themselves. CC: Thomas Gleixner Signed-off-by: John Stultz commit 180bf812ceaf01eb8ac69b86f3be0bd57f697668 Author: John Stultz Date: Thu Apr 28 12:58:11 2011 -0700 timers: Improve alarmtimer comments and minor fixes This patch addresses a number of minor comment improvements and other minor issues from Thomas' review of the alarmtimers code. CC: Thomas Gleixner Signed-off-by: John Stultz commit fa2bd7ff9247f4218dfc907db14d000cd7edd862 Author: Michał Mirosław Date: Fri Apr 22 06:31:16 2011 +0000 net: allow user to change NETIF_F_HIGHDMA NETIF_F_HIGHDMA is like any other TX offloads, so allow user to toggle it. This is needed later for bridge and bonding convertsion to hw_features. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit c4d27ef957cd9261c0bc8488edaf8390e412cd35 Author: Michał Mirosław Date: Fri Apr 22 06:31:16 2011 +0000 bridge: convert br_features_recompute() to ndo_fix_features Note: netdev_update_features() needs only rtnl_lock as br->port_list is only changed while holding it. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 1742f183fc218798dab6fcf0ded25b6608fc0a48 Author: Michał Mirosław Date: Fri Apr 22 06:31:16 2011 +0000 net: fix netdev_increment_features() Simplify and fix netdev_increment_features() to conform to what is stated in netdevice.h comments about NETIF_F_ONE_FOR_ALL. Include FCoE segmentation and VLAN-challedged flags in computation. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 96339d6c490a32de35fa798ca7922d13a8538ecd Author: Shan Wei Date: Fri Apr 22 19:07:41 2011 +0800 net:use help function of skb_checksum_start_offset to calculate offset Although these are equivalent, but the skb_checksum_start_offset() is more readable. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit f6d8bd051c391c1c0458a30b2a7abcd939329259 Author: Eric Dumazet Date: Thu Apr 21 09:45:37 2011 +0000 inet: add RCU protection to inet->opt We lack proper synchronization to manipulate inet->opt ip_options Problem is ip_make_skb() calls ip_setup_cork() and ip_setup_cork() possibly makes a copy of ipc->opt (struct ip_options), without any protection against another thread manipulating inet->opt. Another thread can change inet->opt pointer and free old one under us. Use RCU to protect inet->opt (changed to inet->inet_opt). Instead of handling atomic refcounts, just copy ip_options when necessary, to avoid cache line dirtying. We cant insert an rcu_head in struct ip_options since its included in skb->cb[], so this patch is large because I had to introduce a new ip_options_rcu structure. Signed-off-by: Eric Dumazet Cc: Herbert Xu Signed-off-by: David S. Miller commit 2875fa00830be62431f5ac22d8f85d57f9fa3033 Author: Eric Paris Date: Thu Apr 28 16:04:24 2011 -0400 SELinux: introduce path_has_perm We currently have inode_has_perm and dentry_has_perm. dentry_has_perm just calls inode_has_perm with additional audit data. But dentry_has_perm can take either a dentry or a path. Split those to make the code obvious and to fix the previous problem where I thought dentry_has_perm always had a valid dentry and mnt. Signed-off-by: Eric Paris commit a8d05c81fb238bbb18878ccfae7599ca79448dd3 Author: Eric Paris Date: Thu Apr 28 15:55:52 2011 -0400 flex_array: allow 0 length elements flex_arrays are supposed to be a replacement for: kmalloc(num_elements * sizeof(element)) If kmalloc is given 0 num_elements or a 0 size element it will happily return ZERO_SIZE_PTR. Which looks like a valid allocation, but which will explode if something actually try to use it. The current flex_array code will return an equivalent result if num_elements is 0, but will fail to work if sizeof(element) is 0. This patch allows allocation to work even for 0 size elements. It will cause flex_arrays to explode though if they are used. Imitating the kmalloc behavior. Based-on-patch-by: Steffen Klassert Signed-off-by: Eric Paris Acked-by: Dave Hansen commit 150cdf6ec0ede8d9f102f1817212447727dcf08c Author: Eric Paris Date: Thu Apr 28 15:55:52 2011 -0400 flex_arrays: allow zero length flex arrays Just like kmalloc will allow one to allocate a 0 length segment of memory flex arrays should do the same thing. It should bomb if you try to use something, but it should at least allow the allocation. This is needed because when SELinux switched to using flex_arrays in 2.6.38 the inability to allocate a 0 length array resulted in SELinux policy load returning -ENOSPC when previously it worked. Based-on-patch-by: Steffen Klassert Signed-off-by: Eric Paris Tested-by: Chris Richards Cc: stable@kernel.org [2.6.38+] commit 5a3ea8782c63d3501cb764c176f153c0d9a400e1 Author: Eric Paris Date: Thu Apr 28 15:55:52 2011 -0400 flex_array: flex_array_prealloc takes a number of elements, not an end Change flex_array_prealloc to take the number of elements for which space should be allocated instead of the last (inclusive) element. Users and documentation are updated accordingly. flex_arrays got introduced before they had users. When folks started using it, they ended up needing a different API than was coded up originally. This swaps over to the API that folks apparently need. Based-on-patch-by: Steffen Klassert Signed-off-by: Eric Paris Tested-by: Chris Richards Acked-by: Dave Hansen Cc: stable@kernel.org [2.6.38+] commit 562abf624175e3f8487b7f064e516805e437e597 Author: Eric Paris Date: Thu Apr 28 15:11:21 2011 -0400 SELinux: pass last path component in may_create New inodes are created in a two stage process. We first will compute the label on a new inode in security_inode_create() and check if the operation is allowed. We will then actually re-compute that same label and apply it in security_inode_init_security(). The change to do new label calculations based in part on the last component of the path name only passed the path component information all the way down the security_inode_init_security hook. Down the security_inode_create hook the path information did not make it past may_create. Thus the two calculations came up differently and the permissions check might not actually be against the label that is created. Pass and use the same information in both places to harmonize the calculations and checks. Reported-by: Dominick Grift Signed-off-by: Eric Paris commit 2463c26d50adc282d19317013ba0ff473823ca47 Author: Eric Paris Date: Thu Apr 28 15:11:21 2011 -0400 SELinux: put name based create rules in a hashtable To shorten the list we need to run if filename trans rules exist for the type of the given parent directory I put them in a hashtable. Given the policy we are expecting to use in Fedora this takes the worst case list run from about 5,000 entries to 17. Signed-off-by: Eric Paris Reviewed-by: James Morris commit 3f058ef7787e1b48720622346de9a5317aeb749a Author: Eric Paris Date: Thu Apr 28 15:11:21 2011 -0400 SELinux: generic hashtab entry counter Instead of a hashtab entry counter function only useful for range transition rules make a function generic for any hashtable to use. Signed-off-by: Eric Paris Reviewed-by: James Morris commit be30b16d43f4781406de0c08c96501dae4cc5a77 Author: Eric Paris Date: Thu Apr 28 15:11:21 2011 -0400 SELinux: calculate and print hashtab stats with a generic function We have custom debug functions like rangetr_hash_eval and symtab_hash_eval which do the same thing. Just create a generic function that takes the name of the hash table as an argument instead of having custom functions. Signed-off-by: Eric Paris Reviewed-by: James Morris commit 03a4c0182a156547edd5f2717c1702590fe36bbf Author: Eric Paris Date: Thu Apr 28 15:11:21 2011 -0400 SELinux: skip filename trans rules if ttype does not match parent dir Right now we walk to filename trans rule list for every inode that is created. First passes at policy using this facility creates around 5000 filename trans rules. Running a list of 5000 entries every time is a bad idea. This patch adds a new ebitmap to policy which has a bit set for each ttype that has at least 1 filename trans rule. Thus when an inode is created we can quickly determine if any rules exist for this parent directory type and can skip the list if we know there is definitely no relevant entry. Signed-off-by: Eric Paris Reviewed-by: James Morris commit 2667991f60e67d28c495b8967aaabf84b4ccd560 Author: Eric Paris Date: Thu Apr 28 15:11:20 2011 -0400 SELinux: rename filename_compute_type argument to *type instead of *con filename_compute_type() takes as arguments the numeric value of the type of the subject and target. It does not take a context. Thus the names are misleading. Fix the argument names. Signed-off-by: Eric Paris Reviewed-by: James Morris commit 4742600cf536c0c115b6f769eda82ee377d199c9 Author: Eric Paris Date: Thu Apr 28 15:11:20 2011 -0400 SELinux: fix comment to state filename_compute_type takes an objname not a qstr filename_compute_type used to take a qstr, but it now takes just a name. Fix the comments to indicate it is an objname, not a qstr. Signed-off-by: Eric Paris commit 7cbc9bd99542752ff570abca79d0027669a01fb8 Author: Johan Hedberg Date: Thu Apr 28 11:29:04 2011 -0700 Bluetooth: Fix updating conn->auth_type in hci_io_capa_request_evt In some circumstances hci_get_auth_req will return a value different from the current conn->auth_type. In these cases update conn->auth_type so that when a user confirm request comes it doesn't falsely trigger auto-accept. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 4df378a10e31698df1679f3329301d773a654b61 Author: Johan Hedberg Date: Thu Apr 28 11:29:03 2011 -0700 Bluetooth: Add store_hint parameter to mgmt_new_key Even for keys that shouldn't be stored some use cases require the knowledge of a new key having been created so that the conclusion of a successful pairing can be made. Therefore, always send the mgmt_new_key event but add a store_hint parameter to it to indicate to user space whether the key should be stored or not. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 4748fed2d1a2a7a816277754498b8aa70850e051 Author: Johan Hedberg Date: Thu Apr 28 11:29:02 2011 -0700 Bluetooth: Remove old_key_type from mgmt_ev_new_key User space shouldn't have any need for the old key type so remove it from the corresponding Management interface event. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 655fe6ece7e71b37c17577ae485d11bf701c95f7 Author: Johan Hedberg Date: Thu Apr 28 11:29:01 2011 -0700 Bluetooth: Fix connection key type updating for buggy controllers If a controller generates a changed combination key as its first key the connection key type will not be correctly set. In these situations make sure the update the connection key type when such a buggy controller is detected. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 12adcf3a953c3aa4006d855aa638133bf018ceac Author: Johan Hedberg Date: Thu Apr 28 11:29:00 2011 -0700 Bluetooth: Fix old_key_type logic for non-persistent keys Even if there's no previous key stored the connection might still be secured with a non-persistent key and in that case the key type in the hci_conn struct should be checked. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit d25e28abe58d2bcedf6025a6ccc532c29a19046f Author: Johan Hedberg Date: Thu Apr 28 11:28:59 2011 -0700 Bluetooth: Fix link key persistent storage criteria Link keys should only be stored if very specific criteria of the authentication process are fulfilled. This patch essentially copies the criteria that user space has so far been using to the kernel side so that the management interface works properly. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 582fbe9ef9d6fc089ff20956595f046d4899e74e Author: Johan Hedberg Date: Thu Apr 28 11:28:58 2011 -0700 Bluetooth: Fix logic in hci_pin_code_request_evt The mgmt_ev_pin_code_request event should not be sent to user space if the request gets rejected by the kernel due to the pairable flag not being set. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit be77159c3f37e73a18ecc5c1eab3c67e07c6ce22 Author: Johan Hedberg Date: Thu Apr 28 11:28:57 2011 -0700 Bluetooth: Fix reason code for pairing rejection "Pairing not allowed" is 0x18 and not 0x16. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 55bc1a378cc35f21a26e07af2ff2b71820808cd4 Author: Johan Hedberg Date: Thu Apr 28 11:28:56 2011 -0700 Bluetooth: Add confirm_hint parameter to user confirmation requests When accepting a pairing request which fulfills the SSP auto-accept criteria we need to push the request all the way to the user for confirmation. This patch adds a new hint to the user_confirm_request management event so user space can know when to show a numeric comparison dialog and when to show a simple yes/no confirmation dialog. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 79c6c70cbe35c270e7b59207ab76b44183a1030a Author: Johan Hedberg Date: Thu Apr 28 11:28:55 2011 -0700 Bluetooth: Fix HCI_CONN_AUTH_PEND flag for all authentication requests The HCI_CONN_AUTH_PEND flag should be set whenever requesting authentication so that multiple pending requests can't occur. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 9f61656a60c9506e3e4cd41af5efbcf6a30ee3b9 Author: Johan Hedberg Date: Thu Apr 28 11:28:54 2011 -0700 Bluetooth: Add variable SSP auto-accept delay support Some test systems require an arbitrary delay to the auto-accept test cases for Secure Simple Pairing in order for the tests to pass. Previously when this was handled in user space it was worked around by code modifications and recompilation, but now that it's on the kernel side it's more convenient if there's a debugfs interface for it. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 7a828908a026d801c6192fd32cfb35d6843f1539 Author: Johan Hedberg Date: Thu Apr 28 11:28:53 2011 -0700 Bluetooth: Add automated SSP user confirmation responses This patch adds automated negative and positive (auto-accept) responses for Secure Simple Pairing user confirmation requests. The responses are only sent if the HCI_MGMT flag is set in order not to confuse older user space versions (without management interface support). Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 030fe7974f48bd86bb706ec05188ebab0cb7af80 Author: Amitkumar Karwar Date: Wed Apr 27 19:13:13 2011 -0700 mwifiex: fix bug in mwifiex_save_curr_bcn() Since timestamp in beacon buffer keeps changing all the time, the memcmp check in mwifiex_save_curr_bcn() is redundant. Remove that memcmp check and also avoid freeing and allocation of buffer if required beacon buffer size is same as previous one. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit a46b7b5c13b9ecfe2b4e045e06aaec644dcf55d8 Author: Amitkumar Karwar Date: Wed Apr 27 19:13:12 2011 -0700 mwifiex: HT capability information handling 1) Initialise HT capabilities in cfg80211 properly. 2) Cfg80211 stack may modify "sband->ht_cap" to disable 40Mhz operation in 2.4GHz band (after recent patch "cfg80211: module_param to disable HT40 in 2.4GHz band") Therefore read "sband->ht_cap" instead of an adapter variable "hw_dot_11n_dev_cap" to get HT capabilities. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit adc89595732b92f78940fc0ccdb52afaec582a48 Author: Amitkumar Karwar Date: Wed Apr 27 19:13:11 2011 -0700 mwifiex: check firmware capabilities while initialising 5GHz band parameters There are some SD8787 cards which don't support 5GHz band. Therefore initialise 5GHz band parameters only if hardware supports the band. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 49adc5ceb2b95e517baf625e0c8e06e91073009b Author: John W. Linville Date: Wed Apr 27 15:04:28 2011 -0400 mwl8k: replace rateinfo bitfields with mask and shift macros AFAICT, this driver is claiming that 24 bits of rate info fit into a 16-bit field in the Tx descriptor. Anyway, the use of bitfields is frowned-upon for a variety of well-documented reasons... Signed-off-by: John W. Linville commit af335a6cbc3dfcba64ad31561c0da563d1c43a2d Author: Rafał Miłecki Date: Wed Apr 27 18:21:34 2011 +0200 ssb: pci: early fix for SPROM core index Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 5890a3ca34aae94dd736557ad8cb898ac2802aa0 Author: Rafał Miłecki Date: Wed Apr 27 17:39:48 2011 +0200 ssb: pci: update PCIe workarounds Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6e914101d47c76e09b0568d094ef44257dd3d6e9 Author: Rafał Miłecki Date: Wed Apr 27 17:39:47 2011 +0200 ssb: pci: separate workarounds Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit aac6af5534fade2b18682a0b9efad1a6c04c34c6 Author: Yogesh Ashok Powar Date: Wed Apr 27 18:40:29 2011 +0530 mac80211: Skip tailroom reservation for full HW-crypto devices In xmit path, devices that do full hardware crypto (including TKIP MMIC) need no tailroom. For such devices, tailroom reservation can be skipped if all the keys are programmed into the hardware (i.e software crypto is not used for any of the keys) and none of the keys wants software to generate Michael MIC. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit e2186b7c25ef9cdb6d631c8dd6a672f41abe22d5 Author: Sujith Manoharan Date: Wed Apr 27 17:13:40 2011 +0530 ath9k_htc: Add set_bitrate_mask() callback This callback is used to set the minimum rate for management frames. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit a55bb94aa37782fe9457751a3e508b1129fbbc7a Author: Sujith Manoharan Date: Wed Apr 27 17:13:23 2011 +0530 ath9k_htc: Add a new WMI command to set a rate mask This patch adds WMI_BITRATE_MASK_CMDID which can be used by the set_bitrate_mask() handler. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 155dcda6f11a58e4e1443d5fad530b0bf68370b7 Author: Sujith Manoharan Date: Wed Apr 27 17:13:09 2011 +0530 ath9k_htc: Remove unused WMI_AGGR_LIMIT_CMD Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 484b1829c6a3c5bc38fe0cd626ce2e8a3dfd844c Author: Sujith Manoharan Date: Wed Apr 27 17:12:56 2011 +0530 ath9k_htc: Increase credit size for AR7010 devices Bump the firmware version to 1.2 Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit bdbfd6b582f55384059d9ac5e65b3653092e6adf Author: Sujith Manoharan Date: Wed Apr 27 16:56:51 2011 +0530 mac80211: Add new API for rate selection This patch adds a new API for setting a TX rate mask in drivers that have rate control in either the firmware or hardware. This can be used for various purposes, for example, masking out the 11b rates in P2P operation. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 8973a6e770fc891f92daacbc1c92c7cd396fcf7e Author: Randy Dunlap Date: Tue Apr 26 15:25:29 2011 -0700 libertas: use kernel-doc notation, fix comment style Convert all libertas/ files to use kernel-doc notation instead of whatever it was (doxygen?). Add or fix function parameters in several places. Use expected style for multi-line comments in lots of places. Remove erroneous /** in multiple places. Signed-off-by: Randy Dunlap Acked-by: Dan Williams Signed-off-by: John W. Linville commit 47684808fd89d6809c0886e06f8ac324252499d8 Author: Arik Nemtsov Date: Tue Apr 26 23:21:51 2011 +0300 wl12xx: support FW TX inactivity triggers In AP mode we register for the MAX_TX_RETRY and INACTIVE_STA events. Both are reported to the upper layers as a TX failure in the offending stations. In STA mode we register only for the MAX_TX_RETRY event. A TX failure is interpreted as a loss of connection. Support for IEEE80211_HW_REPORTS_TX_ACK_STATUS has been removed to avoid the inherent race condition of a mac80211 TX failure counter in addition to the FW counter. This patch depends on "mac80211: allow low level driver to report packet loss" Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit a039a993496d79d09ae9709c82b545b9800954c9 Author: Vivek Natarajan Date: Tue Apr 26 10:39:55 2011 +0530 ath9k: Use ps wrappers for btcoex logic. Use ps wrappers before accessing hw registers in btcoex. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit f78eb657f067ce87e19da94138d22cde8236c7db Author: Vivek Natarajan Date: Tue Apr 26 10:39:54 2011 +0530 ath9k_hw: Enable generic timer interrupt. Generic timer interrupt was not triggered unless autosleep was disabled. Since autosleep is enabled in the newer chipsets, enable generic timer for using with bt coex logic. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit a6ef530f2b0bc7e871e8c2f2b2a0905eed57fead Author: Vivek Natarajan Date: Tue Apr 26 10:39:53 2011 +0530 ath9k_hw: Add support for btcoexistence in AR9300. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit 978f78bf71372a48785ac9407ebc10170f14f56c Author: Vivek Natarajan Date: Tue Apr 26 10:39:52 2011 +0530 ath9k_hw: Move bt_stomp to hw from common. Move bt_stomp to ath9k_hw and add its support for latest chipsets. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit 8178d38b704f0a08a74b030c35e6eca5f5019d3d Author: Arik Nemtsov Date: Mon Apr 18 14:22:28 2011 +0300 mac80211: allow low level drivers to report packet loss Add API that allows low level drivers to notify mac80211 about TX packet loss. This is useful when there are FW triggers to notify the low level driver about these events. Signed-off-by: Arik Nemtsov Signed-off-by: John W. Linville commit 16dc062b42459e6ddd244c2bc8255cac45db47e4 Author: Uwe Kleine-König Date: Wed Apr 27 09:45:33 2011 +0100 ARM: 6888/1: remove ns9xxx port The port is actually unmaintained and only received global cleanups and a few build fixes since mid 2008. Signed-off-by: Uwe Kleine-König Signed-off-by: Russell King commit 8c1fdd0be5498f852e00c5fbd9cb0c3969e46cc6 Author: Christoph Hellwig Date: Thu Apr 21 13:21:03 2011 +0000 xfs: add an x86 compat handler for XFS_IOC_ZERO_RANGE XFS_IOC_ZERO_RANGE uses struct xfs_flock64, and thus requires argument translation for 32-bit binaries on x86. Add the required XFS_IOC_ZERO_RANGE_32 defined and add it to the list of commands that require xfs_flock64 translation. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 1a18a29478a38e5df382cd299f636187fde773ab Author: Christoph Hellwig Date: Sun Apr 24 19:02:58 2011 +0000 xfs: fix compiler warning in xfs_trace.h xfs_fsblock_t may be a 32-bit type on if XFS_BIG_BLKNOS is not set, make sure to cast a value of this type to an unsigned long long before using the ll printk qualifier. Reported-by: Randy Dunlap Signed-off-by: Christoph Hellwig Reviewed-by: Dave Chinner Signed-off-by: Alex Elder commit 45c51b99943c4c74165b19dc2f96e8ba93bdecb9 Author: David Sterba Date: Wed Apr 13 22:03:28 2011 +0000 xfs: cleanup duplicate initializations follow these guidelines: - leave initialization in the declaration block if it fits the line - move to the code where it's more suitable ('for' init block) The last chunk was modified from David's original to be a correct fix for what appeared to be a duplicate initialization. Signed-off-by: David Sterba Signed-off-by: Alex Elder Reviewed-by: Dave Chinner commit a770bb5aea84ee2509d4775f9959665f96da3b9d Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:59 2011 +0200 Bluetooth: Add secure flag for mgmt_pin_code_req Extend the mgmt_pin_code_request interface to require secure pin code (16 digit) for authentication. This is a kernel part of the secure pin code requirement notification to user space agent. Code styling fix by Johan Hedberg. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 8a072a4d4c6a5b6ec32836c467d2996393c76c6f Author: Christoph Hellwig Date: Sun Apr 24 19:06:17 2011 +0000 xfs: reduce the number of pagb_lock roundtrips in xfs_alloc_clear_busy Instead of finding the per-ag and then taking and releasing the pagb_lock for every single busy extent completed sort the list of busy extents and only switch betweens AGs where nessecary. This becomes especially important with the online discard support which will hit this lock more often. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 97d3ac75e5e0ebf7ca38ae74cebd201c09b97ab2 Author: Christoph Hellwig Date: Sun Apr 24 19:06:16 2011 +0000 xfs: exact busy extent tracking Update the extent tree in case we have to reuse a busy extent, so that it always is kept uptodate. This is done by replacing the busy list searches with a new xfs_alloc_busy_reuse helper, which updates the busy extent tree in case of a reuse. This allows us to allow reusing metadata extents unconditionally, and thus avoid log forces especially for allocation btree blocks. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit e26f0501cf743a4289603501413f97ffcb4612f2 Author: Christoph Hellwig Date: Sun Apr 24 19:06:15 2011 +0000 xfs: do not immediately reuse busy extent ranges Every time we reallocate a busy extent, we cause a synchronous log force to occur to ensure the freeing transaction is on disk before we continue and use the newly allocated extent. This is extremely sub-optimal as we have to mark every transaction with blocks that get reused as synchronous. Instead of searching the busy extent list after deciding on the extent to allocate, check each candidate extent during the allocation decisions as to whether they are in the busy list. If they are in the busy list, we trim the busy range out of the extent we have found and determine if that trimmed range is still OK for allocation. In many cases, this check can be incorporated into the allocation extent alignment code which already does trimming of the found extent before determining if it is a valid candidate for allocation. Based on earlier patches from Dave Chinner. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit a870acd9b2671de56514a430edfa7867823c31c9 Author: Christoph Hellwig Date: Sun Apr 24 19:06:14 2011 +0000 xfs: optimize AGFL refills While we need to make sure we do not reuse busy extents, there is no need to force out busy extents when moving them between the AGFL and the freespace btree as we still take care of that when doing the real allocation. To avoid the log force when just moving extents from the different free space tracking structures, move the busy search out of xfs_alloc_get_freelist into the callers that need it, and move the busy list insert from xfs_free_ag_extent which is used both by AGFL refills and real allocation to xfs_free_extent, which is only used by the latter. Signed-off-by: Christoph Hellwig Signed-off-by: Alex Elder commit 58797bf77234154a84827186bda316a1205bde05 Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:58 2011 +0200 Bluetooth: Respect local MITM req in io_cap reply If host requires MITM protection notify that to controller in io capabilities reply even if the remote device requires no bonding. If it is not respected, host can get an unauthenticated link key while it expects authenticated one. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 60b83f571cf17a7a8ca9ddf2090db63e6a594571 Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:56 2011 +0200 Bluetooth: Ignore key unauthenticated for high security High security level for pre v2.1 devices requires combination link key authenticated by at least 16 digit PIN code. It's also necessary to update key_type and pin_length when the key exists and is sufficently secured for the connection as there will be no link key notify event in that case. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 13d39315c22b128f4796fc008b04914a7c32bb1a Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:55 2011 +0200 Bluetooth: Map sec_level to link key requirements Keep the link key type together with connection and use it to map security level to link key requirements. Authenticate and/or encrypt connection if the link is insufficiently secure. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 9003c4e220c2954a53c5da0d739ed15a46c13429 Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:54 2011 +0200 Bluetooth: Don't modify sec_level if auth failed If authentication fails the security level should stay as it was set before the process has started. Setting BT_SECURITY_LOW can hide real security level on a link eg. having BT_SECURITY_MEDIUM on the link, re-authenticate with failure to get BT_SECURITY_HIGH, as a result we get BT_SECURITY_LOW on the link while the real security is still medium. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit b6020ba055c7f1ca901dc8751ecc7c9de58164db Author: Waldemar Rymarkiewicz Date: Thu Apr 28 12:07:53 2011 +0200 Bluetooth: Add definitions for link key types Introduce the link key types defs and use them instead of magic numbers. Signed-off-by: Waldemar Rymarkiewicz Signed-off-by: Gustavo F. Padovan commit 2dfb9a85ecb86f00b085d6fca7d4bb8dc6764710 Author: Magnus Damm Date: Thu Apr 28 09:34:32 2011 -0700 Input: sh_keysc - switch to threaded IRQ handler Update the KEYSC driver to make use of threaded IRQs with IRQF_ONESHOT to improve interrupt latency. The driver is using udelay() in the ISR to make sure the hardware has stabilized. Without using interrupt threads this delay may affect the latency of the rest of the system. Also pass dev_name() as string for /proc/interrupts. Signed-off-by: Magnus Damm Signed-off-by: Dmitry Torokhov commit b6d2a3e6ff6a7019b4a240b6bc4a4d74ce82d533 Author: Magnus Damm Date: Thu Apr 28 09:32:44 2011 -0700 Input: sh_keysc - implement runtime PM support Convert the KEYSC driver from MSTP bit control through a magic clock string to making use of Runtime PM. Also, update the system suspend/resume callbacks to drop the Runtime PM reference in the case of wakeup disabled. Signed-off-by: Magnus Damm Signed-off-by: Dmitry Torokhov commit ae8a60a598ce39e8e42fd4ce1348c0883a23b5d8 Author: Takashi Iwai Date: Thu Apr 28 18:09:52 2011 +0200 ALSA: hda - Add Auto-Mute Mode enum for two-output cases The Auto-Mute Mode control is useful even when only two outputs (e.g. HP and speaker) are available. Then user can enable/disable the auto-mute behavior on the fly. Signed-off-by: Takashi Iwai commit d8ecc5cd8e227bc318513b5306ae88a474b8886d Author: Sam Ravnborg Date: Wed Apr 27 22:29:49 2011 +0200 kbuild: asm-generic support There is an increasing amount of header files shared between individual architectures in asm-generic. To avoid a lot of dummy wrapper files that just include the corresponding file in asm-generic provide some basic support in kbuild for this. With the following patch an architecture can maintain a list of files in the file arch/$(ARCH)/include/asm/Kbuild To use a generic file just add: generic-y += For each file listed kbuild will generate the necessary wrapper in arch/$(ARCH)/include/generated/asm. When installing userspace headers a wrapper is likewise created. The original inspiration for this came from the unicore32 patchset - although a different method is used. The patch includes several improvements from Arnd Bergmann. Michael Marek contributed Makefile.asm-generic. Remis Baima did an intial implementation along to achive the same - see https://patchwork.kernel.org/patch/13352/ Signed-off-by: Sam Ravnborg Acked-by: Guan Xuetao Tested-by: Guan Xuetao Acked-by: Arnd Bergmann Cc: Remis Lima Baima Signed-off-by: Michal Marek commit 28bc20dccadc610c56e27255aeef2938141a0cd3 Author: Sam Ravnborg Date: Wed Apr 27 22:15:27 2011 +0200 kbuild: implement several W= levels Building a kernel with "make W=1" produces far too much noise to be useful. Divide the warning options in three groups: W=1 - warnings that may be relevant and does not occur too often W=2 - warnings that occur quite often but may still be relevant W=3 - the more obscure warnings, can most likely be ignored When building the whole kernel, those levels produce: W=1 - 4859 warnings W=2 - 1394 warnings W=3 - 86666 warnings respectively. Warnings have been counted with Geert's script at http://www.kernel.org/pub/linux/kernel/people/geert/linux-log/linux-log-summary.pl Many warnings occur from .h files so fixing one file may have a nice effect on the total number of warnings. With these changes I am actually tempted to try W=1 now and then. Previously there was just too much noise. Borislav: - make the W= levels exclusive - move very noisy and making little sense for the kernel warnings to W=3 - drop -Woverlength-strings due to useless warning message - copy explanatory text for the different warning levels to 'make help' - recount warnings per level Signed-off-by: Sam Ravnborg Signed-off-by: Borislav Petkov Cc: Dave Jones Cc: Geert Uytterhoeven Signed-off-by: Michal Marek commit 1daf5f46c62bc69922e1ca8ccebbbff04f48e1f1 Author: Takashi Iwai Date: Thu Apr 28 17:57:46 2011 +0200 ALSA: hda - More line-out auto-mute support for Realtek Not only supporting the line-out automute as additional feature to the existing headphone automute, now the headphone jack can mute the line-out alone even without the speaker outs. Signed-off-by: Takashi Iwai commit 1a1455de10d89b9f2107fe5ad1746e7c18838492 Author: Takashi Iwai Date: Thu Apr 28 17:36:18 2011 +0200 ALSA: hda - Add support for Line-Out automute to Realtek auto-parser By popular demands, I add the functionality to mute / unmute the line-out jacks per the headphone plug / unplug. For achieving this and keeping the compatibility with the old behavior, the new mixer enum "Auto-Mute Mode" is added. With this, user can control the auto-mute behavior either disabled, speaker-only or lineout+speaker. Signed-off-by: Takashi Iwai commit 0f0f391c730228d1fd1c3933275ed75ee96e4db2 Author: Takashi Iwai Date: Thu Apr 28 16:26:24 2011 +0200 ALSA: hda - More reduction of redundant automute codes in Realtek parser Removed the redundant codes by replacing with the common helper functions. Signed-off-by: Takashi Iwai commit e9427969f560f664d78b2512fd8ebf44863b5072 Author: Takashi Iwai Date: Thu Apr 28 15:46:07 2011 +0200 ALSA: hda - Consolidate auto-mute with master-switch for Realtek Yet another consolidation of auto-mute functions for the devices controlling the output muts together with the master mixer switch, typically found for ALC262 machines. Signed-off-by: Takashi Iwai commit 35dca5b4a67a93bbb75c2753d6dc432dc8f82e5d Author: Jiri Kosina Date: Thu Apr 28 15:43:13 2011 +0200 HID: add support for Sony Navigation Controller Sony Navigation Controller needs a special report to be sent to it before it is able to operate, the same way as other Sony controllers do. Tested-by: Jacek Lukas Wotka Signed-off-by: Jiri Kosina commit e6a5e1b7094bdd5cc9ae969aff7f75fbc53517fc Author: Takashi Iwai Date: Thu Apr 28 14:41:52 2011 +0200 ALSA: hda - Add support of line-out automute for Realtek Add the common helper function and flags to support the auto-mute per line-out jack detection, and also the mute of line-out jacks. A few model-specific implementations are replaced with the common helpers. Signed-off-by: Takashi Iwai commit 3b8510ce972c93000ea65122bab3a278074eda98 Author: Takashi Iwai Date: Thu Apr 28 14:03:24 2011 +0200 ALSA: hda - Add common automute support for mxier-amp on/off for Reatek Some models do mute on/off the connected mixer widget for the automatic muting, instead of controlling the pin widget itself. This patch adds the implementation of such type of auto-mute in the common helper function, and reduces the redundant codes for each model preset. Signed-off-by: Takashi Iwai commit d922b51dabbe9b6aeee44e2e3a605323591e3707 Author: Takashi Iwai Date: Thu Apr 28 12:18:53 2011 +0200 ALSA: hda - Consolidate default automute functions for Realtek There are two entry points for the headphone automute functions for Realtek, alc_automute_amp() and alc_automute_pin(). These call the same function in the end, so we can basically consolidate these with a flag in spec. Signed-off-by: Takashi Iwai commit 9b1b937c77f94f8c94874351a2d5ba92cd99f1ec Author: Mark Brown Date: Wed Apr 27 18:25:34 2011 +0100 ASoC: Don't specify the DMA driver for Goni baseband link Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 3784019af3da88014c7222f2cec2e5afff8a6b4f Author: Mark Brown Date: Wed Apr 27 18:17:27 2011 +0100 ASoC: Don't specify the DMA driver for OpenMoko baseband link Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit dd4028c59e98e5faf56ee447f017a356556f2732 Merge: fb25789 69b91bc Author: Mark Brown Date: Thu Apr 28 12:10:25 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit fb257897bf20c5f0e1df584bb5b874e811651263 Author: Mark Brown Date: Thu Apr 28 10:57:54 2011 +0100 ASoC: Work around allmodconfig failure Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit b013c399245a88a73aaa031279f0c4d7cea7fe68 Author: Oleg Nesterov Date: Thu Apr 28 11:36:20 2011 +0200 signal: cleanup sys_sigprocmask() Cleanup. Remove the unneeded goto's, we can simply read blocked.sig[0] unconditionally and then copy-to-user it if oset != NULL. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo Reviewed-by: Matt Fleming commit 702a5073fdb71eb29cd4912575289fb5044c1894 Author: Oleg Nesterov Date: Wed Apr 27 22:01:27 2011 +0200 signal: rename signandsets() to sigandnsets() As Tejun and Linus pointed out, "nand" is the wrong name for "x & ~y", it should be "andn". Rename signandsets() as suggested. Suggested-by: Tejun Heo Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo commit b182801ab35f7a0afb3cdf8ba5df464d04206b46 Author: Oleg Nesterov Date: Wed Apr 27 21:56:14 2011 +0200 signal: do_sigtimedwait() needs retarget_shared_pending() do_sigtimedwait() changes current->blocked and thus it needs set_current_blocked()->retarget_shared_pending(). We could use set_current_blocked() directly. It is fine to change ->real_blocked from all-zeroes to ->blocked and vice versa lockless, but this is not immediately clear, looks racy, and needs a huge comment to explain why this is correct. To keep the things simple this patch adds the new static helper, __set_task_blocked() which should be called with ->siglock held. This way we can change both ->real_blocked and ->blocked atomically under ->siglock as the current code does. This is more understandable. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo Reviewed-by: Matt Fleming commit 943df1485a8ff0e600729e082e568ece04d4de9e Author: Oleg Nesterov Date: Wed Apr 27 21:44:14 2011 +0200 signal: introduce do_sigtimedwait() to factor out compat/native code Factor out the common code in sys_rt_sigtimedwait/compat_sys_rt_sigtimedwait to the new helper, do_sigtimedwait(). Add the comment to document the extra tick we add to timespec_to_jiffies(ts), thanks to Linus who explained this to me. Perhaps it would be better to move compat_sys_rt_sigtimedwait() into signal.c under CONFIG_COMPAT, then we can make do_sigtimedwait() static. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo Reviewed-by: Matt Fleming commit fe0faa005d43bc44c357631d51c273806086caa4 Author: Oleg Nesterov Date: Wed Apr 27 21:24:19 2011 +0200 signal: sys_rt_sigtimedwait: simplify the timeout logic No functional changes, cleanup compat_sys_rt_sigtimedwait() and sys_rt_sigtimedwait(). Calculate the timeout before we take ->siglock, this simplifies and lessens the code. Use timespec_valid() to check the timespec. Signed-off-by: Oleg Nesterov Acked-by: Tejun Heo Reviewed-by: Matt Fleming commit bb7efee2ca63b08795ffb3cda96fc89d2e641b79 Author: Oleg Nesterov Date: Wed Apr 27 21:18:10 2011 +0200 signal: cleanup sys_rt_sigprocmask() sys_rt_sigprocmask() looks unnecessarily complicated, simplify it. We can just read current->blocked lockless unconditionally before anything else and then copy-to-user it if needed. At worst we copy 4 words on mips. We could copy-to-user the old mask first and simplify the code even more, but the patch tries to keep the current behaviour: we change current->block even if copy_to_user(oset) fails. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit e9bd3f0faa90084f188830d77723bafe422e486b Author: Oleg Nesterov Date: Wed Apr 27 21:09:39 2011 +0200 x86: signal: sys_rt_sigreturn() should use set_current_blocked() Normally sys_rt_sigreturn() restores the old current->blocked which was changed by handle_signal(), and unblocking is always fine. But the debugger or application itself can change frame->uc_sigmask and thus we need set_current_blocked()->retarget_shared_pending(). Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit e6a585801b451443480ff66914a522b482457460 Author: Oleg Nesterov Date: Wed Apr 27 21:04:28 2011 +0200 x86: signal: handle_signal() should use set_current_blocked() This is ugly, but if sigprocmask() needs retarget_shared_pending() then handle signal should follow this logic. In theory it is newer correct to add the new signals to current->blocked, the signal handler can sleep/etc so we should notify other threads in case we block the pending signal and nobody else has TIF_SIGPENDING. Of course, this change doesn't make signals faster :/ Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit e6fa16ab9c1e9b344428e6fea4d29e3cc4b28fb0 Author: Oleg Nesterov Date: Wed Apr 27 20:59:41 2011 +0200 signal: sigprocmask() should do retarget_shared_pending() In short, almost every changing of current->blocked is wrong, or at least can lead to the unexpected results. For example. Two threads T1 and T2, T1 sleeps in sigtimedwait/pause/etc. kill(tgid, SIG) can pick T2 for TIF_SIGPENDING. If T2 calls sigprocmask() and blocks SIG before it notices the pending signal, nobody else can handle this pending shared signal. I am not sure this is bug, but at least this looks strange imho. T1 should not sleep forever, there is a signal which should wake it up. This patch moves the code which actually changes ->blocked into the new helper, set_current_blocked() and changes this code to call retarget_shared_pending() as exit_signals() does. We should only care about the signals we just blocked, we use "newset & ~current->blocked" as a mask. We do not check !sigisemptyset(newblocked), retarget_shared_pending() is cheap unless mask & shared_pending. Note: for this particular case we could simply change sigprocmask() to return -EINTR if signal_pending(), but then we should change other callers and, more importantly, if we need this fix then set_current_blocked() will have more callers and some of them can't restart. See the next patch as a random example. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit 73ef4aeb61b53fce464a7e24ef03a26f98b2f617 Author: Oleg Nesterov Date: Wed Apr 27 19:54:20 2011 +0200 signal: sigprocmask: narrow the scope of ->siglock No functional changes, preparation to simplify the review of the next change. 1. We can read current->block lockless, nobody else can ever change this mask. 2. Calculate the resulting sigset_t outside of ->siglock into the temporary variable, then take ->siglock and change ->blocked. Also, kill the stale comment about BKL. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit fec9993db093acfc3999a364e31f8adae41fcb28 Author: Oleg Nesterov Date: Wed Apr 27 19:50:21 2011 +0200 signal: retarget_shared_pending: optimize while_each_thread() loop retarget_shared_pending() blindly does recalc_sigpending_and_wake() for every sub-thread, this is suboptimal. We can check t->blocked and stop looping once every bit in shared_pending has the new target. Note: we do not take task_is_stopped_or_traced(t) into account, we are not trying to speed up the signal delivery or to avoid the unnecessary (but harmless) signal_wake_up(0) in this unlikely case. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit f646e227b88a164a841d6b6dd969d8a45272dd83 Author: Oleg Nesterov Date: Wed Apr 27 19:18:39 2011 +0200 signal: retarget_shared_pending: consider shared/unblocked signals only exit_signals() checks signal_pending() before retarget_shared_pending() but this is suboptimal. We can avoid the while_each_thread() loop in case when there are no shared signals visible to us. Add the "shared_pending.signal & ~blocked" check. We don't use tsk->blocked directly but pass ~blocked as an argument, this is needed for the next patch. Note: we can optimize this more. while_each_thread(t) can check t->blocked into account and stop after every pending signal has the new target, see the next patch. Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit 0edceb7bcd82802f721f3c94eed9b3e2869d3740 Author: Oleg Nesterov Date: Wed Apr 27 19:17:37 2011 +0200 signal: introduce retarget_shared_pending() No functional changes. Move the notify-other-threads code from exit_signals() to the new helper, retarget_shared_pending(). Signed-off-by: Oleg Nesterov Reviewed-by: Matt Fleming Acked-by: Tejun Heo commit 59bb7f0eebe69aa32a5c7917a23a7da1c5667d73 Author: Takashi Iwai Date: Thu Apr 28 09:58:43 2011 +0200 ALSA: usb-audio - Don't expose broken dB ranges Some crappy USB-audio devices give broken dB ranges, e.g. both min and max are 0dB. This confuses the volume control that prefers dB expression such as alsactl or PulseAudio. In such a case, it's much better not to expose the broken dB information. Signed-off-by: Takashi Iwai commit e11feaa1192a079ba8e88a12121e9b12d55d4239 Author: Jeff Mahoney Date: Wed Apr 27 14:27:24 2011 -0400 watchdog, hung_task_timeout: Add Kconfig configurable default This patch allows the default value for sysctl_hung_task_timeout_secs to be set at build time. The feature carries virtually no overhead, so it makes sense to keep it enabled. On heavily loaded systems, though, it can end up triggering stack traces when there is no bug other than the system being underprovisioned. We use this patch to keep the hung task facility available but disabled at boot-time. The default of 120 seconds is preserved. As a note, commit e162b39a may have accidentally reverted commit fb822db4, which raised the default from 120 seconds to 480 seconds. Signed-off-by: Jeff Mahoney Acked-by: Mandeep Singh Baines Link: http://lkml.kernel.org/r/4DB8600C.8080000@suse.com Signed-off-by: Ingo Molnar commit ede70290046043b2638204cab55e26ea1d0c6cd9 Author: Ingo Molnar Date: Thu Apr 28 08:48:42 2011 +0200 perf stat: Fix compatibility behavior Instead of failing on an unknown event, when new perf stat is run on older kernels: $ ./perf stat true Error: open_counter returned with 22 (Invalid argument). /bin/dmesg may provide additional information. Fatal: Not all events could be opened. Just ignore EINVAL and ENOSYS, we'll print the results as not counted: Performance counter stats for 'true': 0.239483 task-clock # 0.493 CPUs utilized 0 context-switches # 0.000 M/sec 0 CPU-migrations # 0.000 M/sec 86 page-faults # 0.359 M/sec 704,766 cycles # 2.943 GHz stalled-cycles 381,961 instructions # 0.54 insns per cycle 69,626 branches # 290.735 M/sec 4,594 branch-misses # 6.60% of all branches 0.000485883 seconds time elapsed Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n1eqio5hjpn3dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit f9cef0a90c4e7637f1ec98474a1a099aec45eb65 Author: Ingo Molnar Date: Thu Apr 28 18:17:11 2011 +0200 perf stat: Add --sync/-S option --sync will tell perf stat to run sync() before starting a command. This allows IO-heavy tests to be used with --repeat, without one iteration impacting the other. Elapsed time will stabilize for example: before: 3.971525714 seconds time elapsed ( +- 8.56% ) after: 3.211098537 seconds time elapsed ( +- 1.52% ) So measurements will be more accurate. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n1eqio7hjpn1dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit 8a850cadca0e387c87a0911a61e99fd66aeb57ec Author: Ingo Molnar Date: Thu Apr 28 11:16:44 2011 +0200 perf event, x86: Use better stalled cycles metric Use the UOPS_EXECUTED.*,c=1,i=1 event on Intel CPUs - it is a rather good indicator of CPU execution stalls, more sensitive and more inclusive than the 0xa2 resource stalls event (which does not count nearly as many stall types). Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n1eqio7hjpn2dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit e490ebdc3ce1a58e66aeacc485294a45710067f5 Author: Dmitry Torokhov Date: Wed Apr 27 23:20:16 2011 -0700 Input: input-polldev - use system-wide freezable workqueue With introduction of concurrency-managed work queues there is rarely a point in creating private workqueues. Signed-off-by: Dmitry Torokhov commit 34abeeb23575c9c25b8c582d582e5bcfcd1cf338 Author: Rakesh Iyer Date: Wed Apr 27 23:18:15 2011 -0700 Input: tegra-kbc - add ghost key filter Add ghost key filtering support for the Nvidia Tegra matrix keyboard. Signed-off-by: Rakesh Iyer Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 5c9db64888ecabfb170081335f30e3d7192fbcf4 Author: Axel Lin Date: Wed Apr 27 21:41:19 2011 -0700 Input: twl4030-pwrbutton - fix a leak of the IRQ during init failure In twl4030_pwrbutton_probe error path, free_irq() was using NULL rather than the driver data as the data pointer so free_irq() wouldn't have matched. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 60c8ba6478bb483ecd6069f566d02e33d319e72e Author: Axel Lin Date: Wed Apr 27 21:39:57 2011 -0700 Input: omap-keypad - fix a wrong free_irq() parameter In current implementation, free_irq() was using NULL rather than the driver data as the data pointer so free_irq() wouldn't have matched. Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 94bb530c247a29f75fc728e5f8374a83d59d7e45 Author: Axel Lin Date: Wed Apr 27 21:39:20 2011 -0700 Input: qt1070 - add MODULE_DEVICE_TABLE Adding the necessary MODULE_DEVICE_TABLE() information allows the driver to be automatically loaded by udev Signed-off-by: Axel Lin Signed-off-by: Dmitry Torokhov commit 0a14842f5a3c0e88a1e59fac5c3025db39721f74 Author: Eric Dumazet Date: Wed Apr 20 09:27:32 2011 +0000 net: filter: Just In Time compiler for x86-64 In order to speedup packet filtering, here is an implementation of a JIT compiler for x86_64 It is disabled by default, and must be enabled by the admin. echo 1 >/proc/sys/net/core/bpf_jit_enable It uses module_alloc() and module_free() to get memory in the 2GB text kernel range since we call helpers functions from the generated code. EAX : BPF A accumulator EBX : BPF X accumulator RDI : pointer to skb (first argument given to JIT function) RBP : frame pointer (even if CONFIG_FRAME_POINTER=n) r9d : skb->len - skb->data_len (headlen) r8 : skb->data To get a trace of generated code, use : echo 2 >/proc/sys/net/core/bpf_jit_enable Example of generated code : # tcpdump -p -n -s 0 -i eth1 host 192.168.20.0/24 flen=18 proglen=147 pass=3 image=ffffffffa00b5000 JIT code: ffffffffa00b5000: 55 48 89 e5 48 83 ec 60 48 89 5d f8 44 8b 4f 60 JIT code: ffffffffa00b5010: 44 2b 4f 64 4c 8b 87 b8 00 00 00 be 0c 00 00 00 JIT code: ffffffffa00b5020: e8 24 7b f7 e0 3d 00 08 00 00 75 28 be 1a 00 00 JIT code: ffffffffa00b5030: 00 e8 fe 7a f7 e0 24 00 3d 00 14 a8 c0 74 49 be JIT code: ffffffffa00b5040: 1e 00 00 00 e8 eb 7a f7 e0 24 00 3d 00 14 a8 c0 JIT code: ffffffffa00b5050: 74 36 eb 3b 3d 06 08 00 00 74 07 3d 35 80 00 00 JIT code: ffffffffa00b5060: 75 2d be 1c 00 00 00 e8 c8 7a f7 e0 24 00 3d 00 JIT code: ffffffffa00b5070: 14 a8 c0 74 13 be 26 00 00 00 e8 b5 7a f7 e0 24 JIT code: ffffffffa00b5080: 00 3d 00 14 a8 c0 75 07 b8 ff ff 00 00 eb 02 31 JIT code: ffffffffa00b5090: c0 c9 c3 BPF program is 144 bytes long, so native program is almost same size ;) (000) ldh [12] (001) jeq #0x800 jt 2 jf 8 (002) ld [26] (003) and #0xffffff00 (004) jeq #0xc0a81400 jt 16 jf 5 (005) ld [30] (006) and #0xffffff00 (007) jeq #0xc0a81400 jt 16 jf 17 (008) jeq #0x806 jt 10 jf 9 (009) jeq #0x8035 jt 10 jf 17 (010) ld [28] (011) and #0xffffff00 (012) jeq #0xc0a81400 jt 16 jf 13 (013) ld [38] (014) and #0xffffff00 (015) jeq #0xc0a81400 jt 16 jf 17 (016) ret #65535 (017) ret #0 Signed-off-by: Eric Dumazet Cc: Arnaldo Carvalho de Melo Cc: Ben Hutchings Cc: Hagen Paul Pfeifer Signed-off-by: David S. Miller commit 1794d257fa7bab3ea5162f8abdca749996b65343 Author: Chris Wilson Date: Sun Apr 17 07:43:32 2011 +0100 drm: Export the command-line mode parser In the absence of configuration data for providing the fixed mode for a panel, I would like to be able to pass such modes along a separate module paramenter. To do so, I then need to parse a modeline from a string, which drm is already capable of. Export that capability to the drivers. Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit bbb0aef5cfe95fe9b51a7eeba4a440b69037b01f Author: Joe Perches Date: Sun Apr 17 20:35:52 2011 -0700 drm: Verify debug message arguments Add __attribute__((format (printf, 4, 5))) to drm_ut_debug_printk and fix fallout. Signed-off-by: Joe Perches Signed-off-by: Dave Airlie commit 5ad3d8831f0c97257460c11ddcc1cc0466c762d4 Author: Joe Perches Date: Sun Apr 17 20:35:51 2011 -0700 drm: Create and use drm_err Reduce drm text size ~1% by using drm_err and printf extension %pV to emit error messages. Remove unused macro DRM_MEM_ERROR. $ size drivers/gpu/drm/built-in.o* text data bss dec hex filename 361159 9663 256 371078 5a986 drivers/gpu/drm/built-in.o.new 365416 9663 256 375335 5ba27 drivers/gpu/drm/built-in.o.old Signed-off-by: Joe Perches Signed-off-by: Dave Airlie commit cb49ba0bb18632faa7c5ce1dcb095eaa70821c1d Author: Alex Deucher Date: Wed Apr 27 12:56:31 2011 -0400 drm/radeon/kms: remove some underscan leftovers Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7394371d85699a1d6d49b61f65583d6cd902a6a2 Author: Chris Wilson Date: Fri Apr 22 11:03:57 2011 +0100 drm: Take lock around probes for drm_fb_helper_hotplug_event We need to hold the dev->mode_config.mutex whilst detecting the output status. But we also need to drop it for the call into drm_fb_helper_single_fb_probe(), which indirectly acquires the lock when attaching the fbcon. Failure to do so exposes a race with normal output probing. Detected by adding some warnings that the mutex is held to the backend detect routines: [ 17.772456] WARNING: at drivers/gpu/drm/i915/intel_crt.c:471 intel_crt_detect+0x3e/0x373 [i915]() [ 17.772458] Hardware name: Latitude E6400 [ 17.772460] Modules linked in: .... [ 17.772582] Pid: 11, comm: kworker/0:1 Tainted: G W 2.6.38.4-custom.2 #8 [ 17.772584] Call Trace: [ 17.772591] [] ? warn_slowpath_common+0x78/0x8c [ 17.772603] [] ? intel_crt_detect+0x3e/0x373 [i915] [ 17.772612] [] ? drm_helper_probe_single_connector_modes+0xbf/0x2af [drm_kms_helper] [ 17.772619] [] ? drm_fb_helper_probe_connector_modes+0x39/0x4d [drm_kms_helper] [ 17.772625] [] ? drm_fb_helper_hotplug_event+0xa5/0xc3 [drm_kms_helper] [ 17.772633] [] ? output_poll_execute+0x146/0x17c [drm_kms_helper] [ 17.772638] [] ? cfq_init_queue+0x247/0x345 [ 17.772644] [] ? output_poll_execute+0x0/0x17c [drm_kms_helper] [ 17.772648] [] ? process_one_work+0x193/0x28e [ 17.772652] [] ? worker_thread+0xef/0x172 [ 17.772655] [] ? worker_thread+0x0/0x172 [ 17.772658] [] ? worker_thread+0x0/0x172 [ 17.772663] [] ? kthread+0x7a/0x82 [ 17.772668] [] ? kernel_thread_helper+0x4/0x10 [ 17.772671] [] ? kthread+0x0/0x82 [ 17.772674] [] ? kernel_thread_helper+0x0/0x10 Reported-by: Frederik Himpe References: https://bugs.freedesktop.org/show_bug.cgi?id=36394 Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit da05a5a71ad8fc7c51d526151be193b7ef6e6c95 Author: Jesse Barnes Date: Fri Apr 15 13:48:57 2011 -0700 drm: parse color format support for digital displays EDID 1.4 digital displays report the color spaces they support in the features block. Add support for grabbing this data and stuffing it into the display_info struct for driver use. Signed-off-by: Jesse Barnes Reviewed-by: Alex Deucher Signed-off-by: Dave Airlie commit 3b11228b54cc6bda4a72bb22984203c6eff4338a Author: Jesse Barnes Date: Fri Apr 15 12:49:23 2011 -0700 drm: add bit depth parsing EDID 1.4 digital monitors report the bit depth supported in the input field. Add support for parsing this out and storing the info in the display_info structure for use by drivers. [airlied: tweaked to fix inter-patch dependency] Signed-off-by: Jesse Barnes Reviewed-by: Adam Jackson Signed-off-by: Dave Airlie commit 314b2381a79c6bfe3ddc4ba3806ecb6aec27a3db Author: Johan Hedberg Date: Wed Apr 27 10:29:57 2011 -0400 Bluetooth: Add discovering event to the Management interface This patch adds a new event to the Management interface to track when local adapters are discovering remote devices. For now this only tracks BR/EDR discovery procedures. Signed-off-by: Johan Hedberg Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit 14a53664138a8407382745bb470045d1817b7801 Author: Johan Hedberg Date: Wed Apr 27 10:29:56 2011 -0400 Bluetooth: Add basic discovery commands to the management interface This patch adds start_discovery and stop_discovery commands to the management interface. Right now their implementation is fairly simplistic and the parameters are fixed to what user space has defaulted to so far. This is the very initial phase for discovery implementation into the kernel. Next steps include name resolution, LE scanning and bdaddr type handling. Signed-off-by: Johan Hedberg Signed-off-by: Anderson Briglia Signed-off-by: Gustavo F. Padovan commit cf2f90f59bbf2c2a539d171cde6e1dfe72048555 Author: Gustavo F. Padovan Date: Wed Apr 27 18:40:39 2011 -0300 Bluetooth: Don't export l2cap_sock_ops l2cap_sk_ops can be static, it's not used outside l2cap_sock.c Signed-off-by: Gustavo F. Padovan commit 6ff5abbf4e4aa88feb9c2367d4fbd9ea081bf98c Author: Gustavo F. Padovan Date: Mon Apr 25 15:10:41 2011 -0300 Bluetooth: Fix memory leak with L2CAP channels A new l2cap_chan_free() is added to free the channels. Signed-off-by: Gustavo F. Padovan commit 8c1d787be4b62d2d1b6f04953eca4bcf7c839d44 Author: Gustavo F. Padovan Date: Wed Apr 13 20:23:55 2011 -0300 Bluetooth: Move conn to struct l2cap_chan There is no need to the socket deal directly with the channel, most of the time it cares about the channel only. Signed-off-by: Gustavo F. Padovan commit fe4128e0aabc3c748786c00da21e6eff9d3aeddb Author: Gustavo F. Padovan Date: Wed Apr 13 19:50:45 2011 -0300 Bluetooth: Move more vars to struct l2cap_chan In this commit, psm, scid and dcid. Signed-off-by: Gustavo F. Padovan commit 0c1bc5c626e9783034264ccca4b262b3acc628f1 Author: Gustavo F. Padovan Date: Wed Apr 13 17:20:49 2011 -0300 Bluetooth: Move more channel info to struct l2cap_chan In this commit, omtu, imtu, flush_to, mode and sport. It also remove the pi var from l2cap_sock_sendmsg(). Signed-off-by: Gustavo F. Padovan commit 47d1ec6161da2c7b9dbc56a5200fa26b17d5fdc1 Author: Gustavo F. Padovan Date: Wed Apr 13 15:57:03 2011 -0300 Bluetooth: Move more vars to struct l2cap_chan In this commit all ERTM and Streaming Mode specific vars. Signed-off-by: Gustavo F. Padovan commit 4343478f3a4806394136d8141b2e451aa5443f03 Author: Gustavo F. Padovan Date: Tue Apr 12 18:31:57 2011 -0300 Bluetooth: Move some more elements to struct l2cap_chan In this commit sec_level, force_reliable, role_switch and flushable. Signed-off-by: Gustavo F. Padovan commit 77a74c7e0861e6ebac7effe233fd7e83f1ad9ecc Author: Gustavo F. Padovan Date: Tue Apr 12 18:17:14 2011 -0300 Bluetooth: Rename l2cap_do_connect() to l2cap_chan_connect() l2cap_chan_connect() is a much better name and reflects what this functions is doing (or will do once socket dependence is removed from the core). Signed-off-by: Gustavo F. Padovan commit b44500351845e4f6df0d752a8870da246be8216f Author: Gustavo F. Padovan Date: Tue Apr 12 18:15:09 2011 -0300 Bluetooth: Move conf_state to struct l2cap_chan First move of elements depending on user data. Signed-off-by: Gustavo F. Padovan commit 5d41ce1dd91bce01d50aff79786dc5d5eedcfab7 Author: Gustavo F. Padovan Date: Fri Apr 8 15:40:02 2011 -0300 Bluetooth: Refactor L2CAP channel allocation If the allocation happens at l2cap_sock_create() will be able to use the struct l2cap_chan to store channel info that comes from the user via setsockopt. Signed-off-by: Gustavo F. Padovan commit 6be449e53dc3593ec69308d972a9fab852fb9bf1 Author: Mark Brown Date: Tue Apr 26 16:04:37 2011 +0100 ASoC: Implement WM8962 ADC high pass filter configuration Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 91a5fca4b1987324f829efeff3bc5efb2ce6e752 Author: Lars-Peter Clausen Date: Wed Apr 27 18:34:31 2011 +0200 ASoC: Add dapm_find_widget helper This patch adds a helper function for searching DAPM widgets by name. This allows to streamline functions which operate on widgets by name. It also allows to get rid of copy'n'pasted code which was added to fallback to widgets from other contexts if the widget was not found in the current context. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b864a8c9dd93f08ccaa706e075810e9398e25680 Author: Mark Brown Date: Wed Apr 27 18:17:01 2011 +0100 ASoC: Don't specify the DMA driver for Speyside baseband link Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 848dd8beef44df18f2eb61e00981b0692adb801b Author: Mark Brown Date: Wed Apr 27 18:16:32 2011 +0100 ASoC: Add more natural support for no-DMA DAIs Since we can now support multiple platforms allow machines to not specify a platform in a DAI link. Since the rest of the code requires that we have a struct device for all objects we do this by substituting in a dummy device that we register automatically. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 0c61227094b3ddaca2f847ee287c4a2e3762b5a2 Author: Gleb Natapov Date: Tue Apr 26 11:21:32 2011 +0300 x86, setup: Fix EDD3.0 data verification. Check for nonzero path in edd_has_edd30() has no sense. First, it looks at the wrong memory. Device path starts at offset 30 of the info->params structure which is at offset 8 from the beginning of info structure, but code looks at info + 4 instead. This was correct when code was introduced, but around v2.6.4 three more fields were added to edd_info structure (commit 66b61a5c in history.git). Second, even if it will check correct memory it will always succeed since at offset 30 (params->key) there will be non-zero values otherwise previous check would fail. The patch replaces this bogus check with one that verifies checksum. Signed-off-by: Gleb Natapov Link: http://lkml.kernel.org/r/20110426082132.GG2265@redhat.com Signed-off-by: H. Peter Anvin commit 8842c72afe9f954d9462da577a25d4a32bfe0a2b Author: Mark Brown Date: Wed Apr 27 18:58:17 2011 +0100 ASoC: Allow platform drivers to have no ops structure Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit b678027cb77b079bc8e5b94172995d173bdb494b Author: David S. Miller Date: Tue Apr 26 14:58:35 2011 -0700 ipv4: Kill RTO_CONN. It's not used by anything in the kernel, and defined in net/route.h so never exported to userspace. Therefore we can safely remove it. Signed-off-by: David S. Miller commit 2e97e980b5653c23d01c911af6a0ab2d3431d7f1 Author: David S. Miller Date: Tue Apr 26 13:57:47 2011 -0700 ipv4: Remove erroneous check in igmpv3_newpack() and igmp_send_report(). Output route resolution never returns a route with rt_src set to zero (which is INADDR_ANY). Even if the flow key for the output route lookup specifies INADDR_ANY for the source address, the output route resolution chooses a real source address to use in the final route. This test has existed forever in igmp_send_report() and David Stevens simply copied over the erroneous test when implementing support for IGMPv3. Signed-off-by: David S. Miller Reviewed-by: Eric Dumazet commit 2d7192d6cbab20e153c47fa1559ffd41ceef0e79 Author: David S. Miller Date: Tue Apr 26 13:28:44 2011 -0700 ipv4: Sanitize and simplify ip_route_{connect,newports}() These functions are used together as a unit for route resolution during connect(). They address the chicken-and-egg problem that exists when ports need to be allocated during connect() processing, yet such port allocations require addressing information from the routing code. It's currently more heavy handed than it needs to be, and in particular we allocate and initialize a flow object twice. Let the callers provide the on-stack flow object. That way we only need to initialize it once in the ip_route_connect() call. Later, if ip_route_newports() needs to do anything, it re-uses that flow object as-is except for the ports which it updates before the route re-lookup. Also, describe why this set of facilities are needed and how it works in a big comment. Signed-off-by: David S. Miller Reviewed-by: Eric Dumazet commit 15ecd039b7182d725f4294e01f2fb12c3a88db17 Author: Francois Romieu Date: Wed Apr 27 13:52:22 2011 -0700 r8169: fix merge conflict fix. - use adequate MAC_VER id (see 01dc7fec4025f6bb72b6b98ec88b375346b6dbbb) - remove duplicate rtl_firmware_info record - remove duplicate functions Signed-off-by: Francois Romieu Cc: Realtek linux nic maintainers Signed-off-by: David S. Miller commit da0420bee24a1ba54e55a61e95b1a53205d7e62d Author: Vlad Yasevich Date: Tue Apr 26 21:54:17 2011 +0000 sctp: clean up route lookup calls Change the call to take the transport parameter and set the cached 'dst' appropriately inside the get_dst() function calls. This will allow us in the future to clean up source address storage as well. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit af1384703f8a4ff3d245925d6596ef1c5c6e469e Author: Vlad Yasevich Date: Tue Apr 26 21:53:20 2011 +0000 sctp: remove useless arguments from get_saddr() call There is no point in passing a destination address to a get_saddr() call. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 9c6a02f41d10dc9fbf5dd42058e8846f38dd2d9a Author: Vlad Yasevich Date: Tue Apr 26 21:52:27 2011 +0000 sctp: make sctp over IPv6 work with IPsec SCTP never called xfrm_output after it's v6 route lookups so that never really worked with ipsec. Additioanlly, we never passed port nubmers and protocol in the flowi, so any port based policies were never applied as well. Now that we can fixed ipv6 routing lookup code, using ip6_dst_lookup_flow() and pass port numbers. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 9914ae3ca770389a3bec3114d0a07532a7f235dd Author: Vlad Yasevich Date: Tue Apr 26 21:51:31 2011 +0000 sctp: cache the ipv6 source after route lookup The ipv6 routing lookup does give us a source address, but instead of filling it into the dst, it's stored in the flowi. We can use that instead of going through the entire source address selection again. Also the useless ->dst_saddr member of sctp_pf is removed. And sctp_v6_dst_saddr() is removed, instead by introduce sctp_v6_to_addr(), which can be reused to cleanup some dup code. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 625034113bd45c71fb9e329f52f25fef9e6993a3 Author: Weixing Shi Date: Tue Apr 26 21:36:32 2011 +0000 sctp: fix sctp to work with ipv6 source address routing In the below test case, using the source address routing, sctp can not work. Node-A 1)ifconfig eth0 inet6 add 2001:1::1/64 2)ip -6 rule add from 2001:1::1 table 100 pref 100 3)ip -6 route add 2001:2::1 dev eth0 table 100 4)sctp_darn -H 2001:1::1 -P 250 -l & Node-B 1)ifconfig eth0 inet6 add 2001:2::1/64 2)ip -6 rule add from 2001:2::1 table 100 pref 100 3)ip -6 route add 2001:1::1 dev eth0 table 100 4)sctp_darn -H 2001:2::1 -P 250 -h 2001:1::1 -p 250 -s root cause: Node-A and Node-B use the source address routing, and at begining, source address will be NULL,sctp will search the routing table by the destination address, because using the source address routing table, and the result dst_entry will be NULL. solution: walk through the bind address list to get the source address and then lookup the routing table again to get the correct dst_entry. Signed-off-by: Weixing Shi Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit a19be5f0f073525306f6a4b000d90dc84065ed93 Author: Konrad Rzeszutek Wilk Date: Wed Apr 27 12:40:11 2011 -0400 Revert "xen/blkback: Move the plugging/unplugging to a higher level." This reverts commit 97961ef46b9b5a6a7c918a38b898a7b3e49869f4 b/c we lose about 15% performance if we do the unplugging and the end of the reading the ring buffer. commit 9ceb1c3d1fe15c2f9b55eaa8978019ef0e0a06ac Author: Ingo Molnar Date: Thu Apr 28 02:57:53 2011 +0200 perf stat: Fix printout vertical alignment Before: | | Performance counter stats for '/home/mingo/hackbench 20' (5 runs): | | 71,321,607 instructions:u # 0.42 insns per cycle ( +- 0.00% ) | 168,040,009 cycles:u # 0.000 GHz ( +- 0.81% ) | | 1.468002368 seconds time elapsed ( +- 1.33% ) | After: | | Performance counter stats for '/home/mingo/hackbench 20' (5 runs): | | 71,321,607 instructions:u # 0.42 insns per cycle ( +- 0.00% ) | 168,040,009 cycles:u # 0.000 GHz ( +- 0.81% ) | | 1.468002368 seconds time elapsed ( +- 1.33% ) | The last column (stddev noise) is properly aligned, vertically. Cc: Peter Zijlstra Cc: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-7y40wib8n1eqio7hjpn0dsrm@git.kernel.org Signed-off-by: Ingo Molnar commit ce764ab22e40a046065c9417ee5f04ad2a816ac1 Author: Takashi Iwai Date: Wed Apr 27 16:35:23 2011 +0200 ALSA: hda - Add channel-mode support to Realtek auto-parser This patch adds the support of "Channel Mode" enum control to Realtek auto-parser. When line-in or mic-in jacks are capable to output and free DACs are available, the driver allows to switch to multi-channel mode via "Channel Mode" enum switch, as already implemented in some preset cases. Not implemented in all Realtek codecs. Currently, ALC880, 882, 861, 662 and the compatible codecs are supported. Signed-off-by: Takashi Iwai commit 604401a92cb3b93047c199f68a068ccbc5fb70fa Author: Takashi Iwai Date: Wed Apr 27 15:14:23 2011 +0200 ALSA: hda - Minor update for alc662-parser functions Allow alc662_dac_to_mix() and alc662_look_for_dac() to parse down the selector widget that is found in ALC880-type codecs, and rename them to alc_auto_*() accordingly. This is for the next coming multi-io extensions. Signed-off-by: Takashi Iwai commit f562988350361bf4118dd3c3e192dff763b493d9 Author: Tony Jones Date: Wed Apr 27 15:10:49 2011 +0200 audit: acquire creds selectively to reduce atomic op overhead Commit c69e8d9c01db ("CRED: Use RCU to access another task's creds and to release a task's own creds") added calls to get_task_cred and put_cred in audit_filter_rules. Profiling with a large number of audit rules active on the exit chain shows that we are spending upto 48% in this routine for syscall intensive tests, most of which is in the atomic ops. 1. The code should be accessing tsk->cred rather than tsk->real_cred. 2. Since tsk is current (or tsk is being created by copy_process) access to tsk->cred without rcu read lock is possible. At the request of the audit maintainer, a new flag has been added to audit_filter_rules in order to make this explicit and guide future code. Signed-off-by: Tony Jones Acked-by: Eric Paris Signed-off-by: Jiri Kosina commit cb34c207af4944e9c93e2b462e351430f15daad6 Author: Lydia Wang Date: Wed Apr 27 17:44:16 2011 +0800 ALSA: hda - VIA: Fix Smart5.1 isn't useful for 6 audio jacks motherboard. For some motherboards with 5 or 6 audio jacks which had six or eight multiple channels output, smart5.1 item is no useful and should be removed. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 66e6961c8e53c0c0079d5b67faf9b7fe33525892 Author: Emil Tantilov Date: Sat Apr 16 06:12:51 2011 +0000 ixgbe: convert to ethtool set_phys_id Based on the original patch submitted by Stephen Hemminger. This patch makes the following changes: - Change ETHTOOL_ID_INACTIVE return value to 2 (blinks/sec) - Fix restoring of IXGBE_LEDCTL CC: Stephen Hemminger Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit e7fd9253d83703838953160ebb2899c5f6e2eee1 Author: Don Skidmore Date: Sat Apr 16 05:29:14 2011 +0000 ixgbe: fix X540 ethtool loopback test. On X540 we need to set the MACC.FLU bit to 1 in order to force the link up before entering MAC loopback. This is only used in the ethtool loopback test, which was failing. This patch corrects it. Signed-off-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 80e8ff562ad775758634a58e7ea998e011519d98 Author: Jiri Kosina Date: Wed Apr 27 11:20:34 2011 +0200 rtlwifi: don't touch with treewide double semicolon removal This is a partial revert of 6eab04a87677 ("treewide: remove extra semicolons"). Wireless tree removes the code in question in rtlwifi driver, so drop the hunk to avoid conflict. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit c89c7112d347acc3f4a6fe1459bcb6de02594dc9 Author: Don Skidmore Date: Thu Apr 14 07:40:11 2011 +0000 ixgbe: Bump version Bump the driver version number to better match up with the out of tree driver that has similar functionality. Signed-off-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 58be7666a897bb756477da72859f515da35ab805 Author: Don Skidmore Date: Tue Apr 12 09:42:11 2011 +0000 ixgbe: enable SCTP checksum offload for X540 X540 supports SCTP checksum offload so enable it. It was overlooked when X540 support was initially added to the driver. Signed-off-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 7aba7b077f638deb9569e0b36256cd9ae76e468c Author: Yi Zou Date: Sat Apr 9 08:34:12 2011 +0000 ixgbe: do not clear FCoE DDP error status for received ABTS The ddp->err is initialized to be 1 to make sure outstanding DDP context is guaranteed to be invalidated when HW is not auto-invalidating it. However, in case of receiving ABTS response for a DDPed I/O, the ddp->err was cleared, bypassing the invalidating of the DDP context from upper protocol stack when ixgbe_fcoe_ddp_put() is called. This bug is fixed here by updating the error only when FCP_RSP is received. Signed-off-by: Yi Zou Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit b32c8dcc33a74fb4f1e73ed2263504f5947ca76b Author: John Fastabend Date: Tue Apr 12 02:44:55 2011 +0000 ixgbe: fix static functions Define functions as static added C=1 (sparse) to my make line brought these to my attention. Signed-off-by: John Fastabend Signed-off-by: Jeff Kirsher commit 11b1d38e705fa05282661d2b1710f7a81a7f7045 Author: Alexander Duyck Date: Sat Apr 9 05:34:06 2011 +0000 ixgbe: remove ntuple display support This change removes the ntuple display support from ixgbe. The reason for this change is to resolve a number of issues in the way display filtering is handled. I plan to add support for displaying these filters via the network flow classifier interface. Signed-off-by: Alexander Duyck Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 98508c93003d8d24662f32c66dbe4746340c33d4 Author: Emil Tantilov Date: Fri Apr 8 01:24:05 2011 +0000 ixgbe: add LED blink code for x540 Implement blink_led_start and blink_led_stop functions for x540 using the MACC register. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 0665b09f81760c38a882bed65d495a4bd31a5767 Author: Emil Tantilov Date: Fri Apr 1 08:17:19 2011 +0000 ixgbe: add support for 64k EEPROM for 82599 82599 supports up to 32k EEPROM addressing via EERD register. If we wish to address larger EEPROM this have to be done via serial interface. This patch adds function ixgbe_read_eeprom_82599 which selects the best method to read the EEPROM. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 83dfde405322320d538b7087ba741fc9a4780161 Author: Emil Tantilov Date: Thu Mar 31 09:36:24 2011 +0000 ixgbe: register defines cleanup Remove duplicates. Fix incorrect defines. Fix/Update comments. Fix whitespace. Add new register defines. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 50c022e7936354d854091ebdc699872d3432e874 Author: Emil Tantilov Date: Thu Mar 31 09:36:12 2011 +0000 ixgbe: explicitly disable 100H for x540 100H is not supported on this HW, but the bit is set on the PHY. This can result in link at 100F when advertising only 1000F. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit dbf80dcbd8ca0c50f343401fedd2d6200cb8097e Author: Bruce Allan Date: Sat Apr 16 00:34:40 2011 +0000 e1000e: implement ethtool set_phys_id Based on a patch from Stephen Hemminger . The new ethtool set_phys_id takes over controlling the LED for identifying boards. This fixes the lockout during that period. For this device lots of extra infrastructure can also be removed by using set_phys_id. v2: - return blink frequency for parts that do not support blink in h/w - add blink_led function pointers for devices that do support blink in h/w to cleanup the test for this functionality Signed-off-by: Bruce Allan Cc: Stephen Hemminger Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 32673822e440eb92eb334631eb0a199d0c532d13 Merge: fa7b694 5373db8 Author: Ingo Molnar Date: Wed Apr 27 10:38:30 2011 +0200 Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core Conflicts: include/linux/perf_event.h Merge reason: pick up the latest jump-label enhancements, they are cooked ready. Signed-off-by: Ingo Molnar commit ed170924dd0db14b135a388966e0b6fd5188c3e5 Author: Paul Mundt Date: Mon Apr 18 11:45:27 2011 +0900 sh: select IRQ_FORCED_THREADING. With virtual IRQs fixed up with the genirq nothread infrastructure, IRQ threads can be enabled across the board. Signed-off-by: Paul Mundt commit 442f56d917959cbc3fd7a56c5eb43b0d728cad26 Author: Paul Mundt Date: Mon Apr 18 11:45:08 2011 +0900 sh: intc: Set virtual IRQs as nothread. Signed-off-by: Paul Mundt commit cdda911c34006f1089f3c87b1a1f31ab3a4722f2 Author: Jeff Brown Date: Tue Apr 26 22:16:11 2011 -0700 Input: evdev - only signal polls on full packets This patch modifies evdev so that it only becomes readable when the buffer contains an EV_SYN/SYN_REPORT event. On SMP systems, it is possible for an evdev client blocked on poll() to wake up and read events from the evdev ring buffer at the same rate as they are enqueued. This can result in high CPU usage, particularly for MT devices, because the client ends up reading events one at a time instead of reading complete packets. We eliminate this problem by making the device readable only when the buffer contains at least one complete packet. This causes clients to block until the entire packet is available. Signed-off-by: Jeff Brown Signed-off-by: Dmitry Torokhov commit 65f47f1339dfcffcd5837a307172fb41aa39e479 Author: Richard A. Lary Date: Wed Apr 6 12:50:45 2011 +0000 powerpc/eeh: Add support for ibm,configure-pe RTAS call Added support for ibm,configure-pe RTAS call introduced with PAPR 2.2. Signed-off-by: Richard A. Lary Signed-off-by: Benjamin Herrenschmidt commit 44ae3ab3358e962039c36ad4ae461ae9fb29596c Author: Matt Evans Date: Wed Apr 6 19:48:50 2011 +0000 powerpc: Free up some CPU feature bits by moving out MMU-related features Some of the 64bit PPC CPU features are MMU-related, so this patch moves them to MMU_FTR_ bits. All cpu_has_feature()-style tests are moved to mmu_has_feature(), and seven feature bits are freed as a result. Signed-off-by: Matt Evans Signed-off-by: Benjamin Herrenschmidt commit eca590f402332ab873d13f2d8d00fa0b91cfff36 Author: Anton Blanchard Date: Thu Apr 7 01:54:07 2011 +0000 powerpc/rtas: Only sleep in rtas_busy_delay if we have useful work to do RTAS returns extended error codes as a hint of how long the OS might want to wait before retrying a call. If we have nothing else useful to do we may as well call back straight away. This was found when testing the new dynamic dma window feature. Firmware split the zeroing of the TCE table into 32k chunks but returned 9901 (which is a suggested wait of 10ms). All up this took about 10 minutes to complete since msleep is jiffies based and will round 10ms up to 20ms. With the patch below we take 3 seconds to complete the same test. The hint firmware is returning in the RTAS call should definitely be decreased, but even if we slept 1ms each iteration this would take 32s. Signed-off-by: Anton Blanchard Acked-by: Nishanth Aravamudan Signed-off-by: Benjamin Herrenschmidt commit a7b8ad405862fb10e496ce839d423dfc94ac821b Author: Michael Ellerman Date: Thu Apr 7 21:22:23 2011 +0000 powerpc/book3e: Fix extlb size The calculation of the size for the exception save area of the TLB miss handler is wrong, luckily it's too big not too small. Rework it to make it a bit clearer, and also correct. We want 3 save areas, each EX_TLB_SIZE _bytes_. Signed-off-by: Michael Ellerman Acked-by: Kumar Gala Signed-off-by: Benjamin Herrenschmidt commit b91e136cdf88e19e998dbf4631ead266de4b80b5 Author: Michael Ellerman Date: Thu Apr 7 21:56:04 2011 +0000 powerpc: Use MSR_64BIT in sstep.c, fix kprobes on BOOK3E We check MSR_SF a lot in sstep.c, to decide if we need to emulate the truncation of values when running in 32-bit mode. Factor out that code into a helper, and convert it and the other uses to use MSR_64BIT. This fixes a bug on BOOK3E where kprobes would end up returning to a 32-bit address, because regs->nip was truncated, because (msr & MSR_SF) was false. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 9f0b079320ad1cc71ad7ea4e0ed0b64cd72bbd6d Author: Michael Ellerman Date: Thu Apr 7 21:56:03 2011 +0000 powerpc: Use MSR_64BIT in places Use the new MSR_64BIT in a few places. Some of these are already ifdef'ed for BOOKE vs BOOKS, but it's still clearer, MSR_SF does not immediately parse as "MSR bit for 64bit". Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 9d4a2925c290a053bb279e75e7a649069fdcaf6b Author: Michael Ellerman Date: Thu Apr 7 21:56:02 2011 +0000 powerpc: Add MSR_64BIT The MSR bit which indicates 64-bit-ness is different between server and booke, so add a #define which gives you the right mask regardless. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 0407a31429500e7e56da33a326ca7cf35c2c9d65 Author: Wanlong Gao Date: Sat Apr 9 08:09:46 2011 +0000 powerpc: Fix build warning of the defconfigs BT_L2CAP and BT_SCO have changed to bool . Value 'm' has invalid . Signed-off-by: Wanlong Gao Signed-off-by: Benjamin Herrenschmidt commit b618d2f043506e45b1d72b48a4ff7cb5b1a7011c Author: Geert Uytterhoeven Date: Sat Apr 9 22:59:07 2011 +0000 powerpc/ps3: Update debug message for irq_set_chip_data() commit ec775d0e70eb6b7116406b3441cb8501c2849dd2 ("powerpc: Convert to new irq_* function names") changed a call from set_irq_chip_data() to irq_set_chip_data(), but forgot to update the corresponding debug message Signed-off-by: Geert Uytterhoeven Acked-by: Geoff Levand Signed-off-by: Benjamin Herrenschmidt commit 73706c3283d755d3725c6a48a18e677a15ced8be Author: Michael Ellerman Date: Sun Apr 10 20:26:15 2011 +0000 powerpc/irq: Dump chip data pointer in virq_mapping This can be useful for differentiating interrupts on the same host but with different chip data. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit e70606eb9beb683ce3991936267deab64ab56d95 Author: Michael Ellerman Date: Sun Apr 10 20:42:05 2011 +0000 powerpc/numa: Look for ibm, associativity-reference-points at the root If we don't find ibm,associativity-reference-points as a child of /rtas, look for it at the root of the tree instead. We use this on Book3E where we have no RTAS but still use the sPAPR conventions for NUMA. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 69b123684b50040b0926eed1e02795dac8cb9587 Author: Michael Ellerman Date: Mon Apr 11 21:25:02 2011 +0000 powerpc/pci: Properly initialize IO workaround "private" Even when no initfunc is provided. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit d1109b7529f362c06c47140ae09dbd2b853ffddc Author: Michael Ellerman Date: Mon Apr 11 21:25:02 2011 +0000 powerpc/pci: Make IO workarounds init implicit when first bus is registered Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 3cc30d0726d258ac336283bcde66a8ab58283b61 Author: Michael Ellerman Date: Mon Apr 11 21:25:01 2011 +0000 powerpc/pci: Move IO workarounds to the common kernel dir Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 21176fed25c3b0cb17c6c42d71b4e3d68b8f9dd4 Author: Michael Ellerman Date: Mon Apr 11 21:25:01 2011 +0000 powerpc/pci: Split IO vs MMIO indirect access hooks The goal is to avoid adding overhead to MMIO when only PIO is needed Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit e297d9dd5cfafbeb2e7585bb444941848e030454 Author: Nishanth Aravamudan Date: Mon Mar 14 10:36:11 2011 +0000 cxgb4: use pgprot_writecombine() on powerpc Commit fe3cc0d99de6a9bf99b6c279a8afb5833888c1f7 ("powerpc: Add pgprot_writecombine") in benh's tree exposes the pgprot_writecombine() API to drivers on powerpc. cxgb4 has an open-coded version of the same, so use the common API now that it's available. Signed-off-by: Nishanth Aravamudan Cc: Steve Wise Cc: Anton Blanchard Acked-by: Steve Wise Signed-off-by: Benjamin Herrenschmidt commit efcac6589a277c10060e4be44b9455cf43838dc1 Author: Alexey Kardashevskiy Date: Wed Mar 2 15:18:48 2011 +0000 powerpc: Per process DSCR + some fixes (try#4) The DSCR (aka Data Stream Control Register) is supported on some server PowerPC chips and allow some control over the prefetch of data streams. This patch allows the value to be specified per thread by emulating the corresponding mfspr and mtspr instructions. Children of such threads inherit the value. Other threads use a default value that can be specified in sysfs - /sys/devices/system/cpu/dscr_default. If a thread starts with non default value in the sysfs entry, all children threads inherit this non default value even if the sysfs value is changed later. Signed-off-by: Alexey Kardashevskiy Signed-off-by: Benjamin Herrenschmidt commit f0aae3238fc1c28b543cbaaa0e7c5d57685f5f89 Author: Jack Miller Date: Thu Apr 14 22:32:05 2011 +0000 powerpc/book3e: Flush IPROT protected TLB entries leftover by firmware When we set up the TLB for ourselves on Book3E, we need to flush out any old mappings established by the firmware or bootloader. At present we attempt this with a tlbilx to flush everything, but this will leave behind any entries with the IPROT bit set. There are several good reason firmware might establish mappings with IPROT, and in fact ePAPR compliant firmwares are required to establish their initial mapped area with IPROT. This patch, therefore adds more complex code to scan through the TLB upon entry and flush away any entries that are not our own. Signed-off-by: Jack Miller Signed-off-by: David Gibson Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 1a51dde139d5305b2592c716c50c005d6ab9624b Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:32:04 2011 +0000 powerpc/book3e: Use way 3 for linear mapping bolted entry An erratum on A2 can lead to the bolted entry we insert for the linear mapping being evicted, to avoid that write the bolted entry to way 3. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit ca1769f7a372898f5e3dbb8e4ff53f53f0626ef4 Author: Michael Ellerman Date: Thu Apr 14 22:32:04 2011 +0000 powerpc: Index crit/dbg/mcheck stacks using cpu number on 64bit In exc_lvl_ctx_init() we index into the crit/dbg/mcheck stacks using the hard cpu id, but that assumes the hard cpu id is zero based and contiguous. That is not the case on A2. The root of the problem is that the 32bit code has no equivalent of the paca to allow it to do the hard->soft mapping in assembler. Until the 32bit code is updated to handle that, index the stacks using the soft cpu ids on 64bit and hard on 32 bit. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit bd491781097f150687906008d639936a0c00ed90 Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:32:02 2011 +0000 powerpc: Add TLB size detection for TYPE_3E MMUs Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 76b4eda866c4936af8d696f040abea56bf688e16 Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:32:01 2011 +0000 powerpc: Add A2 cpu support Add the cputable entry, regs and setup & restore entries for the PowerPC A2 core. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 3d51406d08649d166b3f3d552da2bdfbcf46fcde Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:27 2011 -0700 Staging: hv: Get rid of the priv pointer in struct hv_driver Now that we have gotten rid of all uses of the priv element in struct hv_driver, get rid of the priv pointer. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit de632a2b5fe6143297a18fe569b9e2a83678c210 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:24 2011 -0700 Staging: hv: Cleanup vmbus_match() In preparation for getting rid of the priv element from struct hv_driver, cleanup vmbus_match - the setting of the drv field in struct hv_device is not needed. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 28e7f2a85d99ddcf82f01ca0993a8eb55d23d3c0 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:23 2011 -0700 Staging: hv: Get rid of the references to the priv element of struct hv_driver in storvsc_drv.c In preparation for getting rid of the priv element from struct hv_driver, get rid of the references to the priv element of struct hv_driver in storvsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 779b4d17c177de592141ab01d2a66d025ff4d238 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:22 2011 -0700 Staging: hv: Get rid of the references to the priv element of struct hv_driver in net driver In preparation for getting rid of the priv element from struct hv_driver, get rid of the references to the priv element of struct hv_driver in network driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9f838864bdfaa98fa1ad4f69350e7c249e210a41 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:21 2011 -0700 Staging: hv: Introduce a function to map a generic driver pointer to a pointer to struct netvsc_driver In preparation for getting rid of the priv element from struct hv_driver, introduce a function to map a generic driver pointer to a pointer to struct netvsc_driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c2e138a6ea31eadeee59dd49ad39df8eefedaa71 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:20 2011 -0700 Staging: hv: Get rid of the references to the priv element of struct hv_driver in hv_mouse.c In preparation for getting rid of the priv element from struct hv_driver, get rid of the references to the priv element of struct hv_driver in hv_mouse.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 786930b3c570eeb04382bca18b64e9e25791e4fc Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:19 2011 -0700 Staging: hv: Get rid of the references to the priv element of struct hv_driver in block driver In preparation for getting rid of the priv element from struct hv_driver, get rid of the references to the priv element of struct hv_driver in blkvsc_drv.c and storvsc.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0724e5fd77b44338fb12af35f0577bd4142903e8 Author: K. Y. Srinivasan Date: Tue Apr 26 09:20:18 2011 -0700 Staging: hv: Introduce a function to map a generic driver pointer to a pointer to storvsc_driver_object In preparation for getting rid of the priv element from struct hv_driver, introduce a function that maps a generic struct driver pointer to struct storvsc_driver_object. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a12c27c5eac8e0b1ee6988c32a29100abe1a99ef Author: Kenji Toyama Date: Tue Apr 26 12:13:43 2011 +0800 Staging: xgifb: Fixed style issues. Not all warnings/errors were silenced, some of them are related to simple printk() messages that imho should not be split across multiple lines (it makes it harder to grep for example), and some of them are related to long lines that are pretty much impossible to split without proper code refactoring. Resubmitting this patch because of conflicts. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 14e43851deb2c31ccec64083103282553d8c503f Author: Kenji Toyama Date: Tue Apr 26 12:12:39 2011 +0800 Staging: xgifb: Fixed style issues. Now there's only 10 errors and 1 warning given by checkpatch.pl, and these are related initialization of statics. The only warning left can be safely ignored I believe. I'm resending this patch as the previous one was conflicting with the newer version updated by Aaro Koskinen. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 41ee9d8c1c3137e05ec445de9c122911ae085d45 Author: Franky Lin Date: Mon Apr 25 19:34:08 2011 -0700 staging: brcm80211: Remove si sb utils from brcmfmac si/sb utility is removed from Broadcom fullmac driver. All unused files are removed. Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit c05df636482fb8c6150775b3d25b99e920bccede Author: Franky Lin Date: Mon Apr 25 19:34:07 2011 -0700 staging: brcm80211: Remove siutils dependence from dhd_sdio.c Remove siutils related functions and resources from dhd_sdio.c Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit cee3cf4bc34062e64ba7151fd64d3aa50495975c Author: Franky Lin Date: Mon Apr 25 19:34:06 2011 -0700 staging: brcm80211: Add dhdsdio_chip_detach in dhd_sdio.c Add dhdsdio_chip_detach to replace si_detach for si/sb utils removal Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 5d0d7a980785f796d3402a7e1c552fe80397d4cc Author: Franky Lin Date: Mon Apr 25 19:34:05 2011 -0700 staging: brcm80211: Move sdiod strength init to dhd_sdio.c Move si_sdiod_drive_strength_init to dhd_sdio and rename to dhdsdio_sdiod_drive_strength_init for dhd_pmu.c removal Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit eb5dc511d483dc53042aa72c8f7374e698d7d24b Author: Franky Lin Date: Mon Apr 25 19:34:04 2011 -0700 staging: brcm80211: Remove siutils dependency of dhdsdio_download_state Use dhdsdio_chip_disablecore and dhd_sdio_chip_resetcore to replace siutils functions used in dhdsdio_download_state Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 9a7adcf5c6dea63d2e47e6f6d2f7a6c9f48b9337 Author: John Stultz Date: Tue Jan 11 09:54:33 2011 -0800 timers: Posix interface for alarm-timers This patch exposes alarm-timers to userland via the posix clock and timers interface, using two new clockids: CLOCK_REALTIME_ALARM and CLOCK_BOOTTIME_ALARM. Both clockids behave identically to CLOCK_REALTIME and CLOCK_BOOTTIME, respectively, but timers set against the _ALARM suffixed clockids will wake the system if it is suspended. Some background can be found here: https://lwn.net/Articles/429925/ The concept for Alarm-timers was inspired by the Android Alarm driver (by Arve Hjønnevåg) found in the Android kernel tree. See: http://android.git.kernel.org/?p=kernel/common.git;a=blob;f=drivers/rtc/alarm.c;h=1250edfbdf3302f5e4ea6194847c6ef4bb7beb1c;hb=android-2.6.36 While the in-kernel interface is pretty similar between alarm-timers and Android alarm driver, the user-space interface for the Android alarm driver is via ioctls to a new char device. As mentioned above, I've instead chosen to export this functionality via the posix interface, as it seemed a little simpler and avoids creating duplicate interfaces to things like CLOCK_REALTIME and CLOCK_MONOTONIC under alternate names (ie:ANDROID_ALARM_RTC and ANDROID_ALARM_SYSTEMTIME). The semantics of the Android alarm driver are different from what this posix interface provides. For instance, threads other then the thread waiting on the Android alarm driver are able to modify the alarm being waited on. Also this interface does not allow the same wakelock semantics that the Android driver provides (ie: kernel takes a wakelock on RTC alarm-interupt, and holds it through process wakeup, and while the process runs, until the process either closes the char device or calls back in to wait on a new alarm). One potential way to implement similar semantics may be via the timerfd infrastructure, but this needs more research. There may also need to be some sort of sysfs system level policy hooks that allow alarm timers to be disabled to keep them from firing at inappropriate times (ie: laptop in a well insulated bag, mid-flight). CC: Arve Hjønnevåg CC: Thomas Gleixner CC: Alessandro Zummo Acked-by: Arnd Bergmann Signed-off-by: John Stultz commit ff3ead96d17f47ee70c294a5cc2cce9b61e82f0f Author: John Stultz Date: Tue Jan 11 09:42:13 2011 -0800 timers: Introduce in-kernel alarm-timer interface This provides the in kernel interface and infrastructure for alarm-timers. Alarm-timers are a hybrid style timer, similar to hrtimers, but when the system is suspended, the RTC device is set to fire and wake the system for when the soonest alarm-timer expires. The concept for Alarm-timers was inspired by the Android Alarm driver (by Arve Hjønnevåg) found in the Android kernel tree. See: http://android.git.kernel.org/?p=kernel/common.git;a=blob;f=drivers/rtc/alarm.c;h=1250edfbdf3302f5e4ea6194847c6ef4bb7beb1c;hb=android-2.6.36 This in-kernel interface should be fairly compatible with the Android alarm driver in-kernel interface, but has the advantage of utilizing the new RTC timerqueue code instead of doing direct RTC manipulation. CC: Arve Hjønnevåg CC: Thomas Gleixner CC: Alessandro Zummo Acked-by: Arnd Bergmann Signed-off-by: John Stultz commit 88d19cf37952a7e1e38b2bf87a00f0e857e63180 Author: John Stultz Date: Mon Jan 3 18:59:43 2011 -0800 timers: Add rb_init_node() to allow for stack allocated rb nodes In cases where a timerqueue_node or some structure that utilizes a timerqueue_node is allocated on the stack, gcc would give warnings caused by the timerqueue_init()'s calling RB_CLEAR_NODE, which self-references the nodes uninitialized data. The solution is to create an rb_init_node() function that zeros the rb_node structure out and then calls RB_CLEAR_NODE(), and then call the new init function from timerqueue_init(). CC: Thomas Gleixner Acked-by: Arnd Bergmann Signed-off-by: John Stultz commit 304529b1b6f8612ccbb4582e997051b48b94f4a4 Author: John Stultz Date: Fri Apr 1 14:32:09 2011 -0700 time: Add timekeeping_inject_sleeptime Some platforms cannot implement read_persistent_clock, as their RTC devices are only accessible when interrupts are enabled. This keeps them from being used by the timekeeping code on resume to measure the time in suspend. The RTC layer tries to work around this, by calling do_settimeofday on resume after irqs are reenabled to set the time properly. However, this only corrects CLOCK_REALTIME, and does not properly adjust the sleep time value. This causes btime in /proc/stat to be incorrect as well as making the new CLOCK_BOTTTIME inaccurate. This patch resolves the issue by introducing a new timekeeping hook to allow the RTC layer to inject the sleep time on resume. The code also checks to make sure that read_persistent_clock is nonfunctional before setting the sleep time, so that should the RTC's HCTOSYS option be configured in on a system that does support read_persistent_clock we will not increase the total_sleep_time twice. CC: Arve Hjønnevåg CC: Thomas Gleixner Acked-by: Arnd Bergmann Signed-off-by: John Stultz commit 013c3ca184851078b9c04744efd4d47e52c6ecf8 Author: Konrad Rzeszutek Wilk Date: Tue Apr 26 16:24:18 2011 -0400 xen/blkback: Stick REQ_SYNC on WRITEs to deal with CFQ I/O scheduler. If one runs a simple fio request with random read/write with a 20%/80% ratio, the numbers are incredibly bad when using the CFQ scheduler. IOmeter | | | | 64K, randrw | NOOP | CFQ | deadline | randrwmix=80 | | | | --------------+-------+------+----------+ blkback |103/27 |32/10 | 102/27 | --------------+-------+------+----------+ QEMU qdisk |103/27 |102/27| 102/27 | The problem as explained by Vivek Goyal was: ".. that difference is that sync vs async requests. In the case of a kernel thread submitting IO, [..] all the WRITES might be being considered as async and will go in a different queue. If you mix those with some READS, they are always sync and will go in differnet queue. In presence of sync queue, CFQ will idle and choke up WRITES in an attempt to improve latencies of READs. In case of AIO [note: this is what QEMU qdisk is doing] , [..] it is direct IO and both READS and WRITES will be considered SYNC and will go in a single queue and no choking of WRITES will take place." The solution is quite simple, tack on REQ_SYNC (which is what the WRITE_ODIRECT macro points to) and the numbers go back up. Suggested-by: Vivek Goyal commit c989bb15e95a93e20fc86783264f6298116e8651 Author: Luis R. Rodriguez Date: Mon Apr 25 18:35:48 2011 -0700 cfg80211: fix regresion on reg user timeout The patch "cfg80211: add a timer for invalid user reg hints" introduced a regression for the case where a secondary identical regulatory hint from a user is sent. What would happen is the second hint would schedule delayed work in to catch a timeout but since we are never processing it given that the hint was already applied we'd always hit the timeout and and restore regulatory settings back to world regulatory domain. This is fixed by simply avoiding sheduling work if the hint was already applied. Tested-by: Felix Fietkau Reported-by: Felix Fietkau Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit d3bb1429a2c1470d1f84646c00e34dc6784ee06e Author: Larry Finger Date: Mon Apr 25 13:23:20 2011 -0500 rtlwifi: rtl8192ce: rtl8192cu: Fix most sparse warnings Fix most sparse warnings in rtlwifi, rtl8192ce and rtl8192cu drivers. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 76c34f910a5c99a402de5068444563d4c151e794 Author: Chaoming_Li Date: Mon Apr 25 12:54:05 2011 -0500 rtlwifi: rtl8192ce: Change rtl8192ce routines phy and trx and modify rtl8192cu for addition of rtl8192se and rtl8192de Change rtl8192ce routines phy and trx for addition of RTL8192SE and RTL8192DE. In addition, make necessary modifications to rtl8192cu. This patch also removes the temporary patches needed to enable intermediate steps to build without error. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit e0b5a5078675f58736787982af811244eeb98081 Author: Chaoming_Li Date: Mon Apr 25 12:54:00 2011 -0500 rtlwifi: rtl8192ce: Change phy and rc routines for addition of rtl8192se and rtl8192de Change rtl8192ce routines phy and rc for addition of RTL8192SE and RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 2b8359f85b81dfe02a631e570582290859191756 Author: Chaoming_Li Date: Mon Apr 25 12:53:55 2011 -0500 rtlwifi: rtl8192ce: Change sw and LED routines for addition of rtl8192se and rtl8192de Change rtl8192ce sw and LED routines for addition of RTL8192SE and RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f73b279cdb5fc850b4be355307905f2914b2c0bb Author: Chaoming_Li Date: Mon Apr 25 12:53:50 2011 -0500 rtlwifi: rtl8192ce: Change hw routine for addition of rtl8192se and rtl8192de Change rtl8192ce hw routine for addition of RTL8192SE and RTL8192DE. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c07ccff326a2b3d81520e8c7a8e0f5e8cbc77416 Author: Chaoming_Li Date: Mon Apr 25 12:53:45 2011 -0500 rtlwifi: rtl8192c-common: Change common PHY routines for addition of rtl8192se and rtl8192de Change common PHY routines for addition of RTL8192SE and RTL8192DE code. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3ac5e26a1e935469a8bdae1d624bc3b59d1fcdc5 Author: Chaoming_Li Date: Mon Apr 25 12:53:40 2011 -0500 rtlwifi: rtl8192c-common: Change common firmware routines for addition of rtl8192se and rtl8192de Change common firmware routines for addition of RTL8192SE and RTL8192DE code. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit beb5bc4020436ee50bd50e82c5a64eb087f0e3b3 Author: Chaoming_Li Date: Mon Apr 25 12:53:35 2011 -0500 rtlwifi: rtl8192c-common: Convert common dynamic management routines for addition of rtl8192se and rtl8192de Convert common dynamic management routines for addition of RTL8192SE and RTL8192DE code. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit d93cdee975bc6894b0a7c3f3eb4f2b34303163f8 Author: Chaoming_Li Date: Mon Apr 25 12:53:29 2011 -0500 rtlwifi: Convert usb routines for addition of rtl8192se and rtl8192de Convert usb routines for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 81b290451122e93b9731bc333c6be2e49fa5bc0c Author: Chaoming_Li Date: Mon Apr 25 12:53:24 2011 -0500 rtlwifi: Convert regulatory domain routines for addition of rtl8192se and rtl8192de Convert regulatory domain routines for addition of RTL8192SE and RTL8192DE code. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c6a9de0823e6f1335c93594f7b904f345860dafc Author: Chaoming_Li Date: Mon Apr 25 12:53:19 2011 -0500 rtlwifi: Convert rc routines for addition of rtl8192se and rtl8192de Convert rc routines for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit cc7dc0c4ff7c091fb70ff0436f7e3b557e0ac1c3 Author: Chaoming_Li Date: Mon Apr 25 12:53:14 2011 -0500 rtlwifi: Convert ps routines for addition of rtl8192se and rtl8192de Convert ps routines for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit c7cfe38ee0f946415b0b39e3905a91a51d99cf7d Author: Chaoming_Li Date: Mon Apr 25 13:23:15 2011 -0500 rtlwifi: Convert pci routines for addition of rtl8192se and rtl8192de Convert pci routines for addition of RTL8192SE and RTL8192DE code These changes allow the upper-level driver to specify the BAR to be used as it is different for rtl8192se than for the others. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 0baa0fd76f3f5a134461d6cf30294f6bb1bb824c Author: Chaoming_Li Date: Mon Apr 25 13:23:10 2011 -0500 rtlwifi: Convert core routines for addition of rtl8192se and rtl8192de Convert core routines for addition of RTL8192SE and RTL8192DE code. Additional files are changed to allow compilation. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 46a6272c20d4f639093ad2ad8db1eba622187bee Author: Chaoming_Li Date: Mon Apr 25 13:23:05 2011 -0500 rtlwifi: Change cam routines for addition of rtl8192se and rtl8192de Change cam routines for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit acd48572c396364bb480175d7de83944eefa2563 Author: Chaoming_Li Date: Mon Apr 25 12:52:54 2011 -0500 rtlwifi: Change base routines for addition of rtl8192se and rtl8192de Change base routines for addition of RTL8192SE and RTL8192DE code. Additional files are modified to allow compilation. Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 3dad618b7b929010f05b179bbc4d56e3d5956083 Author: Chaoming_Li Date: Mon Apr 25 12:52:49 2011 -0500 rtlwifi: Change wifi.h for rtl8192se and rtl8192de Change wifi.h for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit e25f51d4f9f8c45382a33b6283418be46425195c Author: Chaoming_Li Date: Mon Apr 25 12:52:44 2011 -0500 rtlwifi: Change efuse routines addition of RTL8192SE and RTL8192DE Change efuse routines for addition of RTL8192SE and RTL8192DE code Signed-off-by: Chaoming_Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 0915cba394268e68b6a8242b15f8c7283453df43 Author: Rajkumar Manoharan Date: Mon Apr 25 15:56:17 2011 +0530 mac80211: Fix warnings due to -Wunused-but-set-variable These warnings are exposed by gcc 4.6. net/mac80211/sta_info.c: In function 'sta_info_cleanup_expire_buffered': net/mac80211/sta_info.c:590:32: warning: variable 'sdata' set but not used net/mac80211/ibss.c: In function 'ieee80211_rx_mgmt_auth_ibss': net/mac80211/ibss.c:43:34: warning: variable 'status_code' set but not used net/mac80211/work.c: In function 'ieee80211_send_assoc': net/mac80211/work.c:203:9: warning: variable 'len' set but not used net/mac80211/tx.c: In function '__ieee80211_parse_tx_radiotap': net/mac80211/tx.c:1039:35: warning: variable 'sband' set but not used net/mac80211/mesh.c: In function 'ieee80211_mesh_rx_queued_mgmt': net/mac80211/mesh.c:616:28: warning: variable 'ifmsh' set but not used ... Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 334df731976ee4042c9bf18b2eec9c0a71f45389 Author: Christian Lamparter Date: Sun Apr 24 20:41:16 2011 +0200 mac80211: fix too early reorder release timer The release timer has to expire "just" after a frame is up for release. Currently, if the timer callback starts on time, the "!time_after" check above will start a new timer instead of releasing the frames. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit caf1eae206688210f61f3b48627ce4ca3c709784 Author: Christian Lamparter Date: Sun Apr 24 17:44:19 2011 +0200 carl9170: improve unicast PS buffering Using the ieee80211_sta_block allows the PS code to handle awake->doze->awake transitions of our clients in a race-free manner. Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit be8d98eab81d1f6445461a1631513f7091805e53 Author: Christian Lamparter Date: Sun Apr 24 17:22:59 2011 +0200 p54: implement multicast filter "For best CPU usage and power consumption, having as few frames as possible percolate through the stack is desirable. Hence, the hardware should filter as much as possible." Note: Not all firmwares include the multicast filter feature and the stack does not filter them either. The ARP filter on the other hand was dropped from the patch since it does not work correctly: Quote from: Max Filippov "In the ARP case, when there's no other traffic on p54spi, all ARP requests are dropped. But if there's some egress traffic from p54spi, filter seems to work correctly: only ARP requests that match filter pass through. In the multicast case filter seems to work correctly, but it treats broadcast as subject to that filtering too. By default only 01:00:5e:00:00:01 gets into priv->mc_maclist, so we miss all broadcasts. These two filters seem to interfere: - if we set ARP filter and multicast filter without bc => we miss all ARPs if there's no egress traffic; - if we set ARP filter and multicast filter with bc or don't set mc filter at all => we get all ARPs. This effect does not depend on filter setup order." Signed-off-by: Christian Lamparter Tested-by: Max Filippov Signed-off-by: John W. Linville commit 04ad1fb2640a4f23e99ccb705c179d64abac03f2 Author: Rafał Miłecki Date: Sat Apr 23 19:30:29 2011 +0200 ssb: update reject bit for Target State Low My 14e4:4315 is SSB_IDLOW_SSBREV_26: read32 0xfaafcff8 -> 0x600422d5 My 14e4:4328 is SSB_IDLOW_SSBREV_24: read32 0xfaafcff8 -> 0x400422c5 My 14e4:432b is SSB_IDLOW_SSBREV_26 again: read32 0xfaafcff8 -> 0x600422d5 For all of them wl driver is using 0x2 reject bit: write32(0xf98) <- 0x00010002 So it seems SSB 2.3 is the exception using another bit. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit a6ef8143839a8640532ba473906beb1a38b03e29 Author: Rafał Miłecki Date: Sat Apr 23 19:30:28 2011 +0200 ssb: mark bus as powered up earlier ssb_chipco_set_clockmode may want to touch CC registers to control power of the bus. However touching registers without powered_up set causes warnings. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 25f63a5a37f9cd925a01840bbb4c3ad9d5034175 Author: Adrian Chadd Date: Sat Apr 23 12:48:53 2011 +0800 ath9k: fix AR9160 xpaBiasLvlFreq endianness handling The xpaBiasLvlFreq parameter array is made up of 16 bit words which aren't byte-swapped like the other 16-bit eeprom parameters are. It's only used by the AR9160. Signed-off-by: Adrian Chadd Signed-off-by: John W. Linville commit 92c6f76c6d44a869bf3b252dbb2e358ae7399a96 Author: Rajkumar Manoharan Date: Fri Apr 22 14:50:39 2011 +0530 ath9k: set beacon related ps flags on bss_info change Requesting beacon sync up to configure beacon timers properly in hw, has be done after doing beacon config with default values. Setting the flags in beacon config is causing the device to not enter into network sleep on idle state. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 3782c69d6e35e698bcc2aefe803e62d06c5c4997 Author: Rajkumar Manoharan Date: Sun Apr 24 21:34:39 2011 +0530 ath9k_hw: Fix Tx IQ Calibration hang issue in AR9003 chips On AR9003 chips, doing three IQ calibrations will possibly cause chip in stuck state. In noisy environment, chip could receive a packet during the middle of three calibrations and it causes the conflict of HW access and the eventual failure. It also causes IQ calibration outliers which results in poor Tx EVM. The IQ Cal procedure is after resetting the chip, run IQ cal 3 times per each cal cycle and find the two closest readings and average of two. The advantage of running Tx IQ cal more than once is that we can compare calibration results for the same gain setting over multiple iterations. Most of the cases the IQ failures were observed after first pass. For the AR9485 and later chips, Tx IQ Calibration is performed along with AGC cal. But for pre-AR9485 chips, Tx IQ cal HW has to be separated from the rest of calibration HW to avoid chip hang. After all calibrations are done in HW, we can start SW post-processing. By doing this way, we minimize the SW difference among all chips. The order of calibration (run IQ cal before other calibration) is also needed to avoid chip hang for chips before AR9485. This issue was originally observed with AR9382. During the issue kernel log was filled with following message ath: timeout (100000 us) on reg 0xa640: 0x00000001 & 0x00000001 != 0x00000000 ath: timeout (100000 us) on reg 0xa2c4: 0x00158dd9 & 0x00000001 != 0x00000000 ath: Unable to reset channel (2412 MHz), reset status -5 ath: Unable to set channel Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 429576b97c623b9c4e3375fb7c37bce377f51e68 Merge: 9835a30 069f40f Author: John W. Linville Date: Tue Apr 26 15:39:10 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 2bd93d7af1581d40e3c4b25242472661cb7c637a Merge: 64cad2a 0972ddb Author: David S. Miller Date: Tue Apr 26 12:16:46 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Resolved logic conflicts causing a build failure due to drivers/net/r8169.c changes using a patch from Stephen Rothwell. Signed-off-by: David S. Miller commit c6264deff7ea6125492b442edad885e5429679af Author: Ingo Molnar Date: Wed Apr 27 13:50:47 2011 +0200 perf stat: Add -d/--detailed flag to run with a lot of events Add the new -d/--detailed flag, which generates a pretty detailed event list: Performance counter stats for './hackbench 10' (10 runs): 1514.287888 task-clock # 10.897 CPUs utilized ( +- 3.05% ) 39,698 context-switches # 0.026 M/sec ( +- 12.19% ) 8,147 CPU-migrations # 0.005 M/sec ( +- 16.55% ) 17,918 page-faults # 0.012 M/sec ( +- 0.37% ) 2,944,504,050 cycles # 1.944 GHz ( +- 3.89% ) (32.60%) 1,043,971,283 stalled-cycles # 35.45% of all cycles are idle ( +- 5.22% ) (44.48%) 1,655,906,768 instructions # 0.56 insns per cycle # 0.63 stalled cycles per insn ( +- 1.95% ) (55.09%) 338,832,373 branches # 223.757 M/sec ( +- 1.96% ) (64.47%) 3,892,416 branch-misses # 1.15% of all branches ( +- 5.49% ) (73.12%) 606,410,482 L1-dcache-loads # 400.459 M/sec ( +- 1.29% ) (71.21%) 31,204,395 L1-dcache-load-misses # 5.15% of all L1-dcache hits ( +- 3.04% ) (60.43%) 3,922,751 LLC-loads # 2.590 M/sec ( +- 6.80% ) (46.87%) 5,037,288 LLC-load-misses # 3.327 M/sec ( +- 3.56% ) (13.00%) 0.138966828 seconds time elapsed ( +- 4.11% ) This can be used "at a glance" for narrower analysis. -d can also be used in addition to other -e events, to further expand an event list. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-cxs98quixs3qyvdqx3goojc4@git.kernel.org Signed-off-by: Ingo Molnar commit 8bb6c79f24e66538f606076915e918242c02ec7c Author: Ingo Molnar Date: Wed Apr 27 13:25:24 2011 +0200 perf stat: Print out miss/hit ratio for L1 data-cache events Print out this kind of l1-dcache-misses percentage: Performance counter stats for './bw_tcp localhost': 29,956,262,201 cycles # 3.002 GHz (scaled from 85.14%) 8,255,209,558 stalled-cycles # 27.56% of all cycles are idle (scaled from 86.56%) 1,206,130,308 l1-dcache-misses # 40.49% of all L1-dcache hits (scaled from 86.30%) 2,978,756,779 l1-dcache-refs # 298.512 M/sec (scaled from 70.02%) 8,861,956,159 instructions # 0.30 insns per cycle # 0.93 stalled cycles per insn (scaled from 84.27%) 1,644,306,068 branches # 164.782 M/sec (scaled from 86.43%) 74,778,443 branch-misses # 4.55% of all branches (scaled from 70.69%) 9978.695711 task-clock # 0.693 CPUs utilized 14.404347983 seconds time elapsed And color the result depending on the severity of cache-trashing. Acked-by: Peter Zijlstra Acked-by Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-54gmz0zymaid84zcs7joq02p@git.kernel.org Signed-off-by: Ingo Molnar commit c78df6c1d49b5d798f1579141e3a12be7c325d1e Author: Ingo Molnar Date: Wed Apr 27 12:16:10 2011 +0200 perf stat: Print branch misses warning colors Print the missed-branches percentage with different warning level ASCII colors, as the percentage passes the 5%/10%/20% thresholds. These thresholds are set to relatively low levels, because on most CPUs even a moderate percentage of branch-misses already shows up as a slowdown. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-ybqukg7p86leiup7gl03ecgk@git.kernel.org Signed-off-by: Ingo Molnar commit a5d243d04a150acbfa79d641154f49e5d920f64f Author: Ingo Molnar Date: Wed Apr 27 05:39:24 2011 +0200 perf stat: Print stalled cycles warning colors Print the stalled-cycles percentage with different warning level ASCII colors, as the percentage passes the 25%/50%/75% thresholds. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-e25zz44rcms7mu9az4fu5zp0@git.kernel.org Signed-off-by: Ingo Molnar commit f99844cb76b7d347711c22cdcb94266b7214141f Author: Ingo Molnar Date: Wed Apr 27 05:35:39 2011 +0200 perf stat: Fix -nan% output in perf stat noise printouts Before: 0 CPU-migrations # 0.000 M/sec ( +- -nan% ) After: 0 CPU-migrations # 0.000 M/sec ( +- 0.00% ) Also factor out the noise printing function. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-z89h2v1bk1mikcbsf7e6v34q@git.kernel.org Signed-off-by: Ingo Molnar commit 1fc570ad89e55dc32dfa4dda1311948b38f26524 Author: Ingo Molnar Date: Wed Apr 27 05:20:22 2011 +0200 perf stat: Add stalled cycles to the default output The new default output looks like this: Performance counter stats for './loop_1b_instructions': 236.010686 task-clock # 0.996 CPUs utilized 0 context-switches # 0.000 M/sec 0 CPU-migrations # 0.000 M/sec 99 page-faults # 0.000 M/sec 756,487,646 cycles # 3.205 GHz 354,938,996 stalled-cycles # 46.92% of all cycles are idle 1,001,403,797 instructions # 1.32 insns per cycle # 0.35 stalled cycles per insn 100,279,773 branches # 424.895 M/sec 12,646 branch-misses # 0.013 % of all branches 0.236902540 seconds time elapsed We dropped cache-refs and cache-misses and added stalled-cycles - this is a more generic "how well utilized is the CPU" metric. If the stalled-cycles ratio is too high then more specific measurements can be taken to figure out the source of the inefficiency. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-pbpl2l4mn797s69bclfpwkwn@git.kernel.org Signed-off-by: Ingo Molnar commit 481f988a016f7a0327a5537bde4794349fc4625c Author: Ingo Molnar Date: Wed Apr 27 04:34:16 2011 +0200 perf stat: Add stalled cycles accounting, prettify the resulting output Add stalled cycles accounting and use it to print the "cycles stalled per instruction" value. Also change the unit of the cycles output from M/sec to GHz - this is more intuitive. Prettify the output to: Performance counter stats for './loop_1b_instructions': 239.775036 task-clock # 0.997 CPUs utilized 761,903,912 cycles # 3.178 GHz 356,620,620 stalled-cycles # 46.81% of all cycles are idle 1,001,578,351 instructions # 1.31 insns per cycle # 0.36 stalled cycles per insn 14,782 cache-references # 0.062 M/sec 5,694 cache-misses # 38.520 % of all cache refs 0.240493656 seconds time elapsed Also adjust the --repeat output to make the percentages align vertically: Performance counter stats for './loop_1b_instructions' (10 runs): 236.096793 task-clock # 0.997 CPUs utilized ( +- 0.011% ) 756,553,086 cycles # 3.204 GHz ( +- 0.002% ) 354,942,692 stalled-cycles # 46.92% of all cycles are idle ( +- 0.008% ) 1,001,389,700 instructions # 1.32 insns per cycle # 0.35 stalled cycles per insn ( +- 0.000% ) 10,166 cache-references # 0.043 M/sec ( +- 0.742% ) 468 cache-misses # 4.608 % of all cache refs ( +- 13.385% ) 0.236874136 seconds time elapsed ( +- 0.01% ) Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-uapziqny39601apdmmhoz7hk@git.kernel.org Signed-off-by: Ingo Molnar commit dcd9936a5a6d89512b5323c1145647f2dbe0236f Author: Ingo Molnar Date: Wed Apr 27 04:36:37 2011 +0200 perf stat: Factor our shadow stats Create update_shadow_stats() which is then used in both read_counter_aggr() and read_counter(). This not only simplifies the code but also fixes a bug: HW_CACHE_REFERENCES was not updated in read_counter(). Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-9uc55z3g88r47exde7zxjm6p@git.kernel.org Signed-off-by: Ingo Molnar commit 749141d926faf23ef811686a8050e7cf13dc223f Author: Ingo Molnar Date: Wed Apr 27 04:24:57 2011 +0200 perf stat: Make all displayed event names parseable as well Right now we display this by default: 0.202204 task-clock-msecs # 0.282 CPUs 0 context-switches # 0.000 M/sec 0 CPU-migrations # 0.000 M/sec 85 page-faults # 0.420 M/sec The task-clock-msecs event cannot actually be passed back as an event name, the event name we recognize is 'task-clock'. So change the output of the cpu-clock and task-clock events to be idempotent. ( Units should be printed out in the right-side column, if needed. ) Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-lexrnbzy09asscgd4f7oac4i@git.kernel.org Signed-off-by: Ingo Molnar commit ceb53fbf6dbb1df26d38379a262c6981fe73dd36 Author: Ingo Molnar Date: Wed Apr 27 04:06:33 2011 +0200 perf stat: Fail more clearly when an invalid modifier is specified Currently we fail without printing any error message on "perf stat -e task-clock-msecs". The reason is that the task-clock event is matched and the "-msecs" postfix is assumed to be an event modifier - but is not recognized. This patch changes the code to be more informative: $ perf stat -e task-clock-msecs true invalid event modifier: '-msecs' Run 'perf list' for a list of valid events and modifiers And restructures the return value of parse_event_modifier() to allow the printing of all variants of invalid event modifiers. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-wlaw3dvz1ly6wple8l52cfca@git.kernel.org Signed-off-by: Ingo Molnar commit b908debd4eef91471016138569f7a9e292be682e Author: Ingo Molnar Date: Wed Apr 27 03:55:40 2011 +0200 perf tools: Accept case-insensitive symbolic event variants We currently fail on something like '-e CPU-migrations', with: invalid or unsupported event: 'CPU-migrations' While 'CPU-migrations' is how we actually print out the event in the default perf stat output: Performance counter stats for 'true': 0.202204 task-clock-msecs # 0.282 CPUs 0 context-switches # 0.000 M/sec 0 CPU-migrations # 0.000 M/sec So change the matching to be case-insensitive. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-omcm3edjjtx83a4kh2e244se@git.kernel.org Signed-off-by: Ingo Molnar commit d58f4c82fed69fdd4a79fa54fe17fd14d98c27aa Author: Ingo Molnar Date: Wed Apr 27 03:42:18 2011 +0200 perf stat: Print cache misses as percentage Before: 113,393,041 cache-references # 83.636 M/sec 7,052,454 cache-misses # 5.202 M/sec After: 112,589,441 cache-references # 87.925 M/sec 6,556,354 cache-misses # 5.823 % misses/hits percentages are more expressive than absolute numbers or rates. (Also prettify the CPUs printout line to not have a trailing whitespace.) Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-axm28f43x439bl41zkvfzd63@git.kernel.org Signed-off-by: Ingo Molnar commit 11ba2b85f506306c8dfc9fe144aa4ddc43242855 Author: Ingo Molnar Date: Sun Apr 24 15:05:10 2011 +0200 perf stat: Print stalled cycles percentage Print: 611,527 cycles 400,553 instructions # ( 0.71 instructions per cycle ) 77,809 stalled-cycles # ( 12.71% of all cycles ) 0.000610987 seconds time elapsed Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Signed-off-by: Ingo Molnar Link: http://lkml.kernel.org/n/tip-fd6x8r1cpyb6zhlrc4ix8m45@git.kernel.org commit 5c543e3c442d6382db127152c7096ca6a55283de Author: Ingo Molnar Date: Wed Apr 27 12:02:04 2011 +0200 perf events, x86: Mark constrant tables read mostly Various constraint tables were not marked read-mostly. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-wpqwwvmhxucy5e718wnamjiv@git.kernel.org Signed-off-by: Ingo Molnar commit 94403f8863d0d1d2005291b2ef0719c2534aa303 Author: Ingo Molnar Date: Sun Apr 24 08:18:31 2011 +0200 perf events: Add stalled cycles generic event - PERF_COUNT_HW_STALLED_CYCLES The new PERF_COUNT_HW_STALLED_CYCLES event tries to approximate cycles the CPU does nothing useful, because it is stalled on a cache-miss or some other condition. Acked-by: Peter Zijlstra Acked-by: Arnaldo Carvalho de Melo Cc: Frederic Weisbecker Link: http://lkml.kernel.org/n/tip-fue11vymwqsoo5to72jxxjyl@git.kernel.org Signed-off-by: Ingo Molnar commit 7bd5fafeb414cf00deee32c82834f8bf1426b9ac Merge: fa7b694 ec75a71 Author: Ingo Molnar Date: Tue Apr 26 19:36:14 2011 +0200 Merge branch 'perf/urgent' into perf/stat Merge reason: We want to queue up dependent changes. Signed-off-by: Ingo Molnar commit 97961ef46b9b5a6a7c918a38b898a7b3e49869f4 Author: Konrad Rzeszutek Wilk Date: Tue Apr 26 12:57:59 2011 -0400 xen/blkback: Move the plugging/unplugging to a higher level. We used to the plug/unplug on the submit_bio. But that means if within a stream of WRITE, WRITE, WRITE,...,WRITE we have one READ, it could stall the pipeline (as the 'submio_bio' could trigger the unplug_fnc to be called and stall/sync when doing the READ). Instead we want to move the unplugging when the whole (or as a much as possible) ring buffer has been processed. This also eliminates us doing plug/unplug for each request. Signed-off-by: Konrad Rzeszutek Wilk commit d507cd668a3f6d07b31e914722b453c454b03204 Author: Takashi Iwai Date: Tue Apr 26 15:25:02 2011 +0200 ALSA: hda - Enable sync_write workaround for AMD generically The workaround for AMD chipset via sync_write flag seems needed for machines with Realtek codecs. So, it's better to activate it generically in hda_intel.c from the beginning. Signed-off-by: Takashi Iwai commit 0da2692256ed65bec588f7797c77f9c84ef4274e Author: Takashi Iwai Date: Tue Apr 26 15:18:33 2011 +0200 ALSA: hda - Move EAPD power-down into shutup callback for AD codecs EAPD power-down should be called also for normal shutup cases. Let's move to there. This also fixes the compile warnings when CONFIG_PM isn't set automatically. Signed-off-by: Takashi Iwai commit 31d44b57c508971c083ce038d7c5ededd09cea01 Merge: 885f42e 1c7276c Author: Takashi Iwai Date: Tue Apr 26 15:05:39 2011 +0200 Merge branch 'fix/hda' into topic/hda commit 1437f5bca3c2d162f058cba37dfbeb20f619040d Author: Hillf Danton Date: Sat Apr 23 21:29:05 2011 +0800 sched: Remove noop in alloc_rt_sched_group() The rq varible, though computed for each possible cpu, has nothing to do in the function, so it can be removed. This also eliminates a build warning. Signed-off-by: Hillf Danton Reviewed-by: Yong Zhang Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/BANLkTin-FfQfqW5ym1iuEmrk8s777Y1LAg@mail.gmail.com Signed-off-by: Ingo Molnar commit 5357e8f505d058b7419eb6a91b6e42b8f1fc02d5 Author: Mark Brown Date: Mon Apr 25 18:27:35 2011 +0100 ASoC: Don't warn if the WM8962 SYSCLK FLL setting doesn't match reality When bringing up audio low power modes boards may configure SYSCLK before they actually start the FLL as we do much of the clocking setup prior to the power up sequence. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit e47ac37c01bd9bd840dbbbc57a6dc1ba1e49ccc0 Author: Mark Brown Date: Mon Apr 25 20:14:21 2011 +0100 ASoC: Implement WM8962 DMIC support DMIC support is automatically disabled when none of the GPIOs are set up to bring out the DMICCLK and DMICDAT pins at startup. Note that there's no support for controlling DMIC routing except the power control so the board DAPM configuration will need to manage DMIC enable and disable if analogue mics (eg, a headset) also exist. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 7cd873c2c9699bdf060b0bac5979a5c2ae68b553 Author: Mark Brown Date: Mon Apr 25 20:01:42 2011 +0100 ASoC: Define constants for WM8962 GPIO functions Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 92a4352cdb53443ea5cb8bafd018e69933edb0a5 Author: Mark Brown Date: Mon Apr 25 18:44:01 2011 +0100 ASoC: Move WM8962 FLL configuration to CODEC There's only one DAI anyway. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 3b8a6d80e5d02a827d882935b96c1c3c3b56c977 Author: Mark Brown Date: Mon Apr 25 17:53:43 2011 +0100 ASoC: Support FLL lock interrupt on WM8962 Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c5f336cc003dfa071aaa7a01ed1c16232b227aa4 Author: Mark Brown Date: Thu Apr 21 14:16:14 2011 +0100 ASoC: Support 24.576MHz MCLKs in WM8915 We can safely divide these down to within the supported SYSCLK range. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit f9f4b1c71db9a0d74e0237c11a84f4e96e4ed146 Merge: 1f5e2a3 db92f43 Author: Mark Brown Date: Tue Apr 26 11:46:47 2011 +0100 Merge branch 'for-2.6.39' into for-2.6.40 commit 1f5e2a319d2ba80bfea5c3b5cbafea09d5164a51 Author: Kuninori Morimoto Date: Thu Apr 21 10:33:52 2011 +0900 ASoC: sh: fsi: Add module/port clock control function The FIFO of each port were always working though it was not used in current FSI driver. This patch add module/port clock control function for fixing it. This patch is also caring suspend/resume. Signed-off-by: Kuninori Morimoto Reviewed-by: Simon Horman Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 106c79ecf2db141fcd6073de55ebeb3f041e0509 Author: Kuninori Morimoto Date: Thu Apr 21 10:33:47 2011 +0900 ASoC: sh: fsi: add dev_pm_ops :: suspend/resume Current FSI driver sets important settings when probing. And it are not set again as long as driver is not bind again. This mean FSI driver will lost it from register if suspend/resume are happen. This patch save important settings for suspend/resume. Signed-off-by: Kuninori Morimoto Reviewed-by: Simon Horman Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 6a9ebad8214bba404255d1b209a038dc739c37b7 Author: Kuninori Morimoto Date: Thu Apr 21 10:33:36 2011 +0900 ASoC: sh: fsi: add fsi_is_clk_master function If FSI port is clock master, it use set_rate function which is callback from platform, and it is not necessary to call it if FSI port is clock slave. Current FSI driver called this callback if platform provide it. This patch modify it. Signed-off-by: Kuninori Morimoto Reviewed-by: Simon Horman Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 13eb4ab8ca719c852ae5fbd6e803afa333ad569a Author: Raymond Yau Date: Tue Apr 26 12:15:23 2011 +0800 ALSA: au88x0 - Use a better name for pcm devices of au88x0 Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 5debd6c14c302614764d7fcc8fe958c310c3d3b7 Author: Mark Brown Date: Thu Apr 21 12:01:49 2011 +0100 ASoC: Remove default settings from Tegra Kconfig There needs to be a strong reason for overriding the Kconfig default. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 8ae9572b5b08f1d2a2ea6613f59d00f741b38b2d Author: Daniel Mack Date: Sat Apr 23 20:56:43 2011 +0200 ALSA: 6fire: use the kernel's built-in bit reverse table Signed-off-by: Daniel Mack Cc: Torsten Schenk Signed-off-by: Takashi Iwai commit 4b5730fafb6287bdeed6af914fe90ed9e114d9a6 Author: Jiri Kosina Date: Tue Apr 26 10:51:28 2011 +0200 HID: add support for barcode scanners from Symbol Technologies Barcode handheld scanners produced by Symbol Technologies (0x05e0/0x0800 and 0x05e0/0x1300) need HID_QUIRK_NOGET, otherwise their firmware exposes trouble during enumeration/initialization. Signed-off-by: Jiri Kosina commit 85ee7a1d39d75d23d21f3871f6dc9b87d572747a Author: Joe Perches Date: Sat Apr 23 20:38:19 2011 -0700 treewide: cleanup continuations and remove logging message whitespace Using C line continuation inside format strings is error prone. Clean up the unintended whitespace introduced by misuse of \. Neaten correctly used line continations as well for consistency. drivers/scsi/arcmsr/arcmsr_hba.c has these errors as well, but arcmsr needs a lot more work and the driver should likely be moved to staging instead. Signed-off-by: Joe Perches Acked-by: Randy Dunlap Signed-off-by: Jiri Kosina commit 07f9479a40cc778bc1462ada11f95b01360ae4ff Merge: 9d5e6bd cd2e49e Author: Jiri Kosina Date: Tue Apr 26 10:22:15 2011 +0200 Merge branch 'master' into for-next Fast-forwarded to current state of Linus' tree as there are patches to be applied for files that didn't exist on the old branch. commit e01255d698ad00a6f4c6b3e0bf061e27ab238969 Author: Florian Tobias Schandinat Date: Tue Apr 26 08:10:33 2011 +0000 viafb: remove unused CEA mode This trivial patch removes unused mode tables. Signed-off-by: Florian Tobias Schandinat commit 64cad2ade1e6f890531a58318ca9ee013f92ef2f Author: Matt Carlson Date: Mon Apr 25 12:42:50 2011 +0000 tg3: Update version to 3.118 This patch updates the tg3 version to 3.118. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit bea8a63b27eb8e705a957938aadeb975178c5ea6 Author: Matt Carlson Date: Mon Apr 25 12:42:49 2011 +0000 tg3: Whitespace cleanups This patch gets rid of some harmless whitespace errors. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit b45aa2f6192e34a837ebdbb3548039c24440bc04 Author: Matt Carlson Date: Mon Apr 25 12:42:48 2011 +0000 tg3: Add EEH support This patch adds EEH support to the tg3 driver. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit bb158d696489244f79fd4c3abd47968a06b48c79 Author: Matt Carlson Date: Mon Apr 25 12:42:47 2011 +0000 tg3: Add TSO loopback test This patch adds code to exercise the TSO portion of the device through a phy loopback test. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 00c266b794d589dcf7d280926dfc27c5896a410a Author: Matt Carlson Date: Mon Apr 25 12:42:46 2011 +0000 tg3: Organize loopback test failure flags As more test modes are added to each loopback mode, the need to organise the results increases. This patch groups the results by loopback mode, and then by test mode. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 0aebff4871d26410ae485b521870bb0ffe1736f0 Author: Matt Carlson Date: Mon Apr 25 12:42:45 2011 +0000 tg3: Fix int generation hw bug for 5719 / 5720 On the 5719 and 5720, there is a bug where the hardware will misinterpret a status tag update and leave interrupts permanently disabled. This patch enables a hardware fix that works around the issue. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit bf362759034cf208966dff262c7d740a6b1b3edd Author: Dmitry Kasatkin Date: Wed Apr 20 13:34:58 2011 +0300 crypto: omap-sham - hmac calculation bug fix for sha1 base hash This patch fixes 2 hmac inter-dependent bugs. 1. "omap-sham: hash-in-progress is stored in hw format" commit introduced optimization where temporary hash had been stored in OMAP specific format (big endian). For SHA1 it is different to real hash format, which is little endian. Final HMAC value was calculated using incorrect hash. Because CONFIG_CRYPTO_MANAGER_TESTS was disabled this error remained unnoticed. After enabling this option, bug has been found. 2. HMAC was calculated using temporrary hash value. For a single-request updates, temporary hash was the final one and HMAC result was correct. But in fact only the final hash had to be used. All crypto tests for HMAC produces only single request and could not catch the problem. This problem is fixed here. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 528d26f57acd112fef78cd455db78e69a1ac39fd Author: Dmitry Kasatkin Date: Wed Apr 20 13:34:57 2011 +0300 crypto: omap-sham - enable driver for EMU chips EMU chips also have crypto HW as HS chips. Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 07aab762feb6b49e8004bfba2659db17f7b64e35 Author: Dmitry Kasatkin Date: Wed Apr 20 13:34:56 2011 +0300 crypto: omap-sham - remove debug print Signed-off-by: Dmitry Kasatkin Signed-off-by: Herbert Xu commit 455e33898e65108b379e74bcc3c9d6d2b50da9a6 Author: Markku Kylanpaa Date: Wed Apr 20 13:34:55 2011 +0300 crypto: omap-sham - fix concurrent sha1 calculations SHA1 accelerator can also be busy. Add -EBUSY status return option and return busy status from omap_sham_finup(). Signed-off-by: Markku Kylanpaa Signed-off-by: Herbert Xu commit a17379e73bb854177cfe444917b39b714a0dac33 Author: Kenji Toyama Date: Sun Apr 24 13:55:49 2011 +0800 Staging: xgifb: Fixed styles issues. All the warnings about styles have been removed. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit eae5f024fd5fdb6e1006f5e3d2493e11a79ed7f9 Author: Kenji Toyama Date: Sun Apr 24 13:46:25 2011 +0800 Staging: xgifb: Fixed style issues. Now checkpatch.pl doesn't complain about vgatypes.h. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit f4328792652c2aac594f05386db6dd8a76cef9f3 Author: Kenji Toyama Date: Sun Apr 24 13:35:35 2011 +0800 Staging: xgifb: Fixed header file. As suggested by checkpatch.pl, should be used instead of . Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 3ecf352cfdc61ccdaadb6fb22ec251ebed1757f9 Author: Kenji Toyama Date: Sun Apr 24 11:37:17 2011 +0800 Staging: xgifb: Removed thousands of warnings. This is a big patch to remove all the warnings given by checkpatch.pl. There were 13348 errors and 3112 warnings, but now there's nothing. I've compiled the files dependent on this header and they seem alright. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 918122e6871468fd5257d55aab428f1a867059bd Author: Kenji Toyama Date: Sat Apr 23 21:54:07 2011 +0800 Staging: xgifb: Fixed almost all style warnings. I've removed all the warnings except one that I believe is a false positive. The original author has used a macro to #define EXTERN to be 'extern', so in this case 'extern' is not used to define the storage class of anything, but just the value of the macro. We can safely ignore this warning. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 1d7f656dc5cf272b73b2b0f159cca284f1d2bd52 Author: Kenji Toyama Date: Sat Apr 23 19:36:49 2011 +0800 Staging: xgifb: Fixed lots of coding style issues. There were hundreds of warnings and errors given by checkpatch.pl but now it's down to 20. These ones that were left in the code need some more attention, cause I reckon the functions are overly nested leading to a mess of code in a traditional 80 character screen. I'm sure this code can be refactored into something more visually pleasing (things like compressing two nested if's into a single if with an AND would help a lot already). Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 2dbe71cdadf68d90cc5ed93be8c0fd59c2dc9e48 Author: Kenji Toyama Date: Sat Apr 23 16:14:34 2011 +0800 Staging: xgifb: Fixed coding style issues in vb_setmode.h All the warnings in vb_setmode.h given by checkpatch.pl were removed. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit bf32fcb9fe0aec95c2fac78edee3e39d7e98a1b1 Author: Kenji Toyama Date: Sat Apr 23 12:11:16 2011 +0800 Staging: xgifb: Fixed lots of coding style issues. There were hundreds of warnings, but now there's only four. These are related to the 'volatile' keyword and printk(), which I think should be left to the maintainers to modify if deemed necessary. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 6622995b3212e3c5b39b2ef0dd4d2b02ed183aa5 Author: Kenji Toyama Date: Sat Apr 23 08:27:48 2011 +0800 Staging: xgifb: Fixed coding style issues. Not all warnings were silenced. One of them is a typedef in vb_ext.h which I think seems alright. The other warnings in vb_ext.c I left there because that would involve changing a bit of the logic in the code. IMHO though I think the functions are too complicated (i.e. the if/else are too deep within a big function.) and can probably be split. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 661f659e110723d2a10d4d8a73091edcd53a45f6 Author: Kenji Toyama Date: Sat Apr 23 07:02:49 2011 +0800 Staging: xgifb: Fixed coding style issues in vb_def.h I've removed all the warnings given by checkpatch.pl in vb_def.h and also changed the indentation of pretty much the entire file so that it is more consistent. Signed-off-by: Daniel Kenji Toyama Signed-off-by: Greg Kroah-Hartman commit 8a94d1aaf6a5a7de12dee77bb40a083501172ae0 Author: Aaro Koskinen Date: Mon Apr 18 22:14:08 2011 +0300 staging: xgifb: main: make internal functions static Make remaining non-static internal functions static. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit 49192c45648e8706f280f9cd032fae4c91bcb2bb Author: Aaro Koskinen Date: Mon Apr 18 22:14:07 2011 +0300 staging: xgifb: main: delete unused functions Delete unused/dead code. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit d542af50cc78c6fe78543aecfc91737eeec3a7d5 Author: Aaro Koskinen Date: Mon Apr 18 22:14:06 2011 +0300 staging: xgifb: main: delete redudant extern declarations Delete redudant declarations and include proper .h files. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit c4fa7dfe57f1cc2607ef01d9959d711eb073ff61 Author: Aaro Koskinen Date: Mon Apr 18 22:14:05 2011 +0300 staging: xgifb: main: move functions to avoid forward declarations Move functions so that all forward declarations of internal functions can be deleted. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit f45f59d76303d9a60dd19b37c032bdb2a6a32cfa Author: Aaro Koskinen Date: Mon Apr 18 22:14:04 2011 +0300 staging: xgifb: delete unused register I/O functions Delete unused register I/O functions. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit 7a60d7728df58b29e94e7884e7f50f57e7d9394e Author: Aaro Koskinen Date: Mon Apr 18 22:14:03 2011 +0300 staging: xgifb: delete unused register I/O macros Delete unused register I/O macros. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit 65283d4296442ef8a3cadbde3d9f5e945cfbc9b7 Author: Aaro Koskinen Date: Mon Apr 18 22:14:02 2011 +0300 staging: xgifb: replace setXGIIDXREG() with xgifb_reg_and_or() Replace setXGIIDXREG() with xgifb_reg_and_or(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit b2135e4460892b07068550b5def6ba08e87e61fd Author: Aaro Koskinen Date: Mon Apr 18 22:14:01 2011 +0300 staging: xgifb: replace andXGIIDXREG() with xgifb_reg_and() Replace andXGIIDXREG() with xgifb_reg_and(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit e67f4d4d9e330710b84a6bfe500c713059a7868b Author: Aaro Koskinen Date: Mon Apr 18 22:14:00 2011 +0300 staging: xgifb: replace orXGIIDXREG() with xgifb_reg_or() Replace orXGIIDXREG() with xgifb_reg_or(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit b6e2dc394888c65603ac67754a814530ec2ac570 Author: Aaro Koskinen Date: Mon Apr 18 22:13:59 2011 +0300 staging: xgifb: replace outXGIIDXREG() with xgifb_reg_set() Replace outXGIIDXREG() with xgifb_reg_set(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit 7e119b750d573691d01fd71393ff547858b8fc85 Author: Aaro Koskinen Date: Mon Apr 18 22:13:58 2011 +0300 staging: xgifb: replace inXGIIDXREG() with xgifb_reg_get() Replace inXGIIDXREG() with xgifb_reg_get(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit e3d5ceb0901c50e70c12c72c0b9f0cde5d2b82fb Author: Aaro Koskinen Date: Mon Apr 18 22:13:57 2011 +0300 staging: xgifb: replace outXGIREG() with outb() Replace outXGIREG() with outb(). Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman commit e0ce58d7b05eba3d79ea8124d417224dae65c71f Author: wwang Date: Wed Apr 20 15:14:05 2011 +0800 staging: rts_pstor: clear error when read sd lba0 fail Call rtsx_clear_sd_error if sd_read_data fail when reading sd lba0. Signed-off-by: wwang Signed-off-by: Greg Kroah-Hartman commit 29bad1a139af7574df37613259298c198c4bf93c Author: Michał Mirosław Date: Wed Apr 20 18:27:09 2011 +0200 staging: octeon-ethernet: remove .get_sg, etc. ethtool_ops Driver sets .get_sg and .get_tx_csum ethtool_ops to their default values anyway. Those fields are deprecated, starting in 2.6.39. Signed-off-by: Michał Mirosław Signed-off-by: Greg Kroah-Hartman commit 4be6f5dab712db9e7e16e6120865c5bb1af4a41d Author: Jonathan Cameron Date: Mon Apr 18 12:59:06 2011 +0100 staging:iio:ade7758 replace unnecessary event line registration. This was only used for triggering and hence should never have been done this way in the first place. Needs to go prior to cleaning out some of the registration functions. Untested but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 48f27194a3d3ea8410af72168cc4cf6f9ebf4289 Author: Jonathan Cameron Date: Mon Apr 18 12:59:05 2011 +0100 staging:iio:adis16209 replace unnecessary event line registration. Untested but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit bdd560c52b023cd23b6b082ca64c062cacc23e3f Author: Jonathan Cameron Date: Mon Apr 18 12:59:04 2011 +0100 staging:iio:adis16240 replace unnecessary event line registration. Untested but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 80782446bce545d09e60fe391cb9e530b8809d20 Author: Jonathan Cameron Date: Mon Apr 18 12:59:03 2011 +0100 staging:iio:adis16201 replace unnecessary event line registration. Untested but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 37f9d2714a0a95cf7f45e0ed9422eea80490a77c Author: Jonathan Cameron Date: Mon Apr 18 12:59:02 2011 +0100 staging:iio:adis16204 replace unnecessary event line registration. Whilst the adis16204 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Untested but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 9e558ff5448715a8cca1439e3188611b31ea72ec Author: Jonathan Cameron Date: Mon Apr 18 12:59:01 2011 +0100 staging:iio:adis16203 replace unnecessary event line registration. Whilst the adis16203 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Untested, but identical in form to those that have been so should be fine. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit ab8d48d453b2793744ef73d4d3d6a1b602d044fd Author: Jonathan Cameron Date: Mon Apr 18 12:59:00 2011 +0100 staging:iio:adis16260 replace unnecessary event line registration. Whilst the adis16260 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Untested - but identical in form to those that have been. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit b333a24057e9443ec2db52afe78b4a60dfb79097 Author: Jonathan Cameron Date: Mon Apr 18 12:58:59 2011 +0100 staging:iio:adis16400 replace unnecessary event line registration. Whilst the adis16400 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Tested indirectly via the IMU driver merge to follow. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 9f201bbeb53c963d80e8917839e48ada971fd868 Author: Jonathan Cameron Date: Mon Apr 18 12:58:58 2011 +0100 staging:iio:adis16350 replace unnecessary event line registration. Whilst the adis163500 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 0955c1e3878e64f777fe36983675c47cad317c88 Author: Jonathan Cameron Date: Mon Apr 18 12:58:57 2011 +0100 staging:iio:adis16300 replace unnecessary event line registration. Whilst the adis16300 does indeed support events, currently the driver does not. The trigger code should never use that infrastructure. Tested indirectly via the IMU driver merge to follow. Signed-off-by: Jonathan Cameron Acked-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman commit 1ff7e1d84d95034b415c3e85e63b919a6d9129da Author: Jonathan Cameron Date: Mon Apr 18 12:58:56 2011 +0100 staging:iio:light:tsl2563 constify gain level table. Trivial cleanup. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 33789dce549895712cdc53d421b408c6607a07f6 Author: Jonathan Cameron Date: Mon Apr 18 12:58:55 2011 +0100 staging:iio:tsl2563 take advantage of new iio_device_allocate private data. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit c77b38108d6aaae05823e02d7df28b6e0d5ffdad Author: Jonathan Cameron Date: Fri Apr 15 18:56:00 2011 +0100 staging:iio:documentation make read_size signed to allow for errors. Without this all hell breaks loose if you have no data. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 3dba81ba803ca0cd7a1bc0dc6f21536b30ad059f Author: Jonathan Cameron Date: Fri Apr 15 18:55:59 2011 +0100 staging:iio:max1363 take advantage of new iio_device_allocate private data. The only fiddly bit in here was ensuring the regulator was available until after the free had occured. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit b6b7068ca3d2fa52d69870ba37cbb6ebac53eff8 Author: Jonathan Cameron Date: Fri Apr 15 18:55:58 2011 +0100 staging:iio:adc: max1363 dev_info -> indio_dev in naming for consistency Either name is fine, so went with the most common. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9cc559891181d354cc5b83d0cfecbe262d690b32 Author: Jonathan Cameron Date: Fri Apr 15 18:55:57 2011 +0100 staging:iio:adc:max1363 fix timestamp handling. Not only was this not compliant with the abi, it was also missconfiguring the buffer. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 6f7c8ee585e9db54cb29af1bdb93f29837824933 Author: Jonathan Cameron Date: Fri Apr 15 18:55:56 2011 +0100 staging:iio: Add ability to allocate private data space to iio_allocate_device Suggested by Arnd Bergmann. Note this will break ALL drivers that are out of mainline. The fix is trivial change of iio_allocate_device() -> iio_allocate_device(0) Sorry if this causes issues for any one! V2: Include new drivers in the update Signed-off-by: Jonathan Cameron Acked-by: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit b428173316dcb4a518ee22c642671ae8a4bcec48 Author: Jonathan Cameron Date: Fri Apr 15 18:55:55 2011 +0100 staging:iio: replace rip_lots naming with read_first_n Change suggested by Arnd Bergmann, Related patch to remove pointless (now) dead_offset parameter will have await proper fix for the sca3000 driver. That depends on some intermediate patches so may be a little while. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 582e548908729dd2f3e183fda5a8b7c2e2ca0b0e Author: Jonathan Cameron Date: Fri Apr 15 18:55:54 2011 +0100 staging:iio: iio_trigger_unregister - remove rather strange search for what we already have. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit f6517f22d4f6336ce37dc6b72aae4704ff872ba3 Author: Jonathan Cameron Date: Fri Apr 15 18:55:53 2011 +0100 staging:iio:trigger remove export of iio_trigger_find_by_name, use sysfs_streq for matching Trivial reorganization. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 67d1c1f4e0e591db46c0e11c731155dde18911e6 Author: Michael Hennerich Date: Fri Apr 15 13:51:07 2011 +0200 staging: IIO: DAC: AD5446 add support for AD5541A devices Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ac4f6eee8fe8f9f9bbd421d1c9a3ec9a0a6daa0b Author: Jon Brenner Date: Fri Apr 15 18:38:43 2011 +0100 staging: iio: TAOS tsl258x: Device driver Added suspend/resume functions. Changed attribute names to match existing where applicable and updated or documented new ABI as discussed. Changed integration time ABI from using index (0 to 3) to use actual gain values (1x,8x, etc.). Removed various unused variables, declarations, and functions. Revised code to accommodate different endianess (le16_to_cpu). Updated error return codes in various functions. Changed from mdelay to msleep after determining that longer wait would be acceptable. V5: Makefile and Kconfig cleanups by Jonathan Cameron. Signed-off-by: Jon August Brenner Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 69d900a69567b2cc217412e894a2c03218d23beb Author: Michael Hennerich Date: Mon Apr 18 09:40:58 2011 +0200 staging: IIO: DAC: New driver for AD5791/AD5781 High Resolution Voltage Output DACs Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 9886eb59f86b20bd35a96ce9c6d70aac50ed3a39 Author: Alan Cox Date: Tue Apr 19 15:28:45 2011 +0100 gma500: allow non stolen page backed framebuffer For Moorestown at least we may not have stolen RAM with which to back the initial framebuffer. Allow a GEM backing. At this point we should have all the bits in place needed to make it work once it has been debugged. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 541c81ab4bd40d3a1a1044b4fe265ea2124389fc Author: Alan Cox Date: Tue Apr 19 15:28:32 2011 +0100 gma500: prune some unused variables Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e1684a048b709f886dcd996901580f8a65b18391 Author: Alan Cox Date: Tue Apr 19 15:28:21 2011 +0100 gma500: GEM - now we have the basics we shall stick pins in it Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit ed7ea13efb753b77fc18bdf62fbf196c8e693ca6 Author: Alan Cox Date: Tue Apr 19 15:28:03 2011 +0100 gma500: GEMify the frame buffer base bits This then kills off the old bo_ interfaces Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0dfac1ceb48d86008222a7846ba9e8a9403a907c Author: Alan Cox Date: Tue Apr 19 15:27:53 2011 +0100 gma500: Begin the GEMification of the cursor code Do a first pass over the cursor code and rework it to use GEM objects for the cursor buffer as we need. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6a62730c7a5278c73eaaac6c9510820c86f4a6f9 Author: Alan Cox Date: Tue Apr 19 15:27:43 2011 +0100 gma500: Add support for inserting and removing pages from the GART There are two chunks of code we need to do this. The first one is the code to insert and remove the pages from the GART, the second is the code to build page table lists from the GEM object. Surprisingly this latter one doesn't seem to have a nice GEM helper. While we are at it we can begin dismantling the semi redundant struct pg, and finish pruning out the old now unused gtt code as well as the last bits of helper glue from the old driver base. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f20ee24445b54be28cae8609c4194fb400377c63 Author: Alan Cox Date: Tue Apr 19 15:27:28 2011 +0100 gma500: begin adding GEM This puts in place the infrastructure for GEM allocators. Our implementation is fairly simplistic at this point and we don't deal with things like evicting objects from the GART to make space, nor compaction. We extent our gtt_range struct to include a GEM object and that allows GEM to do all the handle management and most of the memory mapping work for us. This patch also doesn't load GEM pages into the GART so the GEM side isn't very useful. Before we can do that a fair bit of work is needed reworking the internal GTT code. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f11dd9b14f48941ca4282174a282ee4f17ded530 Author: Alan Cox Date: Tue Apr 19 15:27:10 2011 +0100 gma500: add the ability to request backed space or not We will will need this for doing a GEM allocator. It should also avoid any crashes with the current code if the stolen area is too small. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cb0ff05aa19cfdc8bc08bfeca619546207b01f7d Author: Alan Cox Date: Wed Apr 13 10:37:24 2011 +0100 gma500: Tidy up the allocations Now we can do allocations we need to shuffle the fb resource into the fb so we can one day have multiple frame buffer objects. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 8d9c134c6e53e27f37ae3167e25190885586e538 Author: Alan Cox Date: Wed Apr 13 10:37:03 2011 +0100 gma500: Add a gtt allocator At the moment we don't do any page backing for the GTT so only the stolen area pages will actually work. That is fine for our initial framebuffer and a bit of testing but will need resolution (including alternate mmap methods and the like for s/g areas) eventually. Rather than use some of the overcomplex stuff in the DRM we use the existing Linux resource allocators to hand out framebuffers and the like. This also has the nice result that /proc/iomem shows the allocations. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 36207d1167c76b9b3d986cdb36bd3468a367cafb Author: Alan Cox Date: Wed Apr 13 10:36:19 2011 +0100 gma500: backlight warning The current bl code checks for backlight types and warns if they are not properly set. Set ours to avoid the warning spew (This one alone is probably 2.6.39 candidate) Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 4df25c69c946d3879581d6fbe8a34c5bb4932c1d Author: Alan Cox Date: Wed Apr 13 10:35:50 2011 +0100 gma500: prepare to do some actual memory management Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a563a8c25188e2d6c393397dff7d620668610a15 Author: Alan Cox Date: Wed Apr 13 10:35:39 2011 +0100 gma500: ioctl first pass Go through the remaining ioctls and check they make sense Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 8452c3ef79f9095eef0fa2978fc97afb13507254 Author: Weiping Pan(潘卫平) Date: Mon Apr 11 18:15:31 2011 +0800 staging: comedi: fix a typo replace tranmitted with transmitted. Signed-off-by: Weiping Pan(潘卫平) Signed-off-by: Greg Kroah-Hartman commit a3712f4987b7ef6d23e851200ac6d41131db2010 Author: Stefan Brähler Date: Tue Apr 12 19:53:31 2011 +0200 staging: olpc_dcon: fix space and coding issues Fix the whitespace and coding style issues in olpc_dcon metioned by checkpatch. Signed-off-by: Stefan Brähler Acked-by: Andres Salomon Signed-off-by: Greg Kroah-Hartman commit c09c9ae0a8de89cbaba572b14f06f925d7cfa011 Author: Mark Allyn Date: Sun Apr 10 17:03:28 2011 -0700 staging: sep: resolve issue with false zero length of page Signed-off-by: Mark Allyn Signed-off-by: Greg Kroah-Hartman commit 95cd17c9f3734091a5811fabbd778e3f7b1f0789 Author: Joe Perches Date: Sun Apr 10 14:31:35 2011 -0700 staging: Remove unnecessary semicolons when switch (foo) {...}; Done via perl script: $ cat remove_semi_switch.pl my $match_balanced_parentheses = qr/(\((?:[^\(\)]++|(?-1))*\))/; my $match_balanced_braces = qr/(\{(?:[^\{\}]++|(?-1))*\})/; foreach my $file (@ARGV) { my $f; my $text; my $oldtext; next if ((-d $file)); open($f, '<', $file) or die "$P: Can't open $file for read\n"; $oldtext = do { local($/) ; <$f> }; close($f); next if ($oldtext eq ""); $text = $oldtext; my $count = 0; do { $count = 0; $count += $text =~ s@\b(switch\s*${match_balanced_parentheses}\s*)${match_balanced_braces}\s*;@"$1$3"@egx; } while ($count > 0); if ($text ne $oldtext) { my $newfile = $file; open($f, '>', $newfile) or die "$P: Can't open $newfile for write\n"; print $f $text; close($f); } } $ Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 273f4bef1847ef69f30d7e55f8de876a92639f17 Author: Joe Perches Date: Sun Apr 10 14:31:34 2011 -0700 staging: Remove unnecessary semicolons when for (foo) {...}; Done via perl script: $ cat remove_semi_for.pl my $match_balanced_parentheses = qr/(\((?:[^\(\)]++|(?-1))*\))/; my $match_balanced_braces = qr/(\{(?:[^\{\}]++|(?-1))*\})/; foreach my $file (@ARGV) { my $f; my $text; my $oldtext; next if ((-d $file)); open($f, '<', $file) or die "$P: Can't open $file for read\n"; $oldtext = do { local($/) ; <$f> }; close($f); next if ($oldtext eq ""); $text = $oldtext; my $count = 0; do { $count = 0; $count += $text =~ s@\b(for\s*${match_balanced_parentheses}\s*)${match_balanced_braces}\s*;@"$1$3"@egx; } while ($count > 0); if ($text ne $oldtext) { my $newfile = $file; open($f, '>', $newfile) or die "$P: Can't open $newfile for write\n"; print $f $text; close($f); } } $ Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit b0b0fb0fd519c7597d6bf4de7be660788cf2232c Author: Joe Perches Date: Sun Apr 10 14:31:33 2011 -0700 staging: Remove unnecessary semicolons when while (foo) {...}; Done via perl script: $ cat remove_semi_while.pl my $match_balanced_parentheses = qr/(\((?:[^\(\)]++|(?-1))*\))/; my $match_balanced_braces = qr/(\{(?:[^\{\}]++|(?-1))*\})/; foreach my $file (@ARGV) { my $f; my $text; my $oldtext; next if ((-d $file)); open($f, '<', $file) or die "$P: Can't open $file for read\n"; $oldtext = do { local($/) ; <$f> }; close($f); next if ($oldtext eq ""); $text = $oldtext; my $count = 0; do { $count = 0; $count += $text =~ s@\b(while\s*${match_balanced_parentheses}\s*)${match_balanced_braces}\s*;@"$1$3"@egx; } while ($count > 0); if ($text ne $oldtext) { my $newfile = $file; open($f, '>', $newfile) or die "$P: Can't open $newfile for write\n"; print $f $text; close($f); } } $ One false positive removed. Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 9fc86028fa21f8831c0fdc701732cf491da1202c Author: Joe Perches Date: Sun Apr 10 14:31:32 2011 -0700 staging: Remove unnecessary semicolons when if (foo) {...}; Done via perl script: $ cat remove_semi_if.pl my $match_balanced_parentheses = qr/(\((?:[^\(\)]++|(?-1))*\))/; my $match_balanced_braces = qr/(\{(?:[^\{\}]++|(?-1))*\})/; foreach my $file (@ARGV) { my $f; my $text; my $oldtext; next if ((-d $file)); open($f, '<', $file) or die "$P: Can't open $file for read\n"; $oldtext = do { local($/) ; <$f> }; close($f); next if ($oldtext eq ""); $text = $oldtext; my $count = 0; do { $count = 0; $count += $text =~ s@\b(if\s*${match_balanced_parentheses}\s*)${match_balanced_braces}\s*;@"$1$3"@egx; } while ($count > 0); if ($text ne $oldtext) { my $newfile = $file; open($f, '>', $newfile) or die "$P: Can't open $newfile for write\n"; print $f $text; close($f); } } $ Signed-off-by: Joe Perches Signed-off-by: Greg Kroah-Hartman commit 60b0fa1af9b323f096fb5335f33cc5b4a8f0198d Merge: 5d46f32 0215c5c Author: Greg Kroah-Hartman Date: Mon Apr 25 16:55:53 2011 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/lwfinger/linux-staging into staging-next * git://git.kernel.org/pub/scm/linux/kernel/git/lwfinger/linux-staging: staging: rt2860sta and rt2870sta: Remove drivers replaced in net/wireless Signed-off-by: Greg Kroah-Hartman commit 5d46f3266728913d05106ee82fb5f043be06eb21 Author: Vasiliy Kulikov Date: Thu Apr 14 19:56:25 2011 +0400 staging: istallion: fix arbitrary kernel memory reads/writes stli_brdstats is defined as global variable. After de-BKL-ization in the patch b4eda9cb48eac1b7 an access to the variable is not serialized anymore. This leads to the race window between the check and the use in stli_getbrdstats(): if (copy_from_user(&stli_brdstats, bp, sizeof(combrd_t))) return -EFAULT; if (stli_brdstats.brd >= STL_MAXBRDS) <<< return -ENODEV; brdp = stli_brds[stli_brdstats.brd]; <<< If one process calls COM_GETBRDSTATS ioctl() with sane .brd, second process calls COM_GETBRDSTATS ioctl() with invalid .brd, and the second process' copy_from_user() executes exactly between the check and stli_brds[] indexation of the first process, then the first process gets contents of memory at *stli_brds[stli_brdstats.brd] address. Also the resulting .nrpanels field may be too big, in this case stli_brdstats.panels array overflows. Signed-off-by: Vasiliy Kulikov Signed-off-by: Greg Kroah-Hartman commit 7816c45bf13255157c00fb8aca86cb64d825e878 Author: Roland Vossen Date: Thu Apr 7 11:20:58 2011 +0200 modules: Enabled dynamic debugging for staging modules Driver modules from the staging directory are marked 'tainted' by module.c. Subsequently, tainted modules are denied dynamic debugging. This is unwanted behavior, since staging modules should be able to use the dynamic debugging mechanism. Please merge this also into the staging-linus branch. Signed-off-by: Roland Vossen Acked-by: Jason Baron Signed-off-by: Greg Kroah-Hartman commit cb63e4c967541402b79a92a31c841744ca17d1aa Author: Franky Lin Date: Mon Apr 25 15:45:08 2011 -0700 staging: brcm80211: Add dhdsdio_chip_attach in dhd_sdio.c dhdsdio_chip_attach and it sub functions are added for si/sb utils removal. It will replace si_attach in following patches. Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit ddd0b091dbb0cd6891f13c6157679076467aa146 Author: Franky Lin Date: Mon Apr 25 15:45:07 2011 -0700 staging: brcm80211: Add bcmchip.h bcmchip.h contains chip specific core register base address and address translation macro for core register access. This is introduced for si/sb utils dependence removal in fullmac driver. Signed-off-by: Franky Lin Signed-off-by: Greg Kroah-Hartman commit 278057db202648d47c409c8125846866433cf85c Author: Arend van Spriel Date: Thu Apr 14 16:53:29 2011 +0200 staging: brcm80211: remove unnecessary include from nvram_ro.c Source file included bcmotp.h but did not use any declared item from that include file so it can safely be removed. Reviewed-by: Roland Vossen Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e9c661e08c2a6015c1b7cba1cecefa27a089df71 Author: Roland Vossen Date: Tue Apr 12 14:34:41 2011 +0200 staging: brcm80211: bugfix for div by zero in minstrel_ht_tx_status Caused by brcmsmac.ko suppling a 0 value to Mac80211. Mac80211 subsequently divides by this number. Bug only occurred on AMPDU traffic. This is a fix for https://bugzilla.kernel.org/show_bug.cgi?id=32032, titled 'Divide error in minstrel_ht_tx_status followed by hang', reported by Wouter Cloetens. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Cc: stable Signed-off-by: Greg Kroah-Hartman commit a1c5ad817d9316926372a4a708027edda80146e4 Author: Roland Vossen Date: Mon Apr 11 15:16:24 2011 +0200 staging: brcm80211: replaced BCME_OK by 0 Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 3b818080594178611c6dea67a603550d878d351d Author: Roland Vossen Date: Mon Apr 11 15:16:23 2011 +0200 staging: brcm80211: removed unused error codes Code cleanup. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 6b80b24789a6f81db1a774b6693cee1e5741f0eb Author: Stanislav Fomichev Date: Sun Apr 10 22:34:22 2011 +0400 brcm80211: update PCI config space define - replaced sizeof(struct pci_config_regs) with exact size; removed struct - cleaned up the rest of broadcom PCI specific defines Signed-off-by: Stanislav Fomichev Signed-off-by: Greg Kroah-Hartman commit b68692e795dc0e4f52139c2840a3c2f88a8d2e7f Author: Stanislav Fomichev Date: Sun Apr 10 22:34:21 2011 +0400 brcm80211: remove unused struct ppb_config_regs Signed-off-by: Stanislav Fomichev Signed-off-by: Greg Kroah-Hartman commit 85633f62b5693e6c7b56d1b3db83bd5e56776ae3 Author: Stanislav Fomichev Date: Sun Apr 10 22:34:20 2011 +0400 brcm80211: use native PCI header defines Signed-off-by: Stanislav Fomichev Signed-off-by: Greg Kroah-Hartman commit d83942856615c17724201a9aecda5b4c582a2476 Author: Stanislav Fomichev Date: Sun Apr 10 22:34:19 2011 +0400 brcm80211: use native PCI capability defines Signed-off-by: Stanislav Fomichev Signed-off-by: Greg Kroah-Hartman commit d108b7a4ddef464f239e8b655494ae3c49239230 Author: Stanislav Fomichev Date: Sun Apr 10 22:34:18 2011 +0400 brcm80211: use native PCI register offsets Signed-off-by: Stanislav Fomichev Signed-off-by: Greg Kroah-Hartman commit 8fcf92d1cf85329d0efc029c65af3f92b2041bf2 Author: Naveen Singh Date: Thu Apr 21 13:30:40 2011 -0700 ath6kl: fix operations for power management The cfg80211 ops for power management were completely broken. If we were asked for to go into power save it was putting device in awake, and when we were asked to become awake we were putting the device into power save... This fixes the powersave operations to do the right thing. Signed-off-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 3c9d2f6c14ebbfdc97945f8f8c023f1fde86732b Author: Naveen Singh Date: Thu Apr 21 13:30:39 2011 -0700 ath6kl: fix scan operation while disconnect If a scan operation is pending and in between a disconnect event is received from firmware the scan results never get sent back to cfg80211. This causes a scan failure and yields a device/resource busy state upon retries. If a disconnect event is received and scan is pending return the scan done to the cfg80211 to enable futher scans to be issued. Signed-off-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 26e58b517487c30f8a7251a3ec76ec569588cc89 Author: Naveen Singh Date: Thu Apr 21 13:30:38 2011 -0700 ath6kl: add the device ID on the data command packet The firmware expects the device ID to be added on the data and command packets sent to firmware for AR6003 v2.1.1. Signed-off-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit f3379c3966d80dba99f4d94f1e85f9af3ccaba3a Author: Naveen Singh Date: Thu Apr 21 13:30:37 2011 -0700 ath6kl: Extend WMI API used by AR6003 v2.1.1 These commands and event IDs are used by AR6003 v2.1.1. Some events are no longer needed so these are removed now. Signed-off-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 37f7949d0ac3f77ebd1ecf479f1f4a6b6a9cf85a Author: Naveen Singh Date: Thu Apr 21 13:30:36 2011 -0700 ath6kl: add support for AR6003 v2.1.1 This adds support for AR6003 v2.1.1. Highlights changes for this new hardware are: 1. Host interest area, through which driver communicates with FW has been enhanced to accomodate additional members for proper functioanlity of new HW. 2. The firmware and the board data files are different for AR6003 v2.1.1. The capability to read those file have been added in the driver. 3. Certain parameters like numdevice, firmware mode needs to be programmed for proper functionality of new driver. Signed-off-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit a29c58a0e6941674d3bd93bb1301643124b68266 Author: Naveen Singh Date: Fri Apr 8 15:07:43 2011 -0700 staging:ath6kl:Correcting the typo 1) ATH6K_CONFIG_HIF_VIRTUAL_SCATTER needs to be ATH6KL_CONFIG_HIF_VIRTUAL_SCATTER in file ar6000_drv.h Signed-off-by: Greg Kroah-Hartman commit e46ee8efd7b60afd26445f1bc0bad9c5d5e7d17e Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:26 2011 -0700 Staging: hv: Get rid of IDE details from blkvsc_drv.c Now get rid of IDE details from blkvsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1f91bca8dbf046ad6cb57fa203b7ca735f8c7e4a Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:25 2011 -0700 Staging: hv: Introduce a function to map channel properties onto block device info In preparation for removing the IDE details from the block driver, implement a function that maps channel properties to block device information. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 487ae7cd557f52d46f7a0fb5dcc05976952e9853 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:24 2011 -0700 Staging: hv: Fix a jump label (Remove) in blkvsc_drv.c One of the jump labels was named Remove; change it to remove. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d87d707d60aeda28d374a9a3ed8d3c0be13a75b8 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:23 2011 -0700 Staging: hv: Fix a jump label (Cleanup) in blkvsc_drv One of the goto labels was named Cleanup; change it to cleanup. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c4c58c583c1e21adc2b04316170c4fc355ab0123 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:22 2011 -0700 Staging: hv: Cleanup blkvsc_open() Given that we don't support removable media, cleanup blkvsc_open(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a2b9d24eafd4785e5a07924cdb5a37867bda4620 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:21 2011 -0700 Staging: hv: Get rid of an unnecessary check in blkvsc_probe() It is never the case that the dev_add function pointer will not be set (we set it in this code!). Get rid of this meaningless check. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e01c33b886e7bcf44c8861853fb475efd248053c Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:20 2011 -0700 Staging: hv: Get rid of some DPRINT_ERR() calls Get rid of some DPRINT_ERR() calls. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d49198299928122d98ae7ca35dd824eaf8746ccd Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:19 2011 -0700 Staging: hv: Get rid of the code to manage removable media The Hyper-V block driver does not handle removable media. Get rid of the code to manage removable media. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1c8d0b7decd42e7cb5e5118f8d2f0bf3f39ba52a Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:18 2011 -0700 Staging: hv: Cleanup storvsc_remove() storvsc_remove() cannot fail, clean it up accordingly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a31de969bf3f33456975f16d14519c1ff3803ae8 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:17 2011 -0700 Staging: hv: Cleanup blkvsc_remove() blkvsc_remove() cannot fail. Clean it up accordingly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c425065a18f3e8d4491c4ed4925af97b45a2015c Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:16 2011 -0700 Staging: hv: Get rid of some DPRINT_DBG() calls Get rid of some of the DPRINT_DBG() statements. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d5817bc8d408058bdba5b2b9a2719a0fb36c65b3 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:15 2011 -0700 Staging: hv: Get rid of some DPRINT_INFO() statements Get rid of some of the DPRINT_INFO() statements. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9bd0859a246f5855ed8e4840711f6c4fc98e741a Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:14 2011 -0700 Staging: hv: Simplify blkvsc_init_rw() Simplyfify blkvsc_init_rw() by using a single scsi command independent of the start sector. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 3880914aa68fec748e634522bd2fef448b0ea3bb Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:13 2011 -0700 Staging: hv: Get rid of the function blkvsc_revalidate_disk() The block driver in Hyper-V does not support removable media, get rid of the blkvsc_revalidate_disk(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit aac7af6db1aa4e0e85791f39a168decefb4b15f5 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:12 2011 -0700 Staging: hv: Get rid of the state media_not_present The block driver in Hyper-V does not handle removable media, get rid of the media_not_present state. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 26a197396253c1774b2affce2e29306aca9ee86a Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:11 2011 -0700 Staging: hv: Get rid of the function blkvsc_do_flush() Get rid of the function blkvsc_do_flush() and instead use the common function to force a device flush. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6c65da76590c5b1122695c40efa0d5117ebce04f Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:10 2011 -0700 Staging: hv: Get rid of blkvsc_do_read_capacity16() Get rid of blkvsc_do_read_capacity16() and instead use the common function for retrieving capacity. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2038e214867032b9dc6ef0546b4b5ed99c8375f6 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:09 2011 -0700 Staging: hv: Get rid of blkvsc_do_read_capacity() Now that we have a common function for some of the operations on the device, use that and get rid of the function blkvsc_do_read_capacity(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2ede209f5bc3114d90f3dd38a46ceb882409f65c Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:08 2011 -0700 Staging: hv: Introduce a common function for issuing commands to the device There are multiple functions to either get info about the device (INQUIRY, CAPACITY etc) or to FLUSH the device cache. The majority of the code for these functions is identical. Introduce a common function for doing all these operations. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ea50245ffa5cf5b5ae27ddc920c50d33cbeecb49 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:07 2011 -0700 Staging: hv: Simplify the code for blkvsc_getgeo() We are making up the geometry anyway, keep it simple. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7b04cd089e516af8431e4d475fa51ea074108c01 Author: K. Y. Srinivasan Date: Fri Apr 22 14:55:06 2011 -0700 Staging: hv: Enable blkvsc_ioctl() We can support HDIO_GET_IDENTITY ioctl, enable blkvsc_ioctl(). Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8c3ab81c4e6b78474fed97435cecf7704bc43d07 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:39 2011 -0700 Staging: hv: Get rid of some dead code in blkvsc_drv.c Get rid of some dead code in blkvsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 369cb5ce69ce8ca9899d6bd04f44bd6fb3176b25 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:38 2011 -0700 Staging: hv: Move module parameter to earlier in the file Move module parameter to be earlier in the file. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f84044d30eb8b4f39f141445b3ef417703c9de35 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:37 2011 -0700 Staging: hv: Move some definitions/declarations to be earlier in the file Move some definitions/declarations to be earlier in the file. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1efe70583f2afebf673a8ba99909b6e0c827e33b Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:36 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_request() Get rid of the forward declaration for blkvsc_request() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 76abfaa351966763dac075678c446b0b8c59654d Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:35 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_do_pending_reqs() Get rid of the forward declaration for blkvsc_do_pending_reqs() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8f8e57ab9ad30b90e0ce8afbbf39434d978b7bb4 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:34 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_do_request() Get rid of the forward declaration for blkvsc_do_request() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2c77407ac3db259085b5c9c0276edb9e62d553f5 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:33 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_do_inquiry() Get rid of the forward declaration for blkvsc_do_inquiry() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 349b38e8dfbf79e093e22a606f637a19c1b857fa Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:32 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_revalidate_disk() Get rid of the forward declaration of blkvsc_revalidate_disk() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 583c367fdf66d61e04898ee31c46c07a9a9a4434 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:31 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_do_read_capacity16() Get rid of the forward declaration of blkvsc_do_read_capacity16() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 87b31c224447d12ea3d17a4bbbf8e92927b09311 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:30 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_do_read_capacity() Get rid of the forward declaration for blkvsc_do_read_capacity() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8138bd95a62d41497528f07d368c27cd6ff837b5 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:29 2011 -0700 Staging: hv: Get rid of the forward declaration for blkvsc_release() Get rid of the forward declaration for blkvsc_release() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e82066b20bd89d9dff5666679be1834bb2459489 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:28 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_shutdown() Get rid of the forward declaration of blkvsc_shutdown() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8c090044683fd5ddf8565438535d88bb9f3ecff1 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:27 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_remove() Get rid of the forward declaration of blkvsc_remove() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f60f2138a9423432063df0d07dfadbf3decb29ac Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:26 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_cancel_pending_reqs() Get rid of the forward declaration of blkvsc_cancel_pending_reqs() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 9d64582071523f6ae19df15c85eaeb22876ebaa4 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:25 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_do_flush() Get rid of the forward declaration of blkvsc_do_flush() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 795d30bb38fcbc2185e4bf136e82bca4077dec7a Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:24 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_cmd_completion() Get rid of the forward declaration of blkvsc_cmd_completion() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 7955344f6087ef51231223a3d33b02206d6ff929 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:23 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_ioctl() Get rid of the forward declaration of blkvsc_ioctl() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b7be09cc9188d74d290fc5512575340010cfd249 Author: K. Y. Srinivasan Date: Fri Apr 22 14:13:22 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_init_rw() Get rid of the forward declaration of blkvsc_init_rw() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 648dc59899073d4d23ba346c0281dc96792725b3 Author: Haiyang Zhang Date: Thu Apr 21 12:30:47 2011 -0700 staging: hv: convert function name NetVscDisconnectFromVsp to lower case Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 72e80cb793ce009fd8005a394134c2f63469b118 Author: Haiyang Zhang Date: Thu Apr 21 12:30:46 2011 -0700 staging: hv: clean up unused forward declarations Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit b637e023484d420e8df326b561195f8ba74c1a73 Author: Haiyang Zhang Date: Thu Apr 21 12:30:45 2011 -0700 staging: hv: move netvsc_device_add() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 0021e71e9fde72a65a5f4bedd51964af9ab4fb4a Author: Haiyang Zhang Date: Thu Apr 21 12:30:44 2011 -0700 staging: hv: move netvsc_destroy_send_buf() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit ec91cd09b153d896d14bb2882d6128a97f00ff41 Author: Haiyang Zhang Date: Thu Apr 21 12:30:43 2011 -0700 staging: hv: move netvsc_destroy_recv_buf() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 5fa9d3c51d15a3b573c76e385dd9149cc77e7598 Author: Haiyang Zhang Date: Thu Apr 21 12:30:42 2011 -0700 staging: hv: move netvsc_send_recv_completion() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 57991156b949cca02737e67d8fa3fa75f80720d9 Author: Haiyang Zhang Date: Thu Apr 21 12:30:41 2011 -0700 staging: hv: move netvsc_receive_completion() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit af24ce42c51fad4fdc2eb3576b8c0388fd19ed4a Author: Haiyang Zhang Date: Thu Apr 21 12:30:40 2011 -0700 staging: hv: move netvsc_initialize() to clean up forward declaration Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit e7e09cd667a43d8287f85d453a16fc0ec1e2c7b7 Author: Jonathan Cameron Date: Tue Apr 19 12:43:47 2011 +0100 params.c: Use new strtobool function to process boolean inputs No functional changes. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8705b48e7159655c116154928fe104fd6561fa94 Author: Jonathan Cameron Date: Tue Apr 19 12:43:46 2011 +0100 debugfs: move to new strtobool No functional changes requires that we eat errors from strtobool. If people want to not do this, then it should be fixed at a later date. V2: Simplification suggested by Rusty Russell removes the need for additional variable ret. Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit ad58671cf32c74a8d6e8f51e63e9cf4e7a73bf1e Author: Jonathan Cameron Date: Tue Apr 19 12:43:45 2011 +0100 Add a strtobool function matching semantics of existing in kernel equivalents This is a rename of the usr_strtobool proposal, which was a renamed, relocated and fixed version of previous kstrtobool RFC Signed-off-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 85723943537bf6a73bdf1140b2088fbe0c17c3c2 Author: Wanlong Gao Date: Sat Apr 23 22:18:26 2011 +0800 drivers:base:fix the coding format of memory.c Fix the line longer than 80 of memory_uevent function . Signed-off-by: Wanlong Gao Signed-off-by: Greg Kroah-Hartman commit 92f4250901476fcadc4f52ace36e453c61f5591d Author: Eric Paris Date: Mon Apr 25 13:15:55 2011 -0400 SMACK: smack_file_lock can use the struct path smack_file_lock has a struct path, so use that instead of only the dentry. Signed-off-by: Eric Paris Acked-by: Casey Schaufler commit a269434d2fb48a4d66c1d7bf821b7874b59c5b41 Author: Eric Paris Date: Mon Apr 25 13:10:27 2011 -0400 LSM: separate LSM_AUDIT_DATA_DENTRY from LSM_AUDIT_DATA_PATH This patch separates and audit message that only contains a dentry from one that contains a full path. This allows us to make it harder to misuse the interfaces or for the interfaces to be implemented wrong. Signed-off-by: Eric Paris Acked-by: Casey Schaufler commit f48b7399840b453e7282b523f535561fe9638a2d Author: Eric Paris Date: Mon Apr 25 12:54:27 2011 -0400 LSM: split LSM_AUDIT_DATA_FS into _PATH and _INODE The lsm common audit code has wacky contortions making sure which pieces of information are set based on if it was given a path, dentry, or inode. Split this into path and inode to get rid of some of the code complexity. Signed-off-by: Eric Paris Acked-by: Casey Schaufler commit 83c67571b372c4a40023a84e183fdb7fa4e89e48 Author: Jiri Slaby Date: Wed Apr 20 10:43:18 2011 +0200 TTY: tty_io, annotate locking functions tty_write_lock and tty_write_unlock contain imbalanced locking. But this is intentional, so mark them appropriately by __acquires/__releases. Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit c831cff256c86588976e66bef7897633d534846c Author: Jiri Slaby Date: Wed Apr 20 10:43:17 2011 +0200 TTY: serial_core, remove superfluous set_task_state msleep* is guaranteed to return with TASK_RUNNING task state. And since there is no other set_task_state in the paths of uart_wait_until_sent, we need not to set_task_state to TASK_RUNNING. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 32ad3a77b256948a326c3f68db6acaad2b6953e7 Author: Jiri Slaby Date: Wed Apr 20 10:43:16 2011 +0200 TTY: serial_core, remove invalid test tty->index (named here as line) is set up in initialize_tty_struct. The value is checked in get_tty_driver for the found driver as: if (device < base || device >= base + p->num) continue; *index = device - base; So index/line can never be more than driver->num. Hence remove this test from uart_open. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0ad7c9af3e1cbb97082062266705d6cb5fb207ee Author: Jiri Slaby Date: Wed Apr 20 10:43:15 2011 +0200 Char: moxa, fix locking in moxa_write moxa_write can be called from atomic context with irqs disabled (from ppp_async_push). Don't enable interrupts by spin_unlock_bh as this might cause deadlocks in the ppp layer. Instead, use irqsave/irqrestore spin_lock functions. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7fdc28931176a17ef0bdc5d35742925a155533c4 Author: Jiri Slaby Date: Wed Apr 20 10:43:14 2011 +0200 Char: nozomi, remove useless tty_sem tty_sem used to protect tty open count. This was removed in 33dd474a but the lock remained in place. So remove it completely as it protects nothing now. Also this solves Mac's problem with inatomic operation called from atomic context (ppp): BUG: scheduling while atomic: firefox-bin/1992/0x10000800 Modules linked in: ... Pid: 1992, comm: firefox-bin Not tainted 2.6.38 #1 Call Trace: ... [] ? mutex_lock+0xe/0x21 [] ? ntty_write+0x5d/0x192 [nozomi] [] ? __mod_timer.clone.30+0xbe/0xcc [] ? check_preempt_curr+0x60/0x6d [] ? __nf_ct_refresh_acct+0x75/0xbe [] ? ppp_async_push+0xa9/0x3bd [ppp_async] [] ? ppp_async_send+0x34/0x40 [ppp_async] [] ? ppp_push+0x6c/0x4f9 [ppp_generic] ... Signed-off-by: Jiri Slaby Reported-by: Mac Tested-by: Gerald Pfeifer Reviewed-by: Jack Stone Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 6d742f655efe767dc77a099b57297fa417afc473 Author: Jiri Slaby Date: Wed Apr 20 10:43:13 2011 +0200 Char: nozomi, remove port.count checks Before 33dd474a, these were some kind of protection against race with HUP. They were protected with port->tty_sem at the same time. By that commit, the counting was switched to tty_port's one, but the locking remained the old one. So the count was not protected by any lock anymore. The driver should not test whether it raced with HUP or not anyways. With the new refcounted tty model, it just should proceed as nothing happened because all needed info is still there. In respect to this, let's drop the useless and unprotected tests (tty_port->count is protected by tty_port->lock). Signed-off-by: Jiri Slaby Tested-by: Gerald Pfeifer Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c29bd8d89c9423aed182dbfdb6527b576a2f3552 Author: Jiri Slaby Date: Wed Apr 20 10:43:12 2011 +0200 Char: nozomi, use GFP_KERNEL for kfifo allocation The allocation was moved to probe function in 9842c38e9176. And we can sleep there. So allocate the 4*8192 bytes as GFP_KERNEL to mitigate the allocation failure. Signed-off-by: Jiri Slaby Tested-by: Gerald Pfeifer Signed-off-by: Greg Kroah-Hartman commit af986d101d141f10231ffa7e40ae397dc7356857 Author: Peter Collingbourne Date: Sun Apr 24 22:09:32 2011 +0100 ACPI: EC: add another DMI check for ASUS hardware Commit 0adf3c746a73684b3f8c2821a584e1db998f61e9 introduced a regression by making the ECDT validation test for ASUS hardware more restrictive. The previous test used the dmi_name_in_vendors function which searches a number of DMI fields, while the new test checked only the BIOS vendor, which is known to not match on an ASUS F5GL laptop which requires ECDT validation. Add a rule to ec_dmi_table based on an alternative DMI pattern for ASUS hardware as found elsewhere in the kernel. Signed-off-by: Peter Collingbourne Signed-off-by: Len Brown commit 0dc1ba24f7fff659725eecbba2c9ad679a0954cd Author: Eric Paris Date: Thu Apr 21 17:23:20 2011 -0700 SELINUX: Make selinux cache VFS RCU walks safe Now that the security modules can decide whether they support the dcache RCU walk or not it's possible to make selinux a bit more RCU friendly. The SELinux AVC and security server access decision code is RCU safe. A specific piece of the LSM audit code may not be RCU safe. This patch makes the VFS RCU walk retry if it would hit the non RCU safe chunk of code. It will normally just work under RCU. This is done simply by passing the VFS RCU state as a flag down into the avc_audit() code and returning ECHILD there if it would have an issue. Based-on-patch-by: Andi Kleen Signed-off-by: Eric Paris commit bf734843120b905bacc3d24c88d7455ae70bf6e1 Author: David S. Miller Date: Mon Apr 25 13:03:02 2011 -0700 bluetooth: Fix use-before-initiailized var. net/bluetooth/l2cap_core.c: In function ‘l2cap_recv_frame’: net/bluetooth/l2cap_core.c:3612:15: warning: ‘sk’ may be used uninitialized in this function net/bluetooth/l2cap_core.c:3612:15: note: ‘sk’ was declared here Actually the problem is in the inline function l2cap_data_channel(), we branch to the label 'done' which tests 'sk' before we set it to anything. Initialize it to NULL to fix this. Signed-off-by: David S. Miller commit 9d5f96f61837b1242dd8c576c6110593475fcf86 Author: Florian Tobias Schandinat Date: Mon Apr 25 20:01:46 2011 +0000 viafb: try to map less memory in case of failure The current code might result in trying to remap 512MB video ram on a 32 bit system which is quite likely to fail. This patch tries to map less of it down to 8MB as this should still be enough to get a reasonably well working framebuffer. This should make viafb work for many people without requiring them to manually allocate more space. Signed-off-by: Florian Tobias Schandinat commit 345578d97c549995ddbcc178f16f710602cc06bb Merge: fe2a70e cfef604 Author: David S. Miller Date: Mon Apr 25 12:46:37 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit fe2a70eefa18a3e419dd9a23e16af14258b7cc20 Author: Somnath Kotur Date: Thu Apr 21 03:18:12 2011 +0000 be2net: Fixed a bug in be_cmd_get_regs(). Same WRB entry was being reused over different iterations of a loop while issuing non-embedded IOCTL requests.Fixed couple of minor bugs in this path as well. Re-factored code to alloc/free memory for DMA outside of loop Signed-off-by: Somnath Kotur Signed-off-by: David S. Miller commit 3aba891dde3842d89ad022237b99c1ed308040b0 Author: Jiri Pirko Date: Tue Apr 19 03:48:16 2011 +0000 bonding: move processing of recv handlers into handle_frame() Since now when bonding uses rx_handler, all traffic going into bond device goes thru bond_handle_frame. So there's no need to go back into bonding code later via ptype handlers. This patch converts original ptype handlers into "bonding receive probes". These functions are called from bond_handle_frame and they are registered per-mode. Note that vlan packets are also handled because they are always untagged thanks to vlan_untag() Note that this also allows arpmon for eth-bond-bridge-vlan topology. Signed-off-by: Jiri Pirko Signed-off-by: David S. Miller commit 22d5969fb450afd3a4aff606360f7d52c5a3a628 Author: Michał Mirosław Date: Thu Apr 21 12:42:15 2011 +0000 net: make WARN_ON in dev_disable_lro() useful Signed-off-by: Michał Mirosław Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 9835a30e980561082beb02ce724f6e555787bc19 Author: Rafał Miłecki Date: Sun Apr 24 11:04:19 2011 +0200 ssb: cc: clear GPIOPULL registers on init Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6dde1aabf6759848512f19d76b89ee473584c46a Author: Mohammed Shafi Shajakhan Date: Fri Apr 22 17:27:01 2011 +0530 ath9k: Add TSFOOR interrupt stats in debug info This helped the developers to fix an issue of chip not entering network sleep during idle state, previously this was only available as a debug message Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit cedc7e3d0c847d602d2970120d0e4cca72f364a4 Author: Mohammed Shafi Shajakhan Date: Fri Apr 22 13:12:23 2011 +0530 ath9k: remove the unlikely check for autosleep newer chipsets support auto sleep feature, so remove the unlikely check which does not seems to help anything Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit b84628eb574f04db714d34276383edbe6d8bfd96 Author: Senthil Balasubramanian Date: Fri Apr 22 11:32:12 2011 +0530 ath9k: Add power save wrappers and modularize hw_pll handler We should protect hw_pll handler with power save wrappers and also modularize hw_pll handler properly for better readability. Also add a debug message to track chip resets on pll hang condition. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 9eab61c2bff2f769ee771a7a9301fb720cec9b56 Author: Senthil Balasubramanian Date: Fri Apr 22 11:32:11 2011 +0530 ath9k: cleanup hw pll work handler There is no reason why pll work handler should be part of xmit file. move it to main.c so that reading hw check routines are all in the same place. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 515139066928da040d1482f201ef1b769bc29aa0 Author: Senthil Balasubramanian Date: Fri Apr 22 11:32:10 2011 +0530 ath9k: optimize the usage of power save wrappers. We need not wake up the chip even before mutex lock is acquired and also that it is required only if we are going to drain the txq. So place the wrappers accordingly and this change is also useful when there are no pending frames in the txq as we do not wake up the chip unnecessarily. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit d1c038d620c45fbbc65bcadf813a86bca686dd31 Author: Senthil Balasubramanian Date: Fri Apr 22 11:32:09 2011 +0530 ath9k_hw: Fix incorrect baseband PLL phase shift for AR9485 we should program the AR9485 baseband PLL phase shift to 6 and a redundant setting overwrites the correct value. Remove the incorrect and unwnated register setting. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 353e5019e048562dc8f434c6237d41ef5e758922 Author: Senthil Balasubramanian Date: Fri Apr 22 11:32:08 2011 +0530 ath9k: Fix LED gpio for AR93xx chipsets. The LED gpio is incorrectly programmed for AR9300 and so the led is not working propelry. AR93xx uses gpio 10 for LED and not the default. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 40db6c77ab48c3f3240422ff92fd6da222e2eb95 Author: Amitkumar Karwar Date: Thu Apr 21 14:10:27 2011 -0700 cfg80211: module_param to disable HT40 in 2.4GHz band Currently mac80211 uses ieee80211_disable_40mhz_24ghz module parameter to allow disabling 40MHz operation in the 2.4GHz band. Move this handling from mac80211 to cfg80211 so that the feature will be more generic. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit 0a6c9b1b666671a22905d38bc41ec1a04b85832f Author: Vasanthakumar Thiagarajan Date: Thu Apr 21 18:33:28 2011 +0530 ath9k: Fix warning: symbol 'ath9k_platform_id_table' was not declared. Should it be static? Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 788f6875fcf5d2bce221fbfd2318ac48df299031 Author: Vasanthakumar Thiagarajan Date: Thu Apr 21 18:33:27 2011 +0530 ath9k: Fix bug in configuring hw timer Hw next tigger time is configured as current_tsf + (timer_period * 10) which is wrong, it should be current_tsf + timer_period. The wrong hw timer configuration would cause btcoex related issues. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit ca45de77ad706e86b135b8564e21aa2c8a63f09b Author: Johannes Berg Date: Thu Apr 21 13:38:00 2011 +0200 mac80211: tear down BA sessions properly on suspend Currently, the code to tear down BA sessions will execute after queues are stopped, but attempt to send frames, so those frames will just get queued, which isn't intended. Move this code to before to tear down the sessions properly. Additionally, after stopping queues, flush the TX queues in the driver driver to make sure all the frames went out. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 31d291a769b4318cbf7943ca149e04d201e2c931 Author: Nishant Sarmukadam Date: Thu Apr 21 16:34:59 2011 +0530 mwl8k: Enable life time expiry for tx packets in the hardware Tell the firmware to enable the life time expiry of tx packets in the hardware. The hardware will now refer to the timestamp in every tx packet and decide whether the packet needs to be dropped or transmitted. Signed-off-by: Nishant Sarmukadam Signed-off-by: Pradeep Nemavat Signed-off-by: John W. Linville commit 3a769888797b7117005e9c60d4cd73a2efc92f8d Author: Nishant Sarmukadam Date: Thu Apr 21 16:34:58 2011 +0530 mwl8k: Reserve buffers for tx management frames Since queues are not stopped anymore, management frames would be dropped if the corresponding tx queue is full. This can cause issues say when we want to setup an ampdu stream and action frames i.e addba requests keep getting dropped frequently. Fix this by reserving some buffers to allow management frames to go through in queue full conditions. Signed-off-by: Nishant Sarmukadam Signed-off-by: Pradeep Nemavat Signed-off-by: John W. Linville commit 566875db5058f582ea56da891f9c3cabc01efff5 Author: Pradeep Nemavat Date: Thu Apr 21 16:34:57 2011 +0530 mwl8k: Add timestamp information for tx packets Timestamp tx packets using a HW micro-second timer. This timestamp will be compared to the current timestamp in the hardware and if the difference is greater than 500ms, the packet will be dropped. Signed-off-by: Pradeep Nemavat Signed-off-by: Nishant Sarmukadam Signed-off-by: John W. Linville commit 3a7dbc3b2ac545efac75d4145839eaa7b59d9741 Author: Pradeep Nemavat Date: Thu Apr 21 16:34:56 2011 +0530 mwl8k: Do not stop tx queues This is in preparation to support life time expiry of packets in the hardware to avoid head-of-line blocking where a slow client can hog a tx queue and affect the traffic to a faster client from the same queue. Time stamp the packets in driver to allow dropping them in the hardware if they are queued for more than 500ms. If queues are stopped, packets will be queued up outside the driver. Since we will be able to timestamp the packets only after they hit the driver, the timestamp will be less accurate since we cannot consider the time the packets spent in queues outside the driver. With this commit, to achieve accurate timestamping, the tx queues will not be stopped in normal conditions. The only scenarios where the queues will be stopped are when firmware commands are executing or if the interface is brought down. Now, we need to be prepared for a situation where packets hit the driver even after the tx queues are full. Drop all such packets in the driver itself. Signed-off-by: Pradeep Nemavat Signed-off-by: Nishant Sarmukadam Signed-off-by: John W. Linville commit 2624e96ce16bacae0e422d5775eac6d4fc33239a Author: Stanislaw Gruszka Date: Wed Apr 20 16:02:58 2011 +0200 iwlwifi: fix possible data overwrite in hcmd callback My commit 3598e1774c94e55c71b585340e7dc4538f310e3f "iwlwifi: fix enqueue hcmd race conditions" move hcmd callback after command queue reclaim, to avoid call it with hcmd_lock. But since queue read index was updated, cmd data can be overwritten. Fix problem by calling callback before taking hcmd_lock and queue reclaim. Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 9f2e731d1d278d853def1567735d8a823668a3c8 Author: Rafał Miłecki Date: Wed Apr 20 11:12:30 2011 +0200 ssb: cc: add & fix defines We probably got false positive results for checking PLL being down. Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 767ad6a0a2342d42f6f03b50198418b1475e0a7b Author: Sujith Manoharan Date: Wed Apr 20 11:01:25 2011 +0530 ath9k_htc: Remove unused macros and structures Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit c58ca5b5083befda31009a64abd95ae6ac315265 Author: Sujith Manoharan Date: Wed Apr 20 11:01:10 2011 +0530 ath9k_htc: Use power save wrappers when accessing HW Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit f0dd49803b0c0f3a002f073ec1a82cac5795af2d Author: Sujith Manoharan Date: Wed Apr 20 11:01:00 2011 +0530 ath9k_htc: Fix max A-MPDU size handling Set the maximum ampdu size of a station correctly in the target by using the ampdu_factor. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 3a0593efd191c7eb13c79179c4c5ddbc519b2510 Author: Sujith Manoharan Date: Wed Apr 20 14:33:28 2011 +0530 ath9k_htc: Fix AMPDU subframe handling * Register the driver's maximum ampdu subframe limit to mac80211. * Cleanup the target capabilities structure and fix an endian issue. * Fix BTCOEX by sending a command to the target when the BT priority changes. * Bump the required firmware version to 1.1 Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 0ff2b5c05d4dd84222a8e163335c5b550e2ca195 Author: Sujith Manoharan Date: Wed Apr 20 11:00:34 2011 +0530 ath9k: Fix warnings from -Wunused-but-set-variable Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 3c35c84a70fc7d76cf7d975481fcb30468c68818 Author: Rafał Miłecki Date: Tue Apr 19 22:40:23 2011 +0200 ssb: cc: use correct min_msk for 0x4312 Default min_msk on my 0x4312 is 0x80000CBB, not 0xCBB. Now we follow specs and wl (noticed in MMIO dumps). Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 9be1cb39c6551231a4f210097685da11aa6a537b Author: Rafał Miłecki Date: Tue Apr 19 22:40:22 2011 +0200 ssb: pci: trivial: correct amount of maximum retries Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit bca04689a2260ca4da227e7f7fa35f28f40e6a00 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:20 2011 +0530 ath9k_hw: Enable AR9340 support AR9340 is a AR9003 family built-in 2x2 wmac of ar934x SOCs. It is single band in ar9341 SOC and dual band in ar9344/ar9342 SOCs. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 79d1d2b8a34fd36e63cc7f5267cf79217a44edcc Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:19 2011 +0530 ath9k_hw: Disable INTR_HOST1_FATAL to avoid interrupt strom with ar9430 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit ecb1d385ad61001ff85407e5370a40934a1cc50b Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:18 2011 +0530 ath9k_hw: Assign macversion based on devid for built-in wmac Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 247eee0e4ee3e23fd4f2918cdffa1e20d2261fa8 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:17 2011 +0530 ath9k: Add AR9340 platform id to id table Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 5d48ae78cf81b4006ee1b7690b850db84820dc14 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:16 2011 +0530 ath9k_hw: Read iq calibration data only for active chains Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 2976bc5ebfb6c6dd37b4513540e567de0a2313f7 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:15 2011 +0530 ath9k_hw: Configure chain switch table and attenuation control only for active chains Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 2be7bfe0b454bc7c60ede777907ec817baa6196e Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:14 2011 +0530 ath9k_hw: Enable byte Tx/Rx data swap for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit a969c09184e7cb7d14838598b54c6effbef8b584 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:13 2011 +0530 ath9k_hw: Configure tuning capacitance value for AR9340 as well Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 3594beae705523982823f84bf4997f680b2cf75f Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:12 2011 +0530 ath9k_hw: Skip internal regulator configuration for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 160b7fb4a07f52a6ba883b52fbb992f0086f99f6 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:11 2011 +0530 ath9k_hw: Don't configure AR_CH0_THERM for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 66953d438576938b02e6ff0ade1958f3e90af4a9 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:10 2011 +0530 ath9k_hw: Fix register offset AR_PHY_65NM_CH0_THERM for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit e758ff8f7fc9ce96e94131b13e70af2c197fa05e Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:09 2011 +0530 ath9k_hw: Clean up rx/tx chain configuration before AGC/IQ cal Use hw supported chains instead of hard coded values. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 17869f4fe940407b5b80039110c0257c90e18a99 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:08 2011 +0530 ath9k_hw: Configure RF channel freqency for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit d1395d85fa58438c70b77185b7c5780b94046348 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:07 2011 +0530 ath9k_hw: Read spur frequency information from eeprom for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit d7fd52a80f9537970da1f80d785cac67375c05df Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:06 2011 +0530 ath9k_hw: Initialize tx and rx gain table from initvals.h for ar9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 070c4d509b1edcd0b8a40177a02e4302416c56d7 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:05 2011 +0530 ath9k_hw: Don't do ani initialization for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit d89baac8b477d8f9eca72d186863a554d7137b40 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:04 2011 +0530 ath9k_hw: Initialize mode registers from initvals.h for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 9aa5a8d5fd519d61a947c797cb917b38fd156cff Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:03 2011 +0530 ath9k_hw: Add initvals.h for ar9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 0b488ac6ece598fda69b5f3348015994129c48b9 Author: Vasanthakumar Thiagarajan Date: Wed Apr 20 10:26:15 2011 +0530 ath9k_hw: Configure pll control register accordingly for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit f2f5f2a1cedc803a5a517557d436e6cb10c007de Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:01 2011 +0530 ath9k_hw: Get AHB clock information from ath9k_platform_data Add a bool in ath9k_platform_data to pass AHB clock speed information. Driver needs this to configure PLL on some SOCs. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 35d5f56125aba8667ac12277dff02ce51efbee16 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:29:00 2011 +0530 ath9k_hw: Take care of few host interface register changes for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit b99a7be47dc37c60b6524d761ecfce432de84c01 Author: Vasanthakumar Thiagarajan Date: Tue Apr 19 19:28:59 2011 +0530 ath9k_hw: Define devid and mac version for AR9340 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 534f0e29282a007a589a659d31baa1ef828c22da Merge: e55034e 4cd2bf7 Author: John W. Linville Date: Mon Apr 25 14:42:51 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit e55034e978970f5a058dfa9c9cc923ff75fc6a12 Merge: 73b4809 cf27d86 Author: John W. Linville Date: Mon Apr 25 14:36:35 2011 -0400 Merge branch 'for-linville' of git://git.kernel.org/pub/scm/linux/kernel/git/luca/wl12xx commit cfef6047c4027a8448ec8dafeaf2bb362cc882e4 Merge: b71d1d4 73b4809 Author: John W. Linville Date: Mon Apr 25 14:34:25 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: drivers/net/wireless/iwlwifi/iwl-core.c drivers/net/wireless/rt2x00/rt2x00queue.c drivers/net/wireless/rt2x00/rt2x00queue.h commit 1c9904297451f558191e211a48d8838b4bf792b0 Author: Andi Kleen Date: Thu Apr 21 17:23:19 2011 -0700 SECURITY: Move exec_permission RCU checks into security modules Right now all RCU walks fall back to reference walk when CONFIG_SECURITY is enabled, even though just the standard capability module is active. This is because security_inode_exec_permission unconditionally fails RCU walks. Move this decision to the low level security module. This requires passing the RCU flags down the security hook. This way at least the capability module and a few easy cases in selinux/smack work with RCU walks with CONFIG_SECURITY=y Signed-off-by: Andi Kleen Signed-off-by: Eric Paris commit 6b697323a78bed254ee372f71b1a6a2901bb4b7a Author: Eric Paris Date: Wed Apr 20 10:21:28 2011 -0400 SELinux: security_read_policy should take a size_t not ssize_t The len should be an size_t but is a ssize_t. Easy enough fix to silence build warnings. We have no need for signed-ness. Signed-off-by: Eric Paris Reviewed-by: James Morris commit a35c6c8368d88deae6890205e73ed330b6df1db7 Author: Eric Paris Date: Wed Apr 20 10:21:28 2011 -0400 SELinux: silence build warning when !CONFIG_BUG If one builds a kernel without CONFIG_BUG there are a number of 'may be used uninitialized' warnings. Silence these by returning after the BUG(). Signed-off-by: Eric Paris Reviewed-by: James Morris commit 82d5902d9c681be37ffa9d70482907f9f0b7ec1f Author: Li Zefan Date: Wed Apr 20 10:33:24 2011 +0800 Btrfs: Support reading/writing on disk free ino cache This is similar to block group caching. We dedicate a special inode in fs tree to save free ino cache. At the very first time we create/delete a file after mount, the free ino cache will be loaded from disk into memory. When the fs tree is commited, the cache will be written back to disk. To keep compatibility, we check the root generation against the generation of the special inode when loading the cache, so the loading will fail if the btrfs filesystem was mounted in an older kernel before. Signed-off-by: Li Zefan commit 33345d01522f8152f99dc84a3e7a1a45707f387f Author: Li Zefan Date: Wed Apr 20 10:31:50 2011 +0800 Btrfs: Always use 64bit inode number There's a potential problem in 32bit system when we exhaust 32bit inode numbers and start to allocate big inode numbers, because btrfs uses inode->i_ino in many places. So here we always use BTRFS_I(inode)->location.objectid, which is an u64 variable. There are 2 exceptions that BTRFS_I(inode)->location.objectid != inode->i_ino: the btree inode (0 vs 1) and empty subvol dirs (256 vs 2), and inode->i_ino will be used in those cases. Another reason to make this change is I'm going to use a special inode to save free ino cache, and the inode number must be > (u64)-256. Signed-off-by: Li Zefan commit 0414efae7989a2183fb2cc000ab285c4c2836a00 Author: Li Zefan Date: Wed Apr 20 10:20:14 2011 +0800 Btrfs: Make the code for reading/writing free space cache generic Extract out block group specific code from lookup_free_space_inode(), create_free_space_inode(), load_free_space_cache() and btrfs_write_out_cache(), so the code can be used to read/write free ino cache. Signed-off-by: Li Zefan commit 581bb050941b4f220f84d3e5ed6dace3d42dd382 Author: Li Zefan Date: Wed Apr 20 10:06:11 2011 +0800 Btrfs: Cache free inode numbers in memory Currently btrfs stores the highest objectid of the fs tree, and it always returns (highest+1) inode number when we create a file, so inode numbers won't be reclaimed when we delete files, so we'll run out of inode numbers as we keep create/delete files in 32bits machines. This fixes it, and it works similarly to how we cache free space in block cgroups. We start a kernel thread to read the file tree. By scanning inode items, we know which chunks of inode numbers are free, and we cache them in an rb-tree. Because we are searching the commit root, we have to carefully handle the cross-transaction case. The rb-tree is a hybrid extent+bitmap tree, so if we have too many small chunks of inode numbers, we'll use bitmaps. Initially we allow 16K ram of extents, and a bitmap will be used if we exceed this threshold. The extents threshold is adjusted in runtime. Signed-off-by: Li Zefan commit 34d52cb6c50b5a43901709998f59fb1c5a43dc4a Author: Li Zefan Date: Tue Mar 29 13:46:06 2011 +0800 Btrfs: Make free space cache code generic So we can re-use the code to cache free inode numbers. The change is quite straightforward. Two new structures are introduced. - struct btrfs_free_space_ctl We move those variables that are used for caching free space from struct btrfs_block_group_cache to this new struct. - struct btrfs_free_space_op We do block group specific work (e.g. calculation of extents threshold) through functions registered in this struct. And then we can remove references to struct btrfs_block_group_cache. Signed-off-by: Li Zefan commit f38b6e754d8cc4605ac21d9c1094d569d88b163b Author: Li Zefan Date: Mon Mar 14 13:40:51 2011 +0800 Btrfs: Use bitmap_set/clear() No functional change. Signed-off-by: Li Zefan commit 92c423118105e1c8c1587367a26eeb3277bda89a Author: Li Zefan Date: Wed Mar 2 16:50:21 2011 +0800 Btrfs: Remove unused btrfs_block_group_free_space() We've already recorded the value in block_group->frees_space. Signed-off-by: Li Zefan commit 2a9e9507011440a57d6356ded630ba0c0f5d4b77 Author: David S. Miller Date: Sun Apr 24 10:54:56 2011 -0700 net: Remove __KERNEL__ cpp checks from include/net These header files are never installed to user consumption, so any __KERNEL__ cpp checks are superfluous. Projects should also not copy these files into their userland utility sources and try to use them there. If they insist on doing so, the onus is on them to sanitize the headers as needed. Signed-off-by: David S. Miller commit 67f9cbf9affe39f67cd3f1d2e2a2a43089d9ab3a Author: Rafael J. Wysocki Date: Fri Apr 22 22:03:31 2011 +0200 PM / Blackfin: Use struct syscore_ops instead of sysdevs for PM Convert some Blackfin architecture's code to using struct syscore_ops objects for power management instead of sysdev classes and sysdevs. This simplifies the code and reduces the kernel's memory footprint. It also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Acked-by: Mike Frysinger commit bb072c3cf21d1c9a5a2eeb5a00679ee7bf39675b Author: Rafael J. Wysocki Date: Fri Apr 22 22:03:21 2011 +0200 ARM / Samsung: Use struct syscore_ops for "core" power management Replace sysdev classes and struct sys_device objects used for "core" power management by Samsung platforms with struct syscore_ops objects that are simpler. This generally reduces the code size and the kernel memory footprint. It also is necessary for removing sysdevs entirely from the kernel in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman Acked-by: Kukjin Kim commit 2eaa03b5bebd1e80014f780d7bf27c3e66daefd6 Author: Rafael J. Wysocki Date: Fri Apr 22 22:03:11 2011 +0200 ARM / PXA: Use struct syscore_ops for "core" power management Replace sysdev classes and struct sys_device objects used for "core" power management by the PXA platform code with struct syscore_ops objects that are simpler. This reduces the code size and the kernel memory footprint. It also is necessary for removing sysdevs entirely from the kernel in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit 905339807bde7bb726001b69fbdf69ab0cf69a9e Author: Rafael J. Wysocki Date: Fri Apr 22 22:03:03 2011 +0200 ARM / SA1100: Use struct syscore_ops for "core" power management Replace the sysdev class and struct sys_device used for power management by the SA1100 interrupt-handling code with a struct syscore_ops object which is simpler. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit b7808056141bc4d67213036921a5a685ebec0274 Author: Rafael J. Wysocki Date: Fri Apr 22 22:02:55 2011 +0200 ARM / Integrator: Use struct syscore_ops for core PM Replace the sysdev class and struct sys_device used for power management by the Integrator interrupt-handling code with a struct syscore_ops object which is simpler. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit 3c437ffd20329619672b12a97bee944bccdd4ec9 Author: Rafael J. Wysocki Date: Fri Apr 22 22:02:46 2011 +0200 ARM / OMAP: Use struct syscore_ops for "core" power management Replace the sysdev class and struct sys_device used for power management in the OMAP's GPIO code with a struct syscore_ops object which is simpler. Signed-off-by: Rafael J. Wysocki Acked-by: Kevin Hilman Acked-by: Greg Kroah-Hartman commit 328f5cc30290a92ea3ca62b2a63d2b9ebcb0d334 Author: Rafael J. Wysocki Date: Fri Apr 22 22:02:33 2011 +0200 ARM: Use struct syscore_ops instead of sysdevs for PM in common code Convert some ARM architecture's common code to using struct syscore_ops objects for power management instead of sysdev classes and sysdevs. This simplifies the code and reduces the kernel's memory footprint. It also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki Acked-by: Greg Kroah-Hartman commit cace71b318aa0126e7cfe49fe5e9133e0395c478 Author: Florian Tobias Schandinat Date: Sun Apr 24 17:08:44 2011 +0000 viafb: use write combining for video ram This can give a speed up of factor 6-9, which is quite notable. Signed-off-by: Florian Tobias Schandinat commit f33f6f0ccc5ff7415da3feb18b1ff966ed2d80d1 Merge: 75ec72f 2946294 Author: Florian Tobias Schandinat Date: Sun Apr 24 13:18:48 2011 +0000 Merge branch 'viafb-pll' into viafb-next Conflicts: drivers/video/via/viamode.c Signed-off-by: Florian Tobias Schandinat commit 75ec72f8c53b9f981e68704432a2e425a01f79b7 Merge: 567b99f cd00b11 Author: Florian Tobias Schandinat Date: Sun Apr 24 13:17:09 2011 +0000 Merge branch 'viafb-cleanup' into viafb-next commit 567b99f84ea8efe979e020bd382dd735746b526b Merge: b4ce6a2 c5a4e6d Author: Florian Tobias Schandinat Date: Sun Apr 24 13:16:41 2011 +0000 Merge branch 'viafb-olpc' into viafb-next commit 15d6aba24d88231415f4e7e091c0f1e60c3e6fd5 Author: Avi Kivity Date: Sun Apr 24 11:11:51 2011 +0300 x86: Demacro CONFIG_PARAVIRT cpu accessors Recently, we had a build failure on !CONFIG_PARAVIRT due to a callback ->wbinvd() clashing with a macro wbinvd(). While we worked around the issue, avoid it in the future by changing the macro (and a few surrounding ones) to an inline function. Signed-off-by: Avi Kivity Cc: "H. Peter Anvin" Link: http://lkml.kernel.org/r/1303632711-21662-1-git-send-email-avi@redhat.com Signed-off-by: Ingo Molnar commit 625f2a378e5a10f45fdc37932fc9f8a21676de9e Author: Jonathan Corbet Date: Fri Apr 22 11:19:10 2011 -0600 sched: Get rid of lock_depth Neil Brown pointed out that lock_depth somehow escaped the BKL removal work. Let's get rid of it now. Note that the perf scripting utilities still have a bunch of code for dealing with common_lock_depth in tracepoints; I have left that in place in case anybody wants to use that code with older kernels. Suggested-by: Neil Brown Signed-off-by: Jonathan Corbet Cc: Arnd Bergmann Cc: Peter Zijlstra Cc: Thomas Gleixner Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110422111910.456c0e84@bike.lwn.net Signed-off-by: Ingo Molnar commit fa7b69475a6c192853949ba496dd9c37b497b548 Author: Justin P. Mattock Date: Fri Apr 22 10:08:52 2011 -0700 perf events, x86, P4: Fix typo in comment Signed-off-by: Justin P. Mattock Acked-by: Cyrill Gorcunov Cc: trivial@kernel.org Link: http://lkml.kernel.org/r/1303492132-3004-1-git-send-email-justinmattock@gmail.com Signed-off-by: Ingo Molnar commit 2946294f9aa734efc5873ea2f34131d0a8c0f89a Author: Florian Tobias Schandinat Date: Sat Apr 23 23:52:45 2011 +0000 viafb: add X server compatibility mode This patch adds a config option to be compatible with X servers like OpenChrome. This is required as for example the X server does not handle things like disabled IGAs/PLLs resulting in a potential freeze on X startup. With this option disabled we can provide some nice features like power management and not reinitializing the hardware on every mode switch (taking long time, causing flickering). Signed-off-by: Florian Tobias Schandinat commit c5a4e6d725654045e548b1a1f33059a44a06910f Author: Florian Tobias Schandinat Date: Sat Apr 23 22:24:52 2011 +0000 viafb: reduce OLPC refresh a bit When allowing some PLL calculation we get a frequency that seems to be a bit higher than what the OLPC DCON likes resulting in a still readable but not so good image. We don't really know whether this is a problem with the calculation formula or the OLPC but as other displays seem to be happy with the other modes adjusting the OLPC refresh looks like the better thing. This patch prevents a regression when dynamic PLL calculation is allowed. Signed-off-by: Florian Tobias Schandinat commit 32fab7bcc79ee0b97277627f456c94202858d851 Author: Florian Tobias Schandinat Date: Sat Apr 23 22:06:18 2011 +0000 viafb: fix OLPC XO 1.5 device connection This patch fixes the devices connected on OLPC. The OLPC panel seems to be connected to DVP1 and LVDS2 for some reasons and if not both are handled correct the display does not work correct or not at all. This patch prevents regressions on the OLPC where it worked by accident but would break in future as the driver did not know the correct devices connected. This might also fix hardware scaling. Hopefully the OLPC is the only device with such a requirement but it will be certainly better to actually know what devices are actually connected and to not work by accident. Signed-off-by: Florian Tobias Schandinat commit cfefd21e693dca791bf9ecfc9dd3794facad533c Author: Thomas Gleixner Date: Fri Apr 15 22:36:08 2011 +0200 genirq: Add chip suspend and resume callbacks These callbacks are only called in the syscore suspend/resume code on interrupt chips which have been registered via the generic irq chip mechanism. Calling those callbacks per irq would be rather icky, but with the generic irq chip mechanism we can call this per registered chip. Signed-off-by: Thomas Gleixner Cc: linux-arm-kernel@lists.infradead.org commit 7d8280624797bbe2f5170bd3c85c75a8c9c74242 Author: Thomas Gleixner Date: Sun Apr 3 11:42:53 2011 +0200 genirq: Implement a generic interrupt chip Implement a generic interrupt chip, which is configurable and is able to handle the most common irq chip implementations. Signed-off-by: Thomas Gleixner Cc: linux-arm-kernel@lists.infradead.org Tested-by: H Hartley Sweeten Tested-by: Tony Lindgren Tested-by; Kevin Hilman commit 7f1b1244e159a8490d7fb13667c6cb7e1e75046b Author: Paul Mundt Date: Thu Apr 7 06:01:44 2011 +0900 genirq: Support per-IRQ thread disabling. This adds support for disabling threading on a per-IRQ basis via the IRQ status instead of the IRQ flow, which is necessary for interrupts that don't follow the natural IRQ flow channels, such as those that are virtually created. The new APIs added are simply: irq_set_thread() irq_set_nothread() which follow the rest of the IRQ status routines. Chained handlers also have IRQ_NOTHREAD set on them automatically, making the lack of threading explicit rather than implicit. Subsequently, the nothread flag can be viewed through the standard genirq debugging facilities. [ tglx: Fixed cleanup fallout ] Signed-off-by: Paul Mundt Link: http://lkml.kernel.org/r/%3C20110406210135.GF18426%40linux-sh.org%3E Signed-off-by: Thomas Gleixner commit 770767787c23040dc152e7ae230597ff55b39470 Author: Geert Uytterhoeven Date: Sun Apr 10 11:01:52 2011 +0200 genirq: irq_desc: Document preflow_handler and affinity_hint [ tglx: Filled in the FIXME place holders ] Signed-off-by: Geert Uytterhoeven Link: http://lkml.kernel.org/r/%3C1302426113-13808-2-git-send-email-geert%40linux-m68k.org%3E Signed-off-by: Thomas Gleixner commit ee430599bf63c13ee521a352f562a4281cba5e61 Author: Geert Uytterhoeven Date: Sun Apr 10 11:01:53 2011 +0200 genirq: Update DocBook comments Fix some parts to match the actual code. [ tglx: Resolved the FIXMEs Gerd put in ] Signed-off-by: Geert Uytterhoeven Link: http://lkml.kernel.org/r/%3C1302426113-13808-3-git-send-email-geert%40linux-m68k.org%3E Signed-off-by: Thomas Gleixner Cc: linux-doc@vger.kernel.org commit 0911f124bf55357803d53197cc1ae5479f5e37e2 Author: Geert Uytterhoeven Date: Sun Apr 10 11:01:51 2011 +0200 genirq: Forgotten updates/deletions after removal of compat code commit 0c6f8a8b917ad361319c8ace3e9f28e69bfdb4c1 ("genirq: Remove compat code") removed the compat code, but forgot to update some references in comments and delete some of its documentation. Signed-off-by: Geert Uytterhoeven Link: http://lkml.kernel.org/r/%3C1302426113-13808-1-git-send-email-geert%40linux-m68k.org%3E Signed-off-by: Thomas Gleixner commit 03351ff4d897098a590cb247b6eebc470b8ecb5a Merge: 8b86c1c f0e615c Author: Dmitry Torokhov Date: Fri Apr 22 23:35:25 2011 -0700 Merge commit 'v2.6.39-rc4' into next commit b1c43f82c5aa265442f82dba31ce985ebb7aa71c Author: Felipe Balbi Date: Mon Mar 21 12:25:08 2011 +0200 tty: make receive_buf() return the amout of bytes received it makes it simpler to keep track of the amount of bytes received and simplifies how flush_to_ldisc counts the remaining bytes. It also fixes a bug of lost bytes on n_tty when flushing too many bytes via the USB serial gadget driver. Tested-by: Stefan Bigler Tested-by: Toby Gray Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit c8705082404823a5bb3e02a32ba0764399b9e6f2 Author: Uwe Kleine-König Date: Wed Apr 20 09:44:46 2011 +0200 driver core: let dev_set_drvdata return int instead of void as it can fail Before commit b402843 (Driver core: move dev_get/set_drvdata to drivers/base/dd.c) calling dev_set_drvdata with dev=NULL was an unchecked error. After some discussion about what to return in this case removing the check (and so producing a null pointer exception) seems fine. Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 4a03d6f7c863a039b937649a93341615f531358e Author: Uwe Kleine-König Date: Wed Apr 20 09:44:45 2011 +0200 driver core/platform_device_add_resources: free resource before overwriting Reviewed-by: Viresh Kumar Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit cea896238fbfdbce254f51fc8fd78c59df50081f Author: Uwe Kleine-König Date: Wed Apr 20 09:44:44 2011 +0200 driver core/platform_device_add_resources: set resource to NULL if !res This makes the res = NULL case more consistant to the res != NULL case as now both overwrite pdev->resource. Reviewed-by: Viresh Kumar Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 251e031d132ea3d03e0a32f2240c67f449979c5d Author: Uwe Kleine-König Date: Wed Apr 20 09:44:43 2011 +0200 driver core/platform_device_add_data: free platform data before overwriting Reviewed-by: Viresh Kumar Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 27a33f9e8fb203e71925257cf039fe6ec623c5d1 Author: Uwe Kleine-König Date: Wed Apr 20 09:44:42 2011 +0200 driver core/platform_device_add_data: set platform_data to NULL if !data This makes the data = NULL case more consistent to the data != NULL case. The functional change is that now platform_device_add_data(somepdev, NULL, somesize) sets pdev->dev.platform_data to NULL instead of not touching it. Reviewed-by: Viresh Kumar Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 7f100d1566d6ee353a43be92599511fc438ec281 Author: Karthigan Srinivasan Date: Mon Apr 18 16:16:52 2011 -0500 drivers/base/core.c: Fixed brace coding style issue. Fixed brace coding style issue. Signed-off-by: Karthigan Srinivasan Signed-off-by: Greg Kroah-Hartman commit 8497d6a21c4b17052e868bd53a74c82b557a6c46 Author: Sebastian Ott Date: Tue Apr 12 19:05:37 2011 +0200 driver-core: fix race between device_register and driver_register When a device is registered to a bus it will be a) added to the list of devices of the bus and b) bind to a driver (if one matches). As a result of a driver being registered at this bus between a) and b) this device could already be bound to a driver. This leads to a warning and incorrect refcounting. To fix this add a check to device_attach to identify an already bound device. Signed-off-by: Sebastian Ott Signed-off-by: Greg Kroah-Hartman commit fc2711992b8601c20b7cc078f533e55c3106fbd4 Author: Pavan Savoy Date: Fri Apr 8 04:57:43 2011 -0500 drivers:misc:ti-st: remove rfkill dependency rfkill is no longer used by Texas Instruments shared transport driver to communicate with user-space. This patch removes the dependency of rfkill to be enabled to build shared transport driver in the Kconfig. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit 764b0c4b3256ad4431cb52eaf99c0abe6df0a085 Author: Pavan Savoy Date: Fri Apr 8 04:57:42 2011 -0500 drivers:misc:ti-st: handle delayed tty receive When certain technologies shutdown their interface without waiting for the acknowledgement from the chip. The receive_buf from the TTY would be invoked a while after the relevant technology is unregistered. This patch introduces a new flag "is_registered" which maintains the state of protocols BT, FM or GPS and thereby removes the need to clear the protocol data from ST when protocols gets unregistered. This fixes corner cases when HCI RESET is sent down from bluetooth stack and the receive_buf is called from tty after 250ms before which bluetooth would have unregistered from the system. OR - when FM application decides to close down the device without sending a power-off FM command resulting in some RDS data or interrupt data coming in after the driver is unregistered. Signed-off-by: Pavan Savoy Signed-off-by: Greg Kroah-Hartman commit b71d1d426d263b0b6cb5760322efebbfc89d4463 Author: Eric Dumazet Date: Fri Apr 22 04:53:02 2011 +0000 inet: constify ip headers and in6_addr Add const qualifiers to structs iphdr, ipv6hdr and in6_addr pointers where possible, to make code intention more obvious. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 4cd2bf76a40a148bc92f4a3d17bc7f94277b0410 Author: Johannes Berg Date: Wed Apr 13 03:14:52 2011 -0700 iwlagn: remove hw_ready variable This variable is only ever checked right after the function that sets it, but the same function will also return the status, so we can pass it through instead of checking hw_ready later. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit dbf28e21ca391110e90ccad05dda79d2e2f60e0e Author: Johannes Berg Date: Sat Apr 16 08:29:24 2011 -0700 iwlagn: combine firmware code/data On new hardware, ucode images always come in pairs: code and data. Therefore, combine the variables into an appropriate struct and use that when both code and data are needed. Also, combine allocation and copying so that we have less code in total. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit ca7966c88e44233fac113579071a6f55e00ef5ac Author: Johannes Berg Date: Fri Apr 22 10:15:23 2011 -0700 iwlagn: implement synchronous firmware load The current firmware loading mechanism in iwlwifi is very hard to follow, and thus hard to maintain. To make it easier, make the firmware loading synchronous. For now, as a side effect, this removes a number of retry possibilities we had. It isn't typical for this to fail, but if it does happen we restart from scratch which this also makes easier to do should it be necessary. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit e74fe2330a5a721610b2b69652d2ec2ebbd302e0 Author: Johannes Berg Date: Wed Apr 13 03:14:49 2011 -0700 iwlagn: leave notification waits on firmware errors When the firmware encounters an error while the driver is waiting for a notification, it will never get that notification. Therefore, instead of timing out, bail out on errors when waiting for notifications. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit a8674a1efca60d863d4caa47e102cc4d70d5ff9b Author: Johannes Berg Date: Wed Apr 13 03:14:48 2011 -0700 iwlagn: make iwlagn_wait_notification return error code We're unlikely to care about the actual time spent waiting, so make the function return an error code which is less error prone in coding new uses. Also, while at it, mark __must_check. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 09f18afe766ea3f2c749e3af195bf65fde71b62e Author: Johannes Berg Date: Wed Apr 13 03:14:47 2011 -0700 iwlagn: extend notification wait function A notification wait function is called with the command, but currently has no way of passing data back to the caller -- fix that by adding a void pointer to the function that can be used between the caller and the function. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3e14c1fd75d909bfcc6caab79c544921fd02bf73 Author: Johannes Berg Date: Wed Apr 13 03:14:46 2011 -0700 iwlagn: refactor up path Starting the device consists of many things, refactor out enabling the hardware and also return -ERFKILL when the rfkill signal is found to be asserted (which makes more sense anyway, but is also required now to make the __iwl_up function return right away.) Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit bc4f8adac6b30ee5f03dad267896add7e58db729 Author: Johannes Berg Date: Wed Apr 13 03:14:45 2011 -0700 iwlagn: refactor down path The iwl_down path really consists of multiple things, refactor out the hardware resetting (including, of course, related software state like irqs). Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 1a10f43313481b99154b3b1ce6863742475422e0 Author: Johannes Berg Date: Wed Apr 13 03:14:44 2011 -0700 iwlagn: clean up some exit code There's no point in running through iwl_down() when we never registered with mac80211, as it just cleans up internal structures that were never initialised in this case. Therefore we can also remove the special handling for this case from __iwl_down(). Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit e46f6538c24f01bb68dc374358ce85a0af666682 Author: Johannes Berg Date: Wed Apr 13 03:14:43 2011 -0700 iwlagn: simplify error table reading The current code to read the error table header just hardcodes all the offsets, which is a bit hard to understand. We can read in the entire header (as much as we need) into a structure, and then take the data from there, which makes it easier to understand. To read a bigger blob we also don't need to grab NIC access for each word read, making the code more efficient. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 4a6ee685fbcba4a440cf86f41557752ba81e2ccf Author: Benjamin Tissoires Date: Fri Apr 22 11:51:48 2011 +0200 HID: hid-multitouch: merge hid-mosart into hid-multitouch This patch include MosArt devices into hid-multitouch. MosArt devices now support mt-protocol B. We also need to introduce a new quirk for mosart devices to support their contactID. Signed-off-by: Benjamin Tissoires Signed-off-by: Jiri Kosina commit 30282f96d1eef33be774d4ecf4bddba30a6152ec Author: Risto Suominen Date: Thu Apr 21 21:54:09 2011 +0300 ALSA: powermac - Correct lineout detection on PowerMac G4 DA Correct lineout (Pro Speaker) detection on PowerMac G4 Digital Audio (Tumbler). Signed-off-by: Risto Suominen Signed-off-by: Takashi Iwai commit 6ab3a9a63fc16b04f7de48eb0190d516dd7574df Author: John Sung Date: Thu Apr 21 16:21:52 2011 +0200 HID: hid-multitouch: add support for PenMount dual-touch panel This patch adds PenMount support to hid-multitouch. A new class MT_CLS_CONFIDENCE is defined for PenMount, since it uses HID_DG_CONFIDENCE as the valid flag. Signed-off-by: John Sung [benjamin.tissoires@enac.fr: rebased on top of last_index_field changes] Signed-off-by: Benjamin Tissoires Acked-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit 2955caed8b9865c1f04fcde6bd7103d5d5ec9415 Author: Benjamin Tissoires Date: Thu Apr 21 14:15:59 2011 +0200 HID: hid-multitouch: refactor last_field_index the current implementation requires the devices to report HID_DG_CONTACTCOUNT to set the last_field_index value. However, devices reporting in serial mode (DWAV and PenMount) do not send this field. Other devices (3M) add other fields in the reports descriptor that are not multitouch related at the end, thus the need to add a special case in the default case when handling events. A first work around has been set up but with PenMount devices, we have reached the limit. The idea is to calculate the last_field_index by relying only on multitouch fields the device send. This allows us to remove the handling of non-multitouch events in hid-multitouch, and guarantee that the function mt_emit_event is always called. Signed-off-by: Benjamin Tissoires Reviewed-and-tested-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit e0944ee63f7249802be74454cef81c97630ae1cd Author: Steven Rostedt Date: Wed Apr 20 21:42:00 2011 -0400 lockdep: Remove cmpxchg to update nr_chain_hlocks For some reason nr_chain_hlocks is updated with cmpxchg, but this is performed inside of the lockdep global "grab_lock()", which also makes simple modification of this variable atomic. Remove the cmpxchg logic for updating nr_chain_hlocks and simplify the code. Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014300.727863282@goodmis.org Signed-off-by: Ingo Molnar commit 282b5c2f6f663c008444321fd8fcdd374596046b Author: Steven Rostedt Date: Wed Apr 20 21:41:59 2011 -0400 lockdep: Print a nicer description for simple irq lock inversions Lockdep output can be pretty cryptic, having nicer output can save a lot of head scratching. When a simple irq inversion scenario is detected by lockdep (lock A taken in interrupt context but also in thread context without disabling interrupts) we now get the following (hopefully more informative) output: other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(lockA); lock(lockA); *** DEADLOCK *** Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014300.436140880@goodmis.org Signed-off-by: Ingo Molnar commit 6be8c3935b914dfbc24b27c91c2b6d583645e61a Author: Steven Rostedt Date: Wed Apr 20 21:41:58 2011 -0400 lockdep: Replace "Bad BFS generated tree" message with something less cryptic The message of "Bad BFS generated tree" is a bit confusing. Replace it with a more sane error message. Thanks to Peter Zijlstra for helping me come up with a better message. Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014300.135521252@goodmis.org Signed-off-by: Ingo Molnar commit dad3d7435e1d8c254d6877dc06852dc00c5da812 Author: Steven Rostedt Date: Wed Apr 20 21:41:57 2011 -0400 lockdep: Print a nicer description for irq inversion bugs Irq inversion and irq dependency bugs are only subtly different. The diffenerence lies where the interrupt occurred. For irq dependency: irq_disable lock(A) lock(B) unlock(B) unlock(A) irq_enable lock(B) unlock(B) lock(A) The interrupt comes in after it has been established that lock A can be held when taking an irq unsafe lock. Lockdep detects the problem when taking lock A in interrupt context. With the irq_inversion the irq happens before it is established and lockdep detects the problem with the taking of lock B: lock(A) irq_disable lock(A) lock(B) unlock(B) unlock(A) irq_enable lock(B) unlock(B) Since the problem with the locking logic for both of these issues is in actuality the same, they both should report the same scenario. This patch implements that and prints this: other info that might help us debug this: Chain exists of: &rq->lock --> lockA --> lockC Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(lockC); local_irq_disable(); lock(&rq->lock); lock(lockA); lock(&rq->lock); *** DEADLOCK *** Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014259.910720381@goodmis.org Signed-off-by: Ingo Molnar commit 48702ecf308e53f176c1f6fdc193d622ded54ac0 Author: Steven Rostedt Date: Wed Apr 20 21:41:56 2011 -0400 lockdep: Print a nicer description for simple deadlocks Lockdep output can be pretty cryptic, having nicer output can save a lot of head scratching. When a simple deadlock scenario is detected by lockdep (lock A -> lock A) we now get the following new output: other info that might help us debug this: Possible unsafe locking scenario: CPU0 ---- lock(&(lock)->rlock); lock(&(lock)->rlock); *** DEADLOCK *** Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014259.643930104@goodmis.org Signed-off-by: Ingo Molnar commit f4185812aa046ecb97e8817e10148cacdd7a6baa Author: Steven Rostedt Date: Wed Apr 20 21:41:55 2011 -0400 lockdep: Print a nicer description for normal deadlocks The lockdep output can be pretty cryptic, having nicer output can save a lot of head scratching. When a normal deadlock scenario is detected by lockdep (lock A -> lock B and there exists a place where lock B -> lock A) we now get the following new output: other info that might help us debug this: Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(lockB); lock(lockA); lock(lockB); lock(lockA); *** DEADLOCK *** On cases where there's a deeper chair, it shows the partial chain that can cause the issue: Chain exists of: lockC --> lockA --> lockB Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(lockB); lock(lockA); lock(lockB); lock(lockC); *** DEADLOCK *** Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014259.380621789@goodmis.org Signed-off-by: Ingo Molnar commit 3003eba313dd0e0502dd71548c36fe7c19801ce5 Author: Steven Rostedt Date: Wed Apr 20 21:41:54 2011 -0400 lockdep: Print a nicer description for irq lock inversions Locking order inversion due to interrupts is a subtle problem. When an irq lockiinversion discovered by lockdep it currently reports something like: [ INFO: HARDIRQ-safe -> HARDIRQ-unsafe lock order detected ] ... and then prints out the locks that are involved, as back traces. Judging by lkml feedback developers were routinely confused by what a HARDIRQ->safe to unsafe issue is all about, and sometimes even blew it off as a bug in lockdep. It is not obvious when lockdep prints this message about a lock that is never taken in interrupt context. After explaining the problems that lockdep is reporting, I decided to add a description of the problem in visual form. Now the following is shown: --- other info that might help us debug this: Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(lockA); local_irq_disable(); lock(&rq->lock); lock(lockA); lock(&rq->lock); *** DEADLOCK *** --- The above is the case when the unsafe lock is taken while holding a lock taken in irq context. But when a lock is taken that also grabs a unsafe lock, the call chain is shown: --- other info that might help us debug this: Chain exists of: &rq->lock --> lockA --> lockC Possible interrupt unsafe locking scenario: CPU0 CPU1 ---- ---- lock(lockC); local_irq_disable(); lock(&rq->lock); lock(lockA); lock(&rq->lock); *** DEADLOCK *** Signed-off-by: Steven Rostedt Acked-by: Peter Zijlstra Cc: Frederic Weisbecker Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110421014259.132728798@goodmis.org Signed-off-by: Ingo Molnar commit 103b3934817a7c42fba6e1ef76ecb390a2837d40 Author: Cyrill Gorcunov Date: Thu Apr 21 11:03:20 2011 -0400 perf, x86: P4 PMU -- Use perf_sample_data_init helper Instead of opencoded assignments better to use perf_sample_data_init helper. Tested-by: Lin Ming Signed-off-by: Cyrill Gorcunov Signed-off-by: Don Zickus Cc: Cyrill Gorcunov Link: http://lkml.kernel.org/r/1303398203-2918-2-git-send-email-dzickus@redhat.com Signed-off-by: Ingo Molnar commit eff430de53be6f3328c3eebe93755f1ecf499e37 Merge: 9cbdb70 91e8549 Author: Ingo Molnar Date: Fri Apr 22 10:19:26 2011 +0200 Merge branch 'linus' into perf/core Merge reason: Pick up upstream fixes. Signed-off-by: Ingo Molnar commit 5f8629c526b4f7e529a6d27bbd802c0dc7fcc357 Author: Michał Mirosław Date: Thu Apr 21 13:59:21 2011 +0000 net: fix hw_features ethtool_ops->set_flags compatibility __ethtool_set_flags() was not taking into account features set but not user-toggleable. Since GFLAGS returns masked dev->features, EINVAL is returned when passed flags differ to it, and not to wanted_features. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 470078312515f12e7cd916f1bd002acad313b9c8 Author: Matt Carlson Date: Wed Apr 20 07:57:43 2011 +0000 tg3: Add additional EEE messaging This patch adds link messages and an item to the sign-on banner to make EEE status more visible. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 1d36ba450bf8c88eda57deb028370880d09a14bc Author: Matt Carlson Date: Wed Apr 20 07:57:42 2011 +0000 tg3: Add macro for SMDSP toggling A common AUX CTRL operation in the driver is to enable and disable the SMDSP. This patch consolidates the code so that the details of the operation are in one place. This patch also adds code to make sure the SMDSP is enabled before executing code that relies on it. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit b4bd292933537e19107c3e151b27a15fefa5f8d0 Author: Matt Carlson Date: Wed Apr 20 07:57:41 2011 +0000 tg3: Add write accessor for AUX CTRL phy reg This patch adds a write accessor for the aux ctrl phy register. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 15ee95c36d355a9f47746eaa4ae8cc0ecafec550 Author: Matt Carlson Date: Wed Apr 20 07:57:40 2011 +0000 tg3: Add read accessor for AUX CTRL phy reg This patch adds a read accessor for the aux ctrl register. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit b0988c15c12c40b9680730f55a8351f30ec7a564 Author: Matt Carlson Date: Wed Apr 20 07:57:39 2011 +0000 tg3: Move phy accessor functions higher Phy accessor functions should live closer to where the base phy read / write routines are. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 34eea5ac214353ccd93ef7dd8dbd10aed87f5f46 Author: Matt Carlson Date: Wed Apr 20 07:57:38 2011 +0000 tg3: Only allow phy ioctls while netif_running When tg3 was new, phy accesses through ioctl were allowable at any time. Then, the driver started shutting down the phy when the device was closed. Phy accesses would be allowed when the driver first attached to the device, but then would be forbidden after the device had been up'd and down'd. After that, management firmware made it illegal to access the phy unless the driver "owned" the device. Now that most firmware is being moved over to the APE, it is less clear when phy accesses are safe. While it is possible to attempt to identify these conditions and code the driver to navigate through the pitfalls, it could be perplexing to the admin why phy accesses work in some cases and not others. This patch brings some uniformity to the problem by only allowing phy accesses while the driver has control of the device. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 4a85f09831329bc5a5e4b9bca3f3ecbffb78f858 Author: Matt Carlson Date: Wed Apr 20 07:57:37 2011 +0000 tg3: Nullify RSS for loopback test The loopback test assumes all traffic goes to the first rx queue. There is a 1 in 4 chance this won't be true if RSS is enabled though. This patch reprograms the RSS indirection table to route all rx packets to the first queue. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit eb07a9408e05f67caa671bdf2a509a4d2bd05abf Author: Matt Carlson Date: Wed Apr 20 07:57:36 2011 +0000 tg3: Adjust rx prod ring bd replenish thresholds The oldest tg3 devices had large rx producer ring BD caches. Back then, it made sense to make the BD cache replenish threshold only a function of the number of rx buffers posted by the driver. Since then, the BD cache sizes have shrunk to 25% of their original size and, in some cases, the ring sizes have quadrupled in size. Under such conditions, static BD cache replenish thresholds no longer match the hardware constraints. This patch attempts to factor in the BD cache size into the bd cache replenish strategy, taking the existing hardware bugs into account. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 4d95847381228639844c7197deb8b2211274ef22 Author: Matt Carlson Date: Wed Apr 20 07:57:35 2011 +0000 tg3: Workaround rx_discards stat bug The 5717, 5718, 5719 A0, and 5720 A0 has a bug where the rx_discards statistic counter will increment when dropping unwanted multicast frames. This patch works around the problem by attempting to recreate the data using other means. The resulting value will not be accurate, but it can still serve as a problem indicator. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 970def654e9df1ad28ddb466bb1d123a55e1e7e7 Author: Daniel Hellstrom Date: Thu Apr 21 04:20:25 2011 +0000 sparc32,leon: don't rely on bootloader to mask IRQs Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 01dae0f08dddf6ba86f956e60dceee4968f7a555 Author: Daniel Hellstrom Date: Thu Apr 21 04:20:24 2011 +0000 sparc32,leon: operate on boot-cpu IRQ controller registers * proper initialization of boot_cpu_id (no hardcoding to 0) * use boot_cpu_id index to address into the IRQ controller where appropriate Each CPU has a separate set of IRQ controller registers, this patch makes sure that the boot-cpu registers are used instead of CPU0's. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 5fcafb7a23e35b2f1a5243f4dd536240f52c8ceb Author: Daniel Hellstrom Date: Thu Apr 21 04:20:23 2011 +0000 sparc32: always define boot_cpu_id Define boot_cpu_id in single-processor kernels as well. This is to support architectures which can boot on other than CPU0. Sam Ravnborg has written the cleanup parts by extracting boot_cpu_id from smp_32.c into setup_32.c and cleaned up sun4d_irq.c. boot_cpu_id was initialized before BSS was cleared in sun4c_continue_boot, instead boot_cpu_id is set to 0xff to avoid BSS. If boot_cpu_id is untouched (0xff) by bootup code it will be overwritten to 0. boot_cpu_id4 is automatically calculated in common code. Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 1827237065815373421c087c84d2a779d61c13d3 Author: Daniel Hellstrom Date: Thu Apr 21 04:21:39 2011 +0000 sparc32: removed unused code, implemented by generic code Signed-off-by: Daniel Hellstrom Signed-off-by: David S. Miller commit 6f9efe76cb213e9b0dd89e465efaf9725f4bf492 Author: Anton Vorontsov Date: Fri Apr 22 03:08:22 2011 +0400 max8903_charger: Add GENERIC_HARDIRQS as a dependency (fixes S390 build) S390 is special as it doesn't have IRQ lines, so these errors pop up: drivers/built-in.o: In function 'max8903_remove': drivers/power/max8903_charger.c:355: undefined reference to 'free_irq' drivers/power/max8903_charger.c:357: undefined reference to 'free_irq' drivers/power/max8903_charger.c:359: undefined reference to 'free_irq' This commit fixes the issue by making the driver depend on GENERIC_HARDIRQS feature. Reported-by: Stephen Rothwell Signed-off-by: Anton Vorontsov commit eb485d6414fa1ca45282183afb6d6cfb8dbe18e2 Author: Sam Ravnborg Date: Thu Apr 21 15:48:39 2011 -0700 sparc32: avoid build warning at mm/percpu.c:1647 Fix following warning: mm/percpu.c: In function 'pcpu_embed_first_chunk': mm/percpu.c:1647:3: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'unsigned int' Signed-off-by: Daniel Hellstrom [sam: added warning message to changelog, use _AC()] Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit 7671fa22af7a8a066663d93117c866672bd211c8 Author: Sam Ravnborg Date: Thu Apr 21 15:47:35 2011 -0700 sparc32: always register a PROM based early console Do not require user to add "-p" to boot arguments to see early info printed to prom console. This is similar to the sparc64 functionality - which was added with: 3c62a2d3477ff7725210db57aec3d2806fa10c20 ("[SPARC64]: Always register a PROM based early console.") Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit 9c2853af1fcbe01a123d666aa373e99119148ee6 Author: Sam Ravnborg Date: Thu Apr 21 15:46:21 2011 -0700 sparc32: probe for cpu info only during startup We did a cpu_probe() call each time a CPU got online - which only effect was to save latest CPU/FPU info for use by show_cpuinfo(). Use same setup as for sparc64 where we probe for this info during startup, and only once. This allowed us to annotate a few functions __init which again fixed the following section mismatch warnings: WARNING: vmlinux.o(.text+0x65f0): Section mismatch in reference from the function set_cpu_and_fpu() to the (unknown reference) .init.rodata:(unknown) WARNING: vmlinux.o(.text+0x65f8): Section mismatch in reference from the function set_cpu_and_fpu() to the (unknown reference) .init.rodata:(unknown) WARNING: vmlinux.o(.text+0x664c): Section mismatch in reference from the function set_cpu_and_fpu() to the variable .init.rodata:manufacturer_info WARNING: vmlinux.o(.text+0x6650): Section mismatch in reference from the function set_cpu_and_fpu() to the variable .init.rodata:manufacturer_info Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit cb1b8209815594613650772eeb889c170107dad4 Author: Sam Ravnborg Date: Thu Apr 21 15:45:45 2011 -0700 sparc: consolidate show_cpuinfo in cpu.c We have all the cpu related info in cpu.c - so move the remaining functions to support /proc/cpuinfo to this file. Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit 5eb1f4fc167f5adc5f15e722e25eff6713fb3406 Author: Daniel Hellstrom Date: Tue Apr 19 23:41:26 2011 +0000 sparc32,leon: implement genirq CPU affinity A simple implementation of CPU affinity, the first CPU in the affinity CPU mask always takes the IRQ. Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit a481b5d0cb5d1884f16460b4846755518360f1ca Author: Daniel Hellstrom Date: Tue Apr 19 23:41:25 2011 +0000 sparc32, leon: code cleanup of timer/IRQ controller initialization Cleaned up leon_init_timers() by removing unnecessary double checking and one indentation level. Changed LEON_IMASK to LEON_IMASK(cpu). Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit ea044ec3984472a2e8de91e17872868baac62a50 Author: Daniel Hellstrom Date: Tue Apr 19 23:41:24 2011 +0000 sparc32,leon: cleaned away code from the LEON2 days Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit 2cf9530420e446bb61f665d02afeb81070106900 Author: Daniel Hellstrom Date: Tue Apr 19 23:41:23 2011 +0000 sparc32,leon: per-cpu ticker use genirq per-cpu handler Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit 4c6773c3954cb1192f70a63e2dc61adc55bb0948 Author: Daniel Hellstrom Date: Tue Apr 19 23:41:22 2011 +0000 sparc32,leon: add support for extended interrupt controller The extended IRQ controller gives the LEON 16 more IRQs. The patch installs a custom handler for the exetended controller IRQ, where a register is read and the "real" IRQ causing IRQ is determined. Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit d61a38b2ced149c00898833ccd3ea0433db8ae7d Author: Daniel Hellstrom Date: Tue Apr 19 23:41:21 2011 +0000 sparc32, leon: must protect IRQ controller register with spinlock The LEON interrupt controller has one single mask register for all IRQs per CPU, even though the genirq layer protects us from accessing the same IRQ at the same time other IRQs share the same mask register and may thus interfere. Some other IRQ controllers has a mask register or similar per IRQ instead which makes spinlocks unncessary. Signed-off-by: Daniel Hellstrom Acked-by: Sam Ravnborg Signed-off-by: David S. Miller commit e138f96bf5142c400b6b00f4cf69031bccc48f32 Author: David S. Miller Date: Thu Apr 21 15:19:02 2011 -0700 mv643xx_eth: Fix build regression. From Stephen Rothwell: -------------------- After merging the final tree, today's linux-next build (powerpc chrp32_defconfig) failed like this: drivers/net/mv643xx_eth.c: In function 'port_start': drivers/net/mv643xx_eth.c:2250: error: 'dev' undeclared (first use in this function) Caused by commit aad59c431b77 ("net: mv643xx: convert to hw_features"). -------------------- Reported-by: Stephen Rothwell Signed-off-by: David S. Miller commit d4dc210f69bcb0b4bef5a83b1c323817be89bad1 Author: Tejun Heo Date: Thu Apr 21 20:54:46 2011 +0200 block: don't block events on excl write for non-optical devices Disk event code automatically blocks events on excl write. This is primarily to avoid issuing polling commands while burning is in progress. This behavior doesn't fit other types of devices with removeable media where polling commands don't have adverse side effects and door locking usually doesn't exist. This patch introduces new genhd flag which controls the auto-blocking behavior and uses it to enable auto-blocking only on optical devices. Note for stable: 2.6.38 and later only Cc: stable@kernel.org Signed-off-by: Tejun Heo Reported-by: Kay Sievers Signed-off-by: Jens Axboe commit 1196f8b814f32cd04df334abf47648c2a9fd8324 Author: Tejun Heo Date: Thu Apr 21 20:54:45 2011 +0200 block: rescan partitions on invalidated devices on -ENOMEDIA too __blkdev_get() doesn't rescan partitions if disk->fops->open() fails, which leads to ghost partition devices lingering after medimum removal is known to both the kernel and userland. The behavior also creates a subtle inconsistency where O_NONBLOCK open, which doesn't fail even if there's no medium, clears the ghots partitions, which is exploited to work around the problem from userland. Fix it by updating __blkdev_get() to issue partition rescan after -ENOMEDIA too. This was reported in the following bz. https://bugzilla.kernel.org/show_bug.cgi?id=13029 Note for stable: 2.6.38 and later only Cc: stable@kernel.org Signed-off-by: Tejun Heo Reported-by: David Zeuthen Reported-by: Martin Pitt Reported-by: Kay Sievers Tested-by: Kay Sievers Cc: Alan Cox Signed-off-by: Jens Axboe commit ea6949b66d084a197dd7f243b72e216a71d9f2ca Author: Tejun Heo Date: Thu Apr 21 20:54:44 2011 +0200 cdrom: always check_disk_change() on open cdrom_open() called check_disk_change() after the rest of open path succeeded which leads to the following bizarre behavior. * After media change, if the device opened without O_NONBLOCK, open_for_data() naturally fails with -ENOMEDIA and check_disk_change() is never called. The media is known to be gone and the open failure makes it obvious to the userland but device invalidation never happens. * But if the device is opened with O_NONBLOCK, all the checks are bypassed and cdrom_open() doesn't notice that the media is not there and check_disk_change() is called and invalidation happens. There's nothing to be gained by avoiding calling check_disk_change() on open failure. Common cases end up calling check_disk_change() anyway. All we get is inconsistent behavior. Fix it by moving check_disk_change() invocation to the top of cdrom_open() so that it always gets called regardless of how the rest of open proceeds. Note for stable: 2.6.38 and later only Cc: stable@kernel.org Signed-off-by: Tejun Heo Reported-by: Amit Shah Tested-by: Amit Shah Signed-off-by: Jens Axboe commit e1cdd553d482ceb083fac5e544e8702fccefbfd6 Author: Wei Yongjun Date: Sun Apr 17 17:29:03 2011 +0000 sctp: implement event notification SCTP_SENDER_DRY_EVENT This patch implement event notification SCTP_SENDER_DRY_EVENT. SCTP Socket API Extensions: 6.1.9. SCTP_SENDER_DRY_EVENT When the SCTP stack has no more user data to send or retransmit, this notification is given to the user. Also, at the time when a user app subscribes to this event, if there is no data to be sent or retransmit, the stack will immediately send up this notification. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit ee916fd0fdb8f43dacaab431de3e1f7225039d72 Author: Wei Yongjun Date: Sun Apr 17 17:28:01 2011 +0000 sctp: change auth event type name to SCTP_AUTHENTICATION_EVENT This patch change the auth event type name to SCTP_AUTHENTICATION_EVENT, which is based on API extension compliance. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 209ba424c2c6e5ff4dd0ff79bb23659aa6048eac Author: Wei Yongjun Date: Sun Apr 17 17:27:08 2011 +0000 sctp: implement socket option SCTP_GET_ASSOC_ID_LIST This patch Implement socket option SCTP_GET_ASSOC_ID_LIST. SCTP Socket API Extension: 8.2.6. Get the Current Identifiers of Associations (SCTP_GET_ASSOC_ID_LIST) This option gets the current list of SCTP association identifiers of the SCTP associations handled by a one-to-many style socket. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 885f42e1f466c36e3663d912a831e940f01a112b Author: Takashi Iwai Date: Thu Apr 21 15:27:58 2011 +0200 ALSA: hda - Enable sync_write for AMD chipset with IDT 92HD8x codecs The AMD chipset seems unstable in the normal operation mode, and it seems requring more sensible access for each verb. Enabling sync_write mode and allowing bus-reset is a sort of workaround for these chipset stability issues. Signed-off-by: Takashi Iwai commit a9e3de6f9f4f3c9deb409d06fa4f4cfbe9878843 Merge: 97945c4 47912a6 Author: Mark Brown Date: Thu Apr 21 12:00:27 2011 +0100 Merge branch 'tegra' into for-2.6.40 Fix up merge with Harmony driver rename. Conflicts: sound/soc/tegra/Kconfig commit 47912a657ec2aa52c7af5f5e2ecc4efe41094d44 Author: Stephen Warren Date: Tue Apr 19 10:18:01 2011 -0600 ARM: Tegra: select MACH_HAS_SND_SOC_TEGRA_WM8903 CONFIG_SND_SOC_TEGRA_WM8903 is useful for many Tegra boards. To avoid the ASoC tegra/Kconfig enumerating them all, instead have the Tegra machine Kconfig select MACH_HAS_SND_SOC_TEGRA_WM8903 where appropriate, and have SND_SOC_TEGRA_WM8903 depend on this. [Redid ASoC diff so it applies. -- broonie] Signed-off-by: Stephen Warren Acked-by: Olof Johansson Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d3bf52e998056a6002b2aecfe1d25486376382ac Author: Rakib Mullick Date: Wed Apr 20 21:27:32 2011 +0600 sched: Remove obsolete comment from scheduler_tick() scheduler_tick() is no longer called by fork code - this got discarded a long time ago by commit bc947631d1d532 ("sched: improve efficiency of sched_fork()"). So, remove the comment which still claims otherwise. Signed-off-by: Rakib Mullick Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/BANLkTimO4iGP0QpaHO1HHF1QOnVcQpc0cw@mail.gmail.com Signed-off-by: Ingo Molnar commit 42ac9e87fdd89b77fa2ca0a5226023c1c2d83226 Merge: 057f3fa f0e615c Author: Ingo Molnar Date: Thu Apr 21 11:39:21 2011 +0200 Merge commit 'v2.6.39-rc4' into sched/core Merge reason: Pick up upstream fixes. Signed-off-by: Ingo Molnar commit dffa4b2f62ff28c982144c7033001b1ece4d3532 Author: Borislav Petkov Date: Wed Apr 20 12:23:49 2011 +0200 x86, mce: Drop the default decoding notifier The default notifier doesn't make a lot of sense to call in the correctable errors case. Drop it and emit the mcelog decoding hint only in the uncorrectable errors case and when no notifier is registered. Also, limit issuing the "mcelog --ascii" message in the rare case when we dump unreported CEs before panicking. While at it, remove unused old x86_mce_decode_callback from the header. Signed-off-by: Borislav Petkov Signed-off-by: Prarit Bhargava Cc: Tony Luck Cc: Nagananda Chumbalkar Cc: Russ Anderson Link: http://lkml.kernel.org/r/20110420102349.GB1361@aftab Signed-off-by: Ingo Molnar commit 6d67c110ab204bc4c2f4f3e368b8d7cf1f38a4f8 Author: Antonio Ospite Date: Wed Apr 6 10:43:23 2011 +0200 HID: bt: hidp.h: do not use a tab after a #define Signed-off-by: Antonio Ospite Signed-off-by: Jiri Kosina commit d431b2e33cd54e4334019a95979ae93aea4735e8 Author: Randy Dunlap Date: Thu Apr 21 11:10:42 2011 +0200 HID: hid-example: fix some build issues samples/hid-example.o needs some Kconfig and Makefile additions in order to build. It should use headers from the build tree, so use HEADERS_CHECK to require that those header files be present. Change the kconfig symbol from tristate to bool since userspace cannot be built as loadable modules. However, I don't understand why the userspace header files are not present as reported in Andrew's build log, since it builds OK on x86_64 without any of these changes. Signed-off-by: Randy Dunlap Cc: Alan Ott Cc: Jiri Kosina Signed-off-by: Andrew Morton Signed-off-by: Jiri Kosina commit e31b2b228439eee23b8ccc186d3c0e77bd69123b Author: Florian Westphal Date: Thu Apr 21 10:58:25 2011 +0200 netfilter: ebtables: only call xt_compat_add_offset once per rule The optimizations in commit 255d0dc34068a976 (netfilter: x_table: speedup compat operations) assume that xt_compat_add_offset is called once per rule. ebtables however called it for each match/target found in a rule. The match/watcher/target parser already returns the needed delta, so it is sufficient to move the xt_compat_add_offset call to a more reasonable location. While at it, also get rid of the unused COMPAT iterator macros. Signed-off-by: Florian Westphal Signed-off-by: Patrick McHardy commit 954d70388307eb1ccb328d9f960657022a316243 Author: Eric Dumazet Date: Thu Apr 21 10:57:21 2011 +0200 netfilter: fix ebtables compat support commit 255d0dc34068a976 (netfilter: x_table: speedup compat operations) made ebtables not working anymore. 1) xt_compat_calc_jump() is not an exact match lookup 2) compat_table_info() has a typo in xt_compat_init_offsets() call 3) compat_do_replace() misses a xt_compat_init_offsets() call Reported-by: dann frazier Signed-off-by: Eric Dumazet Signed-off-by: Patrick McHardy commit 358b1361bed42f4e6cbf8956a73aebf193957d4a Author: Pablo Neira Ayuso Date: Thu Apr 21 10:55:07 2011 +0200 netfilter: ctnetlink: fix timestamp support for new conntracks This patch fixes the missing initialization of the start time if the timestamp support is enabled. libnetfilter_conntrack/utils# conntrack -E & libnetfilter_conntrack/utils# ./conntrack_create tcp 6 109 ESTABLISHED src=1.1.1.1 dst=2.2.2.2 sport=1025 dport=21 packets=0 bytes=0 [UNREPLIED] src=2.2.2.2 dst=1.1.1.1 sport=21 dport=1025 packets=0 bytes=0 mark=0 delta-time=1303296401 use=2 Signed-off-by: Pablo Neira Ayuso Signed-off-by: Patrick McHardy commit 57903f29cde4717d51123df0c9c7b670b6403ac5 Author: Tomas Winkler Date: Wed Apr 6 17:37:35 2011 +0300 staging/easycap: easycap_probe: drop unuzed variables Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit ad30d7af14c778a63304e42acdcedc365b26e8d8 Author: Tomas Winkler Date: Wed Apr 6 17:37:34 2011 +0300 staging/easycap: easycap_probe: take out duplicated code from ifdef - else Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 11ff12feb40dc663cad0f2da86729f1af9d1356e Author: Tomas Winkler Date: Wed Apr 6 17:37:33 2011 +0300 staging/easycap: easycap_probe : rename usb variables to common names 1. rename usb variables to more common names struct usb_device *pusb_device -> usbdev struct usb_host_interface *pusb_host_interface -> alt struct usb_endpoint_descriptor *pepd -> struct usb_interface_descriptor *pusb_interface_descriptor -> interface; 2. use usb_altnum_to_altsetting to access alternative settings Cc: Mike Thomas Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 828d7d7b19446bf5a40928da47955c575a454c75 Merge: 26954c7 069f40f Author: Gustavo F. Padovan Date: Wed Apr 20 21:47:07 2011 -0300 Merge master.kernel.org:/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 Conflicts: net/bluetooth/l2cap_core.c net/bluetooth/l2cap_sock.c net/bluetooth/mgmt.c commit 24742ac69249500f650fd72cf0755932c5a4c247 Author: Michael Hennerich Date: Wed Apr 6 11:42:49 2011 +0200 IIO: GYRO: IIO driver for Analog Devices Digital Output Gyroscope ADXRS450 From: Cliff Cai Add new IIO driver for Analog Devices digital output gyroscope ADXRS450 Signed-off-by: Cliff Cai Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d48946357bad923eb6098e272c3eea8286f4c9b7 Author: Michael Hennerich Date: Wed Apr 6 11:42:48 2011 +0200 IIO: Documentation: Add ABI documentatio for gyro quadrature correction From: Cliff Cai Add ABI documentation for gyro quadrature correction. Signed-off-by: Cliff Cai Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 860a4e9d9f95f6fa1cbfdf3953863997121a07f9 Author: Michael Hennerich Date: Wed Apr 6 11:42:47 2011 +0200 IIO: GYRO: Add MACRO for gyro quadrature correction From: Cliff Cai Add gyro_z_quadrature_correction_raw define. Signed-off-by: Cliff Cai Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 7aead6d77a8f4c3d05cce54fc2ab5babf2b8753f Author: Uwe Kleine-König Date: Wed Apr 6 16:48:53 2011 +0200 staging/comedi: remove German in-file changelog My script that finds typos always wants to do s/Funktion/Function/. Instead of adding some whilelist logic to my script just delete the changelog that is useless in general and still more in this case as most kernel developers don't understand it. Cc: Greg Kroah-Hartman Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman commit 01fbb4781fc2865a55a19c44403bc69b34f1de43 Author: Alan Cox Date: Wed Apr 6 13:31:40 2011 +0100 Staging: iio: oaktrail AK8975 support via IIO Actually this is generic 'I have no GPIO' support for the AK8975, instead we have to go bus polling. Huang Liang produced an initial patch which worked by removing the support for GPIO pins. This patch instead makes GPIO support optional and Huang then fixed some bugs in it. Signed-off-by: Alan Cox Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit acf0b9e8194b9e70e661d38f7485d801f3e10e51 Author: Roland Vossen Date: Tue Apr 5 21:11:58 2011 +0200 staging: brcm80211: removed static ASSERTs Code cleanup. ASSERTs that check static (compile time) conditions have been removed. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 57d745ea6bcbe5bdd3c81d9cb28b211d7c5c560a Author: Larry Finger Date: Sat Apr 2 15:49:33 2011 -0500 staging: brcm80211: Remove symbol CONFIG_BRCM80211 Since the staging driver brcm80211 was renamed to brcmsmac, CONFIG_BRCM80211 is not really needed. In addition, a two-entry list hardly needs a separate config menu. The only awkward place in the revised code is the double addition of the brcm80211 Makefile. Signed-off-by: Larry Finger Signed-off-by: Greg Kroah-Hartman commit 2657c30e238424cfa666883d459dc132a9e1e59c Author: Javier M. Mellid Date: Sat Apr 2 03:02:12 2011 +0200 staging: rtl8712: fixed coding style issues Fixed some style and format issues with code. Signed-off-by: Javier M. Mellid Signed-off-by: Greg Kroah-Hartman commit 0593758e4b71836d3a95714b626d273ee51173e0 Author: Javier M. Mellid Date: Sat Apr 2 03:01:49 2011 +0200 staging: rtl8712: fixed coding style issues Fixed some style and format issues with headers. Signed-off-by: Javier M. Mellid Signed-off-by: Greg Kroah-Hartman commit 790c3093c05d844676c2b6becc093204a5df2175 Author: Roland Vossen Date: Fri Apr 1 12:07:10 2011 +0200 staging: brcm80211: ASSERT cleanup in phy Code cleanup. Driver contains too many ASSERTs. Removed all ASSERTs in the PHY that did not directly relate to a value being read from hardware. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit e2ce5049776f135b61fb87e9f8fad661f1d3c7ea Author: Julia Lawall Date: Fri Apr 1 16:23:44 2011 +0200 drivers/staging/cx25821/cx25821-video.c: introduce missing kfree Error handling code following a kmalloc should free the allocated data. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S; expression E; identifier f,f1,l; position p1,p2; expression *ptr != NULL; @@ x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...x...+> } ( x->f1 = E | (x->f1 == NULL || ...) | f(...,x->f1,...) ) ...> ( return \(0\|<+...x...+>\|ptr\); | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 48c59f4b915caf4007e6d5a1f34b10fe10210b72 Author: Julia Lawall Date: Fri Apr 1 16:23:45 2011 +0200 drivers/staging/intel_sst/intel_sst_app_interface.c: introduce missing kfree Stream_bufs is initialized at the beginning of the function, and then the #ifdef code declares a new variable with the same name and initializes that. If the if in the ifdef is taken, the then branch returns, implying that the first stream_bufs is never used and is leaked. The first initialization is thus moved down after the ifdef. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S; expression E; identifier f,f1,l; position p1,p2; expression *ptr != NULL; @@ x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...x...+> } ( x->f1 = E | (x->f1 == NULL || ...) | f(...,x->f1,...) ) ...> ( return \(0\|<+...x...+>\|ptr\); | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 60d5c9f5b6a2f5ce09712b7f7d0b0bf979a150be Author: Julia Lawall Date: Fri Apr 1 16:23:42 2011 +0200 drivers/staging/brcm80211/brcmfmac/wl_iw.c: introduce missing kfree Error handling code following a kmalloc should free the allocated data. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S; expression E; identifier f,f1,l; position p1,p2; expression *ptr != NULL; @@ x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...x...+> } ( x->f1 = E | (x->f1 == NULL || ...) | f(...,x->f1,...) ) ...> ( return \(0\|<+...x...+>\|ptr\); | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Signed-off-by: Greg Kroah-Hartman commit 29811f9d8973e65b46da4283d52f02f78a21f6e0 Author: Arend van Spriel Date: Thu Mar 31 15:56:13 2011 +0200 staging: brcm80211: separate hndpmu functionality for brcmsmac driver The hndpmu source file has functions for brcmfmac and brcmsmac driver but it turns out that on function level there is no reuse so for the brcmsmac its set of functions now reside in wlc_pmu.c. Reviewed-by: Henry Ptasinski Reviewed-by: Roland Vossen Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0c6d4ad9f7dede78815933e667464415a75ce118 Author: Roland Vossen Date: Wed Mar 30 12:16:00 2011 +0200 staging: brcm80211: removed ASSERTs in LCN phy code Code cleanup. Driver contains far too many ASSERTs. Bringing driver more in line with Greg KH's guidelines. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 3b6ee72351adcec239563a89a402fa387e46e102 Author: Roland Vossen Date: Wed Mar 30 11:21:01 2011 +0200 staging: brcm80211: removed duplicate WMM code By calling wlc_wme_setparams() from wlc_edcf_setparams(), duplicate code in wlc_edcf_setparams() could be removed. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit e0372fe994e175630701eda4c2cf15bb269079ca Author: Roland Vossen Date: Wed Mar 30 11:21:00 2011 +0200 staging: brcm80211: made overlapping WMM functions more similar Code cleanup. Functions wlc_edcf_setparams() and wlc_wme_setparams() duplicate code amongst each other. This commit attempts to make life easier for the reviewer, by introducing non functional changes that bring wlc_edcf_setparams() more in line with wlc_wme_setparams(). As a result the subsequent commit can be reviewed more easily. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit a332bfc90c8397cf683cb3bd8b540b96e0ea7e76 Author: Roland Vossen Date: Wed Mar 30 11:20:59 2011 +0200 staging: brcm80211: cleanup of WMM related functions Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 871f84779668b594651c03b0498c6e76cf0f64f0 Author: Cho, Yu-Chen Date: Fri Apr 1 14:38:43 2011 +0800 staging/keucr: transport usb use pr_ transport.c usb.c use pr_ for messages Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 548039fd34d701aa533bc1c97cef3fa2b29c74ea Author: Cho, Yu-Chen Date: Fri Apr 1 14:38:42 2011 +0800 staging/keucr: smilmain use pr_ for messages smilmain.c use pr_ for messages Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit beddfe8428443e800d0180c52fe2913717ecfb2d Author: Cho, Yu-Chen Date: Fri Apr 1 14:38:41 2011 +0800 staging/keucr: scsiglue use pr_ for messages scsiglue.c use pr_ for messages Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit 615df84151368f8a2f96f4ffcdb49b05ece8e2a2 Author: Cho, Yu-Chen Date: Fri Apr 1 14:38:40 2011 +0800 staging/keucr: msscsi use pr_ for messages msscsi.c use pr_ for messages Signed-off-by: Cho, Yu-Chen Signed-off-by: Greg Kroah-Hartman commit af12cc50c448086eac928ab7a322f3fe2bd220b5 Author: Karthigan Srinivasan Date: Thu Mar 31 15:00:17 2011 -0500 Staging: winbond: wb35tx.c: Fixed coding style issue. Fixed coding style issue. Signed-off-by: Karthigan Srinivasan Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit fd1b821c31f8a4588cc874721e3d17a47b460380 Author: Tomas Winkler Date: Wed Mar 30 12:15:30 2011 +0200 staging/easycap: revamp reset function fix indentation and drop success statements printouts that just causes code be less readable Signed-off-by: Tomas Winkler Signed-off-by: Greg Kroah-Hartman commit 19cb28483a164595405a18758d1a66e189355402 Author: Marek Belisko Date: Mon Mar 28 13:10:27 2011 +0200 staging:ft1000: Remove dead code in ft1000_hw.c Signed-off-by: Marek Belisko Signed-off-by: Greg Kroah-Hartman commit 7207ecea84056f9aaf32685937fad2df899db14d Author: Nicolas Kaiser Date: Sun Mar 27 17:48:53 2011 +0200 staging: crystalhd: remove unused typedef bc_bool_t Remove unused typedef bc_bool_t. Signed-off-by: Nicolas Kaiser Reviewed-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 400838659314cc67032f35962eee5a8639981b61 Author: Alexander Beregalov Date: Sat Mar 26 20:18:14 2011 +0300 Staging: rtl8712: redundant null check before kfree() Signed-off-by: Alexander Beregalov Signed-off-by: Greg Kroah-Hartman commit cc614b6970ed9957d51255682c2784c2310623af Author: Alexander Beregalov Date: Sat Mar 26 20:18:13 2011 +0300 Staging: rts_pstor: redundant null check before kfree() Signed-off-by: Alexander Beregalov Signed-off-by: Greg Kroah-Hartman commit 389fe985f27b5334110639146016bb6dd273c3f6 Author: Alexander Beregalov Date: Sun Mar 27 04:06:43 2011 +0400 Staging: rts_pstor: s/rtsx_alloc_dma_buf/kmalloc/ Replace rtsx_alloc_dma_buf() with kfree() back, chip parameter is not used; remove casts. Signed-off-by: Alexander Beregalov Signed-off-by: Greg Kroah-Hartman commit f7468e2995dbd914817c780941750f0ac668ac50 Author: Alexander Beregalov Date: Sat Mar 26 20:18:11 2011 +0300 Staging: rts_pstor: s/rtsx_free_dma_buf/kfree/ Signed-off-by: Alexander Beregalov Signed-off-by: Greg Kroah-Hartman commit 24c92eac7e5976b07f663e1149d73075aff96c0d Author: Alexander Beregalov Date: Sat Mar 26 20:18:10 2011 +0300 Staging: sbe-2t3e3: redundant null check before kfree() Signed-off-by: Alexander Beregalov Cc: Krzysztof Halasa Signed-off-by: Greg Kroah-Hartman commit e756910059068f2b247fb8aa6e37e5685b85a0ea Author: Alexander Beregalov Date: Sat Mar 26 20:18:09 2011 +0300 Staging: sbe-2t3e3: remove T3E3_USE_CONTIGMALLOC This code looks useless, t3e3_contigmemory_size is neither declared nor used anywhere else, as well as T3E3_USE_CONTIGMALLOC. Signed-off-by: Alexander Beregalov Cc: Krzysztof Halasa Signed-off-by: Greg Kroah-Hartman commit 877a344b28b51b695d6baaeecb15d0eb6c90daef Author: Michał Mirosław Date: Tue Apr 19 12:43:20 2011 +0200 Staging: convert hv network driver to hw_features Signed-off-by: Michał Mirosław Signed-off-by: Greg Kroah-Hartman commit 13399cbaab4dfee74d3e1d2547381c6d398af736 Author: Olaf Hering Date: Sat Apr 16 18:50:42 2011 +0200 hv: make vmbus_loglevel writeable make /sys/module/hv_vmbus/parameters/vmbus_loglevel writeable by root. Signed-off-by: Olaf Hering Signed-off-by: Greg Kroah-Hartman commit 8fea1912cef357a154a529f3c358fb5229c5003d Author: Olaf Hering Date: Sat Apr 16 18:50:41 2011 +0200 hv: pass integer to tasklet_init() tasklet_init() takes an integer, so use one right away. Signed-off-by: Olaf Hering Signed-off-by: Greg Kroah-Hartman commit 35436487e954d903237cdd2e1b4f8ca6de4dfe61 Author: Olaf Hering Date: Sat Apr 16 18:50:40 2011 +0200 hv: pass u32 to process_chn_event() Change types in vmbus_on_event() to u32 since the input is u32 as well. Pass u32 to process_chn_event() instead of casting arg to void* and back. Update printk to reflect type change. Signed-off-by: Olaf Hering Signed-off-by: Greg Kroah-Hartman commit 242b45aa8d93f7fc46ed551db9eb06cc33da7167 Author: Olaf Hering Date: Sat Apr 16 18:50:39 2011 +0200 hv: Reduce indention in vmbus_on_event Reduce indention in vmbus_on_event() by converting two if (var) to if (!var) Signed-off-by: Olaf Hering Signed-off-by: Greg Kroah-Hartman commit b3ee87081ccc3a5c4394d97ae1a13944b5072e81 Author: K. Y. Srinivasan Date: Wed Apr 6 16:05:01 2011 -0700 Staging: hv: Get rid of blkvsc_check_events() We don't support removable media in Hyper-V block driver. Get rid of blkvsc_check_events() as it is efectively "dead code". Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 273083bef5a1204b6ce67eb8e23682a2d3cd2dd9 Author: K. Y. Srinivasan Date: Wed Apr 6 14:35:02 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_getgeo() Get rid of the forward declaration of blkvsc_getgeo() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a55af7bee859e183c059415b608b6d72e5cd7426 Author: K. Y. Srinivasan Date: Wed Apr 6 14:35:01 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_open() Get rid of the forward declaration of blkvsc_open() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6fc46203d103b23d813df864e8e319449bbec63e Author: K. Y. Srinivasan Date: Wed Apr 6 14:35:00 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_check_events() Get rid of the forward declaration of blkvsc_check_events() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 8cbe3a1c8fd3ffe2daa037ea23969b870f8b9aeb Author: K. Y. Srinivasan Date: Wed Apr 6 14:34:59 2011 -0700 Staging: hv: Get rid of the forward declaration of blkvsc_submit_request() Get rid of the forward declaration of blkvsc_submit_request() by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c7a9a4847ea19d9578c8c3e81bc5ecb4adbaeb62 Author: K. Y. Srinivasan Date: Wed Apr 6 11:25:39 2011 -0700 Staging: hv: Zero out the request structure on allocation As part of the cleanup of the I/O request structure, allocate them zeroed out. This fixes a bug that was introduced in the patch-set titled: Staging: hv: Cleanup-storage-drivers-phase-II. A corrected version of this patch-set was sent out earlier, however the earlier (buggy) version of this patch-set was already applied. This patch fixes the problem. Signed-off-by: K. Y. Srinivasan Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit a617e395de55762f337f4d9002a3408d7e9be381 Author: K. Y. Srinivasan Date: Wed Apr 6 11:25:38 2011 -0700 Staging: hv: Properly capture the error state Properly capture the error state after the completion of I/O. This fixes a bug that was introduced in the patch-set titled: Staging: hv: Cleanup-storage-drivers-phase-II. A corrected version of this patch-set was sent out earlier, however the earlier (buggy) version of this patch-set was already applied. This patch fixes the problem. Signed-off-by: K. Y. Srinivasan Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d2edeb7c6f1dada8ca7d5c23e42d604e92ae0c76 Author: Seth Heasley Date: Wed Apr 20 10:59:57 2011 -0700 ALSA: hda - ALSA HD Audio patch for Intel Panther Point DeviceIDs This patch adds the HD Audio Controller DeviceIDs for the Intel Panther Point PCH. Signed-off-by: Seth Heasley Signed-off-by: Takashi Iwai commit e66d74ced12699ed9b7ac62f68b44d842a817ecd Author: Takashi Iwai Date: Tue Mar 8 18:20:46 2011 +0100 ALSA: asihpi - Use %zd for size_t argument in error message (again) This was reverted mistakenly in the recent update patch. Fixed again. Reported-by: Randy Dunlap Signed-off-by: Takashi Iwai commit 8b6bf747d70e5bac1a34c8fd773230e1cfdd7546 Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 11:50:43 2011 -0400 xen/blkback: Prefix exposed functions with xen_ And also shorten the name if it has blkback to blkbk. This results in the symbol table (if compiled in the kernel) to be much shorter, prettier, and also easier to search for. Signed-off-by: Konrad Rzeszutek Wilk commit 42c7841d171a2fe32005738dfebd724a90921496 Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 11:21:43 2011 -0400 xen-blkback: Inline some of the functions that were moved from vbd/interface.c Shuffling code around. Signed-off-by: Konrad Rzeszutek Wilk commit 6cd0388cd600a51a8824dc5b34f1107b367b0cac Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 11:01:47 2011 -0400 xen-blkback: Remove from the copyright notice the address. There is no need for it, as the address is updated constatly in the root of the Linux kernel. Signed-off-by: Konrad Rzeszutek Wilk commit ee9ff8537eacb4383bf9146df6c21b9301c9baa2 Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 10:57:29 2011 -0400 xen/blkback: Squash vbd.c,interface.c in blkback.c and xenbus.c respectivly. Daniel Stodden suggested to eliminate vbd.c and interface.c, inlining the critical bits where they belong, respectively. Leaving only blkback.c for the data- and xenbus.c for the control path. Suggested-by: Daniel Stodden Signed-off-by: Konrad Rzeszutek Wilk commit 8a91707d0a1a49193e23cb2d243632f2289feb24 Author: Konrad Rzeszutek Wilk Date: Wed Apr 20 11:54:10 2011 -0400 xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override functions. If the backends, which use these two functions, are compiled as a module we need these two functions to be exported. Signed-off-by: Konrad Rzeszutek Wilk commit 21b42731e6ab1ccbbe9ad1b639c5d78eecad8432 Author: Mike Rapoport Date: Sat Apr 16 22:29:30 2011 +0000 omap: convert boards that use SMSC911x to use gpmc-smsc911x Convert boards that use SMSC911x to use gpmc-smsc911x. Also allocate struct platform_device dynamically. Signed-off-by: Mike Rapoport Signed-off-by: Igor Grinberg [tony@atomide.com: folded in a fix from Igor Grindberg] Signed-off-by: Tony Lindgren commit f0949f73a75093fb86d6554101bd79046633a297 Author: Mike Rapoport Date: Sat Apr 16 22:29:29 2011 +0000 omap: gpmc-smsc911x: always set irq flags to IORESOURCE_IRQ_LOWLEVEL SMSC911x devices attached to OMAP GPMC always use low level irqs. Setting the appropriate flag in the irq resourse strucure allows using .flags field in the omap_smsc911x_platform_data for driver specific flags Signed-off-by: Mike Rapoport Signed-off-by: Tony Lindgren commit 425b473de5372cad6fffc6b98a758ed8e3fc70ce Author: Eric Paris Date: Thu Apr 7 14:46:59 2011 -0400 SELinux: delete debugging printks from filename_trans rule processing The filename_trans rule processing has some printk(KERN_ERR ) messages which were intended as debug aids in creating the code but weren't removed before it was submitted. Remove them. Signed-off-by: Eric Paris commit 10299e2e4e3ed3b16503d4e04edd48b33083f4e2 Author: Kalle Jokiniemi Date: Tue Mar 29 16:28:00 2011 +0300 ARM: RX-51: Enable isp1704 power on/off The isp1704 usb tranceiver is used for charging and can be disabled when not in use. Provide the powering routine to the driver via platform data. Also changed the indent of ".name" variable in rx51_charger_device definition to use tabs same way as the new ".dev" variable indent. Put this in the same patch since the indent fix is only needed when there are multiple members in the struct definition. Loosely based on earlier patches from Heikki Krogerus in Nokia N900 maemo kernel. Signed-off-by: Kalle Jokiniemi Acked-By: Heikki Krogerus Acked-by: Tony Lindgren Signed-off-by: Anton Vorontsov commit 2785cefc98051646bd1d36a627822a3f43736697 Author: Kalle Jokiniemi Date: Tue Mar 29 16:27:59 2011 +0300 isp1704_charger: Allow board specific powering routine The ISP1704/1707 chip can be put to full power down state by asserting the CHIP_SEL line. This patch enables platform or board specific hooks to put the device into power down mode in case not needed. This patch is a preparation for enabling this powering routine in n900 (rx-51) devices. Thanks to Heikki Krogerus for helping out with the patch. Signed-off-by: Kalle Jokiniemi Acked-By: Heikki Krogerus Signed-off-by: Anton Vorontsov commit f10513de2a6036742b55e23278f0322f2e5c3772 Author: Benson Leung Date: Wed Apr 6 16:55:20 2011 -0700 gpio-charger: Add gpio_charger_resume Gpio charger should notify if the gpio state had changed during suspend. This will send a CHANGED event each time the system resumes, ensuring a plug/unplug of the charger is not missed. Signed-off-by: Benson Leung Acked-By: Lars-Peter Clausen Signed-off-by: Anton Vorontsov commit b14a9ccc1ddddfbc76b7cae06d02db4adf0ae1db Author: MyungJoo Ham Date: Tue Mar 29 10:10:16 2011 +0900 power_supply: Add driver for MAX8903 charger MAX8903 is an integrated battery charger and selector with two power inputs (USB and AC adapter). This driver enables the charger, handles interrupts, and provides power-supply-class information to userland. Tested on Exynos4 NURI / S5PC210 SLP7 boards. Signed-off-by: MyungJoo Ham Signed-off-by: Kyungmin Park Signed-off-by: Anton Vorontsov commit 40df759e2b9ec945f1a5ddc61b3fdfbb6583257e Author: Michal Marek Date: Wed Apr 20 13:45:30 2011 +0200 kbuild: Fix build with binutils <= 2.19 The D option of ar is only available in newer versions. Signed-off-by: Michal Marek commit 97945c46a23de5f9dfedf1b4a33e51d074df9a9c Author: Stephen Warren Date: Mon Apr 18 20:58:11 2011 -0600 ASoC: WM8903: Implement DMIC support In addition to the currently supported analog capture path, the WM8903 also supports digital mics. The analog and digital capture paths are exclusive; a mux is present to select the capture source. Logically, the mux exists to select the decimator's input, from either the ADC or DMIC block outputs. However, the ADC power domain also includes the DMIC interface. Consequently, this change represents the mux as existing immediately before the ADC, and selecting between the Input PGA and DMIC block outputs. An alternative might be to represent the mux in its correct location, and associate the ADC power enable controls with both the real ADC, and a fake ADC for the DMIC? Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dad31ec133adb20c8fd10bfd9379da3f08b8721e Author: Peter Hsiang Date: Tue Apr 19 18:20:40 2011 -0700 ASoC: Add EQ and filter to max98095 CODEC driver This patch adds the equalizer and biquad filter controls. Signed-off-by: Peter Hsiang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dea8b6eef03afdec475b981fca8622c41f8de7e2 Author: Stephen Warren Date: Tue Apr 19 15:25:12 2011 -0600 ASoC: Tegra: wm8903: s/code/data/ for control/widget/maps Replace calls to a variety of registration functions by updating struct snd_soc_card snd_soc_tegra_wm8903 to directly point at the various control/widget/map tables instead. The ASoC core now performs any required registration based on these data fields. (Applying Mark's TrimSlice review comments to the existing driver) Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a739362362982f3d8177df0621b68cb9156b1b60 Author: Lu Guanqun Date: Wed Apr 20 16:00:51 2011 +0800 ASoC: fix two ident style problems Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 28683e0f9cda7450cc81a844f0cb9dfa4a1b940a Author: Lu Guanqun Date: Wed Apr 20 16:00:46 2011 +0800 ASoC: simple style fix replace the tab with spaces, make it align with other paragraphs Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f9861e17bd078f0a8c234157ddade03572415f8f Author: Lu Guanqun Date: Wed Apr 20 16:00:42 2011 +0800 ASoC: remove unused comment `type` parameter is not longer used in `snd_soc_codec_set_cache_io`, so remove this line. Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dc2bea616a4026860a8ba9eae778cfd4fda061b1 Author: Lu Guanqun Date: Wed Apr 20 16:00:36 2011 +0800 ASoC: fix a simple coding style issue Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a68b38ada57bc9aeeec574d3e76e67ad89fea303 Author: Stephen Warren Date: Tue Apr 19 15:25:11 2011 -0600 ASoC: snd_soc_dapm_get_pin_status: Match other contexts too Not all widgets on a card are within the codec's DAPM context. Fix snd_soc_dapm_get_pin_status to search all contexts when looking for a widget. This change is required when modifying tegra_wm8903 to use snd_soc_card.widgets rather than calling snd_soc_dapm_new_controls; the former adds the widgets to the card's DAPM context, whereas tegra_wm8903 uses the codec's DAPM context when calling snd_soc_dapm_new_controls. By code inspection, I suspect this also applies to Samsung Speyside. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a32955dba2e2629bddacf7c1b9de3bf1b7c56acf Author: Stephen Warren Date: Tue Apr 19 15:25:10 2011 -0600 ASoC: Tegra: Retrieve card from DAPM context not codec Card widgets are created in the card's DAPM context, not any codec's DAPM context. Hence, w->codec==NULL. Instead, find the card from the widget through the DAPM context of the widget, not the codec of the widget. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 075413966a6ea389f78f4cc2e957708c1d6db8c5 Author: Stephen Warren Date: Tue Apr 19 15:25:09 2011 -0600 ASoC: Tegra: Don't return mclk_changed from utils_set_rate Only the clock programming code needs to know whether the clocks changed, and that is encapsulated within tegra_asoc_utils_set_rate(). The machine driver's call to snd_soc_dai_set_sysclk(codec_dai, ...) is safe irrespective of whether the clocks changed. (Applying Mark's TrimSlice review comments to the existing driver) Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit acb8303f15768c72796f3f95bb32a955333e0fbc Author: Stephen Warren Date: Tue Apr 19 15:25:08 2011 -0600 ASoC: Tegra: wm8903: Remove redundant drvdata clears When the driver is not initialized/registered, nothing should be touching these fields anyway, so there's no point clearing them out. (Applying Mark's TrimSlice review comments to the existing driver) Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d9e3c4cc6801b03bce6dd31ba0e1a6acff8f8a1a Author: Stephen Warren Date: Tue Apr 19 15:25:07 2011 -0600 ASoC: Tegra: wm8903 probe: Don't call machine_is_*() This machine driver is a platform driver, and hence will only be instantiated on the correct machines. Hence, there is no need to check the current machine during probe. (Applying Mark's TrimSlice review comments to the existing driver) Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b6a48404088d91514b9e78c3237976a5aa87cb14 Author: Raymond Yau Date: Fri Apr 15 11:42:42 2011 +0800 ALSA: emu10k1 - Remove "Front" controls only for STAC9758/59 Remove "Front Playback Volume" and "Front Playback Switch" from emu10k1 only for STAC9758/59 Since commit 7eae36fbd5ea9db3d3fe0d671199121be782a5b3 "Fix the confliction of 'Front' control", the "Front Playback Volume" control created by commit edf8e4565c44bffbb4d09e8984df941d0ae9e6e8 "emu10k1: Front channels via fxbus 8 and 9" was removed "Front Playback Volume" and "Surround Playback Volume" have same dB range since I2S DAC of SB Live! and SB Live! Platinum does not has any hardware volume control. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 9cbdb702092a2d82f909312f4ec3eeded77bb82e Author: David Ahern Date: Wed Apr 6 21:54:20 2011 -0600 perf script: improve validation of sample attributes for output fields Check for required sample attributes using evsel rather than sample_type in the session header. If the attribute for a default field is not present for the event type (e.g., new command operating on file from older kernel) the field is removed from the output list. Expected event types must exist. For example, if a user specifies -f trace:time,trace -f sw:time,cpu,sym the perf.data file must contain both tracepoints and software events (ie., it is an error if either does not exist in the file). Attribute checking is done once at the beginning of perf-script rather than for each sample. v1 -> v2: - addressed comments from acme Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/1302148460-570-1-git-send-email-daahern@cisco.com Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 4f2970b9f622ba180680a5892be6534cc58843e0 Author: Paul Mundt Date: Wed Apr 20 18:20:26 2011 +0900 s3fb: fix up DDC build with MTRR disabled. drivers/video/s3fb.c: In function 's3_pci_remove': drivers/video/s3fb.c:1388: error: 'par' undeclared (first use in this function) Reported-by: Stephen Rothwell Signed-off-by: Paul Mundt commit 4c6a6f42131dd750dcfe3c71e63bfc046e5a227e Author: Wei Yongjun Date: Tue Apr 19 21:32:28 2011 +0000 sctp: move chunk from retransmit queue to abandoned list If there is still data waiting to retransmit and remain in retransmit queue, while doing the next retransmit, if the chunk is abandoned, we should move it to abandoned list. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 92c73af58e9f1b487322ce25a7a67889c9d91343 Author: Wei Yongjun Date: Tue Apr 19 21:31:47 2011 +0000 sctp: make heartbeat information in sctp_make_heartbeat() Make heartbeat information in sctp_make_heartbeat() instead of make it in sctp_sf_heartbeat() directly for common using. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit de6becdc0844ff92b38ffd9f0c4db1d3de02835f Author: Wei Yongjun Date: Tue Apr 19 21:30:51 2011 +0000 sctp: fix to check the source address of COOKIE-ECHO chunk SCTP does not check whether the source address of COOKIE-ECHO chunk is the original address of INIT chunk or part of the any address parameters saved in COOKIE in CLOSED state. So even if the COOKIE-ECHO chunk is from any address but with correct COOKIE, the COOKIE-ECHO chunk still be accepted. If the COOKIE is not from a valid address, the assoc should not be established. Signed-off-by: Wei Yongjun Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit 85c5ed4e44a262344ce43b4bf23204107923ca95 Author: Shan Wei Date: Tue Apr 19 21:30:01 2011 +0000 sctp: handle ootb packet in chunk order as defined Changed the order of processing SHUTDOWN ACK and COOKIE ACK refer to section 8.4:Handle "Out of the Blue" Packets. SHUTDOWN ACK chunk should be processed before processing "Stale Cookie" ERROR or a COOKIE ACK. Signed-off-by: Wei Yongjun Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: David S. Miller commit deb85a6ecc432a4f342004a6ac2a0dad7cba6846 Author: Vlad Yasevich Date: Tue Apr 19 21:29:23 2011 +0000 sctp: bail from sctp_endpoint_lookup_assoc() if not bound The sctp_endpoint_lookup_assoc() function uses a port hash to lookup the association and then checks to see if any of them are on the current endpoint. However, if the current endpoint is not bound, there can't be any associations on it, thus we can bail early. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 0b8f9e25b0aaf5a5d9fd844a97e5c17746b865d4 Author: Vlad Yasevich Date: Tue Apr 19 21:28:26 2011 +0000 sctp: remove completely unsed EMPTY state SCTP does not SCTP_STATE_EMPTY and we can never be in that state. Remove useless code. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 48669698c23339e0fa31753f04e77648fc210339 Author: Shan Wei Date: Tue Apr 19 21:27:07 2011 +0000 sctp: remove redundant check when walking through a list of TLV parameters When pos.v <= (void *)chunk + end - ntohs(pos.p->length) and ntohs(pos.p->length) >= sizeof(sctp_paramhdr_t) these two expressions are all true, pos.v <= (void *)chunk + end - sizeof(sctp_paramhdr_t) *must* be true. This patch removes this kind of redundant check. It's same to _sctp_walk_errors macro. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 96ca468b86b09aa6a001ac65dba93a6c4a3692a5 Author: Shan Wei Date: Tue Apr 19 21:26:26 2011 +0000 sctp: check invalid value of length parameter in error cause RFC4960, section 3.3.7 said: If an endpoint receives an ABORT with a format error or no TCB is found, it MUST silently discard it. When an endpoint receives ABORT that parameter value is invalid, drop it. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 8a00be1c89cc17fda5f438794ff27449af6f00f1 Author: Shan Wei Date: Tue Apr 19 21:25:40 2011 +0000 sctp: check parameter value of length in ERROR chunk When an endpoint receives ERROR that parameter value is invalid, send an ABORT to peer with a Protocol Violation error code. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 882553752196605bf27057e7adb298ecae8058c4 Author: Michał Mirosław Date: Tue Apr 19 06:13:10 2011 +0000 net: tun: convert to hw_features This changes offload setting behaviour to what I think is correct: - offloads set via ethtool mean what admin wants to use (by default he wants 'em all) - offloads set via ioctl() mean what userspace is expecting to get (this limits which admin wishes are granted) - TUN_NOCHECKSUM is ignored, as it might cause broken packets when forwarded (ip_summed == CHECKSUM_UNNECESSARY means that checksum was verified, not that it can be ignored) If TUN_NOCHECKSUM is implemented, it should set skb->csum_* and skb->ip_summed (= CHECKSUM_PARTIAL) for known protocols and let others be verified by kernel when necessary. TUN_NOCHECKSUM handling was introduced by commit f43798c27684ab925adde7d8acc34c78c6e50df8: tun: Allow GSO using virtio_net_hdr Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 47103041e91794acdbc6165da0ae288d844c820b Author: Michał Mirosław Date: Tue Apr 19 03:35:06 2011 +0000 net: xen-netback: convert to hw_features Signed-off-by: Michał Mirosław Acked-by: Ian Campbell Signed-off-by: David S. Miller commit 135d84a9f28854f875f32f97485737b0013c99d6 Author: Michał Mirosław Date: Tue Apr 19 03:03:57 2011 +0000 net: qlcnic: convert to hw_features Bit more than minimal conversion. There might be some issues because of qlcnic_set_netdev_features() if it's called after netdev init. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit b9367bf3ee6da380e0c338bd75bb8e8e4e0b981b Author: Michał Mirosław Date: Tue Apr 19 02:14:25 2011 +0000 net: ibmveth: convert to hw_features A minimal conversion. ibmveth_set_csum_offload() can be folded into ibmveth_set_features() and adapter->rx_csum removed - left for later cleanup. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 756a6b03da98903fa22ad7f10752de11782249fc Author: Michał Mirosław Date: Tue Apr 19 01:56:12 2011 +0000 net: pch_gbe: convert to hw_features This also fixes bug in xmit path, where TX checksum offload state was used instead of skb->ip_summed to decide if the offload was needed. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 3d96c74d8983b16bc7ecb196e61a2173fcc3f09f Author: Michał Mirosław Date: Tue Apr 19 00:43:20 2011 +0000 net: infiniband/ulp/ipoib: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6204b47ec4394f7e472885c8d05d9cda96d97a25 Author: Michał Mirosław Date: Tue Apr 19 00:43:20 2011 +0000 net: s390: convert to hw_features options.large_send was easy to get rid of. options.checksum_type has deeper roots so is left for later cleanup. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit dd6f6d024906b8f05a0832c78c16a1e818958321 Author: Michał Mirosław Date: Tue Apr 19 00:43:20 2011 +0000 net: infiniband/hw/nes: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 8727bfaa8a723009e9c6eb1bb57b90ebdb0a4126 Author: Michał Mirosław Date: Tue Apr 19 00:43:20 2011 +0000 Staging: convert hv network driver to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 97dbee73978497c615a46d324e4f5629b9772f86 Author: Michał Mirosław Date: Tue Apr 19 00:43:20 2011 +0000 net: batman-adv: remove rx_csum ethtool_ops Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 290129f9880302d4fa468f7ff2f72de4b4d418ae Author: Michał Mirosław Date: Tue Apr 19 00:43:19 2011 +0000 net: dsa: remove ethtool_ops->set_sg Remove set_sg from DSA slave ethtool_ops. Features inheritance looks broken/not fully implemented anyway. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit c83ae9cad8776bab153a05cc466be39f14011091 Author: Steven Whitehouse Date: Mon Apr 18 14:18:38 2011 +0100 GFS2: Add an AIL writeback tracepoint Add a tracepoint for monitoring writeback of the AIL. Signed-off-by: Steven Whitehouse commit 4667a0ec32867865fd4deccf834594b3ea831baf Author: Steven Whitehouse Date: Mon Apr 18 14:18:09 2011 +0100 GFS2: Make writeback more responsive to system conditions This patch adds writeback_control to writing back the AIL list. This means that we can then take advantage of the information we get in ->write_inode() in order to set off some pre-emptive writeback. In addition, the AIL code is cleaned up a bit to make it a bit simpler to understand. There is still more which can usefully be done in this area, but this is a good start at least. Signed-off-by: Steven Whitehouse commit f42ab0852946c1fb5103682c5897eb3da908e4b0 Author: Steven Whitehouse Date: Thu Apr 14 16:50:31 2011 +0100 GFS2: Optimise glock lru and end of life inodes The GLF_LRU flag introduced in the previous patch can be used to check if a glock is on the lru list when a new holder is queued and if so remove it, without having first to get the lru_lock. The main purpose of this patch however is to optimise the glocks left over when an inode at end of life is being evicted. Previously such glocks were left with the GLF_LFLUSH flag set, so that when reclaimed, each one required a log flush. This patch resets the GLF_LFLUSH flag when there is nothing left to flush thus preventing later log flushes as glocks are reused or demoted. In order to do this, we need to keep track of the number of revokes which are outstanding, and also to clear the GLF_LFLUSH bit after a log commit when only revokes have been processed. Signed-off-by: Steven Whitehouse commit 627c10b7e471b5dcfb7101d6cc74d219619c9bc4 Author: Steven Whitehouse Date: Thu Apr 14 14:09:52 2011 +0100 GFS2: Improve tracing support (adds two flags) This adds support for two new flags. One keeps track of whether the glock is on the LRU list or not. The other isn't really a flag as such, but an indication of whether the glock has an attached object or not. This indication is reported without any locking, which is ok since we do not dereference the object pointer but merely report whether it is NULL or not. Also, this fixes one place where a tracepoint was missing, which was at the point we remove deallocated blocks from the journal. Signed-off-by: Steven Whitehouse commit dba898b02defa66e5fe493d58ec0293a940f9c93 Author: Steven Whitehouse Date: Thu Apr 14 09:54:02 2011 +0100 GFS2: Clean up fsync() This patch is designed to clean up GFS2's fsync implementation and ensure that it really does get everything on disk. Since ->write_inode() has been updated, we can call that via the vfs library function sync_inode_metadata() and the only remaining thing that has to be done is to ensure that we get any revoke records in the log after the inode has been written back. Signed-off-by: Steven Whitehouse commit efc1a9c2a70e4e49f4cf179a7ed8064b7a406e4a Author: Steven Whitehouse Date: Wed Apr 13 13:03:34 2011 +0100 GFS2: Remove unused macro The buffer_in_io() macro has been unused for some time, so remove it. Signed-off-by: Steven Whitehouse commit 29687a2ac8dfcd5363e515ea715ec226aef8c26b Author: Steven Whitehouse Date: Wed Mar 30 16:33:25 2011 +0100 GFS2: Alter point of entry to glock lru list for glocks with an address_space Rather than allowing the glocks to be scheduled for possible reclaim as soon as they have exited the journal, this patch delays their entry to the list until the glocks in question are no longer in use. This means that we will rely on the vm for writeback of all dirty data and metadata from now on. When glocks are added to the lru list they should be freeable much faster since all the I/O required to free them should have already been completed. This should lead to much better I/O patterns under low memory conditions. Signed-off-by: Steven Whitehouse commit 5ac048bb7ea6e87b06504b999017cfa1f38f4092 Author: Steven Whitehouse Date: Wed Mar 30 16:25:51 2011 +0100 GFS2: Use filemap_fdatawrite() to write back the AIL In order to ensure that the mapping stats (and thus the bdi) are correctly updated, this patch changes the AIL writeback to use the filemap_datawrite function. This helps prevent stalls in balance_dirty_pages() due to large amounts of dirty metadata when there is little or no dirty data around. Signed-off-by: Steven Whitehouse commit 1027efaa238e1b65c07b6c2d9e270e548c2bdb07 Author: Steven Whitehouse Date: Wed Mar 30 16:13:25 2011 +0100 GFS2: Make ->write_inode() really write The GFS2 ->write_inode function should be more aggressive at writing back to the filesystem. This adopts the XFS system of returning -EAGAIN when the writeback has not been completely done. Also, we now kick off in-place writeback when called with WB_SYNC_NONE, but we only wait for it and flush the log when WB_SYNC_ALL is requested. Signed-off-by: Steven Whitehouse commit 556bb17998a37dabf7e9e96aa545bcea899be745 Author: Bob Peterson Date: Tue Mar 22 13:56:37 2011 -0400 GFS2: move function foreach_leaf to gfs2_dir_exhash_dealloc The previous patches made function gfs2_dir_exhash_dealloc do nothing but call function foreach_leaf. This patch simplifies the code by moving the entire function foreach_leaf into gfs2_dir_exhash_dealloc. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit ec038c826b5c3c163ad1673390f10e869020c28c Author: Bob Peterson Date: Tue Mar 22 13:55:23 2011 -0400 GFS2: pass leaf_bh into leaf_dealloc Function foreach_leaf used to look up the leaf block address and get a buffer_head. Then it would call leaf_dealloc which did the same lookup. This patch combines the two operations by making foreach_leaf pass the leaf bh to leaf_dealloc. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit d24a7a439a329b60f8e168c03e80566519e09be2 Author: Bob Peterson Date: Tue Mar 22 13:54:03 2011 -0400 GFS2: Combine transaction from gfs2_dir_exhash_dealloc At the end of function gfs2_dir_exhash_dealloc, it was setting the dinode type to "file" to prevent directory corruption in case of a crash. It was doing so in its own journal transaction. This patch makes the change occur when the last call is make to leaf_dealloc, since it needs to rewrite the directory dinode at that time anyway. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit 0d95326d9bd39f6eae80b91392b308c5fa8b1a0f Author: Bob Peterson Date: Tue Mar 22 13:52:44 2011 -0400 GFS2: remove *leaf_call_t and simplify leaf_dealloc Since foreach_leaf is only called with leaf_dealloc as its only possible call function, we can simplify the code by making it call leaf_dealloc directly. This simplifies the code and eliminates the need for leaf_call_t, the generic call method. This is a first small step in simplifying the directory leaf deallocation code. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit 95c8e17f2f00f6af7474fac0e4050a79db6c3cea Author: Bob Peterson Date: Tue Mar 22 10:49:12 2011 -0400 GFS2: Dump better debug info if a bitmap inconsistency is detected On rare occasions we encounter gfs2 problems where an invalid bitmap state transition is attempted. For example, trying to "unlink" a free block. In these cases, there is really no useful information logged to debug the problem. This patch adds more debug details that should allow us to more closely examine the problem and possibly solve it. Signed-off-by: Bob Peterson Signed-off-by: Steven Whitehouse commit 411e689d929d5fc2e9066e30de55e8bcdbd573ad Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:32:00 2011 +0000 powerpc/nvram: Search for nvram using compatible As well as searching for nodes with type = "nvram", search for nodes that have compatible = "nvram". This can't be converted into a single call to of_find_compatible_node() with a non-NULL type, because that searches for a node that has _both_ type & compatible = "nvram". Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 5ca123760177ed16cbd9bab609bff69eb8fc45bd Author: Michael Ellerman Date: Thu Apr 14 22:31:59 2011 +0000 powerpc/xics: Move irq_host matching into the ics backend An upcoming new ics backend will need to implement different matching semantics to the current ones, which are essentially the RTAS ics backends. So move the current match into the RTAS backend, and allow other ics backends to override. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit ab814b938d1d372bd2ac6268c15d4e0e6a5245c4 Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:31:58 2011 +0000 powerpc: Add SCOM infrastructure SCOM is a side-band configuration bus implemented on some processors. This code provides a way for code to map and operate on devices via SCOM, while the details of how that is implemented is left up to a SCOM "controller" in the platform code. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit cd852579055bd8ad848415aaabb78b65d522fce0 Author: Michael Ellerman Date: Thu Apr 14 22:31:58 2011 +0000 powerpc/xics: xics.h relies on linux/interrupt.h Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 0b2e9a8e10ad2d191e5c37e77f1ce23e148e7a0b Author: Michael Ellerman Date: Thu Apr 14 22:31:57 2011 +0000 of: Export of_irq_find_parent() We have platform code that needs to find a node's interrupt parent, so export of_irq_find_parent() so we can use it. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 931e1241a266e701157d3478d0d44fc58d6e84b4 Author: Benjamin Herrenschmidt Date: Thu Apr 14 22:31:56 2011 +0000 powerpc/a2: Add some #defines for A2 specific instructions Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit b68a70c49686db0bff4637995d91b4db8abe5281 Author: Anton Blanchard Date: Mon Apr 4 23:56:18 2011 +0000 powerpc: Replace open coded instruction patching with patch_instruction/patch_branch There are a few places we patch instructions without using patch_instruction and patch_branch, probably because they predated it. Fix it. Signed-off-by: Anton Blanchard Signed-off-by: Benjamin Herrenschmidt commit f5be2dc0bd8d27a39d84a89e4ff90ba38cd2b285 Author: Michael Ellerman Date: Mon Apr 4 20:57:27 2011 +0000 powerpc/nohash: Allocate stale_map[cpu] on CPU_UP_PREPARE not CPU_ONLINE Currently we allocate the stale_map for a cpu when it comes online, this leaves open a small window where a process can be scheduled on the cpu before the stale_map is allocated. Instead allocate the stale_map at CPU_UP_PREPARE time, that way it will be always available before tasks start running. It is possible the cpu fails to come up, in which case we should free the stale_map, so add a CPU_UP_CANCELED case to do that. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit de300974761d92f71cb583730ac9e1d4eb1b7156 Author: Michael Ellerman Date: Mon Apr 11 21:46:19 2011 +0000 powerpc/smp: smp_ops->kick_cpu() should be able to fail When we start a cpu we use smp_ops->kick_cpu(), which currently returns void, it should be able to fail. Convert it to return int, and update all uses. Convert all the current error cases to return -ENOENT, which is what would eventually be returned by __cpu_up() currently when it doesn't detect the cpu as coming up in time. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 6c5b59b913874cae535a324a671b7ed4f17e6397 Author: David Gibson Date: Thu Apr 14 18:29:16 2011 +0000 powerpc/boot: Add an ePAPR compliant boot wrapper This is a first cut at making bootwrapper code which will produce a zImage compliant with the requirements set down by ePAPR. This is a very simple bootwrapper, taking the device tree blob supplied by the ePAPR boot program and passing it on to the kernel. It builds on the earlier patch to build a relocatable ET_DYN zImage to meet the other ePAPR image requirements. For good measure we have some paranoid checks which will generate warnings if some of the ePAPR entry condition guarantees are not met. Signed-off-by: David Gibson Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 6975a783d7b40c79be4b7a7ea450e023ff7e5e02 Author: Michael Ellerman Date: Tue Apr 12 20:38:55 2011 +0000 powerpc/boot: Allow building the zImage wrapper as a relocatable ET_DYN This patch adds code, linker script and makefile support to allow building the zImage wrapper around the kernel as a position independent executable. This results in an ET_DYN instead of an ET_EXEC ELF output file, which can be loaded at any location by the firmware and will process its own relocations to work correctly at the loaded address. This is of interest particularly since the standard ePAPR image format must be an ET_DYN (although this patch alone is not sufficient to produce a fully ePAPR compliant boot image). Note for now we don't enable building with -pie for anything. Signed-off-by: Paul Mackerras Signed-off-by: David Gibson Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit ee7a2aa3d3fd10a7157dd19f737b2bafdea0458f Author: Michael Ellerman Date: Tue Apr 12 19:00:05 2011 +0000 powerpc/mm: Fix slice state initialization for Book3E On Book3E, MMU_NO_CONTEXT != 0, but the slice_mm_new_context() macro assumes that it is. This means that the map of the page sizes for each slice is always initialized to zeroes (which happens to be 4k pages), rather than to the correct default base page size value - which might be 64k. This patch corrects the problem. Signed-off-by: David Gibson Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 5e8e7b404ac965be45e25d5538676151de89aefb Author: Michael Ellerman Date: Tue Apr 12 19:00:04 2011 +0000 powerpc/mm: Standardise on MMU_NO_CONTEXT Use MMU_NO_CONTEXT as the initialiser for mm_context.id on nohash and hash64. Signed-off-by: Michael Ellerman Signed-off-by: Benjamin Herrenschmidt commit 6baa9b20a68a88c2fd751cbe8d7652009379351b Author: Sam Ravnborg Date: Mon Apr 18 11:25:44 2011 +0000 sparc32: genirq support The conversion of sparc32 to genirq is based on original work done by David S. Miller. Daniel Hellstrom has helped in the conversion and implemented the shutdowm functionality. Marcel van Nies has tested this on Sparc Station 20 Test status: sun4c - not tested sun4m,pci - not tested sun4m,sbus - tested (Sparc Classic, Sparc Station 5, Sparc Station 20) sun4d - not tested leon - tested on various combinations of leon boards, including SMP variants generic Introduce use of GENERIC_HARDIRQS and GENERIC_IRQ_SHOW Allocate 64 IRQs - which is enough even for SS2000 Use a table of irq_bucket to maintain uses IRQs irq_bucket is also used to chain several irq's that must be called when the same intrrupt is asserted Use irq_link to link a interrupt source to the irq All plafforms must now supply their own build_device_irq method handler_irq rewriten to use generic irq support floppy Read FLOPPY_IRQ from platform device Use generic request_irq to register the floppy interrupt Rewrote sparc_floppy_irq to use the generic irq support pcic: Introduce irq_chip Store mask in chip_data for use in mask/unmask functions Add build_device_irq for pcic Use pcic_build_device_irq in pci_time_init allocate virtual irqs in pcic_fill_irq sun4c: Introduce irq_chip Store mask in chip_data for use in mask/unmask functions Add build_device_irq for sun4c Use sun4c_build_device_irq in sun4c_init_timers sun4m: Introduce irq_chip Introduce dedicated mask/unmask methods Introduce sun4m_handler_data that allow easy access to necessary data in the mask/unmask functions Add a helper method to enable profile_timer (used from smp) Added sun4m_build_device_irq Use sun4m_build_device_irq in sun4m_init_timers TODO: There is no replacement for smp_rotate that always scheduled next CPU as interrupt target upon an interrupt sun4d: Introduce irq_chip Introduce dedicated mask/unmask methods Introduce sun4d_handler_data that allow easy access to necessary data in mask/unmask fuctions Rewrote sun4d_handler_irq to use generic irq support TODO: The original implmentation of enable/disable had: if (irq < NR_IRQS) return; The new implmentation does not distingush between SBUS and cpu interrupts. I am no sure what is right here. I assume we need to do something for the cpu interrupts. I have not succeeded booting my sun4d box (with or without this patch) and my understanding of this platfrom is limited. So I would be a bit suprised if this works. leon: Introduce irq_chip Store mask in chip_data for use in mask/unmask functions Add build_device_irq for leon Use leon_build_device_irq in leon_init_timers Signed-off-by: Sam Ravnborg Acked-by: Daniel Hellstrom Tested-by: Daniel Hellstrom Tested-by: Marcel van Nies Cc: Thomas Gleixner Signed-off-by: David S. Miller commit 06010fb588700e7fcb29e720c56884e3de5fd327 Author: Sam Ravnborg Date: Sun Apr 17 13:49:55 2011 +0200 sparc32: cleanup code for pci init Move the ifdeffery to a header file to make the logic more obvious where we decide between PCI or SBUS init Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit db1cdd146a0814b6f312fe1a7fa1ab87ac177b2a Author: Sam Ravnborg Date: Mon Apr 18 11:25:42 2011 +0000 sparc32,sun4d: rename sbus_tid to board_to_cpu in irq support The new name reflects the actual usage much better. Signed-off-by: Sam Ravnborg Signed-off-by: David S. Miller commit c6ef006bf57fb6a8a0b134928b5c5606090ef0a0 Author: Vlad Yasevich Date: Mon Apr 18 19:15:22 2011 +0000 sctp: Release all routes when processing acks ADD_IP or DEL_IP When processing an ACK for ADD_IP parameter, we only release the routes on non-active transports. This can cause a wrong source address to be used. We can release the routes and cause new route lookups and source address selection so that new addresses can be used as source. Additionally, we don't need to lookup routes for all transports at the same time. We can let the transmit code path update the cached route when the transport actually sends something. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit ee9cbaca7d73ea0098f00ecd10fe6e4a4792e32c Author: Vlad Yasevich Date: Mon Apr 18 19:14:47 2011 +0000 sctp: Allow bindx_del to accept 0 port We allow 0 port when adding new addresses. It only makes sence to allow 0 port when removing addresses. When removing the currently bound port will be used when the port in the address is set to 0. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit f246a7b7c5b9df0ea0f0807a7101995af5e83213 Author: Vlad Yasevich Date: Mon Apr 18 19:13:56 2011 +0000 sctp: teach CACC algorithm about removed transports When we have have to remove a transport due to ASCONF, we move the data to a new active path. This can trigger CACC algorithm to not mark that data as missing when SACKs arrive. This is because the transport passed to the CACC algorithm is the one this data is sitting on, not the one it was sent on (that one may be gone). So, by sending the original transport (even if it's NULL), we may start marking data as missing. Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 934253a7b4ab4151037ea9532552628723a14442 Author: Shan Wei Date: Mon Apr 18 19:13:18 2011 +0000 sctp: use memdup_user to copy data from userspace Use common function to simply code. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 66009927f1e7374afdc6f9fdd25c493ee4eadf7c Author: Shan Wei Date: Mon Apr 18 19:12:40 2011 +0000 sctp: kill abandoned SCTP_CMD_TRANSMIT command Remove SCTP_CMD_TRANSMIT command as it never be used. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 6a435732accd9e3f4a8d9c320fabe578b1bf5add Author: Shan Wei Date: Mon Apr 18 19:11:47 2011 +0000 sctp: use common head of addr parameter to access member in addr-unrelated code The 'p' member of struct sctp_paramhdr is common part for IPv4 addr parameter and IPv6 addr parameter in union sctp_addr_param. For addr-related code, use specified addr parameter. Otherwise, use common header to access type/length member. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 33c7cfdbb0d2bc021979e4947c7030c30d572532 Author: Shan Wei Date: Mon Apr 18 19:11:01 2011 +0000 sctp: fix the comment of sctp_sf_violation_paramlen() Update the comment about sctp_sf_violation_paramlen() to be more precise. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit 709d38714eff234432956931437457e0de806784 Author: Shan Wei Date: Mon Apr 18 19:19:29 2011 +0000 sctp: delete unused macro definition of sctp_chunk_is_control The macro never be used. And if needed, can use !sctp_chunk_is_data instead of. Signed-off-by: Shan Wei Signed-off-by: Vlad Yasevich Signed-off-by: Wei Yongjun Signed-off-by: David S. Miller commit d0381c42aabdbd9402501d08ea44a89695ad58b4 Author: Ajit Khaparde Date: Tue Apr 19 12:11:55 2011 +0000 be2net: add code to display default value of tx rate for VFs This change will allow the default value of tx rate to be displayed when ip link show is called on a PF interface. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 187e87566d22b0d0e99b5ae7c6e18569ab5f6aee Author: Ajit Khaparde Date: Tue Apr 19 12:11:46 2011 +0000 be2net: pass domain id to be_cmd_link_status_query Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 6349935bdfa4a210fb557e7541caad1d41925ccc Author: Ajit Khaparde Date: Tue Apr 19 12:11:02 2011 +0000 be2net: fix be_mcc_compl_process to identify eth_get_stat command eth_get_statistics and vlan_config command have same opcode. Use opcode subsystem id to differentiate one from other. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 4fa9ed07e3965a809fa309a769675ac1c6dc692b Author: Ajit Khaparde Date: Tue Apr 19 12:10:53 2011 +0000 be2net: Add code to display nic speeds other than 1Gbps/10Gbps Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 16a871ef552ff55c80b6d8d895e371ea07c58281 Author: Ajit Khaparde Date: Tue Apr 19 12:10:43 2011 +0000 be2net: allow register dump only for PFs Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit ce45ee955ff53255993c9300344e6437761ce2b2 Author: Shan Wei Date: Tue Apr 19 15:38:06 2011 +0000 net:bna: fix compile warning of ‘bfa_ioc_smem_pgoff’ defined but not used Fix the below compile warning: drivers/net/bna/bfa_ioc.c:1922: warning: ‘bfa_ioc_smem_pgoff’ defined but not used Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit 985762b2df4bcb4accc29fda76fc863dd79b8b58 Author: Shan Wei Date: Tue Apr 19 15:31:20 2011 +0000 net: forcedeth: fix compile warning of not used nv_set_tso function Fix the below compile warning: drivers/net/forcedeth.c:4266: warning: ‘nv_set_tso’ defined but not used commit 569e146 converts forcedeth driver to use hw_features. So, implement function of .set_tso is abandoned. Signed-off-by: Shan Wei Signed-off-by: David S. Miller commit af2771493a1bf79cd9a1ab4f30327c428b5bd67c Author: Benjamin Herrenschmidt Date: Wed Apr 6 10:51:17 2011 +1000 powerpc: Improve prom_printf() Adds the ability to print decimal numbers and adds some more format string variants Signed-off-by: Benjamin Herrenschmidt commit dd797738643cd3c2dd9cdff7e4c3a04d318ab23a Author: Benjamin Herrenschmidt Date: Tue Apr 5 14:34:58 2011 +1000 powerpc: Perform an isync to synchronize CPUs coming out of secondary_hold We need to do that to guarantee they see any code change done by dynamic patching during boot. Signed-off-by: Benjamin Herrenschmidt commit 948cf67c4726cca2fc57533dccadfb54d890689d Author: Benjamin Herrenschmidt Date: Mon Jan 24 18:42:41 2011 +1100 powerpc: Add NAP mode support on Power7 in HV mode Wakeup comes from the system reset handler with a potential loss of the non-hypervisor CPU state. We save the non-volatile state on the stack and a pointer to it in the PACA, which the system reset handler uses to restore things Signed-off-by: Benjamin Herrenschmidt commit 9d07bc841c9779b4d7902e417f4e509996ce805d Author: Benjamin Herrenschmidt Date: Wed Mar 16 14:54:35 2011 +1100 powerpc: Properly handshake CPUs going out of boot spin loop We need to wait a bit for them to have done their CPU setup or we might end up with translation and EE on with different LPCR values between threads Signed-off-by: Benjamin Herrenschmidt commit ad0693ee722b93b63a89c845e99513f242e43aa6 Author: Benjamin Herrenschmidt Date: Tue Feb 1 12:13:09 2011 +1100 powerpc: Call CPU ->restore callback earlier on secondary CPUs We do it before we loop on the PACA start flag. This way, we get a chance to set critical SPRs on all CPUs before Linux tries to start them up, which avoids problems when changing some bits such as LPCR bits that need to be identical on all threads of a core or similar things like that. Ideally, some of that should also be done before the MMU is enabled, but that's a separate issue which would require moving some of the SMP startup code earlier, let's not get there for now, it works with that change alone. Signed-off-by: Benjamin Herrenschmidt commit b144871cb5f2c268e94258ae8f1ec810db2e1120 Author: Benjamin Herrenschmidt Date: Tue Mar 1 15:46:09 2011 +1100 powerpc: Initialize TLB and LPID register on HV mode Power7 In case entry from the bootloader isn't "clean" Signed-off-by: Benjamin Herrenschmidt commit 895796a8ab548fe03b6fea410dcb1b86e1913708 Author: Benjamin Herrenschmidt Date: Mon Jan 24 13:25:55 2011 +1100 powerpc: Initialize LPCR:DPFD on power7 to a sane default This sets the default data stream prefetch size for operating systems that don't set their own value in DSCR. We use 4 which is "medium". Signed-off-by: Benjamin Herrenschmidt commit 673b189a2e3353061fa8c49515d1014dab6ad9b9 Author: Paul Mackerras Date: Tue Apr 5 13:59:58 2011 +1000 powerpc: Always use SPRN_SPRG_HSCRATCH0 when running in HV mode This uses feature sections to arrange that we always use HSPRG1 as the scratch register in the interrupt entry code rather than SPRG2 when we're running in hypervisor mode on POWER7. This will ensure that we don't trash the guest's SPRG2 when we are running KVM guests. To simplify the code, we define GET_SCRATCH0() and SET_SCRATCH0() macros like the GET_PACA/SET_PACA macros. Signed-off-by: Paul Mackerras Signed-off-by: Benjamin Herrenschmidt commit b3e6b5dfcf0974069a8ddcce7dd071120d20d79c Author: Benjamin Herrenschmidt Date: Tue Apr 5 14:27:11 2011 +1000 powerpc: More work to support HV exceptions Rework exception macros a bit to split offset from vector and add some basic support for HDEC, HDSI, HISI and a few more. Signed-off-by: Benjamin Herrenschmidt commit a5d4f3ad3a28cf046836b9bfae61d532b8f77036 Author: Benjamin Herrenschmidt Date: Tue Apr 5 14:20:31 2011 +1000 powerpc: Base support for exceptions using HSRR0/1 Pass the register type to the prolog, also provides alternate "HV" version of hardware interrupt (0x500) and adjust LPES accordingly We tag those interrupts by setting bit 0x2 in the trap number Signed-off-by: Benjamin Herrenschmidt commit 2dd60d79e0202628a47af9812a84d502cc63628c Author: Benjamin Herrenschmidt Date: Thu Jan 20 17:50:21 2011 +1100 powerpc: In HV mode, use HSPRG0 for PACA When running in Hypervisor mode (arch 2.06 or later), we store the PACA in HSPRG0 instead of SPRG1. The architecture specifies that SPRGs may be lost during a "nap" power management operation (though they aren't currently on POWER7) and this enables use of SPRG1 by KVM guests. Signed-off-by: Benjamin Herrenschmidt commit 24cc67de62eebbda3ce0c46bdd56582c00dccd03 Author: Benjamin Herrenschmidt Date: Thu Jan 20 18:50:55 2011 +1100 powerpc: Define CPU feature for Architected 2.06 HV mode This bit indicates that we are operating in hypervisor mode on a CPU compliant to architecture 2.06 or later (currently server only). We set it on POWER7 and have a boot-time CPU setup function that clears it if MSR:HV isn't set (booting under a hypervisor). Signed-off-by: Benjamin Herrenschmidt commit f6e17f9b0bf172a5813dfef0c03d0a25ba83b0de Author: Benjamin Herrenschmidt Date: Fri Mar 4 18:25:55 2011 +1100 powerpc/xics: Make sure we have a sensible default distribution server Even when nothing is specified in the device tree, and despite the fact that we don't setup links properly yet, we still need a reasonable value in there or some interrupts won't be setup properly to point to an existing processor. Signed-off-by: Benjamin Herrenschmidt commit 50fb8ebe7c4ad60d147700d253f78bd1e615a526 Author: Benjamin Herrenschmidt Date: Wed Jan 12 17:41:28 2011 +1100 powerpc: Add more Power7 specific definitions This adds more SPR definitions used on newer processors when running in hypervisor mode. Along with some other P7 specific bits and pieces Signed-off-by: Benjamin Herrenschmidt commit 0b05ac6e24807f0c26f763b3a546c0bcbf84125f Author: Benjamin Herrenschmidt Date: Mon Apr 4 13:46:58 2011 +1000 powerpc/xics: Rewrite XICS driver This is a significant rework of the XICS driver, too significant to conveniently break it up into a series of smaller patches to be honest. The driver is moved to a more generic location to allow new platforms to use it, and is broken up into separate ICP and ICS "backends". For now we have the native and "hypervisor" ICP backends and one common RTAS ICS backend. The driver supports one ICP backend instanciation, and many ICS ones, in order to accomodate future platforms with multiple possibly different interrupt "sources" mechanisms. Signed-off-by: Benjamin Herrenschmidt commit db5ca356d8af8e43832c185ceec90850ff2ebb45 Author: Tetsuo Handa Date: Wed Apr 20 06:49:15 2011 +0900 TOMOYO: Fix refcount leak in tomoyo_mount_acl(). In tomoyo_mount_acl() since 2.6.36, reference to device file (e.g. /dev/sda1) was leaking. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 70a5f52165bd04cf3b33f30d5d234be28dcf29d4 Author: Andrew Morton Date: Tue Apr 12 16:13:31 2011 -0700 kmsg: properly support writev to avoid interleaved printk lines fix make `len' size_t, avoid multiple-assignments. Cc: Kay Sievers Cc: Lennart Poettering Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 7e5b58bcbcb3d7518389c1d82fb6e926f5a9f72c Author: Kay Sievers Date: Thu Apr 7 04:29:20 2011 +0200 printk: /dev/kmsg - properly support writev() to avoid interleaved printk() lines printk: /dev/kmsg - properly support writev() to avoid interleaved printk lines We should avoid calling printk() in a loop, when we pass a single string to /dev/kmsg with writev(). Cc: Lennart Poettering Signed-off-by: Kay Sievers Cc: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 47296b1962ead8301488f0dbe8424c7db7eac635 Author: Jie Zhou Date: Wed Apr 6 14:42:40 2011 +0800 uio: clean uioinfo when uninstall uio driver The uioinfo should be cleaned up when uninstall, otherwise re-install failure of uio_pdrv_genirq.ko will happen. Signed-off-by: Jie Zhou Signed-off-by: Aisheng Dong Signed-off-by: Hans J. Koch Signed-off-by: Greg Kroah-Hartman commit c6edc42fe1b5562abae22beabbebd9e557527ae3 Author: Hillf Danton Date: Thu Mar 31 20:38:47 2011 +0800 uio: fix allocating minor id for uio device The number of uio devices that could be used should be less than UIO_MAX_DEVICES by design, and this work guards any cases in which id more than UIO_MAX_DEVICES is utilized. Signed-off-by: Hillf Danton Signed-off-by: Hans J. Koch Signed-off-by: Greg Kroah-Hartman commit f0c554fddd3be561542cd37acdb3adc9ec5483ee Author: Hillf Danton Date: Mon Mar 28 23:33:26 2011 +0200 uio: fix finding mm index for vma When finding mm index for vma it looks more flexible that the mm could be sparse, and both the size of mm and the pgoff of vma could give correct selection. Signed-off-by: Hillf Danton Signed-off-by: Hans J. Koch Signed-off-by: Greg Kroah-Hartman commit d8408aef910b5d538ae07218992b270a9e01067f Author: Daniel Trautmann Date: Mon Mar 21 15:36:35 2011 +0100 uio_netx: Add support for netPLC cards This patch adds support for Hilscher / IBHsoftec netPLC cards to uio_netx userspace IO driver. Changes from v1 -> v2: Fixed whitespace errors reported by scripts/checkpatch.pl which were caused by email client. Signed-off-by: Daniel Trautmann Signed-off-by: "Hans J. Koch" Signed-off-by: Greg Kroah-Hartman commit 5934b5f3b0116858a5f950abcac344ddee054b69 Author: Tsugikazu Shibata Date: Mon Apr 4 11:47:36 2011 +0900 HOWTO: sync up Documentaion/ja_JP/HOWTO Signed-off-by: Tsugikazu Shibata Signed-off-by: Greg Kroah-Hartman commit 088ab0b4d855d68a0f0c16b72fb8e492a533aaa1 Author: Ludwig Nussel Date: Mon Feb 28 15:57:17 2011 +0100 kernel/ksysfs.c: expose file_caps_enabled in sysfs A kernel booted with no_file_caps allows to install fscaps on a binary but doesn't actually honor the fscaps when running the binary. Userspace currently has no sane way to determine whether installing fscaps actually has any effect. Since parsing /proc/cmdline is fragile this patch exposes the current setting (1 or 0) via /sys/kernel/fscaps Signed-off-by: Ludwig Nussel Signed-off-by: Greg Kroah-Hartman commit aed65af1cc2f6fc9ded5a8158f1405a02cf6d2ff Author: Stephen Hemminger Date: Mon Mar 28 09:12:52 2011 -0700 drivers: make device_type const The device_type structure does not contain data that changes during usage and should be const. This allows devices to declare the struct const. I have patches to change all the subsystems, but need the infra structure change first. Signed-off-by: Stephen Hemminger Signed-off-by: Greg Kroah-Hartman commit 695cca8763078c743417886e80af8ccb78bec9f2 Author: Mike Waychison Date: Fri Mar 18 16:50:03 2011 -0700 firmware: Fix grammar in sysfs-firmware-dmi doc Fix the grammar in describing the position attribute of DMI entries in the dmi-sysfs module. While here, make a couple other small clarifying fixups to the docs. Reported-by: Signed-off-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 3116aabc81ccfeeb73f183ed8b1e3031520d1e59 Author: Dan Carpenter Date: Fri Mar 18 10:12:38 2011 +0300 efivars: handle errors from register_efivars() We should unwind and return an error if register_efivars() fails. Signed-off-by: Dan Carpenter Acked-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit 051d51bc6a867d9466a975e4d7ca51b21a9c2c4e Author: Dan Carpenter Date: Fri Mar 18 10:12:14 2011 +0300 efivars: memory leak on error in create_efivars_bin_attributes() This is a cut and paste bug. We intended to free ->del_var and ->new_var but we only free ->new_var. Signed-off-by: Dan Carpenter Acked-by: Mike Waychison Signed-off-by: Greg Kroah-Hartman commit bcdd323b893ad3c9b7ef26b5e4a0bef974238501 Author: Felipe Balbi Date: Wed Mar 16 15:59:35 2011 +0200 device: add dev_WARN_ONCE it's quite useful to print the device name on the stack dump caused by WARN(), but there are other cases where we might want to use WARN_ONCE. Introduce a helper similar to dev_WARN() for that case too. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit e9a470f445271eb157ee860a93b062324402fc3a Author: Govindraj.R Date: Mon Apr 18 20:27:35 2011 +0530 Serial: Remove unused code. Remove stale code in serial_core layer. Cc: Alan Cox Signed-off-by: Govindraj.R Signed-off-by: Greg Kroah-Hartman commit f8df13e0a901fe55631fed66562369b4dba40f8b Author: Petr Písař Date: Fri Apr 15 10:08:08 2011 +0200 tty: Clean console safely Traditional \E[2J sequence erases console display but scroll-back buffer and underlying device (frame) buffer keep data that can be accessed by scrolling console back. This patch introduce new \E[J parameter 3 that allows to scramble scroll-back buffer explicitly. Session locking programs (screen, vlock) can use it to prevent attacker to browse locked console history. Signed-off-by: Petr Písař Signed-off-by: Greg Kroah-Hartman commit d94206028854ba4c891004cecdbb2e220bf277bb Author: Jesper Juhl Date: Sun Apr 10 19:22:34 2011 +0200 Serial: ifx6x60c: Remove duplicate includes of linux/tty.h Including linux/tty.h 3 times is a little over the top - once will do. Signed-off-by: Jesper Juhl Signed-off-by: Greg Kroah-Hartman commit 99edb3d10a9d384d69557bd09cc39b9ec62aa04e Author: Jovi Zhang Date: Wed Mar 30 05:30:41 2011 -0400 tty: remove invalid location line in file header remove invalid location line in each file header after location moved from driver/char to driver/tty Signed-off-by: Jovi Zhang Signed-off-by: Greg Kroah-Hartman commit 6f5c24ad0f7619502199185a026a228174a27e68 Author: Jiri Slaby Date: Wed Mar 30 00:10:57 2011 +0200 serial: core, remove uart_update_termios Now, uart_update_termios is empty, so it's time to remove it. We no longer need a live tty in .dtr_rts. So this should prune all the bugs where tty is zeroed in port->tty during tty_port_block_til_ready. There is one thing to note. We don't set ASYNC_NORMAL_ACTIVE now. It's because this is done already in tty_port_block_til_ready. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit 303a7a1199c20f7c9452f024a6e17bf348b6b398 Author: Jiri Slaby Date: Wed Mar 30 00:10:56 2011 +0200 serial: core, do not set DTR/RTS twice on startup In .dtr_rts we do: uart_set_mctrl(uport, TIOCM_DTR | TIOCM_RTS) and call uart_update_termios. It does: uart_set_mctrl(port, TIOCM_DTR | TIOCM_RTS) once again. As the only callsite of uart_update_termios is .dtr_rts, remove the uart_set_mctrl from uart_update_termios to not set it twice. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit c7d7abff40c27f82fe78b1091ab3fad69b2546f9 Author: Jiri Slaby Date: Wed Mar 30 00:10:55 2011 +0200 serial: core, move termios handling to uart_startup We should not fiddle with speed and cflags in .dtr_rts hook. Actually we might not have tty at that moment already. So move the console cflag copy and speed setup into uart_startup. Actually the speed setup is already there, but we need to call it unconditionally (uart_startup is called from uart_open with hw_init = 0). This means we move uart_change_speed before dtr/rts setup in .dtr_rts. But this should not matter as the setup should be called after uart_change_speed anyway. Before: After: dtr/rts setup (dtr_rts) uart_change_speed (startup) uart_change_speed (update_termios) dtr/rts setup (dtr_rts) dtr/rts setup (update_termios) dtr/rts setup (update_termios) The second setup will dismiss with the next patch. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Arnd Bergmann Signed-off-by: Greg Kroah-Hartman commit 7c31bdb6b2a7118150df1668444fd1b7f1df3b85 Author: Jiri Slaby Date: Tue Mar 29 23:23:41 2011 +0200 Char: moxa, do not touch NORMAL_ACTIVE bit The bit is set in tty_port_block_til_ready (via moxa_open) and unset in tty_port_close (via moxa_close). No need to pin it in the driver. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a664ec9675d77aa2196e797afa5516d3e476da77 Author: Tobias Klauser Date: Mon Mar 28 13:57:11 2011 +0200 serial: altera_uart: Scan for a free port if platform device id is -1 Devices extracted from device tree all seem to have pdev->id set to -1. Up until now we mapped all devices with id -1 to the first device. This behaviour could lead to problems when using more than one Altera UART in a system. This patch changes the behaviour of the driver to scan for the next free id in case the id is -1. Because we cannot refer back to the assigned id in altera_uart_remove, the port instance needs to be stored in device drvdata. Reported-by: David Smoot Cc: Anton Vorontsov Signed-off-by: Tobias Klauser Signed-off-by: Greg Kroah-Hartman commit 0259894c732837c801565d038eaecdcf8fc5bbe7 Author: Jiri Slaby Date: Wed Mar 23 10:48:37 2011 +0100 TTY: fix fail path in tty_open When tty_add_file fails we omit to clean up. Fix that by calling tty_release appropriatelly. Signed-off-by: Jiri Slaby Cc: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a9dccddb60913056bcadaeeacfe0395447fd2472 Author: Jiri Slaby Date: Wed Mar 23 10:48:36 2011 +0100 TTY: plug in deinitialize_tty_struct Used the newly introduced deinitialize_tty_struct to properly shut down ldisc. It is intended to fix the Julian's reported problem. He reports that kmemleak checker warns about memory leak: unreferenced object 0xc0e19860 (size 8): comm cat, pid 1226, jiffies 4294919464 (age 287.476s) hex dump (first 8 bytes): 44 de 2d c1 01 00 00 00 D.-..... backtrace: [] create_object+0x109/0x1ad [] kmem_cache_alloc+0x60/0x68 [] tty_ldisc_get+0x54/0x76 [] tty_ldisc_init+0xa/0x20 [] initialize_tty_struct+0x2d/0x1ac [] tty_init_dev+0x59/0x10d [] tty_open+0x24a/0x3a2 ... Signed-off-by: Jiri Slaby Cc: Alan Cox Reported-by: Julian Anastasov Signed-off-by: Greg Kroah-Hartman commit 6716671d8c1c07a8072098764d1b7cbfef7412ad Author: Jiri Slaby Date: Wed Mar 23 10:48:35 2011 +0100 TTY: introduce deinit helpers for proper ldisc shutdown Introduce deinitialize_tty_struct which should be called after initialize_tty_struct and before successfull tty_ldisc_setup. It calls tty_ldisc_deinit which is opposite of tty_ldisc_init. It only puts a reference to ldisc and assigns NULL to tty->ldisc. It will be used to shut down ldisc when tty_release cannot be called yet. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Julian Anastasov Signed-off-by: Greg Kroah-Hartman commit c18d77aa00cde1215d9e045ba8f93004fe843f38 Author: Jiri Slaby Date: Wed Mar 23 10:48:34 2011 +0100 TTY: unify pty_unix98_install fail path handling Change it so that we call the deinit functions at one place at the end of the function (by gotos). And while at it use some sane label names. This is a preparation for the deinitialization of tty in the next patch. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Julian Anastasov Signed-off-by: Greg Kroah-Hartman commit 8a1b8d70a07628f294f30485acf81971e3fcc755 Author: Jiri Slaby Date: Wed Mar 23 10:48:33 2011 +0100 TTY: unify pty_install fail path handling Change it so that we call the deinit functions at one place at the end of the function (by gotos). And while at it use some sane label names. This is a preparation for the deinitialization of tty in the next patch. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Julian Anastasov Signed-off-by: Greg Kroah-Hartman commit d55435037539837a741d54690427d37f96ed87fa Author: Jiri Slaby Date: Wed Mar 23 10:48:32 2011 +0100 TTY: unify tty_init_dev fail path handling Change it so that we call the deinit functions at one place at the end of the function (by gotos). And while at it use some sane label names. This is a preparation for the deinitialization of tty in the next patch. Signed-off-by: Jiri Slaby Cc: Alan Cox Cc: Julian Anastasov Signed-off-by: Greg Kroah-Hartman commit d65c57f4ece4c31380eef9975a04840df7b260cc Author: Jiri Slaby Date: Wed Mar 23 09:50:00 2011 +0100 TTY: rocket, remove unused variables drivers/tty/rocket.c:1393:2: warning: Value stored to 'cp' is never read cp = &info->channel; ^ ~~~~~~~~~~~~~~ drivers/tty/rocket.c:1412:2: warning: Value stored to 'cp' is never read cp = &info->channel; ^ ~~~~~~~~~~~~~~ drivers/tty/rocket.c:1730:2: warning: Value stored to 'cp' is never read cp = &info->channel; ^ ~~~~~~~~~~~~~~ drivers/tty/rocket.c:1825:3: warning: Value stored to 'str' is never read str = "8"; ^ ~~~ [many 'str' warnings stripped] drivers/tty/rocket.c:2037:3: warning: Value stored to 'board_type' is never read board_type = "RocketModem"; ^ ~~~~~~~~~~~~~ [some 'board_type' warnings stripped] Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit 9d86f71b599a3f59bc9fe7eabf6c84c8c3a37fe0 Author: Jiri Slaby Date: Wed Mar 23 09:49:59 2011 +0100 Char: moxa, remove unused variables drivers/tty/moxa.c:1287:2: warning: Value stored to 'port' is never read port = tty->index; ^ ~~~~~~~~~~ drivers/tty/moxa.c:1763:2: warning: Value stored to 'cflag' is never read cflag = termio->c_cflag; /* termio->c_cflag */ ^ ~~~~~~~~~~~~~~~ Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit f2ee4ae87d7781ddb5bf8da25591b9b79966f8ea Author: Jiri Slaby Date: Wed Mar 23 09:49:57 2011 +0100 TTY: VT, remove unused variables drivers/tty/vt/vt.c:892:2: warning: Value stored to 'old_screen_size' is never read old_screen_size = vc->vc_screenbuf_size; ^ ~~~~~~~~~~~~~~~~~~~~~ drivers/tty/vt/vt.c:890:2: warning: Value stored to 'old_cols' is never read old_cols = vc->vc_cols; ^ ~~~~~~~~~~~ Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit 0e7f4194a0ef70c1d0d40152fa480a63719f35d5 Author: Jiri Slaby Date: Wed Mar 23 09:49:56 2011 +0100 Char: cyclades, fix unused variable drivers/tty/cyclades.c:1454:2: warning: Value stored to 'channel' is never read channel = info->line - card->first_line; ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Fix it by moving it to the appropriate debug section where it is used. Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit 4fd53ef5c97ef7ce909c18bf7fb8b5cdd72b08c1 Author: Jiri Slaby Date: Wed Mar 23 09:49:55 2011 +0100 TTY: serial_core, remove unused variable drivers/tty/serial/serial_core.c:1980:2: warning: Value stored to 'tty' is never read tty = port->tty; ^ ~~~~~~~~~ Signed-off-by: Jiri Slaby Acked-by: Govindraj.R Signed-off-by: Greg Kroah-Hartman commit 52ea383aba4d86d213622b2d4a94b01b4439fe11 Author: Jiri Slaby Date: Wed Mar 23 09:49:54 2011 +0100 tty: VT, remove unused variable drivers/tty/vt/vt_ioctl.c:1525:2: warning: Value stored to 'kbd' is never read kbd = kbd_table + console; ^ ~~~~~~~~~~~~~~~~~~~ Signed-off-by: Jiri Slaby Signed-off-by: Greg Kroah-Hartman commit 6da9e95f7381fa27bc9c66c9840b11adde778618 Author: Andrew Morton Date: Thu Apr 7 16:13:01 2011 -0700 drivers/tty/vt/vt_ioctl.c: repair insane ?: expression Cc: Arthur Taylor Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 60680f97d7412b471d21ef42d4860657a0f9f2ed Author: Arthur Taylor Date: Thu Mar 17 01:47:32 2011 -0700 vt: Add K_OFF return value to vt_ioctl KDGKBMODE After adding support for K_OFF in KDSKBMODE, it was forgotten to add support for returning it in KDGKBMODE. Signed-off-by: Arthur Taylor Signed-off-by: Andrew Morton Signed-off-by: Greg Kroah-Hartman commit 909bc7741bef0bda57489884cf2e914c3072aca9 Author: Herton Ronaldo Krzesinski Date: Thu Mar 31 15:35:31 2011 -0300 vt: remove uneeded retval check before tty->ops->open inside tty_open The current check is uneeded, since !retval will always returns true, as retval returned from tty_add_file is checked earlier and tty_open exits if it's not zero. Acked-by: Alan Cox Signed-off-by: Herton Ronaldo Krzesinski Signed-off-by: Greg Kroah-Hartman commit 73b48099cc265f88fa1255f3f43e52fe6a94fd5c Author: Johannes Berg Date: Mon Apr 18 17:05:21 2011 +0200 mac80211: explain padding in place of rate field Apparently this was confusing still ... add a note that the byte is needed as padding. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit 0ed7b3c04434788ef03d267190c5e9e6e3f8e9ce Author: Ivo van Doorn Date: Mon Apr 18 15:35:12 2011 +0200 rt2x00: Implement get_antenna and set_antenna callback functions Implement the get_antenna and set_antenna callback functions, which will allow clients to control the antenna for all non-11n hardware (Antenna handling in rt2800 is still a bit magical, so we can't use the set_antenna for those drivers yet). To best support the set_antenna callback some modifications are needed in the diversity handling. We should never look at the default antenna settings to determine if software diversity is enabled. Instead we should set the diversity flag when possible, which will allow the link_tuner to automatically pick up the tuning. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit e7dee444263a103a9a2ac5fd5d0b5e9dc177d57c Author: Ivo van Doorn Date: Mon Apr 18 15:34:41 2011 +0200 rt2x00: Implement get_ringparam callback function With the get_ringparam callback function we can export ring parameters to ethtool through the mac80211 interface. Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 8d0a2dcfb6f965781cde6d9dfbd4540ab22a0eb9 Author: Ivo van Doorn Date: Mon Apr 18 15:34:22 2011 +0200 rt2x00: Optimize register access in rt2800usb All register reads/writes in rt2800usb were previously done with rt2800_register_read/rt2800_register_write. These however indirectly call rt2x00usb_register_read/rt2x00usb_register_write which adds an additional overhead of at least one call and several move instructions to each register access. Replacing the calls to rt2800_register_read/rt2800_register_write with direct calls to rt2x00usb_register_read/rt2x00usb_register_write gets rid of quite a number of instructions in the drivers hotpaths (IRQ handling and txdone handling). For consistency replace all references to rt2800_register_read/write with the rt2x00usb_register_read/write variants. Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9a8199961b22e61221a6114b8bbbc26ddcc243f7 Author: Helmut Schaa Date: Mon Apr 18 15:34:01 2011 +0200 rt2x00: Optimize register access in rt2800pci All register reads/writes in rt2800pci were previously done with rt2800_register_read/rt2800_register_write. These however indirectly call rt2x00pci_register_read/rt2x00pci_register_write which adds an additional overhead of at least one call and several move instructions to each register access. Replacing the calls to rt2800_register_read/rt2800_register_write with direct calls to rt2x00pci_register_read/rt2x00pci_register_write gets rid of quite a number of instructions in the drivers hotpaths (IRQ handling and txdone handling). For consistency replace all references to rt2800_register_read/write with the rt2x00pci_register_read/write variants. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 46a01ec00d05581c5bd0c37e680d5b37af4953b4 Author: Gertjan van Wingerde Date: Mon Apr 18 15:33:41 2011 +0200 rt2x00: Merge rt2x00ht.c contents in other files. The two functions that are in rt2x00ht.c can be much better placed closer to the places where the call-sites of these functions are (one in rt2x00config.c and one in rt2x00queue.c) allowing us to make these functions static. Also, conditional compilations doesn't seem to be necessary anymore as 802.11n support is quite common nowadays. This makes the code a bit easier readable and searchable. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ea81966ccc2edd324c1fa382260a62a4400a032a Author: Gertjan van Wingerde Date: Mon Apr 18 15:33:20 2011 +0200 rt2x00: Enable support for RT53xx PCI devices by default. Code seems to be feature-complete, so no reason to not enable these devices by default. Also, remove the sentence about the support for these devices being non-functional. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ccd3caa4516c56540017d1af6c810940eff6afb8 Author: Gertjan van Wingerde Date: Mon Apr 18 15:33:00 2011 +0200 rt2x00: RT33xx device support is no longer experimental. The rt33xx devices support for both PCI and USB devices has been in the tree for a couple of months now, and seems to be functional and not in a worse shape than the support for rt28xx and rt30xx devices. No longer mark it as experimental and enable the support for these devices by default. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 87a3b89f34fb20f644b42fa57d579b1f2833fd4d Author: Gertjan van Wingerde Date: Mon Apr 18 15:32:33 2011 +0200 rt2x00: Add USB IDs. Add USB IDs that are listed in the latest Ralink Windows and/or Linux drivers. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit e01ae27f8ce6bd3ee26ef33c704f62449ce8233b Author: Gertjan van Wingerde Date: Mon Apr 18 15:32:13 2011 +0200 rt2x00: Allow dynamic addition of PCI/USB IDs. Both USB and PCI drivers allow a system administrator to dynamically add USB/PCI IDs to the device table that a driver supports via the /sys/bus/{usb,pci,pci_express}/drivers//new_id files. However, for the rt2x00 drivers using this method currently crashes the system with a NULL pointer failure. This is due to the set-up of rt2x00 where the probe functions require a rt2x00_ops structure in the driver_info field of the probed device. As this field is empty for the dynamically added devices this fails for these devices. Fix this by introducing driver-specific probe wrappers that do nothing but calling the bus-specific probe functions with the rt2x00_ops structure as an argument, rather than depending on the driver_info field. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit ce2919c9fffe2aa52f9c3e327176d03764dbf9b5 Author: Gertjan van Wingerde Date: Mon Apr 18 15:31:50 2011 +0200 rt2x00: Linksys WUSB600N rev2 is a RT3572 device. Move the USB ID entry from the unknown devices to the list of RT35xx based devices. Signed-off-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 7a5a681a7df7d844b52f82a4388e078071eb883e Author: Helmut Schaa Date: Mon Apr 18 15:31:31 2011 +0200 rt2x00: Always inline rt2x00pci_enable_interrupt This allows the compiler to perform the necessary bitfield calculations during compile time instead of run time and thus reduces the number of instructions to run during each tasklet invocation. This should improve performance in the RX hotpath. This comes at the cost of a slight increase in the module size (for example rt2800pci): Before: text data bss dec hex filename 14133 832 4 14969 3a79 drivers/net/wireless/rt2x00/rt2800pci.ko After: text data bss dec hex filename 14149 832 4 14985 3a89 drivers/net/wireless/rt2x00/rt2800pci.ko Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 152a599274b15028604e24ae2d9c9d7f49853977 Author: Ivo van Doorn Date: Mon Apr 18 15:31:02 2011 +0200 rt2x00: Decrease association time for USB devices When powersaving is enabled, assocaition times are very high (for WPA2 networks, the time can easily be around the 3 seconds). This is caused, because the flushing of the queues takes too much time. Without the flushing callback mac80211 assumes a timeout of 100ms while scanning. Limit all flush waiting loops to the same maximum. We can apply this maximum by passing the drop status to the driver, which makes sure the driver performs extra actions during the waiting for the queue to become empty. After these changes, association times fall within the healthy range of ~0.6 seconds with powersaving enabled. The difference between association time between powersaving enabled and disabled is now only ~0.1 second (which can also be due to the measuring method). Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit f0187a1987ed6524518ff2a533eaf8394ac1a500 Author: Johannes Stezenbach Date: Mon Apr 18 15:30:36 2011 +0200 rt2800usb: add timer to handle TX_STA_FIFO TX status is reported by the hardware when a packet has been sent (or after TX failed after possible retries), which is some time after the DMA completion. Since the rt2800usb hardware can not signal interrupts we have to use a timer, otherwise the TX status would only be read by the next packet's TX DMA completion, or by the watchdog thread. Signed-off-by: Johannes Stezenbach Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 6e6d6932a3f525d734f6c2f5845e9cadfaeddce9 Author: Johannes Stezenbach Date: Mon Apr 18 15:30:01 2011 +0200 rt2800usb: handle TX status timeouts The watchdog just triggers rt2800usb_work_txdone() when it detects a TX status timeout, thus rt2800usb_work_txdone() needs to handle this case. Signed-off-by: Johannes Stezenbach Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 75256f0348d38f414b7ac50ac78d4a4532bb6762 Author: Johannes Stezenbach Date: Mon Apr 18 15:29:38 2011 +0200 rt2x00: fix queue timeout checks Add a timestamp to each queue entry which is updated whenever the status of the entry changes, and remove the per-queue timestamps. The previous check was incorrect and caused both false positives and false negatives. With the corrected check it comes apparent that the TX status usually times out on rt2800usb unless there is sufficient traffic (i.e. the next TX will complete the previous TX status). Signed-off-by: Johannes Stezenbach Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 0e0d39e5f3a3e59c8513b59d4feeeadcb93b707d Author: Johannes Stezenbach Date: Mon Apr 18 15:29:12 2011 +0200 rt2800usb: read TX_STA_FIFO asynchronously Trying to fix the "TX status report missed" warnings by reading the TX_STA_FIFO entries as quickly as possible. The TX_STA_FIFO is too small in hardware, thus reading it only from the workqueue is too slow and entries get lost. Start an asynchronous read of the TX_STA_FIFO directly from the TX URB completion callback (atomic context, thus it cannot use the blocking rt2800_register_read()). If the async read returns a valid FIFO entry, it is pushed into a larger FIFO inside struct rt2x00_dev, until rt2800_txdone() picks it up. A .tx_dma_done callback is added to struct rt2x00lib_ops to trigger the async read from the URB completion callback. Signed-off-by: Johannes Stezenbach Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 8da3efbb4a18be30ed03dd05af18d0b026b15173 Author: Helmut Schaa Date: Mon Apr 18 15:28:50 2011 +0200 rt2x00: Use TXOP_HTTXOP for beacons Use TXOP_HTTXOP for beacons to stay in sync with the legacy drivers. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 961636ba17fa45b27ee4674430e1e775b8966b0e Author: Helmut Schaa Date: Mon Apr 18 15:28:27 2011 +0200 rt2x00: Update TX_SW_CFG2 init value Bring the TX_SW_CFG2 initialisation for rt305x devices in sync with the ralink legacy drivers. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 15a533c47f9ebb8dec8e440275136cbf9c493a1f Author: Helmut Schaa Date: Mon Apr 18 15:28:04 2011 +0200 rt2x00: Use correct TBTT_SYNC config in AP mode This seems to fix problems with some powersaving clients since a positive value in TBTT_SYNC_CFG_TBTT_ADJUST introduces beacon skew, which is not wanted in AP mode. Also update the rest of the TBTT_SYNC config according to the legacy drivers in AP mode. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 10e11568ca8b8a15f7478f6a4ceebabcbdba1018 Author: Helmut Schaa Date: Mon Apr 18 15:27:43 2011 +0200 rt2x00: Make rt2x00_queue_entry_for_each more flexible Allow passing a void pointer to rt2x00_queue_entry_for_each which in turn in provided to the callback function. Furthermore, allow the callback function to stop processing by returning true. And also notify the caller of rt2x00_queue_entry_for_each if the loop was canceled by the callback. No functional changes, just preparation for an upcoming patch. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Signed-off-by: John W. Linville commit 7dab73b37f5e8885cb73efd25e73861f9b4f0246 Author: Ivo van Doorn Date: Mon Apr 18 15:27:06 2011 +0200 rt2x00: Split rt2x00dev->flags The number of flags defined for the rt2x00dev->flags field, has been growing over the years. Currently we are approaching the maximum number of bits which are available in the field. A secondary problem, is that one part of the field are initialized only during boot, because the driver requirements are initialized or device requirements are loaded from the EEPROM. In both cases, the flags are fixed and will not change during device operation. The other flags are the device state, and will change frequently. So far this resulted in the fact that for some flags, the atomic bit accessors are used, while for the others the non-atomic variants are used. By splitting the flags up into a "flags" and "cap_flags" we can put all flags which are fixed inside "cap_flags". This field can then be read non-atomically. In the "flags" field we keep the device state, which is going to be read atomically. This adds more room for more flags in the future, and sanitizes the field access methods. Signed-off-by: Ivo van Doorn Acked-by: Helmut Schaa Signed-off-by: John W. Linville commit 62fe778412b36791b7897cfa139342906fbbf07b Author: Helmut Schaa Date: Mon Apr 18 15:26:37 2011 +0200 rt2x00: Fix stuck queue in tx failure case Since commit 0b7fde54f94979edc67bbf86b5adba702ebfefe8 "rt2x00: Protect queue control with mutex" rt2x00 used rt2x00queue_pause_queue for stopping a tx queue in mac80211. But in case of a failure in the tx path rt2x00 still called ieee80211_stop_queue which stopped the queue but prevented rt2x00queue_unpause_queue to wake the queue up again resulting in a stuck tx queue. Fix this by also using rt2x00queue_pause_queue in case of tx failures. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 44704e5d7d56625ff93d5a119ca846ae4de9061c Author: Layne Edwards Date: Mon Apr 18 15:26:00 2011 +0200 rt2x00: Enable WLAN LED on Ralink SoC (rt305x) devices This patch adds WLAN LED support to the mac80211 rt2x00 driver for Ralink SoC (rt305x) devices. The current WLAN LED drivers in rt2800lib.c set the LED brightness via an MCU request, but do nothing for SoC. This patch checks for SoC and sets the register to enable the WLAN LED (instead of an MCU request). This enables the WLAN LED for RT305x devices. Signed-off-by: Layne Edwards Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 93ae2dd2230393566738a5f211ffbaa33b056d56 Author: Felix Fietkau Date: Sun Apr 17 23:28:10 2011 +0200 ath9k: assign keycache slots to unencrypted stations Frame filtering relies on having a valid destination index (keycache slot), to keep track of the destination. Assigning a keycache slot (configured to unencrypted, with no key data attached) improves powersave handling in AP mode with no encryption. The dummy keycache entry for a station is cleared, when a real key gets added. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 5519541d5a5f19893546883547e2f0f2e5934df7 Author: Felix Fietkau Date: Sun Apr 17 23:28:09 2011 +0200 ath9k: fix powersave frame filtering/buffering in AP mode This patch fixes a long standing issue of pending packets in the queue being sent (and retransmitted many times) to sleeping stations. This was made worse by aggregation through driver-internal retransmitting of A-MDPU subframes. Previously the hardware tx filter was cleared unconditionally for every single packet - with this patch it uses the IEEE80211_TX_CTL_CLEAR_PS_FILT for unaggregated frames. A sta_notify driver op is added to stop aggregation for stations when they enter powersave mode. Subframes stay buffered inside the driver, to ensure that the BlockAck window keeps a sane state. Since the driver uses software aggregation, the clearing of the tx filter needs to be handled by the driver instead of mac80211 for aggregated frames. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 8e22ad323fb5b7cefb572bd8730e3abef95cdf90 Author: Rajkumar Manoharan Date: Sun Apr 17 21:38:10 2011 +0530 ath9k: Fix beacon generation on foreign channel While leaving the oper channel, beacon generation is stopped by mac80211 and beacon slots are marked as inactive. During the scan, ath9k configures beacon timers based on IEEE80211_CONF_OFFCHANNEL which inturn generates beacon alert even though bslot is inactive. ath9k fails to disable beacon alert while moving to offchannel if none of the beacon slot is active. This is causing beacon transmission on foreign channel. This patch enables swba based on active bslots. This issue was reported with two vifs (AP+STA) and triggered scan in STA vif in unassociated state. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit dcf55fb5d43bd82e1e3bf94f065cfe8f75a4bc5a Author: Felix Fietkau Date: Sun Apr 17 17:45:00 2011 +0200 mac80211: add a function for setting the TIM bit for a specific station This allows a driver to buffer frames for a PS station and tell mac80211 to wake it up even though mac80211 does not have any buffered frames for it. This is necessary for properly handling aggregation related buffering, in ath9k, because the driver needs to keep its frames in order to keep track of the Block-ACK window. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit cea3235cf578b5e952f5a0cec9bc6c2e862eb697 Author: Rajkumar Manoharan Date: Sat Apr 16 14:17:39 2011 +0530 ath9k_htc: Fix free slot value for cab queue ath9k_htc_tx_get_slot can return zero as valid index. Signed-off-by: Rajkumar Manoharan Acked-by: Sujith Manoharan Signed-off-by: John W. Linville commit 2be7859f41e9bcef5b15bd23d63e01536344e3df Author: Amitkumar Karwar Date: Fri Apr 15 20:50:42 2011 -0700 mwifiex: optimize driver initialization code 1) removal of unnecessary mwifiex_device structure 2) avoid passing adapter pointer to mwifiex_init_sw() 3) remove local variable drv_mode_info in mwifiex_add_card() 4) type change in mwifiex_bss_attr to match mwifiex_private 5) removal of more wordy comments Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit a37316586d926a10d66b5585c5d91683d6468f68 Author: Amitkumar Karwar Date: Fri Apr 15 20:50:41 2011 -0700 mwifiex: remove some macro definitions use corresponding macros defined in include/linux/ieee80211.h Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 636c4598499eeacce0893dc8d91113b904bd531e Author: Yogesh Ashok Powar Date: Fri Apr 15 20:50:40 2011 -0700 mwifiex: remove redundant local variables and comments Remove some local variables (mainly function return values) that are used only once. Also, one dummy function and some wordy comments are removed. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Kiran Divekar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 7762bb02ce13c191e0a2da159bcb8d9b374b88c4 Author: Randy Dunlap Date: Fri Apr 15 16:20:05 2011 -0700 mac80211: fix debugfs printk format warning Fix printf() format warning (tm_year is long int): net/mac80211/debugfs_sta.c:113: warning: format '%d' expects type 'int', but argument 4 has type 'long int' Signed-off-by: Randy Dunlap Signed-off-by: John W. Linville commit 0477ad72a12d4ee3f588de9349012948ea25702b Author: Sergei Shtylyov Date: Fri Apr 15 19:23:11 2011 +0400 iwlegacy: use pci_dev->revision Commit be663ab67077fac8e23eb8e231a8c1c94cb32e54 (iwlwifi: split the drivers for agn and legacy devices 3945/4965) added code to read the 4965's revision ID from the PCI configuration register while it's already stored by PCI subsystem in the 'revision' field of 'struct pci_dev'... Signed-off-by: Sergei Shtylyov Signed-off-by: John W. Linville commit e5facc75fa9104f074c4610437a9c717c9e5ecde Author: Rajkumar Manoharan Date: Fri Apr 15 15:42:24 2011 +0530 ath9k_htc: Cleanup HTC debugfs Move the ath9k_htc debugfs under ieee80211 to be inline with ath9k driver and it also helps to simplify debug code. Signed-off-by: Rajkumar Manoharan Acked-by: Sujith Manoharan Signed-off-by: John W. Linville commit 00bca7e2f2b58b93ce408e92d18a8c42bbe8d6e5 Author: Rajkumar Manoharan Date: Fri Apr 15 12:28:52 2011 +0530 ath9k_htc: Add debugfs support to change debug mask Signed-off-by: Rajkumar Manoharan Acked-by: Sujith Manoharan Signed-off-by: John W. Linville commit 2290a9c35df271cc33601b69e7836fa288e2fc7d Author: Luis R. Rodriguez Date: Thu Apr 14 14:55:36 2011 -0700 ath: fix 0x6C for beaconing/passive scan flags based on country IE The 0x6C regulatory domain is just like the 0x6A regulatory domain but differs in that 0x6C will allow adhoc and active scan on its channels only if we are associated to an AP with a country IE that allows those channels. The ath_reg_apply_beaconing_flags() does just this -- we respect the manufacturer's intent on only enabling beaconing modes of operation if and only if blessed by the country IE. Cc: David Quan Cc: Senthil Balasubramanian Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit cbc6a6ed0900aed789b5ca77192845f2f987af70 Author: Antonio Ospite Date: Wed Apr 13 21:40:45 2011 +0200 rfkill: Regulator consumer driver for rfkill Add a regulator consumer driver for rfkill to enable controlling radio transmitters connected to voltage regulators using the regulator framework. A new "vrfkill" virtual supply is provided to use in platform code. Signed-off-by: Guiming Zhuo Signed-off-by: Antonio Ospite Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit bb411b4db2767cfd4a99b3328da843ce4ea1596a Merge: 44c866a 26954c7 Author: John W. Linville Date: Tue Apr 19 15:34:48 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 commit 44c866a0a57b08b7090be24ccb33679ed1d4f476 Merge: 34a0a20 f212b43 Author: John W. Linville Date: Tue Apr 19 15:33:54 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 4805347c1eb12cfe79f42a12a5442ee01590a9c0 Merge: e194342 91eb7c0 Author: David S. Miller Date: Tue Apr 19 11:24:06 2011 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6 commit 0ff8fbc61727c926883eec381fbd3d32d1fab504 Author: Clemens Ladisch Date: Tue Apr 12 07:54:59 2011 +0200 firewire: ohci: optimize find_branch_descriptor() When z==2, the condition "key == 2" is superfluous because it cannot occur without "b == 3", as a descriptor with b!=3 and key==2 would be an OUTPUT_MORE_IMMEDIATE descriptor which cannot be used alone. Also remove magic numbers and needless computations on the b field. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit da28947e7e3602669e27d5e9ce787436ed662fa4 Author: Clemens Ladisch Date: Mon Apr 11 09:57:54 2011 +0200 firewire: ohci: avoid separate DMA mapping for small AT payloads For AT packet payloads of up to eight bytes, we have enough unused space in the DMA descriptors list so that we can put a copy of the payload there and thus avoid having to create a separate streaming DMA mapping for the payload buffer. In a CPU-bound microbenchmark that just sends 8-byte packets, bandwidth was measured to increase by 5.7 %, from 1009 KB/s to 1067 KB/s. In practice, the only performance-sensitive usage of small asynchronous packets is the SBP-2 driver's write to the ORB_POINTER register during SCSI command submission. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit ecf8328e59447b83a1f79628487e0e9f8801db84 Author: Clemens Ladisch Date: Mon Apr 11 09:56:12 2011 +0200 firewire: ohci: do not start DMA contexts before link is enabled OHCI 1.1 5.7.3 not only forbids enabling or starting any DMA contexts before the linkEnable bit is set, but also explicitly warns of undefined behaviour if this order is violated. Don't violate it then. Signed-off-by: Clemens Ladisch Signed-off-by: Stefan Richter commit 7b70bd3441437b7bc04fc9d321e17c8ed0e8f958 Author: Borislav Petkov Date: Mon Apr 18 16:00:21 2011 +0200 x86, MCE: Do not taint when handling correctable errors Correctable errors are considered something rather normal on modern hardware these days. Even more importantly, correctable errors mean exactly that - they've been corrected by the hardware - and there's no need to taint the kernel since execution hasn't been compromised so far. Also, drop tainting in the thermal throttling code for a similar reason: crossing a thermal threshold does not mean corruption. Signed-off-by: Borislav Petkov Acked-by: Tony Luck Acked-by: Nagananda Chumbalkar Cc: Prarit Bhargava Cc: Russ Anderson Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/1303135222-17118-1-git-send-email-bp@amd64.org Signed-off-by: Ingo Molnar commit 2b398bd9f8f73be706b41adcbb240ce95793049a Author: Youquan Song Date: Thu Apr 14 14:36:08 2011 +0800 x86, apic: Print verbose error interrupt reason on apic=debug End users worry about the error interrupt printout we generate currently: pr_debug("APIC error on CPU%d: %02x(%02x)\n", smp_processor_id(), v , v1); ... and would like to know the reason why error interrupts are generated. This patch prints out more detailed debug information. Another practical problem is that dynamic debug is not initialized yet when the APIC initializes, so the pr_debug() will not output the error interrupt debug information on bootup. In this patch, we use apic_printk(APIC_DEBUG, ...), so the apic=debug boot option will print verbose error interupts during bootup. Signed-off-by: Youquan Song Cc: Joe Perches Cc: hpa@linux.intel.com Cc: suresh.b.siddha@intel.com Cc: yong.y.wang@linux.intel.com Cc: jbaron@redhat.com Cc: trenn@suse.de Cc: kent.liu@intel.com Cc: chaohong.guo@intel.com Link: http://lkml.kernel.org/r/1302762968-24380-2-git-send-email-youquan.song@intel.com Signed-off-by: Ingo Molnar commit 0817a6a3a4fc7c069111083351ca33a78da2a0c9 Author: Arun Sharma Date: Thu Apr 14 10:38:18 2011 -0700 perf script: Add support for PERF_TYPE_RAW Useful for getting stack traces for hardware events not handled by PERF_TYPE_HARDWARE. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Thomas Gleixner Cc: Tom Zanussi Signed-off-by: Arun Sharma Link: http://lkml.kernel.org/n/tip-qimdcdpekjqxuyqovy4kjusx@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit cf27d8677515441602f5e4e40f90448e964504b8 Author: Luciano Coelho Date: Fri Apr 1 21:08:23 2011 +0300 wl12xx: fix sparse warning about undeclared wl12xx_alloc_dummy_packet Fix sparse warning: CHECK drivers/net/wireless/wl12xx/main.c drivers/net/wireless/wl12xx/main.c:1246:17: warning: symbol 'wl12xx_alloc_dummy_packet' was not declared. Should it be static? Signed-off-by: Luciano Coelho commit 4ec23d6e136c890806f0e00bcf24e2e3a242b30a Author: Luciano Coelho Date: Fri Apr 1 20:55:01 2011 +0300 wl12xx: remove unused conf_radio_params structure This structure has not been used anymore since commit e6b190ff3c2f4e4859502c41fa17b5c595e82000. Signed-off-by: Luciano Coelho commit afb7d3cd805df7a206439a7e7b5d1167d2bb06f6 Author: Luciano Coelho Date: Fri Apr 1 20:48:02 2011 +0300 wl12xx: move hardcoded hci_io_ds value into the conf struct Instead of hardcoding the hci_io_ds configuration that we write to the SDIO_IO_DS top registed, read it from the default configuration so that it's easier to change for different platforms. Reported-by: Ido Yariv Signed-off-by: Luciano Coelho commit 6277ed65704d19377b0874618e5f23d64c9e71a6 Author: Luciano Coelho Date: Fri Apr 1 17:49:54 2011 +0300 wl12xx: use kstrtoul functions Use the new kstrtoul functions instead of the deprecated strict_strtoul(). Signed-off-by: Luciano Coelho commit 341b7cde6ccc60672fcd7fc84dd24a1b7c0b8d94 Author: Ido Yariv Date: Thu Mar 31 10:07:01 2011 +0200 wl12xx: Handle platforms without level trigger interrupts Some platforms are incapable of triggering on level interrupts. Add a platform quirks member in the platform data structure, as well as an edge interrupt quirk which can be set on such platforms. When the interrupt is requested with IRQF_TRIGGER_RISING, IRQF_ONESHOT cannot be used, as we might miss interrupts that occur after the FW status is cleared and before the threaded interrupt handler exits. Moreover, when IRQF_ONESHOT is not set, iterating more than once in the threaded interrupt handler introduces a few race conditions between this handler and the hardirq handler. Currently this is worked around by limiting the loop to one iteration only. This workaround has an impact on performance. To remove to this restriction, the race conditions will need to be addressed. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit d2f4d47d84f8c665ab9babb2cc84d2e7872a96e1 Author: Ido Yariv Date: Thu Mar 31 10:07:00 2011 +0200 wl12xx: Simplify TX blocks accounting The total number of TX memory blocks may change when the dynamic memory option is enabled. The current implementation only tracks the available memory blocks, which over-complicates TX blocks accounting. By tracking the number of allocated blocks, calculation of the number of available blocks becomes simpler and cleaner. It simply equals the total number of TX memory blocks minus the allocated ones. Also, remove some unnecessary castings and use union member accesses instead. Signed-off-by: Ido Yariv Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 990f5de7384f9e5922e4c7c7572cbf4f29a9441e Author: Ido Yariv Date: Thu Mar 31 10:06:59 2011 +0200 wl12xx: Clean up the dummy packet mechanism The current implementation allocates a skb each time one is requested by the firmware. Since dummy packets are handled differently than regular packets, the skb needs to be marked. Currently, this is done by setting the pkt_type member to 5. This might not be safe, as we cannot be sure that there won't be any other packets with this pkt_type value. Since the packet does not change from one request to another, we can simply allocate a dummy packet template and always send it. All changes to the skb done during packet preparation must be reverted, so the same skb can be reused. The dummy packets are not transmitted, therefore there's no need to set the BSSID or our own MAC address. In addition, the header portion of the packet was zeroed by mistake, so fix that as well. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 0da13da767cd568c1fe2a7b5b936e86e521b5ae7 Author: Ido Yariv Date: Thu Mar 31 10:06:58 2011 +0200 wl12xx: Clean up the block size alignment code Simplify and clean up the block size alignment code: 1. Set the block size according to the padding field type, as it cannot exceed the maximum value this field can hold. 2. Move the alignment code into a function instead of duplicating it in multiple places. 3. In the current implementation, the block_size member can be misleading because a zero value actually means that there's no need to align. Declare a block size alignment quirk instead. Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit d29633b40e6afc6b4276a4e381bc532cc84be104 Author: Ido Yariv Date: Thu Mar 31 10:06:57 2011 +0200 wl12xx: Clean up and fix the 128x boot sequence Clean up the boot sequence code & fix the following issues: 1. Always read the registers' values and set the relevant bits instead of zeroing all other bits 2. Handle cases where wl1271_top_reg_read returns an error 3. Verify that the HW can detect the selected clock source 4. Remove 128x PG10 initialization code 5. Configure the MCS PLL to work in HP mode Signed-off-by: Ido Yariv Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 8bf69aae4cb9b196ba5ac386f83a1ca3865af11f Author: Ohad Ben-Cohen Date: Wed Mar 30 19:18:31 2011 +0200 wl12xx: fix "JOIN while associated" commentary Issuing multiple JOIN commands to the wl12xx's firmware, while we're associated, might have undesired implications, so the driver prints a message when that happens, and warn developers who check out the source. Update the commentary in order to consider the one valid scenario where this can happen: roaming. Cautiously keep the message for now, until we either gain confidence there are no unintentional JOIN-while-associated events, or until we move to the new multi-role fw who solves this multiple-join issue for good. Signed-off-by: Ohad Ben-Cohen Signed-off-by: Luciano Coelho commit c5745187a4812f2991a58e469a866582a7326d91 Author: Ohad Ben-Cohen Date: Wed Mar 30 16:35:59 2011 +0200 wl12xx: fix roaming The wl12xx device normally drops all frames coming from BSSID it is not joined with. This behavior is configured today by the wl12xx driver in response to a handful of ieee80211_bss_change and ieee80211_conf_changed notification flags, such as BSS_CHANGED_ASSOC, BSS_CHANGED_BSSID, IEEE80211_CONF_CHANGE_IDLE, etc.. This breaks when we roam to a new BSSID, where authentication frames are sent before any BSS_CHANGED/CONF_CHANGED flags are received. When this happens the hardware silently drops the authentication responses, and the roaming fails. Ideally this aggressive filtering behavior of the device should be disabled upon a notification from mac80211. Such notification will take place after multi-channel support will be added: mac80211 will likely send a remain-on-channel notification to drivers when entering sensitive states (like authentication), otherwise the firmware might jump to different channels (to serve a different role). Until those notifications materialize, disable the hw BSSID filter when authentication requests are sent, so roaming would work. Signed-off-by: Ohad Ben-Cohen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 13026decf7b74d0908df034dc6dc86c2caaec939 Author: Juuso Oikarinen Date: Tue Mar 29 16:43:50 2011 +0300 wl12xx: Handle duplicate calling of remove interface Because of the hardware recovery mechanism, its possible the __wl1271_op_remove_interface is called twice. Currently, this leads to a kernel crash even before a kernel WARNing can be issued. Fix this. Signed-off-by: Juuso Oikarinen Signed-off-by: Luciano Coelho commit c1b193eb6557279d037ab18c00ab628c6c78847f Author: Eliad Peller Date: Wed Mar 23 22:22:15 2011 +0200 wl12xx: rearrange some ELP wake_up/sleep calls ELP (Extremely/Enhanced Low Power, or something like that ;)) refers to the powerstate of the 12xx chip, in which very low power is consumed, and no commands (from the host) can be issued until the chip is woken up. Wakeup/sleep commands must be protected by a wl->mutex, so it's generally a good idea to call wakeup/sleep along with the mutex lock/unlock (where needed). However, in some places the wl12xx driver calls wakeup/sleep in some "inner" functions. This result in some "nested" wakeup/sleep calls which might end up letting the chip go to sleep prematurely (e.g. during event handling). Fix it by rearranging the elp calls to come along with mutex_lock/unlock. Signed-off-by: Eliad Peller Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 17e672d6e4b5a8a3f330a70dfd58d25a2cb497b5 Author: Arik Nemtsov Date: Tue Mar 22 10:07:47 2011 +0200 wl12xx: configure channel/band while FW is off Initialize the channel and band from mac80211 conf even when the FW is not yet loaded. This mitigates a bug in AP-mode where the channel was never changed from its initial setting after FW boot and was therefore never configured to FW. Reported-by: Alexander Boukaty Signed-off-by: Arik Nemtsov Signed-off-by: Luciano Coelho commit 4a31c11c7d8c482598754a577a8fb71abb61ffa0 Author: Luciano Coelho Date: Mon Mar 21 23:16:14 2011 +0200 wl12xx: use a bitmask instead of list of booleans in scanned_ch We were using an array of booleans to mark the channels we had already scanned. This was causing a sparse error, because bool is not a type with defined size. To fix this, use bitmasks instead, which is much cleaner anyway. Thanks Johannes Berg for the idea. Signed-off-by: Luciano Coelho commit 4623ec7d97afaf7a8489036e2c2e71e8349716b4 Author: Luciano Coelho Date: Mon Mar 21 19:26:41 2011 +0200 wl12xx: fix a couple of sparse warnings about undeclared functions Fix the following sparse warnings: drivers/net/wireless/wl12xx/main.c:1129:5: warning: symbol '__wl1271_plt_stop' was not declared. Should it be static? drivers/net/wireless/wl12xx/main.c:2988:5: warning: symbol 'wl1271_op_ampdu_action' was not declared. Should it be static? Both functions should be static. Signed-off-by: Luciano Coelho commit d9482e2b5132fd40f8de528af6bb715accbab11d Author: Luciano Coelho Date: Mon Mar 21 17:58:32 2011 +0200 wl12xx: fix SG BT load value to reflect its new meaning The Soft Gemini BT load ratio value has changed its meaning with FW version 6.1.0.0.310. It now means the passive scan compensation percentage during A2DP EDR. Instead of 50, we need to use 200. Fix the SG configuration accordingly. Signed-off-by: Luciano Coelho commit 18b92ffaf33c862e852992e82e17b9fffca8d5a4 Author: Luciano Coelho Date: Mon Mar 21 16:35:21 2011 +0200 wl12xx: set the skbuff priority for dummy packets The firmware requires dummy packets to be sent using TID 7 (WL1271_TID_MGMT). Instead of hardcoding it in the tx_fill_hdr() function, set it when creating the packet itself. This requires Eliad's fix to set the actual TID in the TX descriptor. Cc: Ido Yariv Signed-off-by: Luciano Coelho commit db674d249c1fa20fd6731048f41646b3a2e8bdf5 Author: Eliad Peller Date: Wed Mar 16 23:03:54 2011 +0200 wl12xx: set the actual tid instead of the ac When passing a tx frame, the driver incorrectly set desc->tid with the ac instead of the actual tid. It has some serious implications when using 802.11n + QoS, as the fw starts a BlockAck with the wrong tid (which finally cause beacon loss and disconnection / some fw crash) Fix it by using the actual tid stored in skb->priority. Reported-by: Shahar Levi Signed-off-by: Eliad Peller Reviewed-by: Juuso Oikarinen Signed-off-by: Luciano Coelho commit f9f774c17e19da6f98bd7b57527f55d0ec920fce Author: Juuso Oikarinen Date: Mon Mar 21 10:43:36 2011 +0200 wl12xx: Add mutex protection for interface list The interface list maintained in main.c is not mutex protected. This could cause issues, as the list is accessed from notifier chains. Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 1d732e8cf3dcc09d7c862b6c12f876533529073d Author: Arik Nemtsov Date: Fri Mar 18 14:49:57 2011 +0200 wl12xx: Clamp byte mode transfers for 128x chips On wl128x based devices, when TX packets are aggregated, each packet size must be aligned to the SDIO block size, and sent using block mode transfers. The block size is set to 256 bytes, which is less than the maximum possible byte transfer. Thus, if two small packets (< 256 bytes) are aggregated, the aggregation buffer size would be 512, and will be sent using byte mode transfers. This can have undesired side effects. Fix this by setting the MMC_QUIRK_BLKSZ_FOR_BYTE_MODE mmc card quirk. For 127x chips this has no effect, as the block size is set to 512 bytes. Signed-off-by: Arik Nemtsov Signed-off-by: Ido Yariv Signed-off-by: Luciano Coelho commit 958b20e068be2c6267c2b5764babf15b0d4f5c69 Author: Ohad Ben-Cohen Date: Mon Mar 14 18:53:10 2011 +0200 wl12xx: update bet_max_consecutive Allow early termination of 50 consecutive beacons. This value is the recommended one by the 12xx's system/RF team, and tests show that power consumption is improved as expected. Reported-by: Ruthy Zaphir Tested-by: Danil Shalumov Signed-off-by: Ohad Ben-Cohen Signed-off-by: Luciano Coelho commit 871d0c3ba32c2d2e1e7d9ac0d231a440d2653fc5 Author: Shahar Levi Date: Sun Mar 13 11:24:40 2011 +0200 wl12xx: Add support for 11n Rx STBC one spatial stream The wl12xx chip supports one Rx STBC spatial stream. Announce this in the HT capabilities info field. Signed-off-by: Shahar Levi Signed-off-by: Luciano Coelho commit 0af0467f09207cbbeb387d2e09ea539534c6655c Author: Juuso Oikarinen Date: Thu Mar 10 10:01:43 2011 +0200 wl12xx: Fix potential incorrect band in rx-status The rx-status passed to mac80211 along with each received frame contains the band on which the frame was received. Under certain circumstances, this band information may be incorrect, causing in worst case a WARNING from mac80211, and causes the received frame to be dropped. This scenario mainly occurs when performing connected-mode scans, when the received scan results are from the other band than the one currently associated to. [Since desc_band doesn't exist anymore, use status->band in the later call to ieee80211_channel_to_frequency() to fix compilation -- Luca] Signed-off-by: Juuso Oikarinen Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit e7ddf549f3f2da156f5c12921e6699024e80a3f4 Author: Luciano Coelho Date: Thu Mar 10 15:24:57 2011 +0200 wl12xx: use 1 spare TX block instead of two All the new firmware versions (>=6.1.3.50.58 for STA and >=6.2.0.0.47 for AP) use 1 spare TX block. We still want to support older firmwares that require 2 spare blocks, so added a quirk to handle the difference. Also implemented a generic way of setting quirks that depend on the firmware revision. Signed-off-by: Luciano Coelho commit 0830ceedbfde20c9110c59597fdffbf51886565a Author: Shahar Levi Date: Sun Mar 6 16:32:20 2011 +0200 wl12xx: 1281/1283 support - enable chip support Add support to wl128x chip via chip id Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 1aed55fd784d000fb6741cefb68712d64817bd68 Author: Arik Nemtsov Date: Sun Mar 6 16:32:18 2011 +0200 wl12xx: 1281/1283 support - Use different FW file for AP mode wl127x/wl128x chips Choose a different FW for AP-mode wl127x and wl128x chips, base on chip ID at boot time. Signed-off-by: Arik Nemtsov Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit ae47c45fd02fdf88d57adc370e78e7a01e2bfcbc Author: Shahar Levi Date: Sun Mar 6 16:32:14 2011 +0200 wl12xx: 1281/1283 support - Add dummy packet support Support sending dummy packet to wl128x FW as results of dummy packet event. That is part of dynamic TX mem blocks mechanism. Only send dummy packet when not in AP mode. [Even though the DUMMY_PACKET_EVENT_ID and the STA_REMOVE_COMPLETE_EVENT_ID events are defined to the same value, we need to treat them separately in the code. Keep the check and enable STA_REMOVE_COMPLETE_EVENT_ID for AP mode and DUMMY_PACKET_EVENT_ID for STA. Moved one warning to a cleaner place. Use WL1271_TID_MGMT for dummy packets -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit ae77eccf04f8c36769bdba334e1bbcc7bb9d3644 Author: Shahar Levi Date: Sun Mar 6 16:32:13 2011 +0200 wl12xx: 1281/1283 support - Improve Tx & Rx path Reduced bus transactions in the Tx & Rx path. [Removed unnecessary check wl->chip.id != CHIP_ID_1283_PG20 when checking the quirk -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 13b107dd9808343d05627f0fba7fbc764c86738e Author: Shahar Levi Date: Sun Mar 6 16:32:12 2011 +0200 wl12xx: 1281/1283 support - use dynamic memory for the RX/TX pools Separate the memory configuration to chip-specific structures and implement dynamic memory for wl128x. This feature allows us to move TX memory blocks to the RX pool when the RX path is overloaded. Thanks for Arik Nemtsov for helping simplify the wl1271_fw_status() code. [Rewrote the commit subject and message for clarity; improved some comments and changed "spare" to "padding" for consistency; added a FIXME for the AP memory configuration -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 5ea417ae7749076ddaacb5b36487cae6ac920413 Author: Shahar Levi Date: Sun Mar 6 16:32:11 2011 +0200 wl12xx: 1281/1283 support - New boot sequence Boot sequence support FREF clock and TCXO clock. WL128x has two clocks input - TCXO and FREF. TCXO is the main clock of the device, while FREF is used to sync between the GPS and the cellular modem. Auto-detection checks where TCXO is 32.736MHz or 16.368MHz, in that case the FREF will be used as the WLAN/BT main clock. [Use clock enumeration as defined in linux/wl12xx.h; remove unnecessary else block in wl128x_switch_fref; remove unnecessary change in main.c; remove some unnecessary debug prints and comments; fix potential use of uninitialized value (pll_config) -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit bc765bf3b9a095b3e41c8cda80643901884c3dd4 Author: Shahar Levi Date: Sun Mar 6 16:32:10 2011 +0200 wl12xx: 1281/1283 support - Loading FW & NVS Take care of FW & NVS with the auto-detection between wl127x and wl128x. [Moved some common code outside if statements and added notes about NVS structure assumptions; Fixed a bug when checking the nvs size: if the size was incorrect, the local nvs variable was set to NULL, it should be wl->nvs instead. -- Luca] [Merged with potential buffer overflow fix -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 03068ff131c0a565e2cb26303a0df63467136723 Merge: 32235b0 f0e615c Author: Greg Kroah-Hartman Date: Tue Apr 19 06:37:49 2011 -0700 Staging: merge 2.6.39-rc4 into staging-next This handles the removal of the samsung-laptop driver and other minor merge issues. Signed-off-by: Greg Kroah-Hartman commit 49d750ca14cd49e76ab039b33b5a621e0a92b9fd Author: Shahar Levi Date: Sun Mar 6 16:32:09 2011 +0200 wl12xx: 1281/1283 support - New radio structs and functions New general and radio parameters structures and functions. Implemented as separate functions due to auto-detection between wl127x and wl128x. Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit a81159edf8d64011933df177ec42f82d7896a0c7 Author: Luciano Coelho Date: Mon Mar 14 14:05:13 2011 +0200 wl12xx: 1281/1283 support - add block size handling for sdio and spi Add the the set_block_size op in the SDIO and in the SPI modules. Since it is only used with SDIO, just explicitly set the op to NULL in spi.c Signed-off-by: Luciano Coelho commit 48a61477bdc04896bd96d259388a0c42a7019943 Author: Shahar Levi Date: Sun Mar 6 16:32:08 2011 +0200 wl12xx: 1281/1283 support - Add acx commands New acx command that sets: Rx fifo enable reduced bus transactions in RX path. Tx bus transactions padding to SDIO block size that improve preference in Tx and essential for working with SDIO HS (48Mhz). The max SDIO block size is 256 when working with Tx bus transactions padding to SDIO block. Add new ops to SDIO & SPI that handles the win size change in case of transactions padding (relevant only for SDIO). [Fix endianess issues; simplify sdio-specific block_size handling; minor changes in comments; use "aligned_len" in one calculation instead of "pad" to avoid confusion -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 5aa42346bba2e385674eb1dd4019dfce4c2ef771 Author: Shahar Levi Date: Sun Mar 6 16:32:07 2011 +0200 wl12xx: 1281/1283 support - Add Definitions Definitions to support wl128x: - New FW file name - Chip ID - New PLL Configuration Algorithm macros that will be used at wl128x boot stage - Rename NVS macro name: wl127x and wl128x are using the same NVS file name. However, the ini parameters between them are different. The driver will validate the correct NVS size in wl1271_boot_upload_nvs(). [Cleaned up some of the definitions. -- Luca] Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit b9b0fdead0e8d964a534e5b09f40d8bd4bf7dfe8 Author: Shahar Levi Date: Sun Mar 6 16:32:06 2011 +0200 wl12xx: 1281/1283 support - move IRQ polarity In order to prevent overran of IRQ polarity via FW the polarity setting move after FW download and before IRQ enable. Signed-off-by: Shahar Levi Reviewed-by: Luciano Coelho Signed-off-by: Luciano Coelho commit 62c7d085e1f2a1f2b4d89560551eff18d703b3b1 Author: Luciano Coelho Date: Thu Mar 10 16:42:47 2011 +0200 wl12xx: add new board_tcxo_clock element to the platform data This new value is a new type of clock setting that is used by wl128x chipsets. Signed-off-by: Luciano Coelho commit 50ee9339c7347c2b16fa79d43777f72e9f41ef5a Merge: f0e615c 98346f7 Author: Greg Kroah-Hartman Date: Tue Apr 19 05:50:26 2011 -0700 Merge 2.6.39-rc4 into usb-next This is needed to help resolve some xhci issues and other minor differences. Signed-off-by: Greg Kroah-Hartman commit d4ab4e6a23f805abb8fc3cc34525eec3788aeca1 Merge: c0fa797 96fd2d5 Author: James Morris Date: Tue Apr 19 21:32:41 2011 +1000 Merge branch 'master'; commit 'v2.6.39-rc3' into next commit f18568aae5612ab37f20e5f383d6154ea69c9dfc Author: Michael Witten Date: Tue Apr 12 20:30:13 2011 +0000 perf tools: git mv tools/perf/{features-tests.mak,config/} Signed-off-by: Michael Witten Link: http://lkml.kernel.org/n/tip-a6zhefjayuounko1tk5sjji2@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit 7fbd065f5a2b299172502f09fc3fbde02b48f591 Author: Michael Witten Date: Tue Apr 12 20:27:59 2011 +0000 perf tools: Move `try-cc' The `try-cc' user-defined function was in tools/perf/feature-tests.mak; this commit moves it to tools/perf/config/utilities.mak. Signed-off-by: Michael Witten Link: http://lkml.kernel.org/n/tip-bqhwcuxsrve0iodn6q4ejaoi@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo commit ced465c400b23656ef2c4fbfb4add0e5b92e3d97 Author: Michael Witten Date: Sat Apr 2 21:46:09 2011 +0000 perf tools: Makefile: PYTHON{,_CONFIG} to bandage Python 3 incompatibility Currently, Python 3 is not supported by perf's code; this can cause the build to fail for systems that have Python 3 installed as the default python: python{,-config} The Correct Solution is to write compatibility code so that Python 3 works out-of-the-box. However, users often have an ancillary Python 2 installed: python2{,-config} Therefore, a quick fix is to allow the user to specify those ancillary paths as the python binaries that Makefile should use, thereby avoiding Python 3 altogether; as an added benefit, the Python binaries may be installed in non-standard locations without the need for updating any PATH variable. This commit adds the ability to set PYTHON and/or PYTHON_CONFIG either as environment variables or as make variables on the command line; the paths may be relative, and usually only PYTHON is necessary in order for PYTHON_CONFIG to be defined implicitly. Some rudimentary error checking is performed when the user explicitly specifies a value for any of these variables. In addition, this commit introduces significantly robust makefile infrastructure for working with paths and communicating with the shell; it's currently only used for handling Python, but I hope it will prove useful in refactoring the makefiles. Thanks to: Raghavendra D Prabhu for motivating this patch. Acked-by: Raghavendra D Prabhu Link: http://lkml.kernel.org/r/e987828e-87ec-4973-95e7-47f10f5d9bab-mfwitten@gmail.com Signed-off-by: Michael Witten Signed-off-by: Arnaldo Carvalho de Melo commit 3643b133f2cb8023e8cedcbef43215a99d7df561 Author: Michael Witten Date: Sat Apr 9 01:12:56 2011 +0000 perf tools: Makefile: Clean up `python/perf.so' rule There is no need for a subshell or an explicit `export'; as per the POSIX Shell Command Language specification: http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_09_01 http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_10_02 It is only necessary to include the environment variable assignment just before the command to be run. Also, it is better to use single-quotes, because GNU make might expand `$(BASIC_CFLAGS)' into something that the shell could interpret within double-quotes. Acked-by: Raghavendra D Prabhu Link: http://lkml.kernel.org/n/tip-58n38o02ocuzrm9qh096hsf5@git.kernel.org Signed-off-by: Michael Witten Signed-off-by: Arnaldo Carvalho de Melo commit aeafcbaf4fcfeb74aeed65609ea5ead48dfc09f8 Author: Arnaldo Carvalho de Melo Date: Thu Mar 31 10:56:28 2011 -0300 perf symbols: Give more useful names to 'self' parameters One more installment on an area that is mostly dormant. Suggested-by: Thomas Gleixner Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Thomas Gleixner Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 057f3fadb347e9c51b07e1b277bbdda79f976768 Author: Peter Zijlstra Date: Mon Apr 18 11:24:34 2011 +0200 sched: Fix sched_domain iterations vs. RCU Vladis Kletnieks reported a new RCU debug warning in the scheduler. Since commit dce840a08702b ("sched: Dynamically allocate sched_domain/ sched_group data-structures") the sched_domain trees are protected by RCU instead of RCU-sched. This means that we need to include rcu_read_lock() protection when we iterate them since disabling preemption doesn't suffice anymore. Reported-by: Valdis.Kletnieks@vt.edu Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1302882741.2388.241.camel@twins Signed-off-by: Ingo Molnar commit 2f36825b176f67e5c5228aa33d828bc39718811f Author: Venkatesh Pallipadi Date: Thu Apr 14 10:30:53 2011 -0700 sched: Next buddy hint on sleep and preempt path When a task in a taskgroup sleeps, pick_next_task starts all the way back at the root and picks the task/taskgroup with the min vruntime across all runnable tasks. But when there are many frequently sleeping tasks across different taskgroups, it makes better sense to stay with same taskgroup for its slice period (or until all tasks in the taskgroup sleeps) instead of switching cross taskgroup on each sleep after a short runtime. This helps specifically where taskgroups corresponds to a process with multiple threads. The change reduces the number of CR3 switches in this case. Example: Two taskgroups with 2 threads each which are running for 2ms and sleeping for 1ms. Looking at sched:sched_switch shows: BEFORE: taskgroup_1 threads [5004, 5005], taskgroup_2 threads [5016, 5017] cpu-soaker-5004 [003] 3683.391089 cpu-soaker-5016 [003] 3683.393106 cpu-soaker-5005 [003] 3683.395119 cpu-soaker-5017 [003] 3683.397130 cpu-soaker-5004 [003] 3683.399143 cpu-soaker-5016 [003] 3683.401155 cpu-soaker-5005 [003] 3683.403168 cpu-soaker-5017 [003] 3683.405170 AFTER: taskgroup_1 threads [21890, 21891], taskgroup_2 threads [21934, 21935] cpu-soaker-21890 [003] 865.895494 cpu-soaker-21935 [003] 865.897506 cpu-soaker-21934 [003] 865.899520 cpu-soaker-21935 [003] 865.901532 cpu-soaker-21934 [003] 865.903543 cpu-soaker-21935 [003] 865.905546 cpu-soaker-21891 [003] 865.907548 cpu-soaker-21890 [003] 865.909560 cpu-soaker-21891 [003] 865.911571 cpu-soaker-21890 [003] 865.913582 cpu-soaker-21891 [003] 865.915594 cpu-soaker-21934 [003] 865.917606 Similar problem is there when there are multiple taskgroups and say a task A preempts currently running task B of taskgroup_1. On schedule, pick_next_task can pick an unrelated task on taskgroup_2. Here it would be better to give some preference to task B on pick_next_task. A simple (may be extreme case) benchmark I tried was tbench with 2 tbench client processes with 2 threads each running on a single CPU. Avg throughput across 5 50 sec runs was: BEFORE: 105.84 MB/sec AFTER: 112.42 MB/sec Signed-off-by: Venkatesh Pallipadi Acked-by: Rik van Riel Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1302802253-25760-1-git-send-email-venki@google.com Signed-off-by: Ingo Molnar commit 69c80f3e9d3c569f8a3cee94ba1a324b5a7fa6b9 Author: Venkatesh Pallipadi Date: Wed Apr 13 18:21:09 2011 -0700 sched: Make set_*_buddy() work on non-task entities Make set_*_buddy() work on non-task sched_entity, to facilitate the use of next_buddy to cache a group entity in cases where one of the tasks within that entity sleeps or gets preempted. set_skip_buddy() was incorrectly comparing the policy of task that is yielding to be not equal to SCHED_IDLE. Yielding should happen even when task yielding is SCHED_IDLE. This change removes the policy check on the yielding task. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1302744070-30079-2-git-send-email-venki@google.com Signed-off-by: Ingo Molnar commit c8e5910edf8bbe2e5c6c35a4ef2a578cc7893b25 Author: Robert Richter Date: Sat Apr 16 02:27:55 2011 +0200 perf, x86: Use ALTERNATIVE() to check for X86_FEATURE_PERFCTR_CORE Using ALTERNATIVE() when checking for X86_FEATURE_PERFCTR_CORE avoids an extra pointer chase and data cache hit. Signed-off-by: Robert Richter Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/1302913676-14352-4-git-send-email-robert.richter@amd.com Signed-off-by: Ingo Molnar commit 10175ba65fde4b3708b9dd338af4b2dfb6bf266d Author: Stephen Boyd Date: Wed Apr 6 15:07:49 2011 -0700 nconfig: Silence unused return values from wattrset Ignore the return value from wattrset since we ignore the return value in nconf.gui.c as well. scripts/kconfig/nconf.c: In function 'print_function_line': scripts/kconfig/nconf.c:376: warning: value computed is not used scripts/kconfig/nconf.c:380: warning: value computed is not used scripts/kconfig/nconf.c:387: warning: value computed is not used scripts/kconfig/nconf.c: In function 'show_menu': scripts/kconfig/nconf.c:956: warning: value computed is not used scripts/kconfig/nconf.c:961: warning: value computed is not used scripts/kconfig/nconf.c:963: warning: value computed is not used scripts/kconfig/nconf.c:965: warning: value computed is not used Cc: Nir Tzachar Signed-off-by: Stephen Boyd Signed-off-by: Michal Marek commit e1943424e43974f85b82bb31eaf832823bf49ce7 Merge: 88230fd 0553c89 Author: David S. Miller Date: Tue Apr 19 00:21:33 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/bnx2x/bnx2x_ethtool.c commit 86c0f043a737dadf034a4e6f29aefb074f4a1146 Author: Ondrej Zary Date: Mon Apr 18 10:14:57 2011 +0000 s3fb: add DDC support Add I2C support for the DDC bus and also default mode initialization by reading monitor EDID to the s3fb driver. Tested on Trio64V+ (2 cards), Trio64V2/DX, Virge (3 cards), Virge/DX (3 cards), Virge/GX2, Trio3D/2X (4 cards), Trio3D. Will probably not work on Trio32 - my 2 cards have DDC support in BIOS that looks different from the other cards but the DDC pins on the VGA connector are not connected. Signed-off-by: Ondrej Zary Signed-off-by: Paul Mundt commit 6e4b26805a90b6682dd4ea0fd426dcda8ca5164a Merge: 9b6d777 b4ce6a2 Author: Paul Mundt Date: Tue Apr 19 15:49:36 2011 +0900 Merge branch 'viafb-next' of git://github.com/schandinat/linux-2.6 into fbdev-fixes-for-linus commit 88230fd586b4ccc5ffe6d6c2df8cdc495e89ad83 Author: Michał Mirosław Date: Mon Apr 18 13:31:21 2011 +0000 net: qlge: convert to hw_features Another simple conversion. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit a0d2730c9571aeba793cb5d3009094ee1d8fda35 Author: Michał Mirosław Date: Mon Apr 18 13:31:21 2011 +0000 net: vmxnet3: convert to hw_features This also removes private feature flags that were always set to true. You may want to move vmxnet3_set_features() to vmxnet3_drv.c as a following cleanup. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit feb990d467f76abe90ae68437eb1db351e67c674 Author: Michał Mirosław Date: Mon Apr 18 13:31:21 2011 +0000 net: vxge: convert to hw_features Side effect: ->gro_enable is removed as napi_gro_receive() does the fallback itself. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 30f554f925335abad89aaa38eec6828242b27527 Author: Michał Mirosław Date: Mon Apr 18 13:31:20 2011 +0000 net: chelsio: convert to hw_features Also remove flags that were not used or are now redundant to hw_features bits. No device had UDP_CSUM_CAPABLE set. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit b437a8cc7de4c9d8d0bdb37e7621c119f7640967 Author: Michał Mirosław Date: Mon Apr 18 13:31:20 2011 +0000 net: s2io: convert to hw_features This removes advertising HW_CSUM as driver does not support it. Note: driver advertises TSO6 but not IPV6_CSUM - bug maybe? Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit e5cb966c0838e4da43a3b0751bdcac7fe719f7b4 Author: Michał Mirosław Date: Mon Apr 18 13:31:20 2011 +0000 net: fix section mismatches Fix build warnings like the following: WARNING: drivers/net/built-in.o(.data+0x12434): Section mismatch in reference from the variable madgemc_driver to the variable .init.data:madgemc_adapter_ids And add some consts to EISA device ID tables along the way. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 68d2cf25d39324c54b5e42de7915c623a0917abe Merge: 176fcc5 5d2cd90 Author: Ingo Molnar Date: Tue Apr 19 07:55:58 2011 +0200 Merge branch 'perf/urgent' into perf/core Merge reason: we'll be queueing up dependent changes. Signed-off-by: Ingo Molnar commit 2b7b431858c284b62c18baaf2cea571be2797d5a Author: Francois Romieu Date: Mon Apr 18 22:53:24 2011 -0700 r8169: TSO fixes. - the MSS value is actually contained in a 11 bits wide (0x7ff) field. The extra bit in the former MSSMask did encompass the TSO command bit ("LargeSend") as well (0xfff). Oops. - the Tx descriptor layout is not the same through the whole chipset family. The 8169 documentation, the 8168c documentation and Realtek's drivers (8.020.00, 1.019.00, 6.014.00) highlight two layouts: 1. 8169, 8168 up to 8168b (included) and 8101 2. {8102e, 8168c} and beyond - notwithstanding the "first descriptor" and "last descriptor" bits, the same Tx descriptor content is enforced when a packet consists of several descriptors. The chipsets are documented to require it. Credits go to David Dillow for the original patch. Signed-off-by: Francois Romieu Cc: Realtek Signed-off-by: David S. Miller commit 47c2cdf5513e86e43c799da8d5406cc9a2bf3626 Author: Michał Mirosław Date: Fri Apr 15 04:50:50 2011 +0000 net: myri10ge: convert to hw_features Signed-off-by: Michał Mirosław Acked-by: Jon Mason Signed-off-by: David S. Miller commit d8d9766c8c29f71c37bc4b74cc9fcf6a192c9bfd Author: H. Peter Anvin Date: Mon Apr 18 15:31:57 2011 -0700 x86, cpu: Change NOP selection for certain Intel CPUs Due to a decoder implementation quirk, some specific Intel CPUs actually perform better with the "k8_nops" than with the SDM-recommended NOPs. For runtime-selected NOPs, if we detect those specific CPUs then use the k8_nops instead of the ones we would normally use. Signed-off-by: H. Peter Anvin Cc: Tejun Heo Cc: Steven Rostedt Cc: Frederic Weisbecker Cc: Jason Baron Link: http://lkml.kernel.org/r/1303166160-10315-4-git-send-email-hpa@linux.intel.com commit dc326fca2b640fc41aed7c015d0f456935a66255 Author: H. Peter Anvin Date: Mon Apr 18 15:19:51 2011 -0700 x86, cpu: Clean up and unify the NOP selection infrastructure Clean up and unify the NOP selection infrastructure: - Make the atomic 5-byte NOP a part of the selection system. - Pick NOPs once during early boot and then be done with it. Signed-off-by: H. Peter Anvin Cc: Tejun Heo Cc: Steven Rostedt Cc: Frederic Weisbecker Cc: Jason Baron Link: http://lkml.kernel.org/r/1303166160-10315-3-git-send-email-hpa@linux.intel.com commit b1e7734f024c9ce4393016a97c8d821e1f18d9b4 Author: H. Peter Anvin Date: Mon Apr 18 15:18:02 2011 -0700 x86, percpu: Use ASM_NOP4 instead of hardcoding P6_NOP4 For use in assembly constants, use the ASM_NOP* defines. Signed-off-by: H. Peter Anvin Cc: Christoph Lameter Cc: Tejun Heo Link: http://lkml.kernel.org/r/1303166160-10315-2-git-send-email-hpa@linux.intel.com commit c0fa797ae6cd02ff87c0bfe0d509368a3b45640e Author: Tetsuo Handa Date: Sun Apr 3 00:12:54 2011 +0900 TOMOYO: Fix infinite loop bug when reading /sys/kernel/security/tomoyo/audit In tomoyo_flush(), head->r.w[0] holds pointer to string data to be printed. But head->r.w[0] was updated only when the string data was partially printed (because head->r.w[0] will be updated by head->r.w[1] later if completely printed). However, regarding /sys/kernel/security/tomoyo/query , an additional '\0' is printed after the string data was completely printed. But if free space for read buffer became 0 before printing the additional '\0', tomoyo_flush() was returning without updating head->r.w[0]. As a result, tomoyo_flush() forever reprints already printed string data. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit e4f5f26d8336318a5aa0858223c81cf29fcf5f68 Author: Tetsuo Handa Date: Sun Apr 3 00:11:50 2011 +0900 TOMOYO: Don't add / for allow_unmount permission check. "mount --bind /path/to/file1 /path/to/file2" is legal. Therefore, "umount /path/to/file2" is also legal. Do not automatically append trailing '/' if pathname to be unmounted does not end with '/'. Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit 2a086e5d3a23570735f75b784d29b93068070833 Author: Tetsuo Handa Date: Sun Apr 3 00:09:26 2011 +0900 TOMOYO: Fix race on updating profile's comment line. In tomoyo_write_profile() since 2.6.34, a lock was by error missing when replacing profile's comment line. If multiple threads attempted echo '0-COMMENT=comment' > /sys/kernel/security/tomoyo/profile in parallel, garbage collector will fail to kfree() the old value. Protect the replacement using a lock. Also, keep the old value rather than replace with empty string when out of memory error has occurred. Signed-off-by: Xiaochen Wang Signed-off-by: Tetsuo Handa Signed-off-by: James Morris commit a1b666657c3a691c4f8a0025905e88e8b4baa360 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 pmcraid: Drop __DATE__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Anil Ravindranath Cc: linux-scsi@vger.kernel.org Signed-off-by: Michal Marek commit 152ba3942276c2a240703669ae4a3099e0a79451 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 edac: Drop __DATE__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Doug Thompson Cc: bluesmoke-devel@lists.sourceforge.net Cc: linux-edac@vger.kernel.org Acked-by: Mauro Carvalho Chehab Signed-off-by: Michal Marek commit 9f3ad1cab2a0357d5866d45413fa2ee3e88e496f Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 rio: Drop __DATE__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. As the buildDate field is part of the userspace API, I replaced it with the date of the last code change. Acked-by: Greg Kroah-Hartman Signed-off-by: Michal Marek commit 565502f8894739ce7b5fd131f39c930dc4351710 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 scsi/wd33c93: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: "James E.J. Bottomley" Cc: linux-scsi@vger.kernel.org Signed-off-by: Michal Marek commit 4c315a5d57300db83d2eb7b8d5b6019e1fba99fc Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 scsi/in2000: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: "James E.J. Bottomley" Cc: linux-scsi@vger.kernel.org Signed-off-by: Michal Marek commit 571b16da39922cf71db41c10852d798a44686c15 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 aacraid: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Adaptec OEM Raid Solutions Cc: linux-scsi@vger.kernel.org Signed-off-by: Michal Marek commit 7cf444639101ad8671cb210addbffbdebd07c068 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 media/cx231xx: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org Signed-off-by: Michal Marek commit 372c05c4959aaccdd671f75e0fd332629cf15964 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 media/radio-maxiradio: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org Signed-off-by: Michal Marek commit 2cae8de7b0464cc4c246517fca10f04593f46a3b Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 nozomi: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Greg Kroah-Hartman Signed-off-by: Michal Marek commit 64a14b51bed6427a2e6d68ed687027f065f5a156 Author: Michal Marek Date: Fri Apr 1 12:41:20 2011 +0200 cyclades: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Acked-by: Greg Kroah-Hartman Signed-off-by: Michal Marek commit 2035e776050aea57fb5255557216473e82793f2c Author: Theodore Ts'o Date: Mon Apr 18 17:29:14 2011 -0400 ext4: check for ext[23] file system features when mounting as ext[23] Provide better emulation for ext[23] mode by enforcing that the file system does not have any unsupported file system features as defined by ext[23] when emulating the ext[23] file system driver when CONFIG_EXT4_USE_FOR_EXT23 is defined. This causes the file system type information in /proc/mounts to be correct for the automatically mounted root file system. This also means that "mount -t ext2 /dev/sda /mnt" will fail if /dev/sda contains an ext3 or ext4 file system, just as one would expect if the original ext2 file system driver were in use. Signed-off-by: "Theodore Ts'o" commit 56d37f17165084e10f425e66f0bd964f06e8bd23 Author: Mark Brown Date: Mon Apr 18 01:04:37 2011 +0000 net: dm9000: Fix build Commit c88fcb (net: dm9000: convert to hw_features) broke the build of the dm9000 driver since it merged functions which use different names for the board info structure used for I/O operations without updating all the references to use the same name. Fix that. Signed-off-by: Mark Brown Signed-off-by: David S. Miller commit 773b1d3d31bbf7257c48f6257b4ab06bcf4f5dfa Author: Stephen Warren Date: Tue Apr 12 11:40:39 2011 -0600 ASoC: Tegra: Support more boards * Ventana is identical to Harmony. * Seaboard, Kaen, and Aebl are all pretty similar, mainly with slightly different sets of GPIOs, and slightly different WM8903 pin connectivity. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 3eb25f998d3aede5f0011ba236e7586351e450bf Author: Stephen Warren Date: Tue Apr 12 11:40:38 2011 -0600 ASoC: Tegra: Don't store snd_soc_jack_gpio in an array Storing the struct in an array makes the assignments to the GPIO member a little non-obvious, and is pointless when there's only a single GPIO. (I thought I fixed this during the review cycle when first submitting this driver, but I guess I overlooked that) Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2ba9471b34f48eab9f6e097ef305746b33e12f85 Author: Stephen Warren Date: Tue Apr 12 11:40:37 2011 -0600 ASoC: Tegra: Rename Kconfig SND_TEGRA_SOC_* to SND_SOC_TEGRA_* The previous commit renames SND_TEGRA_SOC_HARMONY to SND_TEGRA_SOC_WM8903. While we're breaking people's .config files, rename all Tegra/SOC-related Kconfig variables to be more consistent with at least the core codec variables. Note that there exist machines that name their variables both ways. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dc0a50afa67c3dbd51211881b7568917dbbc6861 Author: Stephen Warren Date: Tue Apr 12 11:40:36 2011 -0600 ASoC: Tegra: Rename harmony.c to tegra_wm8903.c Soon, this machine driver will be updated to handle a number of Tegra boards using the WM8903 codec. Rename the file in advance to reflect this. Fix the content of tegra_wm8903.c to match the rename; replace references to Harmony board with something more generic. * s/struct tegra_harmony/struct tegra_wm8903/ * s/harmony/machine/ # variable name * Similar rename for some functions * Similar comment fix * Similar MODULE_DESCRIPTION fix Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dfc07b13dcacefda6ebdea14584ed8724dc980ef Author: Konrad Rzeszutek Wilk Date: Mon Apr 18 14:24:23 2011 -0400 xen/blkback: Move it from drivers/xen to drivers/block .. and modify the Makefile and Kconfig files appropriately. Signed-off-by: Konrad Rzeszutek Wilk commit d2436eda2e81f1993bfe6349f17f52503bffeff5 Author: Konrad Rzeszutek Wilk Date: Mon Apr 18 14:17:49 2011 -0400 block, xen/blkback: remove blk_[get|put]_queue calls. They were used to check if the queue does not have QUEUE_FLAG_DEAD set. That is not necessary anymore as the 'submit_io' call ends up doing that for us. Signed-off-by: Konrad Rzeszutek Wilk commit c387aa3a1a910ce00b86f3a85082d24f144db256 Author: Joerg Roedel Date: Mon Apr 18 15:45:43 2011 +0200 x86, gart: Don't enforce GART aperture lower-bound by alignment This patch changes the allocation of the GART aperture to enforce only natural alignment instead of aligning it on 512MB. This big alignment was used to force the GART aperture to be over 512MB. This is enforced by using 512MB as the lower-bound address in the allocation range. [ hpa: The actual number 512 MiB needs to be revisited, too. ] Cc: Yinghai Lu Signed-off-by: Joerg Roedel Link: http://lkml.kernel.org/r/1303134346-5805-2-git-send-email-joerg.roedel@amd.com Signed-off-by: H. Peter Anvin commit c6d46678a1adacde05a01e51361610ce2666fe6a Merge: d5381e4 61a6d07 Author: Mark Brown Date: Mon Apr 18 18:08:22 2011 +0100 Merge branch 'tegra' into for-2.6.40 commit d5381e42f64ca19f05c5799ffae5708acb6ed411 Merge: f030d60 b3c27b5 Author: Mark Brown Date: Mon Apr 18 18:07:43 2011 +0100 ASoC: Merge branch 'for-2.6.39' into for-2.6.40 Fix trivial conflict caused by silly spelling fix patch. Conflicts: sound/soc/codecs/wm8994.c commit 61a6d0764be43e014d265128c2af1b41e0fc96b0 Author: Stephen Warren Date: Tue Apr 12 11:29:01 2011 -0600 ARM: Tegra: Add to tegra_wm8903_platform_data Seaboard derivate Kaen has a GPIO to mute the headphone output. Add a field to tegra_wm8903_platform_data so the board files can pass the GPIO number for that to the ASoC machine driver. Also, initialize this new field to a "not present" value for Harmony. Signed-off-by: Stephen Warren Signed-off-by: Mark Brown commit 7b33af252fbbf3beb694448da3ba6687022fd602 Author: Stephen Warren Date: Tue Apr 12 11:29:00 2011 -0600 ASoC: Tegra: Rename pdev tegra-snd-harmony to tegra-snd-wm8903 Soon, this machine driver will be updated to handle a number of Tegra boards using the WM8903 codec. Rename the platform device in advance to reflect this. Signed-off-by: Stephen Warren Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4651d5566840e911b14a5052f18ed39558677937 Author: Stephen Warren Date: Tue Apr 12 11:28:59 2011 -0600 ARM: Tegra: Rename harmony_audio.h -> tegra_wm8903_pdata.h The audio driver will soon support more than just the Tegra Harmony board. Rename the platform data header file and data type to reflect this. Signed-off-by: Stephen Warren Signed-off-by: Mark Brown commit f212b43c4e4a8f6378c50ce18f3d271983b575a7 Author: Wey-Yi Guy Date: Mon Apr 18 09:36:30 2011 -0700 iwlagn: remove led_ops No longer use, remove it Signed-off-by: Wey-Yi Guy commit e339807d97bcb4e214c9137bb5bbb2f685054624 Author: Wey-Yi Guy Date: Fri Apr 8 10:21:52 2011 -0700 iwlagn: remove legacy ops No longer used by _agn devices, remove it Signed-off-by: Wey-Yi Guy commit 119ea186cad7643ea82b7290374ebb8e780c35b6 Author: Wey-Yi Guy Date: Mon Apr 18 09:34:06 2011 -0700 iwlagn: remove un-necessary ieee80211_ops After driver split, no need to use ieee80211_ops, remove it Signed-off-by: Wey-Yi Guy commit 5cab35e7f4feda1a0bfd4f48b7686391004be9de Author: Wey-Yi Guy Date: Wed Apr 6 15:55:27 2011 -0700 iwlagn: no 5.2GHz/HT40 support for bgn devices For bgn devices, there were no HT40 channels value in EEPROM Signed-off-by: Wey-Yi Guy commit f42e7662815647c1a6f73e160abcdf812d3057d2 Author: Wey-Yi Guy Date: Mon Apr 18 09:30:09 2011 -0700 iwlagn: temperature should be measure for all _agn devices Thermal throttling functions are available for all _agn devices, call the functions directly. Signed-off-by: Wey-Yi Guy commit b7af6a99690503a48c63ce5e587b4e4555f31cdb Author: Wey-Yi Guy Date: Wed Apr 6 15:55:25 2011 -0700 iwlagn: always support uCode trace All _agn devices support continuous uCode trace, remove checking Signed-off-by: Wey-Yi Guy commit b4ebd28f23e3ae00af886aff1c00f800dee3b080 Author: Johannes Berg Date: Wed Apr 6 12:28:56 2011 -0700 iwlagn: use huge command for beacon When testing some new P2P code, Angie found that the driver might crash because the beacon command ended up being bigger than a regular command. This is quite obvious -- a normal command is limited to roughly 360 bytes but a beacon may be much larger of course. To fix this, use the huge command buffer. Reported-by: Angie Chinchilla Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 7b21f00ee6073909c01adeba317af3d78c3b9d0a Author: Johannes Berg Date: Mon Apr 18 09:22:10 2011 -0700 iwlagn: verify that huge commands are synchronous Since huge commands all share a single buffer, there can only be a single one in flight at a time since otherwise they'd overwrite each other. This is true in the driver now, but it seems like a possible source of bugs, so add a test to verify that huge commands are always sent synchronously. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3e41ace5deef7af16dd277d9d17f9d36dca0a10e Author: Johannes Berg Date: Mon Apr 18 09:12:37 2011 -0700 iwlagn: remove most BUG_ON instances There are a number of things in the driver that may result in a BUG(), which is suboptimal since it's hard to get debugging information out of the driver in that case and the user experience is also not good :-) Almost all BUG_ON instances can be converted to WARN_ON with a few lines of appropriate error handling, so do that instead. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 6fd17b5643bf05c29fc226a5aee96328056fca10 Author: Konrad Rzeszutek Wilk Date: Mon Apr 18 12:04:17 2011 -0400 xen/blkback: Get the 'requeust_queue' properly. After the commit 0faa8cca883bbc6a0919e3c89128672659b75820 (" xen/blkback: remove per-queue plugging") we forgot to retrieve the 'struct request_queue' from the block device. This puts the functionality back in and fixes a NULL pointer bug. Signed-off-by: Konrad Rzeszutek Wilk commit e79b1ca75bb48111e8d93fc576f50e24671f5f9d Author: Wey-Yi Guy Date: Tue Apr 5 08:30:43 2011 -0700 iwlagn: use direct call for led functions After driver split, no need to call led functions through callback Signed-off-by: Wey-Yi Guy commit e93504933ee6982bdc005fa5c24e1ea330faaf8b Author: Konrad Rzeszutek Wilk Date: Mon Apr 18 11:34:55 2011 -0400 xen/blkback: Move the check for misaligned I/O once more. The commit 976222e05ea5a9959ccf880d7a24efbf79b3c6cf xen/blkback: Move the check for misaligned I/O higher. moved it a bit to high. The preq->vbdev was not set, so the check for misaligned I/O would cause a NULL pointer derefence. Signed-off-by: Konrad Rzeszutek Wilk commit cf8d91633ddef9e816ccbf3da833c79ce508988d Author: Konrad Rzeszutek Wilk Date: Mon Feb 28 17:58:48 2011 -0500 xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2P override. We only supported the M2P (and P2M) override only for the GNTMAP_contains_pte type mappings. Meaning that we grants operations would "contain the machine address of the PTE to update" If the flag is unset, then the grant operation is "contains a host virtual address". The latter case means that the Hypervisor takes care of updating our page table (specifically the PTE entry) with the guest's MFN. As such we should not try to do anything with the PTE. Previous to this patch we would try to clear the PTE which resulted in Xen hypervisor being upset with us: (XEN) mm.c:1066:d0 Attempt to implicitly unmap a granted PTE c0100000ccc59067 (XEN) domain_crash called from mm.c:1067 (XEN) Domain 0 (vcpu#0) crashed on cpu#3: (XEN) ----[ Xen-4.0-110228 x86_64 debug=y Not tainted ]---- and crashing us. This patch allows us to inhibit the PTE clearing in the PV guest if the GNTMAP_contains_pte is not set. On the m2p_remove_override path we provide the same parameter. Sadly in the grant-table driver we do not have a mechanism to tell m2p_remove_override whether to clear the PTE or not. Since the grant-table driver is used by user-space, we can safely assume that it operates only on PTE's. Hence the implementation for it to work on !GNTMAP_contains_pte returns -EOPNOTSUPP. In the future we can implement the support for this. It will require some extra accounting structure to keep track of the page[i], and the flag. [v1: Added documentation details, made it return -EOPNOTSUPP instead of trying to do a half-way implementation] Signed-off-by: Konrad Rzeszutek Wilk commit 6ddafdaab3f809b110ada253d2f2d4910ebd3ac5 Merge: 3905c54 bd8e7dd Author: Ingo Molnar Date: Mon Apr 18 14:53:18 2011 +0200 Merge branch 'sched/locking' into sched/core Merge reason: the rq locking changes are stable, propagate them into the .40 queue. Signed-off-by: Ingo Molnar commit a8b8017c34fefcb763d8b06c294b58d1c480b2e4 Author: Michal Marek Date: Thu Mar 31 23:16:42 2011 +0200 initramfs: Use KBUILD_BUILD_TIMESTAMP for generated entries gen_init_cpio gets the current time and uses it for each symlink, special file, and directory. Grab the current time once and make it possible to override it with the KBUILD_BUILD_TIMESTAMP variable for reproducible builds. Signed-off-by: Michal Marek commit 53e6892c0411006848882eacfcfea9e93681b55d Author: Michal Marek Date: Tue Apr 5 14:32:30 2011 +0200 kbuild: Allow to override LINUX_COMPILE_BY and LINUX_COMPILE_HOST macros Make it possible to override the user@host string displayed during boot and in /proc/version by the environment variables KBUILD_BUILD_USER and KBUILD_BUILD_HOST. Several distributions patch scripts/mkcompile_h to achieve this, so let's provide an official way. Also, document the KBUILD_BUILD_TIMESTAMP variable while at it. Signed-off-by: Michal Marek commit 061296dc2c14f852604fc6849669fe0b78bb1eda Author: Michal Marek Date: Thu Mar 31 17:13:55 2011 +0200 kbuild: Drop unused LINUX_COMPILE_TIME and LINUX_COMPILE_DOMAIN macros Signed-off-by: Michal Marek commit 09ff9fecc039d60fff6c11d47522af61e89fff56 Author: Michal Marek Date: Thu Mar 31 16:09:47 2011 +0200 kbuild: Use the deterministic mode of ar Signed-off-by: Michal Marek commit 6ae9ecb86188cc8419024cdb299f18d4ae4f5713 Author: Michal Marek Date: Thu Mar 31 15:47:55 2011 +0200 kbuild: Call gzip with -n The timestamps recorded in the .gz files add no value. Signed-off-by: Michal Marek commit c33724a43875786719f51916311308f2752d846e Author: Michal Marek Date: Tue Apr 28 15:05:20 2009 +0200 kconfig: Do not record timestamp in auto.conf and autoconf.h Timestamps in file data are useless and there is already one in .config Signed-off-by: Michal Marek commit a375b15164dd9264f724ad941825e52c90145151 Author: Kuninori Morimoto Date: Fri Apr 15 16:44:27 2011 +0900 sh: fixup fpu.o compile order arch_ptrace() was modified to reference init_fpu() to fix up xstate initialization, which overlooked the fact that there are configurations that don't enable any of hard FPU support or emulation, resulting in build errors on DSP parts. Given that init_fpu() simply sets up the xstate slab cache and is side-stepped entirely for the DSP case, we can simply always build in the helper and fix up the references. Reported-by: Nobuhiro Iwamatsu Signed-off-by: Kuninori Morimoto Cc: stable@kernel.org Signed-off-by: Paul Mundt commit 7ef0c12a280c059f4624d311bb1a7d946cbac7b7 Author: Guennadi Liakhovetski Date: Fri Apr 15 20:18:57 2011 +0200 i2c: add a module alias to the sh-mobile driver This patch enables I2C driver autoloading on sh-mobile systems. Signed-off-by: Guennadi Liakhovetski Reviewed-by: Simon Horman Cc: Magnus Damm Signed-off-by: Paul Mundt commit c40eb1e9e53dbd1e5601650565e2ed8bf14866ba Author: Guennadi Liakhovetski Date: Fri Apr 15 20:17:34 2011 +0200 ALSA: add a module alias to the FSI driver This patch enables FSI driver autoloading on sh-mobile systems. Signed-off-by: Guennadi Liakhovetski Reviewed-by: Simon Horman Acked-by: Liam Girdwood Signed-off-by: Paul Mundt commit 013b19e3aa843e206a47098063258d5cc5c3482e Author: Guennadi Liakhovetski Date: Fri Apr 15 20:04:12 2011 +0200 sh: update SDHI configuration symbols in defconfigs Signed-off-by: Guennadi Liakhovetski Acked-by: Simon Horman Cc: Magnus Damm Signed-off-by: Paul Mundt commit 5744c88111f076c98f389eae28ec2ff206ba2e14 Author: Guennadi Liakhovetski Date: Fri Apr 15 20:03:17 2011 +0200 sh: fix SD / MMC configuration dependencies on ecovec Update CONFIG_MMC_TMIO to the new CONFIG_MMC_SDHI symbol and fix MMCIF to also function in modular builds for ecovec. Signed-off-by: Guennadi Liakhovetski Acked-by: Simon Horman Cc: Magnus Damm Signed-off-by: Paul Mundt commit a7f800131f35925299860a95259453c9bc0c272f Author: Kuninori Morimoto Date: Thu Apr 14 17:13:22 2011 +0900 ARM: mach-shmobile: clock-sh7372: remove status check from fsidiv_recalc clock status check is not needed in recalc function. clk->rate will be 0 in clk_set_rate without this patch. Signed-off-by: Kuninori Morimoto Signed-off-by: Paul Mundt commit 52c10ad22b7e317960b4d411c9a9ddeaf3d5ae39 Author: Kuninori Morimoto Date: Thu Apr 14 17:13:53 2011 +0900 sh: clkfwk: fixup clk_rate_table_build parameter in div6 clock div6 clock should not use arch_flags for clk_rate_table_build, because SH_CLK_DIV6_EXT doesn't care .arch_flags. clk->freq_table[] will be all CPUFREQ_ENTRY_INVALID without this patch. Signed-off-by: Kuninori Morimoto Cc: stable@kernel.org Signed-off-by: Paul Mundt commit 9b6d7777118d3f2abc39591481ea5b9b5e76d6ba Merge: b07f3bb 0fd0806 Author: Paul Mundt Date: Mon Apr 18 17:47:57 2011 +0900 Merge branch 'for-paul-39-rc' of git://gitorious.org/linux-omap-dss2/linux into fbdev-fixes-for-linus commit 7c89943236750537d26421d9bbb6f6575e2d1e1b Author: Ben Hutchings Date: Fri Apr 15 13:47:51 2011 +0000 bonding, ipv4, ipv6, vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS It is undesirable for the bonding driver to be poking into higher level protocols, and notifiers provide a way to avoid that. This does mean removing the ability to configure reptitition of gratuitous ARPs and unsolicited NAs. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 99606477a5888b0ead0284fecb13417b1da8e3af Author: Ben Hutchings Date: Fri Apr 15 13:46:49 2011 +0000 vlan: Propagate NETDEV_NOTIFY_PEERS notifier The NETDEV_NOTIFY_PEERS notifier indicates that a device moved to a different physical link; this also applies to any VLAN devices on top of it. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit f47b94646f30529624c82ab0f9cd5bd3f25ef9d2 Author: Ben Hutchings Date: Fri Apr 15 13:46:02 2011 +0000 ipv6: Send unsolicited neighbour advertismements when notified The NETDEV_NOTIFY_PEERS notifier is a request to send such advertisements following migration to a different physical link, e.g. virtual machine migration. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit b3337e4cea15beb167e8d3a70ca1023e39abb4e5 Author: David Decotigny Date: Thu Apr 14 16:11:34 2011 +0000 bnx2x: cosmetics: Using ethtool_cmd_speed() API This updates bnx2x to use the ethtool_cmd_speed() family of functions (see b11f8d8c in 2.6.27-rc3 aka. "ethtool: Expand ethtool_cmd.speed to 32 bits") to get and set the link speed via ethtool. This allows to avoid manually accessing ethtool_cmd's speed_hi field. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit a01c1335a308ee660518e33db03fb5f5e1dfc166 Author: David S. Miller Date: Sun Apr 17 20:47:07 2011 -0700 decnet: Don't leak entries when rebuilding zone. As noticed by Ben Hutchings, when we move entries from one table to another we leak all except the first entry. Put back the "next" variable removed by commit 9bf9055eb716f85372c41b3fbc51f90bc7653740 ("decnet: Fix set-but-unused variable.") and use it properly. Reported-by: Ben Hutchings Signed-off-by: David S. Miller commit 482e3febc2e7df78411005dcdd7621c16b98b088 Author: Joe Perches Date: Sat Apr 16 14:15:26 2011 +0000 via-rhine: Assign random MAC address if necessary Roger Luethi has had several reports of Rhine NICs providing an invalid MAC address. If so, assign a random MAC address so the hardware can still be used. Tested as a standalone interface, as carrier for ppp, and as a bonding slave. Original-patch-by: Alexandru Gagniuc Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit df4511feb76173db872c8845b63179dd15f2b7da Author: Joe Perches Date: Sat Apr 16 14:15:25 2011 +0000 via_rhine: Use netdev_ and pr_ Use the more current logging styles. Add #define DEBUG to make netdev_dbg always active. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit 28674b97cfb907b0b3de7b7fea89efda1e65f34e Author: Stephen Hemminger Date: Sun Apr 17 17:52:51 2011 -0700 bridge: fix accidental creation of sysfs directory Commit bb900b27a2f49b37bc38c08e656ea13048fee13b ("bridge: allow creating bridge devices with netlink") introduced a bug in net-next because of a typo in notifier. Every device would have the sysfs bridge directory (and files). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2ed28baa7076083b56c1e70ccd927b7870117c59 Author: Michał Mirosław Date: Sat Apr 16 13:05:08 2011 +0000 net: cxgb4{,vf}: convert to hw_features Signed-off-by: Michał Mirosław Acked-by: Dimitris Michailidis Signed-off-by: David S. Miller commit c582a950b1d7488750831cb4499de071781c7f45 Author: Thiago Farina Date: Sun Apr 17 17:49:21 2011 -0700 drivers/net/usb/usbnet.c: Use FIELD_SIZEOF macro in usbnet_init() function. Signed-off-by: Thiago Farina Signed-off-by: David S. Miller commit 5e4011e2b8032cd132d9482f016558f1b27569cd Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: ibm_newemac: convert to hw_features Side effect: allow toggling of TX offloads. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 131ae329702755d897c6072c7839086b0702fb10 Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: greth: convert to hw_features Note: Driver modifies its struct net_device_ops. This will break if used for multiple devices that are not all the same (if that HW config is possible). Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 3cd8ef4b6071834fd432bbccbec0611591908643 Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: niu: convert to hw_features Side effect: allow toggling of TX offloads. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit f4786a96252b97f6f05cd42ea7fe6e967048bfa3 Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: ehea: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 66a1c5413260a8c302b4024555c489cc6731b463 Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: benet: convert to hw_features - fixup Remove be_set_flags() as it's already covered by hw_features. Signed-off-by: Michał Mirosław Acked-by: Ajit Khaparde ajit.khaparde@emulex.com Signed-off-by: David S. Miller commit 86688a8f132a7630f8610c13a349c711fe683b44 Author: Michał Mirosław Date: Sun Apr 17 00:15:47 2011 +0000 net: typhoon: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit aad59c431b77be5cbfa01f2066a036b95981fed9 Author: Michał Mirosław Date: Sun Apr 17 00:15:46 2011 +0000 net: mv643xx: convert to hw_features Side effect: don't reenable RXCSUM on every ifdown/ifup. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit eea3250b43fd0b4fe565409bbf2fb06514213386 Author: Michał Mirosław Date: Sun Apr 17 00:15:46 2011 +0000 net: tehuti: convert to hw_features As a side effect, make TX offloads changeable. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit d2fe2755342b30bc1ee7797b9975f8626d65e485 Author: Michał Mirosław Date: Sun Apr 17 00:15:46 2011 +0000 net: cxgb3: convert to hw_features This removes some of the remnants of LRO -> GRO conversion. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 391876466670988196786150fc9d9da2f3c7cecb Author: Michał Mirosław Date: Sun Apr 17 00:15:46 2011 +0000 net: macvlan: convert to hw_features Not much of a conversion anyway - macvlan has no way to change the offload settings independently to its base device. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 9c6bc16577171100e5efab0ea09ebf5884822ed6 Merge: 03746b0 af20b71 Author: David S. Miller Date: Sun Apr 17 17:37:29 2011 -0700 Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge commit 03746b0a02d25866a29cd8d7306d221c238d6397 Author: David S. Miller Date: Sun Apr 17 17:08:41 2011 -0700 be2net: Fix unused-but-set variables. The variables 'tx_min' and 'tx_max' are set but not used in be_set_coalesce(). Similarly for 'region' in be_do_flash(). Just kill them off. Signed-off-by: David S. Miller commit 9365f11a5321bcff5579799a071a70c5cacb5e65 Author: David S. Miller Date: Sun Apr 17 17:07:57 2011 -0700 isdn: i4l: isdn_tty: Fix unused-but-set variables. The variable 'fcr' is set but not used in isdn_tty_change_speed(). Just kill it off. Signed-off-by: David S. Miller commit b169f6db40605d0907458d1ff78ceac2b194a44f Author: David S. Miller Date: Sun Apr 17 17:06:15 2011 -0700 netfilter: ip6table_mangle: Fix set-but-unused variables. The variable 'flowlabel' is set but unused in ip6t_mangle_out(). The intention here was to compare this key to the header value after mangling, and trigger a route lookup on mismatch. Make it so. Signed-off-by: David S. Miller commit f3c85dd560f26ceae1351e6f83e83f1322761ead Author: David S. Miller Date: Sun Apr 17 17:04:48 2011 -0700 netfilter: ip6_tables: Fix set-but-unused variables. The variable 'target' is set but unused in compat_copy_entry_from_user(). Just kill it off. Signed-off-by: David S. Miller commit d88d7de09875e643e225a5d0883d18152ce5a89b Author: David S. Miller Date: Sun Apr 17 17:03:33 2011 -0700 netfilter: nf_conntrack_standalone: Fix set-but-unused variables. The variable 'ret' is set but unused in ct_seq_show(). This was obviously meant to be used to propagate error codes to the caller, so make it so. Signed-off-by: David S. Miller commit d87d7fb381c153f71b7cdfd37f3513edc6d0eb8f Author: David S. Miller Date: Sun Apr 17 17:02:29 2011 -0700 netfilter: nfnetlink_log: Fix set-but-unused variables. The variable 'tmp_uint' is set but unused in __build_packet_message(). Just kill it off. Signed-off-by: David S. Miller commit dab51d0e0718e7beef26075a9353f09ea2652a4f Author: David S. Miller Date: Sun Apr 17 17:01:49 2011 -0700 netlabel: Fix set-but-unused variables. The variable 'type_str' is set but unused in netlbl_cipsov4_add(). Just kill it off. Signed-off-by: David S. Miller commit 8cb490144708ef295421d0601b0866623651a37e Author: David S. Miller Date: Sun Apr 17 17:01:05 2011 -0700 l2tp: Fix set-but-unused variables. The variable 'ret' is set but unused in l2tp_nl_register_ops(). This was obviously meant to maintain error codes which are returned to the caller, make it so. Signed-off-by: David S. Miller commit 6385969b3297287e6259a012671be09c78c20620 Author: David S. Miller Date: Sun Apr 17 16:59:50 2011 -0700 irda: irproc: Fix set-but-unused variables. The variable 'd' is set but unused in irda_proc_register(). Just kill it off. Signed-off-by: David S. Miller commit 1627ea35cb10af2f71d38a82de6f6dfb910771ed Author: David S. Miller Date: Sun Apr 17 16:59:09 2011 -0700 irda: irlap_event: Fix set-but-unused variables. The variable 'ret' is set but unused in irlap_state_sclose(). Just kill it off. Signed-off-by: David S. Miller commit 056693a38e56c520e208409d221cbc077282c19d Author: David S. Miller Date: Sun Apr 17 16:57:55 2011 -0700 caif: Fix set-but-unused variables. The variable 'caifdef' is set but unused in modemcmd(). Similarly for 'net' in receive(), and 'res' in caif_device_notify() and caif_exit_net(). Just kill them off. Signed-off-by: David S. Miller commit b8ee8328bac0d8420d2b9ef4838d0df25df100ab Author: David S. Miller Date: Sun Apr 17 16:56:12 2011 -0700 bnx2x: Fix set-but-unused variables. The variable 'rc' is set but unused in bnx2x_timer(). Similarly for 'hc_index_p' in bnx2x_init_sb(), and 'port' in bnx2x_get_hwinfo(). Just kill them off. Signed-off-by: David S. Miller commit 585985429080a449e0ecf66dd485899a8765c26c Author: David S. Miller Date: Sun Apr 17 16:51:36 2011 -0700 bna: Fix set-but-unused variables. The variable 'pgoff' is set but unused in bfa_nw_ioc_fwver_get() and bfa_ioc_download_fw(). Similarly for 'cmd_h' in bna_mbox_flush_q and the entirety of bna_rit_mod_uninit() is unused since variables are purely set but no action is made using them. Same for 'bna' in bna_rit_create() and 'ret' in bna_rx_create(). Just kill them off. Signed-off-by: David S. Miller commit 81b424d9e2ef815b2035d4c2be0bc41dddbebc06 Author: David S. Miller Date: Sun Apr 17 16:48:53 2011 -0700 isdn: mISDN: socket: Fix set-but-unused variables. The variable 'len' is set but unused in data_sock_getsockopt(). The code should use 'len' to validate that the user's socket option is indeed the right size. Signed-off-by: David S. Miller commit 07f46f80f4ca4ddb700ff40a19876ba1b3242917 Author: David S. Miller Date: Sun Apr 17 16:46:50 2011 -0700 isdn: i4l: isdn_net: Fix set-but-unused variables. The variable 'unused' is set but unused in isdn_net_ciscohdlck_slarp_in(). Just kill it off. Signed-off-by: David S. Miller commit 50a7c114c2673f3fcbb0ba5d659049156e1ccd50 Author: David S. Miller Date: Sun Apr 17 16:45:51 2011 -0700 isdn: i4l: isdn_common: Fix set-but-unused variables. The variable 'ch' is set but unused in isdn_capi_rec_hl_msg(). Just kill it off. Similarly for 'chidx' in isdn_ioctl() and 'di' in isdn_capi_rec_hl_msg(). Signed-off-by: David S. Miller commit 8c85290d84eaa7b3ba605090987d2136a3302ca9 Author: David S. Miller Date: Sun Apr 17 16:44:12 2011 -0700 isdn: teles_cs: Fix set-but-unused variables. The variable 'dev' is set but unused in teles_cs_config(). Just kill it off. Signed-off-by: David S. Miller commit 1397c5df2547f3296ad37a0c77daff3b124b98c8 Author: David S. Miller Date: Sun Apr 17 16:43:20 2011 -0700 isdn: l3ni1: Fix set-but-unused variables. The variable 'cause' is set but unused in ni1up(). Just kill it off. Signed-off-by: David S. Miller commit cf117eafa0dc17c6f973d078d4e0bf2069f45ce7 Author: David S. Miller Date: Sun Apr 17 16:42:15 2011 -0700 isdn: l3dss1: Fix set-but-unused variables. The variable 'cause' is set but unused in dss1up(). Just kill it off. Signed-off-by: David S. Miller commit f6f0e4a7a343f85dd773f6f18e553933c4367e96 Author: David S. Miller Date: Sun Apr 17 16:41:29 2011 -0700 isdn: jade: Fix set-but-unused variables. The variable 'i' is set but unused in JadeVersion(). Just kill it off. Signed-off-by: David S. Miller commit d462003ddbb28926109396b9038299fc740c2efc Author: David S. Miller Date: Sun Apr 17 16:40:30 2011 -0700 isdn: ipacx: Fix set-but-unused variables. The variable 'cda2_cr' is set but unused in ctrl_complete(). Just kill it off. Keep the cs->readisac() call just in case the register read has side effects. Signed-off-by: David S. Miller commit a1e6216d1b5035db1d4c018cf841d3267f949281 Author: David S. Miller Date: Sun Apr 17 16:39:18 2011 -0700 isdn: hfc_usb: Fix set-but-unused variables. The variable 'buf' is set but unused in ctrl_complete(). Just kill it off. Similarly for 'err' in hfc_usb_init(). Signed-off-by: David S. Miller commit db47367451cbee4e8a3fd9389cc341f4acc43b1e Author: David S. Miller Date: Sun Apr 17 16:38:33 2011 -0700 isdn: elsa_ser: Fix set-but-unused variables. The variable 'bits' is set but unused in change_speed(). Just kill it off. Signed-off-by: David S. Miller commit 94dbe1ae44df1d22a391980eb6bd502f937b1af8 Author: David S. Miller Date: Sun Apr 17 16:37:11 2011 -0700 isdn: elsa_cs: Fix set-but-unused variables. The variable 'dev' is set but unused in elsa_cs_config(). Just kill it off. Signed-off-by: David S. Miller commit 011bc1ef447dd6aa969d9c83a90fe3df360b5d6e Author: David S. Miller Date: Sun Apr 17 16:36:28 2011 -0700 isdn: arcofi: Fix set-but-unused variables. The variable 'val' is set but unused in send_arcofi(). Just kill it off. Signed-off-by: David S. Miller commit 3c76c58fca03c1162ab8592f71c996e933af3a9e Author: David S. Miller Date: Sun Apr 17 16:35:27 2011 -0700 isdn: hfcsusb: Fix set-but-unused variables. The variable 'buf' is set but unused in ctrl_complete(). Just kill it off. Similarly for the variable 'err' in setup_hfcsusb(). Signed-off-by: David S. Miller commit a719e0a81f8ab1e96301aada203be1c43788aec7 Author: David S. Miller Date: Sun Apr 17 16:34:50 2011 -0700 isdn: hfcpci: Fix set-but-unused variables. The variable 'total' is set but unused in hfcpci_empty_bfifo(). Just kill it off. Similarly for the variable 'val' in ph_state_nt(). Signed-off-by: David S. Miller commit 2d09d567127e85dddd027d049196093640025c36 Author: David S. Miller Date: Sun Apr 17 16:23:22 2011 -0700 isdn: eicon: Fix set-but-unused variables. The variable 'best_id' is set but unused in diva_mnt_add_xdi_adapter(). Just kill it off. Similarly for the variable 'CIP' in connect_req(), 'Number' in sig_ind(), 'Info' in dtmf_confirmation() mixer_command() fax_connect_ack_command() fax_edata_ack_command() rtp_connect_b3_res_command() and rtp_connect_b3_res_command(), and 'a' in mixer_indication_coefs_set(), Signed-off-by: David S. Miller commit a713c3bbb5a6736e673940eb97d9bf2c27aec4c5 Author: David S. Miller Date: Sun Apr 17 16:22:33 2011 -0700 isdn: gigaset: Fix set-but-unused variable. The variable 'offset' is set but unused in write_iso_tasklet(). Just kill it off. Signed-off-by: David S. Miller commit af20b710479ae662829cf739b521390daa7fcbcb Author: Andrew Lunn Date: Sun Apr 17 20:39:07 2011 +0200 batman-adv: Set the txqueuelen to zero when creating soft interface Like other virtual interfaces, e.g. br0, we don't need a transmit queue. Packets should only be queued on real interfaces which are underneath. In practice this patch makes little difference since the virtual interfaces can accept packets as fast as they come, but the patch will avoid bufferbloat questions to the mailling lists in the future. Signed-off-by: Andrew Lunn Tested-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit ba85fac28005a59e6e03fdb13918fc6f6e69a3ca Author: Simon Wunderlich Date: Sun Apr 17 20:34:27 2011 +0200 batman-adv: protect softif_neigh by rcu Add get/set wrapper functions for softif_neigh and use rcu functions to manipulate the pointers. Signed-off-by: Simon Wunderlich Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit c4aac1ab9b973798163b34939b522f01e4d28ac9 Author: Marek Lindner Date: Wed Mar 23 11:24:34 2011 +0100 batman-adv: concentrate all curr_gw related rcu operations in select/deselect functions Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 68003903e4eeec5288f074ff0751a381750ceb34 Author: Linus Lüssing Date: Mon Mar 14 22:43:40 2011 +0000 batman-adv: Protect global TQ window with a spinlock Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit e1a5382f978b67b5cc36eec65e6046730ce07714 Author: Linus Lüssing Date: Mon Mar 14 22:43:37 2011 +0000 batman-adv: Make orig_node->router an rcu protected pointer The rcu protected macros rcu_dereference() and rcu_assign_pointer() for the orig_node->router need to be used, as well as spin/rcu locking. Otherwise we might end up using a router pointer pointing to already freed memory. Therefore this commit introduces the safe getter method orig_node_get_router(). Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 57f0c07c4d0da8bcc23e21c330fe9c7c5cf776b5 Author: Linus Lüssing Date: Mon Mar 14 22:43:33 2011 +0000 batman-adv: Simplify gw_check_election(), use gw_get_selected() gw_get_selected() can get us the desired orig_node directly, therefore reusing that function in gw_check_election(). Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 4c804850572f70a2350e4d1e79d6659392b07733 Author: Linus Lüssing Date: Mon Mar 14 22:43:30 2011 +0000 batman-adv: Make gateway_get_selected type safe Make the return value explicit instead of (void *). Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 551586292b39da6e4fbfbb5b96b57b68decfdab9 Author: Linus Lüssing Date: Mon Mar 14 22:43:27 2011 +0000 batman-adv: Move bonding / iface alternating router search to own functions This decreases the size of find_router() by outsourcing the router search for the bonding and interface alternating modes to their own sub functions. This shall make it easier to keep track of the correct refcounting later. Signed-off-by: Linus Lüssing Signed-off-by: Marek Lindner Signed-off-by: Sven Eckelmann commit 8dc16c6c04b1a82d00a8464ccc08e1fe17d0ff82 Author: Christoph Lameter Date: Fri Apr 15 14:48:16 2011 -0500 slub: Move debug handlign in __slab_free Its easier to read if its with the check for debugging flags. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit dc1fb7f43636754a4d06f7bdb8ea3269a7d71d6d Author: Christoph Lameter Date: Fri Apr 15 14:48:15 2011 -0500 slub: Move node determination out of hotpath If the node does not change then there is no need to recalculate the node from the page struct. So move the node determination into the places where we acquire a new slab page. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 01ad8a7bc226ddbbf90e4c15167d9e31a8d02930 Author: Christoph Lameter Date: Fri Apr 15 14:48:14 2011 -0500 slub: Eliminate repeated use of c->page through a new page variable __slab_alloc is full of "c->page" repeats. Lets just use one local variable named "page" for this. Also avoids the need to a have another variable called "new". Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 5f80b13ae45df7da6646d1881da186318e70b6b6 Author: Christoph Lameter Date: Fri Apr 15 14:48:13 2011 -0500 slub: get_map() function to establish map of free objects in a slab The bit map of free objects in a slab page is determined in various functions if debugging is enabled. Provide a common function for that purpose. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 33de04ec4cb80b6bd0782e88a64954e60bc15dc1 Author: Christoph Lameter Date: Fri Apr 15 14:48:12 2011 -0500 slub: Use NUMA_NO_NODE in get_partial A -1 was leftover during the conversion. Signed-off-by: Christoph Lameter Signed-off-by: Pekka Enberg commit 0c78641d7f677c8f420f1c302b4848135b207eb8 Author: David S. Miller Date: Sun Apr 17 00:55:20 2011 -0700 atl1c: Fix set-but-unused variable. The variable 'extra_size' is set but unused in atl1c_configure_tx(). Just kill it off. Signed-off-by: David S. Miller commit c96922c7beeb6246f36b89a1e8b61d99a435a780 Author: David S. Miller Date: Sun Apr 17 00:54:51 2011 -0700 atl1e: Fix set-but-unused variable. The variable 'tx_ring' is set but unused in atl1e_init_ring_resources(). Just kill it off. Signed-off-by: David S. Miller commit f8dfc4528b93ba9c9a191151f8888b4da1d1a45b Author: David S. Miller Date: Sun Apr 17 00:51:40 2011 -0700 atlx: Fix set-but-unused variable. The variable 'tpc' is set but unused in atl1_intr_tx(). Just kill it off. Signed-off-by: David S. Miller commit 7d038eb6dc0e256dbcac88d52972c4ac55a78fc5 Author: David S. Miller Date: Sun Apr 17 00:50:58 2011 -0700 bonding: Fix set-but-unused variable. The variable 'vlan_dev' is set but unused in bond_send_gratuitous_arp(). Just kill it off. Signed-off-by: David S. Miller commit 9e5ebaf852b96aaf4d7f63b920d8016b6784f088 Author: David S. Miller Date: Sun Apr 17 00:48:01 2011 -0700 atm: lec: Fix set-but-unused variables. The variable 'eth' is set but unused in lec_handle_bridge(). Also, the variable 'priv' is set but unused in lane_module_cleanup(). Just kill them off. Signed-off-by: David S. Miller commit d8f969e603b85931f25a1d50f3a7a01e2712c17a Author: David S. Miller Date: Sun Apr 17 00:46:45 2011 -0700 ax25: Fix set-but-unused variable. The variable 's' is set but unused in ax25_protocol_release(). Just kill it off. Signed-off-by: David S. Miller commit b3b8dc51c16cdaca0d191a340022093fb5c9f003 Author: David S. Miller Date: Sun Apr 17 00:15:22 2011 -0700 econet: Fix set-but-unused variable. #if 0'd out code for IP handling in aun_data_available() has been commented out since the beginning, which makes the variable "ip" set but not used. Kill it off as well as the stub code. Signed-off-by: David S. Miller commit 9bf9055eb716f85372c41b3fbc51f90bc7653740 Author: David S. Miller Date: Sun Apr 17 00:14:09 2011 -0700 decnet: Fix set-but-unused variable. "next" in dn_rebuild_zone() is set but not actually used, kill it off. Signed-off-by: David S. Miller commit 21f825e61878db94c7093c8407602fc89fc38ad9 Author: David S. Miller Date: Sun Apr 17 00:13:16 2011 -0700 pktgen: Fix set-but-unused variable. "iph" in pktgen_output_ipsec() is set but never actually used. Kill it off. Signed-off-by: David S. Miller commit 06091ed6b8ec726e6cbc7e40ee6b5aa2332cf381 Author: David S. Miller Date: Sun Apr 17 00:11:25 2011 -0700 atm: solos-pci: Fix set-but-unused variable. This is just a readback to entire completion of a register write, keep the readback but kill the unused variable. Signed-off-by: David S. Miller commit edb4dcb717d71f63c5147d7bef3014f96d192842 Author: David S. Miller Date: Sun Apr 17 00:10:17 2011 -0700 atm: idt77252: Fix set-but-unused variables. Two cases here: 1) idt77252_rx_raw() really does not make any use of the extracted PTI field of the atm header. 2) idt77252_collect_stat() only uses the register values in code which has been compiled out by a "NOTDEF" cpp test for more than 10 years. Just kill this NOTDEF code entirely, but keep the register reads in case they have side effects. Signed-off-by: David S. Miller commit e60c5e14fbfcaa54f430aad80b38763a403b2158 Author: David S. Miller Date: Sun Apr 17 00:07:55 2011 -0700 atm: he: Fix undefined sequence points. GCC complains in these queue index operations because we perform operations of the form: x = some_operation(++x); which is undefined. Replace with: x = some_operation(x + 1); which is well defined and provides the intended operation. Signed-off-by: David S. Miller commit dd182574d86e22faaaed37db79e3d54e773f29f7 Author: David S. Miller Date: Sun Apr 17 00:03:38 2011 -0700 atm: eni: Kill set-but-unused variables. The variable eni_dev is initialized but never subsequently used in these two functions. Signed-off-by: David S. Miller commit 26626f1172fb4f3f323239a6a5cf4e082643fa46 Author: Yang Ruirui Date: Sat Apr 16 19:17:48 2011 -0400 ext4: release page cache in ext4_mb_load_buddy error path Add missing page_cache_release in the error path of ext4_mb_load_buddy Signed-off-by: Yang Ruirui Signed-off-by: "Theodore Ts'o" Cc: stable@kernel.org commit a35d4e58737116fd4126c240a1faeb735839435e Author: Stephen Boyd Date: Thu Apr 7 19:50:10 2011 +0100 ARM: 6871/1: Use asm-generic/sizes.h Commit d232b12 (asm-generic headers: add sizes.h, 2011-01-15) introduced a generic sizes.h. Use that instead of the ARM specific version. Cc: Arnd Bergmann Signed-off-by: Stephen Boyd Signed-off-by: Russell King commit 8b3afe95e363dbd32bd9ddc6c2d562944f5350c5 Author: Michał Mirosław Date: Fri Apr 15 04:50:50 2011 +0000 net: gianfar: convert to hw_features Note: I bet that gfar_set_features() don't really need a full reset. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit c8c64cff2c88b17fdd7402dd06288d7415896430 Author: Michał Mirosław Date: Fri Apr 15 04:50:49 2011 +0000 net: mlx4: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 569e146396cb3b378d2957b94671bf30cd777c67 Author: Michał Mirosław Date: Fri Apr 15 04:50:49 2011 +0000 net: forcedeth: convert to hw_features This also fixes a race around np->txrxctl_bits while changing RXCSUM offload. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit c88fcb3d8265cf473c73bc147a2aa21ae03abf67 Author: Michał Mirosław Date: Fri Apr 15 04:50:49 2011 +0000 net: dm9000: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6de240b7f714d63ca2a53d52c7eefb37e7eb3f1b Author: Michał Mirosław Date: Fri Apr 15 04:50:49 2011 +0000 net: spider_net: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 911cb193f3eb0370f20fbba712211e55ffede4de Author: Rob Landley Date: Fri Apr 15 02:26:25 2011 +0000 net: minor cleanup to net_namespace.c. Inline a small static function that's only ever called from one place. Signed-off-by: Rob Landley Reviewed-by: Jiri Pirko Signed-off-by: David S. Miller commit c3968a857a6b6c3d2ef4ead35776b055fb664d74 Author: Daniel Walter Date: Wed Apr 13 21:10:57 2011 +0000 ipv6: RTA_PREFSRC support for ipv6 route source address selection [ipv6] Add support for RTA_PREFSRC This patch allows a user to select the preferred source address for a specific IPv6-Route. It can be set via a netlink message setting RTA_PREFSRC to a valid IPv6 address which must be up on the device the route will be bound to. Signed-off-by: Daniel Walter Signed-off-by: David S. Miller commit bd015928bb1713691068c4d0d159afccbaf0f8c0 Author: Daniel Walter Date: Wed Apr 13 21:09:25 2011 +0000 ipv6: ignore looped-back NA while dad is running [ipv6] Ignore looped-back NAs while in Duplicate Address Detection If we send an unsolicited NA shortly after bringing up an IPv6 address, the duplicate address detection algorithm fails and the ip stays in tentative mode forever. This is due a missing check if the NA is looped-back to us. Signed-off-by: Daniel Walter Signed-off-by: David S. Miller commit 1390b01b26300d42662e436d8f1d307c4e0903c7 Author: Jayamohan Kallickal Date: Fri Mar 25 14:24:01 2011 -0700 [SCSI] be2iscsi: Fix for proper setting of FW There was a bug in setting up type and dmsg for FW Signed-off-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit 0b1d3cbf51f75eaaabdb904f02362368487e2aa7 Author: Jayamohan Kallickal Date: Fri Mar 25 14:24:00 2011 -0700 [SCSI] be2iscsi: check boot_kset is created before destroying it Signed-off-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit 91eefa894add1617200c70d3886773e608de7a03 Author: Jayamohan Kallickal Date: Fri Mar 25 14:23:59 2011 -0700 [SCSI] be2iscsi: Set a timeout to FW Signed-off-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit 0ca43cc01ed6778ce7a870573dbbd1c6b44bbab2 Author: Jayamohan Kallickal Date: Fri Mar 25 14:23:58 2011 -0700 [SCSI] be2iscsi: Modifying Maintainer's emailid - Modifying Maintainer's emailid to emulex as Emulex has acquired Serverengines Signed-off-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit 255fa9a3cce3e344ff245cf3b4fbb738bd7e3f48 Author: Jayamohan Kallickal Date: Fri Mar 25 14:23:57 2011 -0700 [SCSI] be2iscsi: change in copyright notice - Modifying copyright year to 2011 - Replacing Serverengines with Emulex as Serverengines Corp has been acquired by Emulex Corp Signed-off-by: Jayamohan Kallickal Signed-off-by: James Bottomley commit b4ce6a285b65be4fb858728b3bbe9011242b769f Author: Florian Tobias Schandinat Date: Fri Apr 15 21:35:25 2011 +0000 viafb: fix OLPC DCON refresh rate This patch fixes a regression introduced by fd3cc69848b7e1873e5f12bbcdd572b20277ecf3a "viafb: remove duplicated clock storage" caused by an incosistent mode which pretended to have a higher refresh rate than it actually had. The wrong refresh rate resulted in a calculated higher pixclock which the OLPC DCON could not handle. By reducing the refresh rate to 50Hz we get close to the old pixclock which makes the OLPC display usable again. Minor other adjustments are needed as 60Hz is assumed to be a safe value which is not true for OLPC DCON. This is no problem as we only support 1200x900 on the OLPC. Signed-off-by: Florian Tobias Schandinat Reported-by: Daniel Drake commit deb1cb63d220fc6f24baef39a0ebb48e598f617b Author: Shyam Iyer Date: Sat Feb 26 01:59:44 2011 -0500 [SCSI] Log thin provisioning threshold event At least log the message that we received a THIN PROVISIONING SOFT THRESHOLD REACHED Unit Attention. Also added it to unit attention decodes. Signed-off-by: Shyam Iyer Signed-off-by: James Bottomley commit 2e7bad5f34b5beed47542490c760ed26574e38ba Author: James Bottomley Date: Fri Apr 15 08:55:47 2011 -0700 [PARISC] wire up syncfs syscall Cc: stable@kernel.org Signed-off-by: James Bottomley commit a71aae4cec120ee85cf32608fca40a4605461214 Author: James Bottomley Date: Fri Apr 15 08:55:46 2011 -0700 [PARISC] wire up the fhandle syscalls Cc: stable@kernel.org Signed-off-by: James Bottomley commit c3f957a22eca106bd28136943305b390b4337ebf Author: James Bottomley Date: Fri Apr 15 08:55:45 2011 -0700 [PARISC] wire up clock_adjtime syscall Cc: stable@kernel.org Signed-off-by: James Bottomley commit 1824074b07ee66fa0f714e08579ad85075132d7b Author: James Bottomley Date: Fri Apr 15 08:55:44 2011 -0700 [PARISC] wire up fanotify syscalls Cc: stable@kernel.org Signed-off-by: James Bottomley commit b7d45818444a31948cfc7849136013a0ea54b2fb Author: James Bottomley Date: Fri Apr 15 12:37:22 2011 -0500 [PARISC] prevent speculative re-read on cache flush According to Appendix F, the TLB is the primary arbiter of speculation. Thus, if a page has a TLB entry, it may be speculatively read into the cache. On linux, this can cause us incoherencies because if we're about to do a disk read, we call get_user_pages() to do the flush/invalidate in user space, but we still potentially have the user TLB entries, and the cache could speculate the lines back into userspace (thus causing stale data to be used). This is fixed by purging the TLB entries before we flush through the tmpalias space. Now, the only way the line could be re-speculated is if the user actually tries to touch it (which is not allowed). Signed-off-by: James Bottomley commit d7dd2ff11b7fcd425aca5a875983c862d19a67ae Author: James Bottomley Date: Thu Apr 14 18:25:21 2011 -0500 [PARISC] only make executable areas executable Currently parisc has the whole kernel marked as RWX, meaning any kernel page at all is eligible to be executed. This can cause a theoretical problem on systems with combined I/D TLB because the act of referencing a page causes a TLB insertion with an executable bit. This TLB entry may be used by the CPU as the basis for speculating the page into the I-Cache. If this speculated page is subsequently used for a user process, there is the possibility we will get a stale I-cache line picked up as the binary executes. As a point of good practise, only mark actual kernel text pages as executable. The same has to be done for init_text pages, but they're converted to data pages (and the I-Cache flushed) when the init memory is released. Signed-off-by: James Bottomley commit b54cd0d5053633373cd3c374aa203024cbf125a0 Author: Meelis Roos Date: Mon Mar 21 22:47:15 2011 +0200 [PARISC] fix pacache .size with new binutils Fix style of flush_user_dcache_range_asm procedure declaration in arch/parisc/kernel/pacache.s to be consistent with other assembly procedures. Signed-off-by: Meelis Roos Signed-off-by: James Bottomley commit 9f3aedf573dd034d59e7eb6c4ee97648d5be8fc6 Author: Konrad Rzeszutek Wilk Date: Fri Apr 15 11:50:34 2011 -0400 xen/blkback: Change fast_flush_area to xen_blkbk_unmap, and tweak xen_blk_map_seg. The previous name ('fast_flush_area') had nothing to do with what it does right now. Changing the names so that the code dealing with mapping pages in and out of the guest is called xen_blkbk_[map|unmap]. Signed-off-by: Konrad Rzeszutek Wilk commit 976222e05ea5a9959ccf880d7a24efbf79b3c6cf Author: Konrad Rzeszutek Wilk Date: Fri Apr 15 11:38:29 2011 -0400 xen/blkback: Move the check for misaligned I/O higher. We move it up higher to be in same loop that actually computes the sector number. This way, all of the code that deals with verifying that the request is correct is all done before we do any of the page mapping, I/O submission, etc. Signed-off-by: Konrad Rzeszutek Wilk commit 1a95fe6e42cefc52c62c471ad87d7fe8643231df Author: Konrad Rzeszutek Wilk Date: Fri Apr 15 11:35:13 2011 -0400 xen/blkback: Shuffle code around (vbd_translate moved higher). We take out the chunk of code dealing with mapping to the guest of pages into the xen_blk_map_buf code. And we also move the vbd_translate to be done much earlier. Signed-off-by: Konrad Rzeszutek Wilk commit b0aef17924a06646403cae8eecf6c73219a63c19 Author: Konrad Rzeszutek Wilk Date: Fri Apr 15 10:58:05 2011 -0400 xen/blkback: Cleanup move the code a bit around. Moving it so that the code that 'fast_flush_area' code is close to the code that deals with it so that the reader won't lose focus. Signed-off-by: Konrad Rzeszutek Wilk commit 7708992616487c00d5ca8ed7612111180d8e1b68 Author: Konrad Rzeszutek Wilk Date: Fri Apr 15 10:51:27 2011 -0400 xen/blkback: Seperate the bio allocation and the bio submission. We seperate the bio allocation (bio_alloc) from the bio submission so that the error paths are much easier, and also so that the bio submission can be done in one tight loop. It also makes the plug/unplug calls much much easier. Signed-off-by: Konrad Rzeszutek Wilk commit 1e2795a1191bb5ff05e80d77feffd51ac875c06d Author: Artem Bityutskiy Date: Tue Apr 5 13:24:58 2011 +0300 kbuild: move KALLSYMS_EXTRA_PASS from Kconfig to Makefile At the moment we have the CONFIG_KALLSYMS_EXTRA_PASS Kconfig switch, which users can enable or disable while configuring the kernel. This option is then used by 'make' to determine whether an extra kallsyms pass is needed or not. However, this approach is not nice and confusing, and this patch moves CONFIG_KALLSYMS_EXTRA_PASS from Kconfig to Makefile instead. The rationale is below. 1. CONFIG_KALLSYMS_EXTRA_PASS is really about the build time, not run-time. There is no real need for it to be in Kconfig. It is just an additional work-around which should be used only in rare cases, when someone breaks kallsyms, so Kbuild/Makefile is much better place for this option. 2. Grepping CONFIG_KALLSYMS_EXTRA_PASS shows that many defconfigs have it enabled, probably not because they try to work-around a kallsyms bug, but just because the Kconfig help text is confusing and does not really make it clear that this option should not be used unless except when kallsyms is broken. 3. And since many people have CONFIG_KALLSYMS_EXTRA_PASS enabled in their Kconfig, we do might fail to notice kallsyms bugs in time. E.g., many testers use "make allyesconfig" to test builds, which will enable CONFIG_KALLSYMS_EXTRA_PASS and kallsyms breakage will not be noticed. To address that, this patch: 1. Kills CONFIG_KALLSYMS_EXTRA_PASS 2. Changes Makefile so that people can use "make KALLSYMS_EXTRA_PASS=1" to enable the extra pass if needed. Additionally, they may define KALLSYMS_EXTRA_PASS as an environment variable. 3. By default KALLSYMS_EXTRA_PASS is disabled and if kallsyms has issues, "make" should print a warning and suggest using KALLSYMS_EXTRA_PASS Signed-off-by: Artem Bityutskiy [mmarek: Removed make help text, is not necessary] Signed-off-by: Michal Marek commit 71a83ec7da8910f374a1c82e96d2704aa45d9238 Author: Artem Bityutskiy Date: Tue Apr 5 13:24:57 2011 +0300 Kconfig: improve KALLSYMS_ALL documentation Dumb users like myself are not able to grasp from the existing KALLSYMS_ALL documentation that this option is not what they need. Improve the help message and make it clearer that KALLSYMS is enough in the majority of use cases, and KALLSYMS_ALL should really be used very rarely. Signed-off-by: Artem Bityutskiy Signed-off-by: Michal Marek commit 2b2112f617e8ca600ec24271c93bbd49aa2acce4 Author: Yann E. MORIN Date: Thu Feb 24 19:36:43 2011 +0100 kconfig: get rid of unused flags Now that we detect recusrion of sourced files, get rid of now unused flags. Regenerate lex.zconf.c_shipped file. Signed-off-by: "Yann E. MORIN" Signed-off-by: Michal Marek commit f094f8a1b2737a4f3ca46742ff9aaf460d39285e Author: Yann E. MORIN Date: Thu Feb 24 19:36:42 2011 +0100 kconfig: allow multiple inclusion of the same file Allow 'source'ing the same file from multiple places (eg. from different files, and/or under different conditions). To avoid circular inclusion, scan the source-ancestry of the current file, and abort if already sourced in this branch. Regenerate the pre-parsed lex.zconf.c_shipped file. Signed-off-by: "Yann E. MORIN" Signed-off-by: Michal Marek commit 0fd08060f1bb9d7d0d712f39257dc3574a632271 Author: Tomi Valkeinen Date: Fri Apr 8 09:30:27 2011 +0300 OMAP: DSS2: fix panel Kconfig dependencies All DPI panels were missing dependency to OMAP2_DSS_DPI. Add the dependency. Signed-off-by: Tomi Valkeinen commit 0b41136c0d2f544b9b771643f849f82ed86f765e Author: Tomi Valkeinen Date: Fri Apr 15 10:42:59 2011 +0300 OMAP: DSS2: DSI: Fix DSI PLL power bug OMAP3630 has a HW bug causing DSI PLL power command POWER_ON_DIV (0x3) to not work properly. The bug prevents us from enabling DSI PLL power only to HS divider block. This patch adds a dss feature for the bug and converts POWER_ON_DIV requests to POWER_ON_ALL (0x2). Signed-off-by: Tomi Valkeinen commit 6553b2105c8871dae8dfff244440e793f3a6bdb9 Author: Archit Taneja Date: Thu Mar 31 13:23:35 2011 +0530 OMAP: DSS2: Fix: Return correct lcd clock source for OMAP2/3 dss.lcd_clk_source is set to the default value DSS_CLK_SRC_FCK at dss_init. For OMAP2 and OMAP3, the dss.lcd_clk_source should always be the same as dss.dispc_clk_source. The function dss_get_lcd_clk_source() always returns the default value DSS_CLK_SRC_FCK for OMAP2/3. This leads to wrong clock dumps when dispc_clk_source is not DSS_CLK_SRC_FCK. Correct this function to always return dss.dispc_clk_source for OMAP2/3. Signed-off-by: Archit Taneja Signed-off-by: Tomi Valkeinen commit 4eb68edb7d21aff81765a065680270693c23fbfc Author: Tomi Valkeinen Date: Mon Apr 4 10:02:53 2011 +0300 OMAP: DSS2: DSI: fix dsi_dump_clocks() On OMAP4, reading DSI_PLL_CONFIGURATION2 register requires the L3 clock (CIO_CLK_ICG) to PLL. Currently dsi_dump_clocks() tries to read that register without enabling the L3 clock, leading to crash if DSI is not in use. The status of the bit being read from DSI_PLL_CONFIGURATION2 is available from dsi_clock_info->use_sys_clk, so we can avoid the whole problem by just using that. Signed-off-by: Tomi Valkeinen commit ae038af12c2bc0859279a1a62b5f8cb0ef00f5f8 Author: Tomi Valkeinen Date: Thu Apr 7 15:28:47 2011 +0300 OMAP: DSS2: DSI: fix use_sys_clk & highfreq use_sys_clk and highfreq fields in dsi.current_cinfo were never set. Luckily they weren't used anywhere so it didn't cause any problems. This patch fixes those fields and they are now set at the same time as the rest of the fields. Signed-off-by: Tomi Valkeinen commit 5b17b077eb069365ac9508dd0be6e09e0b604bd2 Author: Andrew Morton Date: Thu Apr 14 15:06:13 2011 -0700 ALSA: hda - sound/pci/hda/hda_codec.c: fix warning sound/pci/hda/hda_codec.c: In function 'snd_hda_get_connections': sound/pci/hda/hda_codec.c:332: warning: unused variable 'j' Signed-off-by: Andrew Morton Signed-off-by: Takashi Iwai commit eb8aa72d4e8756bde74d5f22bdd968ee6131069a Author: Ben Hutchings Date: Thu Apr 14 23:23:45 2011 -0700 rndis_host: Quirky devices are still 'point-to-point' My changes in commit 4d42d417be75d750b82798922b6e775915e11bce were written some time before the introduction of FLAG_POINTTOPOINT, so didn't include that flag in the new driver_info. Change the new driver_info to be consistent. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 5d30530efbb811f875786d788ae1c5d79547c3a4 Author: David Decotigny Date: Wed Apr 13 15:22:31 2011 +0000 net-bonding: Adding support for throughputs larger than 65536 Mbps This updates the bonding driver to support v2.6.27-rc3 enhancements (b11f8d8c aka. "ethtool: Expand ethtool_cmd.speed to 32 bits") which allow to encode the Mbps link speed on 32-bits (Max 4 Pbps) instead of 16 (Max 65536 Mbps). This patch also attempts to compact struct slave by reordering its fields. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit 65cce19c07756c2b2b51595c967dda93b0727027 Author: David Decotigny Date: Wed Apr 13 15:22:30 2011 +0000 net-bonding: Fix minor/cosmetic type inconsistencies The __get_link_speed() function returns a u16 value which was stored in a u32 local variable. This patch uses the return value directly, thus fixing that minor type consistency. The 'duplex' field in struct slave being encoded on 8 bits, to be more consistent we use a u8 integer (instead of u16) whenever we copy it to local variables. Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit d30ee670f25ea8f265a2804e2a0a53804cac5185 Author: David Decotigny Date: Wed Apr 13 15:22:29 2011 +0000 net-bonding: Fix minor sparse complaints This gets rid of minor sparse complaints: drivers/net/bonding/bond_main.c:4361:4: warning: do-while statement is not a compound statement drivers/net/bonding/bond_main.c:243:12: warning: symbol 'bond_mode_name' was not declared. Should it be static? Signed-off-by: David Decotigny Signed-off-by: David S. Miller commit ef9c7ab4a97d53d9cb4912d13e142f52a30ecd54 Author: stephen hemminger Date: Thu Apr 14 05:51:52 2011 +0000 qlge: make nic_operations struct const The struct nic_operations is just function pointers and should be declared const for added security. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6c8c2513c86c589a819c161c9abbdea2a3d56f5e Author: stephen hemminger Date: Thu Apr 14 05:50:12 2011 +0000 sfc: make function tables const The phy, mac, and board information structures should be const. Since tables contain function pointer this improves security (at least theoretically). Compile tested only. Signed-off-by: Stephen Hemminger Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 44f4d5a27ee63ec80d498e0d0673605d5ce1427d Author: Rémi Denis-Courmont Date: Tue Apr 12 23:27:36 2011 +0000 Phonet: convert bound sockets hash list to RCU This gets rid of the last spinlock in the Phonet stack proper. Signed-off-by: Rémi Denis-Courmont Signed-off-by: David S. Miller commit fce55922f5299a04c0a56b170a141fab34f13465 Author: Allan, Bruce W Date: Wed Apr 13 13:09:10 2011 +0000 ethtool: allow custom interval for physical identification When physical identification of an adapter is done by toggling the mechanism on and off through software utilizing the set_phys_id operation, it is done with a fixed duration for both on and off states. Some drivers may want to set a custom duration for the on/off intervals. This patch changes the API so the return code from the driver's entry point when it is called with ETHTOOL_ID_ACTIVE can specify the frequency at which to cycle the on/off states, and updates the drivers that have already been converted to use the new set_phys_id and use the synchronous method for identifying an adapter. The physical identification frequency set in the updated drivers is based on how it was done prior to the introduction of set_phys_id. Compile tested only. Also fixes a compiler warning in sfc. v2: drivers do not return -EINVAL for ETHOOL_ID_ACTIVE v3: fold patchset into single patch and cleanup per Ben's feedback Signed-off-by: Bruce Allan Cc: Ben Hutchings Cc: Sathya Perla Cc: Subbu Seetharaman Cc: Ajit Khaparde Cc: Michael Chan Cc: Eilon Greenstein Cc: Divy Le Ray Cc: Don Fry Cc: Jon Mason Cc: Solarflare linux maintainers Cc: Steve Hodgson Cc: Stephen Hemminger Cc: Matt Carlson Acked-by: Jon Mason Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 140363500ddadad0c09cb512cc0c96a4d3efa053 Author: Mike Christie Date: Thu Apr 14 23:50:57 2011 -0400 iscsi_ibft: search for broadcom specific ibft sign (v2) Broadcom iscsi offload firmware uses a non standard ibft sign of "BIFT". When we added support for boot, the anaconda team and I were using older firmware (I guess 4 years old), so boot does not work on current cards. This patch modifies the ibft search code to search for "BIFT" along with the other possible values. Broadcom has tested the patch and reported it works with their firmware. Mike has tested Chelsio and Intel cards. [v2: - Add ACPI_SIG_IBFT to ibft_signs - replace break with goto in find_ibft_in_mem innner loop.] Signed-off-by: Mike Christie Signed-off-by: Peter Jones Signed-off-by: Konrad Rzeszutek Wilk commit 0faa8cca883bbc6a0919e3c89128672659b75820 Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:58:19 2011 -0400 xen/blkback: remove per-queue plugging commit 7eaceaccab5f40bbfda044629a6298616aeaed50 ("block: remove per-queue plugging") added two new interfaces to plug and unplug: blk_start_plug and blk_finish_plug. Lets use those. Signed-off-by: Konrad Rzeszutek Wilk commit 2e9977c21f7679d5f616132ae1f7857e932ccd19 Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:42:07 2011 -0400 xen/blkback: Fix checkpatch warnings in blkback.c Signed-off-by: Konrad Rzeszutek Wilk commit d6091b217dd4fdabc4a8cd6fa61775f1e3eb6efe Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:33:30 2011 -0400 xen/blkback: Fix checkpatch warnings of xenbus.c Signed-off-by: Konrad Rzeszutek Wilk commit e5f4b3c498623fc3d83f6d92e00a2b2dbf500cd0 Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:27:29 2011 -0400 xen/blkback: Fix interface.c checkpatch warnings .. except + sring_x86_64 = (struct blkif_x86_64_sring *)blkif->blk_ring_area->addr; WARNING: line over 80 characters + BACK_RING_INIT(&blkif->blk_rings.x86_64, sring_x86_64, PAGE_SIZE); as breaking them up really does not help that much. Signed-off-by: Konrad Rzeszutek Wilk commit 3c64b58cd614c976dcb19e16fa59ab620b3fe130 Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:24:45 2011 -0400 xen/blkback: Fix checkpatch warnings in vbd.c Signed-off-by: Konrad Rzeszutek Wilk commit 5489377ce40d52fb722dcd811617114cebad7bba Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:21:50 2011 -0400 xen/blkback: blkif->struct blkif_st checkpatch.pl suggested that we don't use the typdef in common.h and this triggered this avalanche of patches. Signed-off-by: Konrad Rzeszutek Wilk commit a1397fa3090c25c6c51c04b4101f2786d16b615f Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 17:05:23 2011 -0400 xen/blkback: Add some comments. Signed-off-by: Konrad Rzeszutek Wilk commit 314146e515710f8a7d7eaf7a58b7ed590c9c14c3 Author: Tom Goetz Date: Thu Mar 17 12:14:29 2011 -0400 xen/blkback: Fix the WRITE_BARRIER The WRITE_BARRIER was missing the REQ_WRITE option. This was causing the blktap to die. Signed-off-by: Tom Goetz Signed-off-by: Konrad Rzeszutek Wilk commit a742b02c75e6e76bd0833f9b6e702f1be7d7e008 Author: Konrad Rzeszutek Wilk Date: Mon Mar 14 12:41:26 2011 -0400 xen/blkback: Use kzalloc's, and GFP_KERNEL for data structures. The patch titled:"xen/blkback: Use 'vzalloc' for page arrays and pre-allocate pages." allocates the structures and its member variables using the 'vzalloc'. Daniel Stodden pointed out that vzalloc is good when we use big number of pages - while these are at the max two pages. We can do this using kzalloc. Also the GFP_HIGHMEM does not work properly with Xen, so take that out. We will have to revisit this when a "get_empty_pages_and_pagevec" type API shows up to leverage that. BugLink: http://mid.gmane.org/1299898639.11681.227.camel@agari.van.xensource.com CC: Daniel Stodden Signed-off-by: Konrad Rzeszutek Wilk commit 5dc03639cc903f887931831d69895facb5260f4b Author: Konrad Rzeszutek Wilk Date: Tue Mar 1 16:46:45 2011 -0500 xen/blkback: Utilize the M2P override mechanism for GNTMAP_host_map Instead of doing copy grants lets do mapping grants using the M2P(and P2M) override mechanism. Signed-off-by: Konrad Rzeszutek Wilk Conflicts: drivers/xen/blkback/blkback.c commit 464fb419e17083a18b636c9f4714fc49ef6857d2 Author: Konrad Rzeszutek Wilk Date: Tue Mar 1 16:26:10 2011 -0500 xen/blkback: Use 'vzalloc' for page arrays and pre-allocate pages. Previously we would allocate the array for page using 'kmalloc' which we can as easily do with 'vzalloc'. The pre-allocation of pages was done a bit differently in the past - it used to be that the balloon driver would export "alloc_empty_pages_and_pagevec" which would have in one function created an array, allocated the pages, balloned the pages out (so the memory behind those pages would be non-present), and provide us those pages. This was OK as those pages were shared between other guest and the only thing we needed was to "swizzel" the MFN of those pages to point to the other guest MFN. We can still "swizzel" the MFNs using the M2P (and P2M) override API calls, but for the sake of simplicity we are dropping the balloon API calls. We can return to those later on. Signed-off-by: Konrad Rzeszutek Wilk commit c35950bfa9abaaf16548a287a8d5d782a361414f Author: Konrad Rzeszutek Wilk Date: Tue Mar 1 16:22:28 2011 -0500 xen/blkback: Union the blkif_request request specific fields Following in the steps of patch: "xen: Union the blkif_request request specific fields" this patch changes the blkback. Per the original patch: "Prepare for extending the block device ring to allow request specific fields, by moving the request specific fields for reads, writes and barrier requests to a union member." Cc: Owen Smith Signed-off-by: Konrad Rzeszutek Wilk commit e8e28871edf0d0adb0bd7e597c044cbaf7a7f137 Author: Konrad Rzeszutek Wilk Date: Fri Feb 25 10:51:29 2011 -0500 xen/blkback: Move global/static variables into struct xen_blkbk. Bundle the lot of discrete variables into a single structure. This is based on what was done in the xen-netback driver: xen: netback: Move global/static variables into struct xen_netbk. (094944631cc5a9d6e623302c987f78117c0bf7ac) Signed-off-by: Konrad Rzeszutek Wilk commit efe08a3eecf15ab022afba48c691d02c7de2fbbb Author: Jan Beulich Date: Fri Feb 5 14:19:33 2010 -0500 xen/blkback: simplify address translations Cherry-pick and modified from 69d64727c42eecd47fdf82c15a54474d21a4012a ("blkback/blktap2: simplify address translations"): "There are quite a number of places where e.g. page->va->page translations happen. Besides yielding smaller code (source and binary), a second goal is to make it easier to determine where virtual addresses of pages allocated through alloc_empty_pages_and_pagevec() are really used (in turn in order to determine whether using highmem pages would be possible there)." The second goal is not the purpose of this patch - it is just to make it easier to read the code. linux-2.6-pvops: * Stripped drivers/xen/gntdev/* * Stripped drivers/xen/netback/* [v2: Stripped blktap off] Signed-off-by: Jan Beulich Signed-off-by: Daniel Stodden Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Konrad Rzeszutek Wilk commit bc0c081b0e7a4afc4d2c7bc0666f5cd169e96814 Author: Konrad Rzeszutek Wilk Date: Fri Feb 25 10:02:39 2011 -0500 xen/blkback: Update to use blkdev_get_by_dev instead of open_by_devnum. The API for opening a block device has changed since 2.6.32. The correct function to open a device is blkdev_get_by_dev. commit 248e9f7539f8351cd857d12a74bd52133a3a900f Author: Konrad Rzeszutek Wilk Date: Thu Feb 24 17:22:41 2011 -0500 xen/blkback: Replace WRITE_BARRIER with (REQ_FLUSH | REQ_FUA) TODO: Double check xen-blkfront.c commit 313d7b003ceceb797e8c0d18ab085ed0638b4aff Author: Keir Fraser Date: Wed Nov 24 22:08:20 2010 -0800 blkback: Fix CVE-2010-3699 A guest can cause the backend driver to leak a kernel thread. Such leaked threads hold references to the device, whichmakes the device impossible to tear down. If shut down, the guest remains a zombie domain, the xenwatch process hangs, and most xm commands will stop working. This patch tries to do the following for blkback: - identify/extract idempotent teardown operations, - add/move the invocation of said teardown operation right before we're about to allocate new resources in the Connected states. [ linux-2.6.18-xen.hg 59f097ef181b ] Signed-off-by: Laszlo Ersek Signed-off-by: Keir Fraser Signed-off-by: Jeremy Fitzhardinge commit a81135d90bf176e6139c352c7b96c03d00131836 Author: K. Y. Srinivasan Date: Mon Aug 16 13:43:06 2010 -0700 xen/blkback: Print additional information when a vbd is resized. Signed-off-by: K. Y. Srinivasan Signed-off-by: Jeremy Fitzhardinge commit cbf462908c8080f47c2a3300072877589dd1275f Author: Chris Lalancette Date: Wed Jul 21 12:41:45 2010 -0700 xen/blkback: Flush blkback data when connecting. First cut at flushing blkback data when first connecting blkback. This should avoid the pygrub issues we are experiencing in (RedHat bugzilla) 466681. [ 2.6.18-xen.hg commit 63b4d7f56688 ] Signed-off-by: Chris Lalancette Signed-off-by: Jeremy Fitzhardinge commit 98e036a356747cfaa225478b1e4875e190257b09 Author: Jeremy Fitzhardinge Date: Thu Mar 18 15:35:05 2010 -0700 xen/blkback: add accessor for xenbus backend device Since backend_info is hidden away now. Signed-off-by: Jeremy Fitzhardinge commit 2ccbfe26c106a1a93a402567b7853c1484c4a0b0 Author: K. Y. Srinivasan Date: Thu Mar 11 13:39:50 2010 -0800 xen/blkback: Propagate changed size of VBDs Support dynamic resizing of virtual block devices. This patch supports both file backed block devices as well as physical devices that can be dynamically resized on the host side. Signed-off-by: K. Y. Srinivasan Signed-off-by: Jeremy Fitzhardinge commit 5cf6e4f6f6d5549904db6ecb3ffd5b8f71f41250 Author: Jeremy Fitzhardinge Date: Thu Feb 11 16:07:31 2010 -0800 xen/blkback: use drv_get/set_drvdata rather than directly accessing driver_data. Direct driver_data access is obsolete and will disappear. Signed-off-by: Jeremy Fitzhardinge commit e7579a99b598f8e4a2b4df4854fbda2cc961bb02 Author: Ian Campbell Date: Thu Dec 3 21:56:18 2009 +0000 xen: rename blkbk module xen-blkback. blkbk is rather generic for a modular distro style kernel. Signed-off-by: Ian Campbell Cc: Jeremy Fitzhardinge Signed-off-by: Jeremy Fitzhardinge commit 8770b2683f9f98d4c1d6caf2e28f625592bba4f3 Author: Konrad Rzeszutek Wilk Date: Thu Oct 8 13:23:09 2009 -0400 Fix compile warnings: ignoring return value of 'xenbus_register_backend' .. We neglect to check the return value of xenbus_register_backend and take actions when that fails. This patch fixes that and adds code to deal with those type of failures. Signed-off-by: Konrad Rzeszutek Wilk Signed-off-by: Jeremy Fitzhardinge commit afd91d07ff72919071e37086c0664384b3875688 Author: Jeremy Fitzhardinge Date: Tue Sep 15 14:12:37 2009 -0700 xen/blkback: little cleanups Remove unused local prototype; group headers. Signed-off-by: Jeremy Fitzhardinge commit 0660c7dbf228a06345392a64ebb43734875a3b91 Author: Jeremy Fitzhardinge Date: Wed Sep 9 15:15:16 2009 -0700 xen/blkback: remove spurious debug output noise Signed-off-by: Jeremy Fitzhardinge commit 05d43865ddc00bdb33d12c8e9d9f176ed5d3797b Author: Jeremy Fitzhardinge Date: Mon Jun 29 14:58:45 2009 -0700 xen/blkback: deal with hardsect_size to logical_block_size rename Signed-off-by: Jeremy Fitzhardinge commit 690f1b63b2db88330834d8482f3b125990c8e609 Author: Jeremy Fitzhardinge Date: Sat Mar 21 23:34:19 2009 -0700 block: export blk_get/put_queue for blkback Impact: build fix I'm not sure if blkback should be using these functions, but in the meantime export them to allow blkback to be a module. Signed-off-by: Jeremy Fitzhardinge commit 8270b45bc8a45eef4a224bd256bd0997d4fd857e Author: Keir Fraser Date: Fri Mar 6 08:29:15 2009 +0000 blkback: Fix potential resource leak. commit dd3672424caa7b302433635831afbb6787476b96 Author: Jeremy Fitzhardinge Date: Mon Feb 9 16:39:58 2009 -0800 xen/blkback: don't include xen/evtchn.h It's a user-mode header for users of /dev/evtchn Signed-off-by: Jeremy Fitzhardinge commit 8812293323a79134e06c3bf82eba1e217d23382e Author: Jeremy Fitzhardinge Date: Mon Feb 9 12:05:51 2009 -0800 xen-blkback-porting commit 4d05a28db56225bbab5e1321d818f318e92a4657 Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 18:25:47 2011 -0400 xen: add blkback support Signed-off-by: Ian Campbell Signed-off-by: Jeremy Fitzhardinge Signed-off-by: Konrad Rzeszutek Wilk Conflicts: drivers/xen/Makefile commit 21d8c49e01a0c1c6eb6c750cd04110db4a539284 Author: David S. Miller Date: Thu Apr 14 14:49:37 2011 -0700 ipv4: Call fib_select_default() only when actually necessary. fib_select_default() is a complete NOP, and completely pointless to invoke, when we have no more than 1 default route installed. And this is far and away the common case. So remember how many prefixlen==0 routes we have in the routing table, and elide the call when we have no more than one of those. This cuts output route creation time by 157 cycles on Niagara2+. In order to add the new int to fib_table, we have to correct the type of ->tb_data[] to unsigned long, otherwise the private area will be unaligned on 64-bit systems. Signed-off-by: David S. Miller Reviewed-by: Eric Dumazet commit 26954c7f26068b6ced108806fdd39aee5cd54e6f Author: Gustavo F. Padovan Date: Thu Apr 14 17:57:26 2011 -0300 Bluetooth: Fix lockdep warning in L2CAP Fix a regression from the L2CAP "rewrite" patches. Purge the tx_q already happens on l2cap_chan_del() so we don't need it at l2cap_disconnect_req(). Signed-off-by: Gustavo F. Padovan commit 62f3a2cfb1891c070631e496eeea852e949ea8bb Author: Gustavo F. Padovan Date: Thu Apr 14 18:34:34 2011 -0300 Bluetooth: Fix another locking unbalance l2cap_get_sock_by_scid was changed to not lock the socket anymore, but I forgot to change all the users of this function. Signed-off-by: Gustavo F. Padovan commit 98346f7db014614a4814eb60639f651f8bbc591d Author: Greg Kroah-Hartman Date: Thu Apr 14 13:42:46 2011 -0700 Revert "usb: usb_storage: do not align length of request for CBW to maxp size" This reverts commit 806e8f8fcc27e1753947bd9f059ba2316cf8f92a. To quote Alan Stern: The necessity for this patch has been under discussion. It turns out the UDC that Mian has been working on and Felipe's UDC have contradictory requirements. Mian's UDC driver wants a bulk-OUT transfer length to be shorter than the maxpacket size if a short packet is expected, whereas Felipe's UDC hardware always needs bulk-OUT transfer lengths to be evenly divisible by the maxpacket size. Mian has agreed to go back over the driver to resolve this conflict. This means we probably will not want this patch after all. (In fact, we may ultimately decide to change the gadget framework to require that bulk-OUT transfer lengths _always_ be divisible by the maxpacket size -- only the g_file_storage and g_mass_storage gadgets would need to be changed.) Cc: Mian Yousaf Kaukab Cc: Michal Nazarewicz Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 34a0a2025c8bddc6505b56a58ef2e7333a4e4165 Author: Senthil Balasubramanian Date: Thu Apr 14 16:41:30 2011 +0530 ath: Add a missing world regulatory domain 0x6C Some customers use 0x6C world regulatory domain and this patch adds the support. Cc: Luis R. Rodriguez Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 9f219bd248d417c2144eedafdf2c683ba8baee84 Author: Larry Finger Date: Wed Apr 13 21:00:02 2011 -0500 rtlwifi: Fix unitialized variable warnings In http://lkml.indiana.edu/hypermail/linux/kernel/1104.1/01955.html, Geerti Uytterhoeven reports the following warnings for the rtlwifi drivers. src/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c: warning: 'cck_index' may be used uninitialized in this function: => 637 src/drivers/net/wireless/rtlwifi/rtl8192c/dm_common.c: warning: 'cck_index_old' may be used uninitialized in this function: => 637 src/drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c: warning: 'box_extreg' may be used uninitialized in this function: => 303 src/drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c: warning: 'box_reg' may be used uninitialized in this function: => 303 src/drivers/net/wireless/rtlwifi/rtl8192ce/rf.c: warning: 'chnlgroup' may be used uninitialized in this function: => 205 src/drivers/net/wireless/rtlwifi/rtl8192ce/rf.c: warning: 'u4_regvalue' may be used uninitialized in this function: => 450 src/drivers/net/wireless/rtlwifi/rtl8192cu/hw.c: warning: 'hq_sele' may be used uninitialized in this function: => 924 Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 53d7938e6a2ac6569476fc59b404e70c0537b42b Author: Bing Zhao Date: Wed Apr 13 17:27:09 2011 -0700 mwifiex: rename function mwifiex_is_ba_stream_avail The old function name sounds like checking for existing BA stream. The function actually checks if we have room for creating new BA stream or not. Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 572e8f3ead47ad223fb428a4f1db986317e8e0ec Author: Amitkumar Karwar Date: Wed Apr 13 17:27:08 2011 -0700 mwifiex: remove unused function parameters Some function parameters become useless after previous cleanup changes. Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 19a898601ad192d8c59c3a8f1a4501919f53b94d Author: Yogesh Ashok Powar Date: Wed Apr 13 17:27:07 2011 -0700 mwifiex: remove redundant "return" at end of void function The return statement at the last line of a void function is not necessary. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 600f5d909a54a8dccf8c8c23898fc2e91bc0953e Author: Amitkumar Karwar Date: Wed Apr 13 17:27:06 2011 -0700 mwifiex: cleanup ioctl wait queue and abstraction layer 1) remove mwifiex_alloc_fill_wait_queue() and mwifiex_request_ioctl() 2) avoid dynamic allocation of wait queue 3) remove unnecessary mwifiex_error_code macros that were used mainly by the wait queue status code 4) remove some abstraction functions 5) split mwifiex_prepare_cmd() to mwifiex_send_cmd_async() and mwifiex_send_sync() to handle asynchronous and synchronous commands respectively Signed-off-by: Amitkumar Karwar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 3a9dddea89eb2132ba919fe04cb3b44a3b1e6db7 Author: Felix Fietkau Date: Wed Apr 13 21:56:46 2011 +0200 ath5k: disable 5 GHz support for the dualband PHY chip on dual-radio AR5312 There are two variants of AR5312 dual-band devices, one single-radio and the other one dual-radio. On the dual-radio board, the first MAC only supports 5 GHz, even though it has a dual-band PHY. The 2.4 GHz part of this phy is used in pass-through mode, connecting the second MAC with the second PHY. Disable 2.4 GHz for the first MAC on an AR5312, but only if the board configuration indicates a dual-radio device. Signed-off-by: Felix Fietkau Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit 32377b6cf75247cbdd0640efb43bef992efe3b68 Author: Felix Fietkau Date: Wed Apr 13 21:56:45 2011 +0200 ath5k: fix the EEPROM check for hw AES crypto support EEPROM version 5.0 adds a new field for disabling AES support, having an older version means that AES is present. This patch fixes hw AES crypto support on AR5312 boards, which have an older EEPROM version. Signed-off-by: Felix Fietkau Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit fa9bfd61e03e8dbcf110a93b373234d17a732233 Author: Felix Fietkau Date: Wed Apr 13 21:56:44 2011 +0200 ath5k: add a new bus op for reading the mac address On AHB, the calibration data usually does not contain a valid MAC address, the correct MAC address is stored in the board config. Signed-off-by: Felix Fietkau Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit 0cb9e06b6359bfa82f46c38a0b43e72d90b84081 Author: Felix Fietkau Date: Wed Apr 13 21:56:43 2011 +0200 ath: unshare struct ath_bus_ops between ath5k and ath9k This struct is not used in any common code, and moving it out of the ath header makes it easier to add more driver specific ops. Signed-off-by: Felix Fietkau Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit 7f94f05b24b47f6b70f2322b26876d0636329dfe Author: Felix Fietkau Date: Wed Apr 13 21:56:42 2011 +0200 ath5k: disable 5 GHz support if a 2.4 GHz radio is detected On a dual-radio dual-band AR5312 device, the calibration data is shared between the 5 GHz and the 2.4 GHz radio/MAC. Signed-off-by: Felix Fietkau Tested-by: Sedat Dilek Signed-off-by: John W. Linville commit 10add41f2b7a7bc1a74ba7bb535a6745cac318a2 Author: Rajkumar Manoharan Date: Tue Apr 12 17:29:29 2011 +0530 ath9k: Fix improper beacon slot selection in IBSS Request a re-configuration of Beacon related timers on the receipt of the first Beacon frame has to be set only for station mode. Setting beacon sync for IBSS is causing wrong beacon slot selection on beacon generation. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit dfa8fc69d92f8418e1296d762f3b1624df59f0ac Author: John W. Linville Date: Thu Apr 14 10:38:22 2011 -0400 ath9k: avoid using trinary operator w/ TX_STAT_INC Otherwise, you get this: CC [M] drivers/net/wireless/ath/ath9k/hif_usb.o drivers/net/wireless/ath/ath9k/hif_usb.c: In function ‘ath9k_skb_queue_complete’: drivers/net/wireless/ath/ath9k/hif_usb.c:230:12: error: expected expression before ‘do’ make[2]: *** [drivers/net/wireless/ath/ath9k/hif_usb.o] Error 1 make[1]: *** [drivers/net/wireless/ath/ath9k] Error 2 make: *** [drivers/net/wireless/ath/] Error 2 The TX_STAT_INC macro should probably be changed to accomodate such usage, although using a trinary operator in place of an if-else seems questionable to me anyway. Signed-off-by: John W. Linville Acked-by: Sujith Manoharan commit 1eff1ad0285038e309a81da4a004f071608309fb Author: Konrad Rzeszutek Wilk Date: Wed Feb 16 16:26:44 2011 -0500 xen/irq: The Xen hypervisor cleans up the PIRQs if the other domain forgot. And if the other domain forgot to clean up its PIRQs we don't need to fail the operation. Just take a note of it and continue on. Signed-off-by: Konrad Rzeszutek Wilk commit e6197acc726ab3baa60375a5891d58c2ee87e0f3 Author: Konrad Rzeszutek Wilk Date: Thu Feb 24 14:20:12 2011 -0500 xen/irq: Export 'xen_pirq_from_irq' function. We need this to find the real Xen PIRQ value for a device that requests an MSI or MSI-X. In the past we used 'xen_gsi_from_irq' since that function would return an Xen PIRQ or GSI depending on the provided IRQ. Now that we have seperated that we need to use the correct function. [v2: Deal with rebase on stable/irq.cleanup] Signed-off-by: Konrad Rzeszutek Wilk commit c7c2c3a28657cfdcef50c02b18ccca3761209e17 Author: Konrad Rzeszutek Wilk Date: Mon Nov 8 14:26:36 2010 -0500 xen/irq: Add support to check if IRQ line is shared with other domains. We do this via the PHYSDEVOP_irq_status_query support hypervisor call. We will get a positive value if another domain has binded its PIRQ to the specified GSI (IRQ line). [v2: Deal with v2.6.37-rc1 rebase fallout] [v3: Deal with stable/irq.cleanup fallout] [v4: xen_ignore_irq->xen_test_irq_shared] Signed-off-by: Konrad Rzeszutek Wilk commit beafbdc1df02877612dc9039c1de0639921fddec Author: Konrad Rzeszutek Wilk Date: Thu Apr 14 11:17:36 2011 -0400 xen/irq: Check if the PCI device is owned by a domain different than DOMID_SELF. We check if there is a domain owner for the PCI device. In case of failure (meaning no domain has registered for this device) we make DOMID_SELF the owner. Signed-off-by: Konrad Rzeszutek Wilk [v2: deal with rebasing on v2.6.37-1] [v3: deal with rebasing on stable/irq.cleanup] [v4: deal with rebasing on stable/irq.ween_of_nr_irqs] [v5: deal with rebasing on v2.6.39-rc3] Signed-off-by: Jeremy Fitzhardinge Acked-by: Xiantao Zhang commit c55fa78b13b32d3f19e19cd0c8b9378fdc09e521 Author: Konrad Rzeszutek Wilk Date: Mon Nov 8 14:13:35 2010 -0500 xen/pci: Add xen_[find|register|unregister]_device_domain_owner functions. When the Xen PCI backend is told to enable or disable MSI/MSI-X functions, the initial domain performs these operations. The initial domain needs to know which domain (guest) is going to use the PCI device so when it makes the appropiate hypercall to retrieve the MSI/MSI-X vector it will also assign the PCI device to the appropiate domain (guest). This boils down to us needing a mechanism to find, set and unset the domain id that will be using the device. [v2: EXPORT_SYMBOL -> EXPORT_SYMBOL_GPL.] Signed-off-by: Konrad Rzeszutek Wilk commit 1426414431a8d37a6e631e0b5e2ad6186b81876a Author: Artem Bityutskiy Date: Thu Apr 14 11:36:31 2011 +0300 UBI: fix typo in a message When a PEB passes the torture test, UBI prints "do not mark it a bad", but should print "do not mark it as bad". This patch corrects the typo. Signed-off-by: Artem Bityutskiy commit 9cdc352936311eea55624cbabafda296b99ff137 Author: Daniel Mack Date: Mon Apr 11 17:56:32 2011 +0200 ALSA: usb-audio: Add quirks for Audio Kontrol 6 This new device by Native Instruments is also compliant to the USB standard v2.0, but hides this detail at when connected. It needs the same boot quirks than other models, and also has two non-class-compliant mixer controls. Signed-off-by: Daniel Mack Signed-off-by: Takashi Iwai commit feddbb34ebd75e9b6bf573b852079e327a88c07a Author: Artem Bityutskiy Date: Mon Mar 28 10:12:25 2011 +0300 UBI: fix minor stylistic issues Fix checkpatch.pl errors and warnings: * space before tab * line over 80 characters * include linux/ioctl.h instead of asm/ioctl.h Signed-off-by: Artem Bityutskiy commit 3627924acf70a9a26587712e4888ee7144489678 Author: Artem Bityutskiy Date: Mon Mar 28 10:04:09 2011 +0300 UBI: use __packed instead of __attribute__((packed)) There was an attempt to standartize various "__attribute__" and other macros in order to have potentially portable and more consistent code, see commit 82ddcb040570411fc2d421d96b3e69711c670328. Note, that commit refers Rober Love's blog post, but the URL is broken, the valid URL is: http://blog.rlove.org/2005/10/with-little-help-from-your-compiler.html Moreover, nowadays checkpatch.pl warns about using __attribute__((packed)): "WARNING: __packed is preferred over __attribute__((packed))" It is not a big deal for UBI to use __packed, so let's do it. Signed-off-by: Artem Bityutskiy commit e8e088de305d7cc00b2c8b2a857ceb62d5fa68d3 Author: Artem Bityutskiy Date: Tue Mar 15 16:37:57 2011 +0200 UBI: cleanup comments around volume properties Cleanup and improve commentaries around the "set volume properties" ioctl, make a simple indentation fix as well. Signed-off-by: Artem Bityutskiy commit 6748482f4153fc0e095aa3dc831d5edac5656a80 Author: Artem Bityutskiy Date: Tue Mar 15 16:25:38 2011 +0200 UBI: re-name set volume properties ioctl Rename the ioctl which sets volume properties from 'UBI_IOCSETPROP' to 'UBI_IOCSETVOLPROP' to reflect the fact that this ioctl is about volume properties, not device properties. This is also consistent with the other volume ioctl name - 'UBI_IOCVOLUP'. The main motivation for the re-name, however, is that we are going to introduce the per-UBI device "set properties" ioctl, so we need good and logical naming. At the same time, re-name the "set volume properties request" data structure from 'struct ubi_set_prop_req' to 'struct ubi_set_vol_prop_req'. And re-name 'UBI_PROP_DIRECT_WRITE' to 'UBI_VOL_PROP_DIRECT_WRITE'. Signed-off-by: Artem Bityutskiy commit e10b376e98332edcc2530aaed384a7e248477052 Author: Artem Bityutskiy Date: Mon Mar 21 16:50:18 2011 +0200 UBI: make the control character device non-seekable This patch makes the UBI control device (/dev/ubi_ctrl) non-seekable. The seek operation does is not applicable to this file, so it is cleaner to explicitly return error (which the added 'no_llseek()') does than trying to change the position (which the removed 'default_llseek()' does). This is an API break, but the only known user of this interface is mtd-utils which does not need the seeking functionality. And any app which relies on this is broken, but I'm not aware of such apps. Signed-off-by: Artem Bityutskiy commit 8849b720e9632acef139a349f9ec62e63ce7e497 Author: Ralf Baechle Date: Thu Apr 14 00:20:07 2011 -0700 NET: AX.25, NETROM, ROSE: Remove SOCK_DEBUG calls Nobody alive seems to recall when they last were useful. Signed-off-by: Ralf Baechle Signed-off-by: David S. Miller commit 317f394160e9beb97d19a84c39b7e5eb3d7815a8 Author: Peter Zijlstra Date: Tue Apr 5 17:23:58 2011 +0200 sched: Move the second half of ttwu() to the remote cpu Now that we've removed the rq->lock requirement from the first part of ttwu() and can compute placement without holding any rq->lock, ensure we execute the second half of ttwu() on the actual cpu we want the task to run on. This avoids having to take rq->lock and doing the task enqueue remotely, saving lots on cacheline transfers. As measured using: http://oss.oracle.com/~mason/sembench.c $ for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor ; do echo performance > $i; done $ echo 4096 32000 64 128 > /proc/sys/kernel/sem $ ./sembench -t 2048 -w 1900 -o 0 unpatched: run time 30 seconds 647278 worker burns per second patched: run time 30 seconds 816715 worker burns per second Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.515897185@chello.nl commit bd8e7dded88a3e1c085c333f19ff31387616f71a Author: Peter Zijlstra Date: Tue Apr 5 17:23:59 2011 +0200 sched: Remove need_migrate_task() Oleg noticed that need_migrate_task() doesn't need the ->on_cpu check now that ttwu() doesn't do remote enqueues for !->on_rq && ->on_cpu, so remove the helper and replace the single instance with a direct ->on_rq test. Suggested-by: Oleg Nesterov Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.556674812@chello.nl Signed-off-by: Ingo Molnar commit c05fbafba1c5482bee399b360288fa405415e126 Author: Peter Zijlstra Date: Tue Apr 5 17:23:57 2011 +0200 sched: Restructure ttwu() some more Factor our helper functions to make the inner workings of try_to_wake_up() more obvious, this also allows for adding remote queues. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.475848012@chello.nl commit 23f41eeb42ce7f6f1210904e49e84718f02cb61c Author: Peter Zijlstra Date: Tue Apr 5 17:23:56 2011 +0200 sched: Rename ttwu_post_activation() to ttwu_do_wakeup() The ttwu_post_activation() code does the core wakeup, it sets TASK_RUNNING and performs wakeup-preemption, so give is a more descriptive name. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.434609705@chello.nl commit b84cb5df1f9ad6da3f214c638d5fb08d0c99de1f Author: Peter Zijlstra Date: Tue Apr 5 17:23:55 2011 +0200 sched: Remove rq argument from ttwu_stat() In order to call ttwu_stat() without holding rq->lock we must remove its rq argument. Since we need to change rq stats, account to the local rq instead of the task rq, this is safe since we have IRQs disabled. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.394638826@chello.nl commit e4a52bcb9a18142d79e231b6733cabdbf2e67c1f Author: Peter Zijlstra Date: Tue Apr 5 17:23:54 2011 +0200 sched: Remove rq->lock from the first half of ttwu() Currently ttwu() does two rq->lock acquisitions, once on the task's old rq, holding it over the p->state fiddling and load-balance pass. Then it drops the old rq->lock to acquire the new rq->lock. By having serialized ttwu(), p->sched_class, p->cpus_allowed with p->pi_lock, we can now drop the whole first rq->lock acquisition. The p->pi_lock serializing concurrent ttwu() calls protects p->state, which we will set to TASK_WAKING to bridge possible p->pi_lock to rq->lock gaps and serialize set_task_cpu() calls against task_rq_lock(). The p->pi_lock serialization of p->sched_class allows us to call scheduling class methods without holding the rq->lock, and the serialization of p->cpus_allowed allows us to do the load-balancing bits without races. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.354401150@chello.nl commit 8f42ced974df7d5af2de4cf5ea21fe978c7e4478 Author: Peter Zijlstra Date: Tue Apr 5 17:23:53 2011 +0200 sched: Drop rq->lock from sched_exec() Since we can now call select_task_rq() and set_task_cpu() with only p->pi_lock held, and sched_exec() load-balancing has always been optimistic, drop all rq->lock usage. Oleg also noted that need_migrate_task() will always be true for current, so don't bother calling that at all. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.314204889@chello.nl Signed-off-by: Ingo Molnar commit ab2515c4b98f7bc4fa11cad9fa0f811d63a72a26 Author: Peter Zijlstra Date: Tue Apr 5 17:23:52 2011 +0200 sched: Drop rq->lock from first part of wake_up_new_task() Since p->pi_lock now protects all things needed to call select_task_rq() avoid the double remote rq->lock acquisition and rely on p->pi_lock. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.273362517@chello.nl Signed-off-by: Ingo Molnar commit 0122ec5b02f766c355b3168df53a6c038a24fa0d Author: Peter Zijlstra Date: Tue Apr 5 17:23:51 2011 +0200 sched: Add p->pi_lock to task_rq_lock() In order to be able to call set_task_cpu() while either holding p->pi_lock or task_rq(p)->lock we need to hold both locks in order to stabilize task_rq(). This makes task_rq_lock() acquire both locks, and have __task_rq_lock() validate that p->pi_lock is held. This increases the locking overhead for most scheduler syscalls but allows reduction of rq->lock contention for some scheduler hot paths (ttwu). Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.232781355@chello.nl Signed-off-by: Ingo Molnar commit 2acca55ed98ad9b9aa25e7e587ebe306c0313dc7 Author: Peter Zijlstra Date: Tue Apr 5 17:23:50 2011 +0200 sched: Also serialize ttwu_local() with p->pi_lock Since we now serialize ttwu() using p->pi_lock, we also need to serialize ttwu_local() using that, otherwise, once we drop the rq->lock from ttwu() it can race with ttwu_local(). Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.192366907@chello.nl commit a8e4f2eaecc9bfa4954adf79a04f4f22fddd829c Author: Peter Zijlstra Date: Tue Apr 5 17:23:49 2011 +0200 sched: Delay task_contributes_to_load() In prepratation of having to call task_contributes_to_load() without holding rq->lock, we need to store the result until we do and can update the rq accounting accordingly. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152729.151523907@chello.nl commit 3fe1698b7fe05aeb063564e71e40d09f28d8e80c Author: Peter Zijlstra Date: Tue Apr 5 17:23:48 2011 +0200 sched: Deal with non-atomic min_vruntime reads on 32bits In order to avoid reading partial updated min_vruntime values on 32bit implement a seqcount like solution. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.111378493@chello.nl Signed-off-by: Ingo Molnar commit 74f8e4b2335de45485b8d5b31a504747f13c8070 Author: Peter Zijlstra Date: Tue Apr 5 17:23:47 2011 +0200 sched: Remove rq argument to sched_class::task_waking() In preparation of calling this without rq->lock held, remove the dependency on the rq argument. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.071474242@chello.nl Signed-off-by: Ingo Molnar commit 7608dec2ce2004c234339bef8c8074e5e601d0e9 Author: Peter Zijlstra Date: Tue Apr 5 17:23:46 2011 +0200 sched: Drop the rq argument to sched_class::select_task_rq() In preparation of calling select_task_rq() without rq->lock held, drop the dependency on the rq argument. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152729.031077745@chello.nl Signed-off-by: Ingo Molnar commit 013fdb8086acaae5f8eb96f9ad48fcd98882ac46 Author: Peter Zijlstra Date: Tue Apr 5 17:23:45 2011 +0200 sched: Serialize p->cpus_allowed and ttwu() using p->pi_lock Currently p->pi_lock already serializes p->sched_class, also put p->cpus_allowed and try_to_wake_up() under it, this prepares the way to do the first part of ttwu() without holding rq->lock. By having p->sched_class and p->cpus_allowed serialized by p->pi_lock, we prepare the way to call select_task_rq() without holding rq->lock. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152728.990364093@chello.nl Signed-off-by: Ingo Molnar commit fd2f4419b4cbe8fe90796df9617c355762afd6a4 Author: Peter Zijlstra Date: Tue Apr 5 17:23:44 2011 +0200 sched: Provide p->on_rq Provide a generic p->on_rq because the p->se.on_rq semantics are unfavourable for lockless wakeups but needed for sched_fair. In particular, p->on_rq is only cleared when we actually dequeue the task in schedule() and not on any random dequeue as done by things like __migrate_task() and __sched_setscheduler(). This also allows us to remove p->se usage from !sched_fair code. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152728.949545047@chello.nl commit d7c01d27ab767a30d672d1fd657aa8336ebdcbca Author: Peter Zijlstra Date: Tue Apr 5 17:23:43 2011 +0200 sched: Clean up ttwu() stats Collect all ttwu() stat code into a single function and ensure its always called for an actual wakeup (changing p->state to TASK_RUNNING). Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152728.908177058@chello.nl commit 893633817f5b58f5227365d74344e0170a718213 Author: Peter Zijlstra Date: Tue Apr 5 17:23:42 2011 +0200 sched: Change the ttwu() success details try_to_wake_up() would only return a success when it would have to place a task on a rq, change that to every time we change p->state to TASK_RUNNING, because that's the real measure of wakeups. This results in that success is always true for the tracepoints. Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152728.866866929@chello.nl commit c2f7115e2e52a6c187b8c1f54f0e4970bb677be0 Author: Peter Zijlstra Date: Wed Apr 13 13:28:56 2011 +0200 sched: Move wq_worker_waking to the correct site wq_worker_waking_up() needs to match wq_worker_sleeping(), since the latter is only called on deactivate, move the former near activate. Signed-off-by: Peter Zijlstra Cc: Tejun Heo Link: http://lkml.kernel.org/n/top-t3m7n70n9frmv4pv2n5fwmov@git.kernel.org Signed-off-by: Ingo Molnar commit c6eb3dda25892f1f974f5420f63e6721aab02f6f Author: Peter Zijlstra Date: Tue Apr 5 17:23:41 2011 +0200 mutex: Use p->on_cpu for the adaptive spin Since we now have p->on_cpu unconditionally available, use it to re-implement mutex_spin_on_owner. Requested-by: Thomas Gleixner Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152728.826338173@chello.nl commit 3ca7a440da394808571dad32d33d3bc0389982e6 Author: Peter Zijlstra Date: Tue Apr 5 17:23:40 2011 +0200 sched: Always provide p->on_cpu Always provide p->on_cpu so that we can determine if its on a cpu without having to lock the rq. Reviewed-by: Frank Rowand Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110405152728.785452014@chello.nl Signed-off-by: Ingo Molnar commit 184748cc50b2dceb8287f9fb657eda48ff8fcfe7 Author: Peter Zijlstra Date: Tue Apr 5 17:23:39 2011 +0200 sched: Provide scheduler_ipi() callback in response to smp_send_reschedule() For future rework of try_to_wake_up() we'd like to push part of that function onto the CPU the task is actually going to run on. In order to do so we need a generic callback from the existing scheduler IPI. This patch introduces such a generic callback: scheduler_ipi() and implements it as a NOP. BenH notes: PowerPC might use this IPI on offline CPUs under rare conditions! Acked-by: Russell King Acked-by: Martin Schwidefsky Acked-by: Chris Metcalf Acked-by: Jesper Nilsson Acked-by: Benjamin Herrenschmidt Signed-off-by: Ralf Baechle Reviewed-by: Frank Rowand Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Peter Zijlstra Link: http://lkml.kernel.org/r/20110405152728.744338123@chello.nl commit a4c98f8bbeafee12c979c90743f6fda94f7515c7 Merge: f4ad9bd 85f2e68 Author: Ingo Molnar Date: Thu Apr 14 08:50:37 2011 +0200 Merge branch 'linus' into sched/locking Merge reason: Pick up this upstream commit: 6631e635c65d: block: don't flush plugged IO on forced preemtion scheduling As it modifies the scheduler and we'll queue up dependent patches. Signed-off-by: Ingo Molnar commit 45a5f720fe37d21059da3c333c373c845ccbd82b Author: John Fastabend Date: Mon Apr 4 04:29:46 2011 +0000 ixgbe: DCB, X540 devices do not respond to pause frames DCB enabled X540 devices are not responding to pause frames due to a missing register set that was added for these devices that did not exist in other devices. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit e09ad236fc85b1d6e010138f59aba76f6c9a295b Author: John Fastabend Date: Mon Apr 4 04:29:41 2011 +0000 ixgbe: DCB, misallocated packet buffer size with X540 device The X540 device has a smaller packet buffer but the DCB configuration never took this into account. Under stress this can result in the DMA engine hanging and TX Unit hang occurring to reset the device. This patch reworks the packet buffer allocation routine used for DCB on 82599 and X540 devices to account for RX packet buffer sizes. This fixes the immediate hang. We should consolidate the various hardware specific routines for configuring features into a single routine. This will make it much harder to miss feature cases like this. Signed-off-by: John Fastabend Tested-by: Ross Brattain Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit b776d1043510c60f59220eb5e58b524f5a7f0e52 Author: Emil Tantilov Date: Thu Mar 31 09:36:18 2011 +0000 ixgbe: make device_caps() generic x540 has the same device capability word in the EEPROM as 82599. This patch renames ixgbe_get_device_caps_82599 to ixgbe_get_device_caps_generic, moves it to ixgbe_common.h and sets up the function pointer for x540. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit a59e8a1a72806057084adc2d321fc2a7cbce9579 Author: Emil Tantilov Date: Thu Mar 31 09:36:12 2011 +0000 ixgbe: explicitly disable 100H for x540 100H is not supported on this HW, but the bit is set on the PHY. This can result in link at 100F when advertising only 1000F. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 4c40ef0291acebf32435e5a4921178ee53bd8933 Author: Emil Tantilov Date: Thu Mar 24 07:06:02 2011 +0000 ixgbe: add support for new HW Add new device ID supported by ixgbe. Signed-off-by: Emil Tantilov Tested-by: Stephen Ko Signed-off-by: Jeff Kirsher commit eb9c3e3ea2981e56c71e8f5477c51783856090b1 Author: Emil Tantilov Date: Thu Mar 24 00:57:50 2011 +0000 ixgbe: fix semaphores in eeprom routines for x540 HW can upload EEPROM content from flash while in a middle of checksum calculation. Take NVM ownership for the whole process of checksum update. Call ixgbe_read_eerd_generic() and ixgbe_write_eewr_generic() directly to avoid double take of semaphores which leads to long loading times. Signed-off-by: Emil Tantilov Tested-by: Stephen Ko Signed-off-by: Jeff Kirsher commit 032b4325b61b03f87f0346d0e92e39f785e24105 Author: Don Skidmore Date: Fri Mar 18 09:32:53 2011 +0000 ixgbe: cleanup short msleep's (<20ms) to use usleep_range Since msleep might not sleep for the desired amount when less than 20ms use usleep_range. Signed-off-by: Don Skidmore Tested-by: Stephen Ko Signed-off-by: Jeff Kirsher commit 0fa6d83258252695203d24c8818092644df10fd7 Author: Emil Tantilov Date: Fri Mar 18 08:18:32 2011 +0000 ixgbe: fix 82599 KR downshift coexistence with LESM FW module Disable KR to KX4/KX downshift on 82599 backplane devices when LESM (Link Establishment State Machine) is enabled in FW. Those features cannot co-exist as they both manipulate the same registers. Signed-off-by: Emil Tantilov Acked-by: Don Skidmore Tested-by: Phillip Schmitt Signed-off-by: Jeff Kirsher commit 3d5c520727ce3dbf418eec38e431856708f946f8 Author: Emil Tantilov Date: Sat Mar 19 01:32:46 2011 +0000 ixgbe: move disabling of relaxed ordering in start_hw() Relaxed ordering can lead to issues with some chipsets. This patch makes sure that it is disabled by default and not only when DCA is on. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 7184b7cf555f5bc08e34994147c341abb07d1dbb Author: Emil Tantilov Date: Fri Mar 18 08:18:22 2011 +0000 ixgbe: refactor common start_hw code for 82599 and x540 Factored out the common start_hw code into a new function ixgbe_start_hw_gen2() so that it can be used by x540 and 82599. Signed-off-by: Emil Tantilov Acked-by: Don Skidmore Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 75e3d3c6812ef2387f8dcfd86437cff00f64b68b Author: Jeff Kirsher Date: Thu Mar 17 18:11:38 2011 +0000 ixgbe: update version string for Dell CEM use Signed-off-by: Jeff Kirsher Acked-by: Don Skidmore Tested-by: Stephen Ko commit d6cd8e0e75b66896bd4e14c8883d62322831cb8f Author: Emil Tantilov Date: Wed Mar 16 01:58:20 2011 +0000 ixgbe: fix namespacecheck issue Set ixgbe_identify_82599() as static Signed-off-by: Emil Tantilov Tested-by: Stephen Ko Signed-off-by: Jeff Kirsher commit c9130180a8dc48943f2a072acec4a53616a1f0ab Author: Emil Tantilov Date: Wed Mar 16 01:55:55 2011 +0000 ixgbe: correct function number for some 82598 parts Some 82598 parts have LAN0 disabled and LAN1 enabled and the LAN ID bits in Device Status register report the NIC as having only LAN1 as enabled. This causes ixgbe_set_lan_id_multi_port_pcie() to set bus->func = 1 which is incorrect. Force bus->func to 0 when LAN0 is disabled in the EEPROM. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit 2ea5ea5fc4f4f1daa74708c2a14e364d8474812d Author: Emil Tantilov Date: Sat Mar 12 08:56:38 2011 +0000 ixgbe: fix return value checks The value of status was incorrectly tested. Also whitespace cleanup. Signed-off-by: Emil Tantilov Tested-by: Evan Swanson Signed-off-by: Jeff Kirsher commit c8ca76ebc6e50752c5311b92bb9aef7edb324577 Author: John Fastabend Date: Sat Mar 12 03:50:53 2011 +0000 ixgbe: DCB, further cleanups to app configuration With the app data on the kernel dcb_app list we no longer need to specifically handle them in ixgbe for the CEE case. So now we can remove app handling logic and check when the hw is configured if the app data matches the hardware configuration in set_hw_all(). If it does not match then we can reconfigure. Signed-off-by: John Fastabend Tested-by: Ross Brattain Signed-off-by: Jeff Kirsher commit 78cd29d5a92ae5067377ad42089f2c8781312f4a Author: Bruce Allan Date: Thu Mar 24 03:09:03 2011 +0000 e1000e: If ASPM L0s needs to be disabled, do it prior to enabling device Based on a patch from Naga Chumbalkar : If ASPM L0s needs to be disabled due to HW errata, do it prior to "enabling" the device. This way if the kernel ever defaults its aspm_policy to POLICY_POWERSAVE, then the e1000e driver will get a chance to disable ASPM on the misbehaving device *prior* to calling pci_enable_device_mem(). This will be useful in situations where the BIOS indicates ASPM support on the server by clearing the ACPI FADT "ASPM Controls" bit. Note: The kernel (2.6.38) currently uses the BIOS "default" as its aspm_policy. However, Linux distros can diverge from that and set the default to "powersave". v2: o cleanup namespace pollution of e1000e_disable_aspm(), o fix type and initialization of the new aspm_disable_flag in a few functions, and o redefine FLAG2_DISABLE_ASPM_L0S to the first unused bit in adapter->flags2. Signed-off-by: Bruce Allan Cc: Naga Chumbalkar Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 2084b114e3fb0d84e5882f5ee6c7039be52da715 Author: Flavio Leitner Date: Tue Apr 5 04:27:43 2011 +0000 e1000e: fix stats locking in e1000_watchdog_task Just move the unlock down a bit because it unlocks too early leaving a chance for get_stats64() run in parallel while it is still accessing the stats. Signed-off-by: Flavio Leitner Acked-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 86d70e532c352bd309dab5f1d18d113f441cb3ae Author: Jeff Kirsher Date: Fri Mar 25 16:01:01 2011 +0000 e1000e: convert to new VLAN model This switches the e1000e driver to use the new VLAN interfaces. CC: Jesse Gross Signed-off-by: Jeff Kirsher Tested-by: Jeff Pieper commit a5cc764206a3d01dce8ebc17b4e1534afb53c495 Author: Bruce Allan Date: Sat Mar 19 00:31:23 2011 +0000 e1000e: PCIe link speed in GT/s, not GB/s Correct the log message when driver loads. Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 1bba4386ab4f67a53c9649268dd9c83bc6110a9b Author: Bruce Allan Date: Sat Mar 19 00:27:20 2011 +0000 e1000e: convert short duration msleep() to usleep_range() With durations less than 20ms, the jiffies or legacy timer backed msleep() may sleep ~20ms which might not be what the caller expects. Instead, it is recommended to use the hrtimers backed usleep_range(). For more, see Documentation/timers/timers-howto.txt. Issues reported by checkpatch. In addition, remove unnecessary sleep in e1000e_write_nvm_spi(). Signed-off-by: Bruce Allan Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 563988dcfe706457ec7049d59e18d6147179bb0a Author: Stefan Assmann Date: Tue Apr 5 04:27:15 2011 +0000 igb: introduce igb_thermal_sensor_event for sensor checking The code for thermal sensor checking should be wrapped into a function. Signed-off-by: Stefan Assmann Tested-by: Jeff Pieper Signed-off-by: Jeff Kirsher commit 34a0326e3aaf1d67fe3de55e77e92961c6a9a847 Author: Stefan Assmann Date: Tue Apr 5 04:27:05 2011 +0000 igb: fix typo in igb_validate_nvm_checksum_82580 Comment spelling fix. Signed-off-by: Stefan Assmann Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher commit 7c158399c21e4eabb33965a5fc689ebbd2ded4f6 Author: Greg Rose Date: Sat Mar 12 11:56:02 2011 +0000 igb: Add anti-spoofing feature documentation Add the documentation for the anti-spoofing feature in the HW. Signed-off-by: Greg Rose Signed-off-by: Jeff Kirsher commit c326de88b8ac7ed1cd1027017ba6079dbe91be49 Author: Mathieu J. Poirier Date: Wed Apr 13 17:13:00 2011 -0700 net: allow shifted access in smsc911x V2 This is a revised patch that permits a shifted access to the LAN9221 registers. More specifically: It adds a shift parameter in the platform_data. It introduces an ops in smsc911x_data. A choice of access function to use at run-time. Four new shifted access function. Signed-off-by: Mathieu Poirier Signed-off-by: Alessandro Rubini Signed-off-by: David S. Miller commit c3e945006ab2295e9a3f4327aa74a502ad123fe6 Author: Matt Carlson Date: Wed Apr 13 11:05:08 2011 +0000 tg3: Add support for extended VPD blocks In some devices, the VPD block is relocated to a different area in NVRAM. The original location can still contain old, but still valid VPD data. This patch changes the code to look for an extended VPD block in NVRAM. If one is found, that block is used for all VPD operations instead. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 4852a8614f63999e38539ad16615054dcd20a05d Author: Matt Carlson Date: Wed Apr 13 11:05:07 2011 +0000 tg3: Add jumbo frame loopback tests to selftest This patch adds jumbo frame loopback test support to the ethtool selftest. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 48fa55a0a5e20b9e2a28a72c66c7027678cae6bb Author: Matt Carlson Date: Wed Apr 13 11:05:06 2011 +0000 tg3: Automatically size stat/test string arrays This patch reimplements the size preprocessor constants of the stats and ethtool test string arrays. The size is calculated at compile time rather than using static constants. Signed-off-by: Matt Carlson Signed-off-by: Benjamin Li Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit e64de4e6c660dae6d6370b3acb59d5d5cc9ecf20 Author: Matt Carlson Date: Wed Apr 13 11:05:05 2011 +0000 tg3: Dump registers when status block shows errors This patch monitors the error bit of the status word within the status block. If it is set, the driver will dump the driver state after validating the error and then reset the chip. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit 97bd8e491d1786f0020372a5a470bb8b3184856f Author: Matt Carlson Date: Wed Apr 13 11:05:04 2011 +0000 tg3: Provide full regdump on tx timeout The current amount of information provided in the output of a tx timeout is insufficient to determine a root cause. This patch replaces the terse, four-register status output with a more complete body of information. For PCIe devices, the full register space is dumped. For other devices, select registers are dumped instead. Signed-off-by: Matt Carlson Signed-off-by: Michael Chan Reviewed-by: Benjamin Li Signed-off-by: David S. Miller commit db8fa2852ed5b46c05148db87be135300f17b8ce Author: Michal Nazarewicz Date: Thu Apr 14 00:37:00 2011 +0200 usb: gadget: storage_common: use kstrto*() This commit replaces the usage of strict_strtoul() (which became deprecated after commit 33ee3b2e) with kstrtouint(). Signed-off-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 90e6ca5cda8a38b7bb53660e67eff0845c0abe3f Author: Gabor Juhos Date: Wed Apr 13 10:54:24 2011 +0200 USB: ohci: add bus glue for the Atheros AR71XX/AR7240 SoCs The Atheros AR71XX/AR7240 SoCs have a built-in OHCI controller. This patch adds the necessary glue code to make the generic OHCI driver usable for them. Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 2f7ac6c199978d0a0e407a12534201aa675a6482 Author: Gabor Juhos Date: Wed Apr 13 10:54:23 2011 +0200 USB: ehci: add workaround for Synopsys HC bug A Synopsys USB core used in various SoCs has a bug which might cause that the host controller not issuing ping. When software uses the Doorbell mechanism to remove queue heads, the host controller still has references to the removed queue head even after indicating an Interrupt on Async Advance. This happens if the last executed queue head's Next Link queue head is removed. Consequences of the defect: The Host controller fetches the removed queue head, using memory that would otherwise be deallocated.This results in incorrect transactions on both the USB and system memory. This may result in undefined behavior. Workarounds: 1) If no queue head is active (no Status field's Active bit is set) after removing the queue heads, the software can write one of the valid queue head addresses to the ASYNCLISTADDR register and deallocate the removed queue head's memory after 2 microframes. If one or more of the queue heads is active (the Active bit is set in the Status field) after removing the queue heads, the software can delay memory deallocation after time X, where X is the time required for the Host Controller to go through all the queue heads once. X varies with the number of queue heads and the time required to process periodic transactions: if more periodic transactions must be performed, the Host Controller has less time to process asynchronous transaction processing. 2) Do not use the Doorbell mechanism to remove the queue heads. Disable the Asynchronous Schedule Enable bit instead. The bug has been discussed on the linux-usb-devel mailing-list four years ago, the original thread can be found here: http://www.mail-archive.com/linux-usb-devel@lists.sourceforge.net/msg45345.html This patch implements the first workaround as suggested by David Brownell. The built-in USB host controller of the Atheros AR7130/AR7141/AR7161 SoCs requires this to work properly. Signed-off-by: Gabor Juhos Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 502fa84195f47a79d7220470ebaa85a773659755 Author: Gabor Juhos Date: Wed Apr 13 10:54:22 2011 +0200 USB: ehci: add bus glue for the Atheros AR71XX/AR724X/AR91XX SoCs The Atheros AR71XX/AR91XX SoCs have a built-in EHCI controller. This patch adds the necessary glue code to make the generic EHCI driver usable for them. Signed-off-by: Gabor Juhos Signed-off-by: Imre Kaloz Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 01da92f7f6436c6c29c11490c7fcdb20fb6c46b8 Author: Joonyoung Shim Date: Fri Apr 8 13:22:11 2011 +0900 ARM: EXYNOS4: Add usb ehci device to the NURI board This patch is to support usb ehci device to the NURI board. Signed-off-by: Joonyoung Shim Signed-off-by: Kyungmin Park Signed-off-by: Greg Kroah-Hartman commit 1bcc5aa87f043d34522d783154d08173b435fb46 Author: Joonyoung Shim Date: Fri Apr 8 14:08:50 2011 +0900 USB: Add initial S5P EHCI driver This patch adds host USB high speed driver for samsung S5P series. This is initial driver and we need additional implementation to support some functions like power management. Signed-off-by: Jingoo Han Signed-off-by: Joonyoung Shim Signed-off-by: Greg Kroah-Hartman commit 8f1d169f999fea892c3fcbf5a79ae8525a477572 Author: Joonyoung Shim Date: Fri Apr 8 13:22:10 2011 +0900 ARM: EXYNOS4: Add usb host phy control EXYNOS4 has 2 phys for usb host and usb device. This patch supports to control usb host phy of EXYNOS4. Signed-off-by: Joonyoung Shim Signed-off-by: Greg Kroah-Hartman commit 3e112662129b48bf8571ee5f7c49a4dbb3b70f04 Author: Joonyoung Shim Date: Fri Apr 8 13:22:09 2011 +0900 ARM: S5P: Add usb ehci device This patch adds usb ehci device definition for samsung s5p cpus. Signed-off-by: Joonyoung Shim Signed-off-by: Greg Kroah-Hartman commit b750106bafbf9e8cb888a2b3681f444d8183a296 Author: Johan Hovold Date: Mon Apr 4 11:38:07 2011 +0200 Revert "USB: sam-ba: add driver for Atmel SAM Boot Assistant (SAM-BA)" This reverts commit 90593899de83a6e6fdea563d058acd2f4334e3f9. SAM-BA devices identify themselves CDC-ACM devices and should be using the cdc-acm driver. Since commit 5b239f0aebd4dd6f85b13decf5e18e86e35d57f0 (USB: cdc-acm: Add pseudo modem without AT command capabilities) cdc-acm also binds to them. Note that the Atmel SAM-BA tools expect to use a USB-serial driver and thus require a symlink from /dev/ttyACMn to some /dev/ttyUSBm (with m < 30) to be able to select the device. This is simply a UI-issue that should be fixed by Atmel. Tested with the SAM-BA 2.10 tools and an Atmel at91sam9260-ek. Signed-off-by: Johan Hovold Cc: Sven Köhler Signed-off-by: Greg Kroah-Hartman commit a87103a6d4a91cbb9be49d3bbd2f35dcf5510da1 Author: Matthias Kaehlcke Date: Fri Apr 1 23:02:07 2011 +0200 USB: twl4030-usb: Report correct vbus value for accessory charger adapters1 The twl4030-usb driver exports the status of VBUS as sysfs attribute. In case an accessory charger adapter (ACA) is connected to the OTG transceiver the attribute is always 'off', even when the charger provides VBUS. Added a variable to keep track of the status of VBUS and report it correctly Signed-off-by: Matthias Kaehlcke Signed-off-by: Greg Kroah-Hartman commit 0b0cd6c81defc4e4fccb9e9103666547fefdb9c0 Author: Fabio Estevam Date: Tue Apr 12 09:31:54 2011 -0300 USB: Mark ehci_adjust_port_wakeup_flags as __maybe_unused Mark ehci_adjust_port_wakeup_flags as __maybe_unused to avoid the following warning when building the ehci-mxc driver: CC drivers/usb/host/ehci-hcd.o drivers/usb/host/ehci-hub.c:130: warning: 'ehci_adjust_port_wakeup_flags' defined but not used Current ehci-mxc driver implementation does not support suspend/resume. Signed-off-by: Fabio Estevam Signed-off-by: Greg Kroah-Hartman commit 74d1dc8d8d13fef55c33b49f06ab84eeebf967c4 Author: Weiping Pan(潘卫平) Date: Mon Apr 11 18:16:15 2011 +0800 usb: fix a typo in a comment replace tranmitted with transmitted. Signed-off-by: Weiping Pan(潘卫平) Signed-off-by: Greg Kroah-Hartman commit 84f6c3fb7e8eef51f994e959015e18bb927127e0 Author: Randy Dunlap Date: Fri Apr 8 10:11:44 2011 -0700 usb/otg: fix twl6030 macro Fix warning caused by stray semi-colon at end of macro: drivers/usb/otg/twl6030-usb.c:183: warning: ISO C90 forbids mixed declarations and code Signed-off-by: Randy Dunlap Cc: Hema HK Signed-off-by: Greg Kroah-Hartman commit 3c624d4962a583516acadcbf60a8ca2a48421f5c Author: Roger Quadros Date: Tue Apr 5 18:36:39 2011 +0300 usb: gadget: f_mass_storage: If 'ro'/'cdrom' specified, open file as read-only If we don't need Write access then attempt to open backing file in Read Only mode instead of bailing out too soon. Signed-off-by: Roger Quadros Acked-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 73ee4da994e7b97bd8241e39099cf3dd94675d79 Author: Roger Quadros Date: Tue Apr 5 18:36:38 2011 +0300 usb: gadget: f_mass_storage: Fix Bulk-only RESET handling The ep0 request tag was not recorded thus resulting in phase problems while sending status/response in handle_execption() handler. This was resulting in MSC compliance test failures with USBCV tool. With this patch, the Bulk-Only Mass storage RESET request is handled correctly and the MSC compliance tests pass. Signed-off-by: Roger Quadros Acked-by: Michal Nazarewicz Signed-off-by: Greg Kroah-Hartman commit 654d121ad8c84e3442efee20b2a0703edb18c212 Author: Michal Marek Date: Tue Apr 5 16:59:11 2011 +0200 usb: u132-hcd: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Tony Olech Cc: linux-usb@vger.kernel.org Signed-off-by: Michal Marek Signed-off-by: Greg Kroah-Hartman commit 3482f00d018fb5e476beb867272c1d82f4f5c7d6 Author: Michal Marek Date: Tue Apr 5 16:59:12 2011 +0200 usb: ftdi-elan: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Cc: Tony Olech Cc: linux-usb@vger.kernel.org Signed-off-by: Michal Marek Signed-off-by: Greg Kroah-Hartman commit 99083f16f04e050eab0059167b4980cd67e7aa5a Author: Alan Stern Date: Tue Apr 5 13:35:53 2011 -0400 USB: UHCI: don't try to revive a dead controller This patch (as1457) abandons the curious strategy of declaring a controller dead following hibernation merely in order to reset and then revive it. The core no longer allow dead controllers to spring back to life when the system resumes, so there's no reason to declare a working controller temporarily dead. Instead we do an explicit reset. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 7d670a2ed770a3405a7edb1159e3fa9b3f43fe46 Author: Alan Stern Date: Tue Apr 5 13:36:04 2011 -0400 USB: UHCI: remove uses of hcd->state This patch (as1456) removes all uses of hcd->state from the uhci-hcd driver, as part of the overall strategy to eliminate hcd->state completely. Now when a controller dies we call usb_hc_died() directly, instead of relying on the core interrupt handler to see that hcd->state has changed to HC_STATE_HALT and make the call for us. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 4661ffc91befc8c5ee080720120da1d53851060a Author: Felipe Balbi Date: Thu Apr 7 10:59:34 2011 +0300 usb: don't enter usb subdirectories directly Instead, make we enter usb/ directory on all needed cases and enter the subdirectories from drivers/usb/Makefile. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman commit 3ab810f19d71f4083be44b41770bcd784ff82e51 Author: Randy Dunlap Date: Fri Apr 1 11:24:30 2011 -0700 usb gadget: fix all Section mismatch warnings Fix 41 occurrences of this type of Section mismatch warning in g_mass_storage, g_serial, g_cdc, g_multi, g_nokia, g_ether, g_ffs: (the 75 number reported earlier contained some duplicates.) WARNING: drivers/usb/gadget/g_mass_storage.o(.text+0x687a): Section mismatch in reference from the function fsg_bind() to the function .devinit.text:usb_ep_autoconfig() The function fsg_bind() references the function __devinit usb_ep_autoconfig(). This is often because fsg_bind lacks a __devinit annotation or the annotation of usb_ep_autoconfig is wrong. Also remove __devinit from usb_ep_autoconfig_reset() to prevent possible section mismatch problems with it. Signed-off-by: Randy Dunlap Cc: Alan Stern Signed-off-by: Greg Kroah-Hartman commit ad7c56f07e24c758d78e797ceeb9cf049dec66aa Author: Mike Frysinger Date: Tue Mar 22 15:35:39 2011 -0400 USB: sl811: add Kconfig option for ISOCHRONOUS mode Some bluetooth dongles want ISO mode, and the limited support that the sl811 offers today is sufficient. So add a Kconfig option for people to optionally get access to the partial functionality. Signed-off-by: Mike Frysinger Signed-off-by: Greg Kroah-Hartman commit ee81b3e086c907a3347b15ef219a24fc8bf900f6 Author: Alan Stern Date: Fri Mar 25 11:46:27 2011 -0400 USB: g_file_storage: don't send padding when stall=n This patch (as1455) removes the extra padding sent by g_file_storage and g_mass_storage when the gadget wants to send less data than requested by the host and isn't allowed to halt the bulk-IN endpoint. Although the Bulk-Only Transport specification requires the padding to be present, it isn't truly needed since the transfer will be terminated by a short packet anyway. Furthermore, many existing devices don't bother to send any padding. Signed-off-by: Alan Stern Acked-By: Michal Nazarewicz CC: Roger Quadros Signed-off-by: Greg Kroah-Hartman commit edf847decc4159128041d2a81f8d93e6eb567ecb Author: Libor Pechacek Date: Fri Mar 25 09:36:49 2011 +0100 USB: remove dead code from usb_deregister_dev() The `name' variable is unused in usb_deregister_dev() since commit d6e5bcf (devfs: Remove the mode field from usb_class_driver as it's no longer needed). Signed-off-by: Libor Pechacek Signed-off-by: Greg Kroah-Hartman commit 806e8f8fcc27e1753947bd9f059ba2316cf8f92a Author: Mian Yousaf Kaukab Date: Thu Mar 24 12:20:13 2011 +0100 usb: usb_storage: do not align length of request for CBW to maxp size Mass-storage and file-storage gadgets align the length to maximum-packet-size when preparing the request to receive CBW. This is unnecessary and prevents the controller driver from knowing that a short-packet is expected. It is incorrect to set short_not_ok when preparing the request to receive CBW. CBW will be a short-packet so short_not_ok must not be set. This makes bh->bulk_out_intended_length unnecessary so it is also removed. Signed-off-by: Mian Yousaf Kaukab Acked-by: Michal Nazarewicz Acked-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 088c64f812847b3623b03d167ed329f90f3e38a4 Author: Johan Hovold Date: Fri Mar 25 11:06:02 2011 +0100 USB: cdc-acm: re-write read processing Kill rx tasklet, which is no longer needed, and re-write read processing. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 74f5e1babde76149c2bb35ca5dbf4d0b9b38f161 Author: Johan Hovold Date: Tue Mar 22 11:12:23 2011 +0100 USB: cdc-acm: clean up read urb allocation Allocate read urbs and read buffers in the same loop during probe. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 94d4c8919de3ae9e2e029ed121adfed43803bb5d Author: Johan Hovold Date: Tue Mar 22 11:12:22 2011 +0100 USB: cdc-acm: clean up open error handling No need to kill ctrl urb on errors as this is done later during close. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit dab54c9f1e26f47a3313300bc1f4dc0eecb47375 Author: Johan Hovold Date: Tue Mar 22 11:12:21 2011 +0100 USB: cdc-acm: clean up rx_buflimit references Clean up references to rx_buflimit. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 6fb6b8846458afb7b5689f86cf35705c40eb70e5 Author: Johan Hovold Date: Tue Mar 22 11:12:20 2011 +0100 USB: cdc-acm: remove unused drain-delay code The drain-delay code is no longer used, so remove it. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 3a42610812c55e8a60e2660e01c6cb6eb01d4171 Author: Johan Hovold Date: Tue Mar 22 11:12:19 2011 +0100 USB: cdc-acm: remove superfluous prototype Remove unnecessary acm_tty_chars_in_buffer prototype. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit a2c7b9353e8f782590852052fe2948692020147e Author: Johan Hovold Date: Tue Mar 22 11:12:18 2011 +0100 USB: cdc-acm: remove version information and changelog Remove driver version and changelog which can be retrieved from git history. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 5e9e75f8bd97864d552ec2b8d1a00e2b3012a6b3 Author: Johan Hovold Date: Tue Mar 22 11:12:17 2011 +0100 USB: cdc-acm: use dev_vdbg in read/write paths Replace dev_dbg with verbose dev_vdbg in read/write paths where appropriate. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 4fa4626cd43679dc62a73ee3e347665e761abc9c Author: Johan Hovold Date: Tue Mar 22 11:12:16 2011 +0100 USB: cdc-acm: clean up verbose debug Clean up use of verbose debug. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit a5cc7ef92f69a88a1984cc3e09f6c19656efeb2e Author: Johan Hovold Date: Tue Mar 22 11:12:15 2011 +0100 USB: cdc-acm: replace dbg macros with dev_dbg Replace all remaining instances of dbg with dev_dbg. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 1d9846e505febb71255b098910ace741433312b7 Author: Johan Hovold Date: Tue Mar 22 11:12:14 2011 +0100 USB: cdc-acm: clean up dev_err and dev_dbg Clean up some dev_err and dev_dbg messages and make sure that the appropriate interface device is used for reporting consistently throughout. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 255ab56c5ae30165d506b837f6576944a02ecdf0 Author: Johan Hovold Date: Tue Mar 22 11:12:13 2011 +0100 USB: cdc-acm: use dev_err to report failed allocations Upgrade out-of-memory dev_dbg to dev_err. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit 59d7fec7c6908604862658a3679ac44c2c3eea44 Author: Johan Hovold Date: Tue Mar 22 11:12:12 2011 +0100 USB: cdc-acm: add missing newlines to dev_dbg and dev_err Add missing newline to two dev_dbg and dev_err messages. Signed-off-by: Johan Hovold Signed-off-by: Greg Kroah-Hartman commit bce1a702ed9bd9aa3549352b3134e110bf076586 Author: Dmitry Torokhov Date: Sun Mar 20 02:02:39 2011 -0700 USB: change the way we initialize format strings Changing initialization from static const char *string = "blah"; to static const char string[] = "blah"; saves us one pointer per each string. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman commit 2f98382dcdfe1f0048b447da35f34507ffb514dc Author: Kuninori Morimoto Date: Tue Apr 5 11:40:54 2011 +0900 usb: renesas_usbhs: Add Renesas USBHS Gadget This patch add usb gadget code to SuperH USBHS. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit f1407d5c66240b33d11a7f1a41d55ccf6a9d7647 Author: Kuninori Morimoto Date: Mon Apr 4 13:44:59 2011 +0900 usb: renesas_usbhs: Add Renesas USBHS common code Renesas SuperH has USBHS IP which can switch Host / Function. This driver is designed so that Host / Function may dynamically change. This patch add usb/renesas_usbhs and common code for SuperH USBHS. Signed-off-by: Kuninori Morimoto Signed-off-by: Greg Kroah-Hartman commit 280f294f7bd0c14d9f802a551c95dc930e31d723 Author: Gustavo F. Padovan Date: Wed Apr 13 19:01:22 2011 -0300 Bluetooth: Don't lock sock inside l2cap_get_sock_by_scid() Fix an locking issue with the new l2cap_att_channel(). l2cap_att_channel() was trying to lock a locked socket. Reported-by: Anderson Lizardo Signed-off-by: Gustavo F. Padovan commit 4d42d417be75d750b82798922b6e775915e11bce Author: Ben Hutchings Date: Wed Apr 13 14:48:55 2011 -0700 rndis_host: Poll status before control channel where necessary Some RNDIS devices don't respond on the control channel until polled on the status channel. In particular, this was reported to be the case for the 2Wire HomePortal 1000SW and for some Windows Mobile devices. This is roughly based on a patch by John Carr which is currently applied by Mandriva. Reported-by: Mark Glassberg Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit a3e6b12c0232748658a602eda39f12fddb254ba8 Author: cozybit Inc Date: Wed Apr 13 11:10:28 2011 -0700 mac80211: Allocate new mesh path and portal tables before taking locks It is unnecessary to hold the path table resize lock while allocating a new table. Allocate first and take lock later. This resolves a soft-lockup: [ 293.385799] BUG: soft lockup - CPU#0 stuck for 61s! [kworker/u:3:744] (...) [ 293.386049] Call Trace: [ 293.386049] [] do_raw_read_lock+0x26/0x29 [ 293.386049] [] _raw_read_lock+0x8/0xa [ 293.386049] [] mesh_path_add+0xb7/0x24e [ 293.386049] [] ? mesh_path_lookup+0x1b/0xa6 [ 293.386049] [] hwmp_route_info_get+0x276/0x2fd [ 293.386049] [] mesh_rx_path_sel_frame+0x5a/0x5d9 [ 293.386049] [] ? update_curr+0x1cf/0x1d7 [ 293.386049] [] ieee80211_mesh_rx_queued_mgmt+0x60/0x67 [ 293.386049] [] ieee80211_iface_work+0x1f0/0x258 (...) Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 09d5b94d2cbc6c3ebb70a9a318f6390d0b4cf010 Author: Sujith Manoharan Date: Wed Apr 13 11:27:06 2011 +0530 ath9k_htc: Enable AP and P2P modes Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit fbc29d6c3da58bc51416f65a50bdb419d4ea85b8 Author: Sujith Manoharan Date: Wed Apr 13 11:26:58 2011 +0530 ath9k_htc: Add detailed firmware statistics New debugfs files: /ath9k_htc//tgt_int_stats /ath9k_htc//tgt_tx_stats /ath9k_htc//tgt_rx_stats Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 821f9414c0546fbc99a999e9dc613d1756e1de8a Author: Sujith Manoharan Date: Wed Apr 13 11:26:52 2011 +0530 ath9k_htc: Use helper routines for transmission Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 2f80194c90caea3668d0e3739518bf100449a813 Author: Sujith Manoharan Date: Wed Apr 13 11:26:46 2011 +0530 ath9k_htc: Use separate URB pool for management frames Beacon transmission needs to involve as little latency as possible after receiving a SWBA event from the target. Since packets are buffered to use TX stream mode, beacon frames sometimes gets queued up and are not sent out immediately. Fix this by decoupling management frame transmission from the normal data path and send them out immediately. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 859c3ca1e4608615788dc6cbc199210fe4b5efa2 Author: Sujith Manoharan Date: Wed Apr 13 11:26:39 2011 +0530 ath9k_htc: Add a timer to cleanup WMI events Occasionally, a WMI event would arrive ahead of the TX URB completion handler. Discarding these events would exhaust the available TX slots, so handle them by running a timer cleaning up such events. Also, timeout packets for which TX completion events have not arrived. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit c4d04186c7023d54445b695da226b3e98e0a55f9 Author: Sujith Manoharan Date: Wed Apr 13 11:26:31 2011 +0530 ath9k_htc: Add a debugfs file showing endpoint status Location: ath9k_htc/phy#/queue Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 01f684de7cc0641a9ee968f2d2c45c3a67241252 Author: Sujith Manoharan Date: Wed Apr 13 11:26:26 2011 +0530 ath9k_htc: Add a debugfs file to dump TX slot information Location: ath9k_htc/phy#/slot Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 27876a29de221186c9d5883e5fe5f6da18ef9a45 Author: Sujith Manoharan Date: Wed Apr 13 11:26:18 2011 +0530 ath9k_htc: Add support for TX completion Now that the infrastructure is in place, process WMI TX status events and complete packets. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 84c9e164468bd707e52b440e1c34bc3c85299332 Author: Sujith Manoharan Date: Wed Apr 13 11:26:11 2011 +0530 ath9k_htc: Drain packets on station removal When a station entry is removed, there could still be pending packets destined for that station in the HIF layer. Sending these to the target is not necessary, so drain them in the driver itself. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit e1fe7c38d39f8f6ebdffc3a55e2ec6e2ec0d1872 Author: Sujith Manoharan Date: Wed Apr 13 11:26:06 2011 +0530 ath9k_htc: Optimize HTC start/stop API There is no point in looping over all the endpoints, since the HIF layer uses the start/stop APIs only for the TX pipe. Simplify the API accordingly. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit b587fc81a80b9656f64e89fe0a106ffa4b35abca Author: Sujith Manoharan Date: Wed Apr 13 11:25:59 2011 +0530 ath9k_htc: Drain pending TX frames properly When doing a channel set or a reset operation the pending frames queued up for transmission have to be flushed and sent to mac80211. Fixing this has to be done in two separate steps: * Flush queued frames and kill the URB TX completion handler. * Complete all the frames that in the TX pending queue. This patch adds proper support for draining and all the callsites namely, channel change/reset/idle/stop are fixed. A separate queue is used for handling failed frames. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit f2820f4583b233827f10d91adea70225e196d852 Author: Sujith Manoharan Date: Wed Apr 13 11:25:54 2011 +0530 ath9k_htc: Use helper functions for TX processing Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 2c5d57f004673a9c8658e20b1fa3f992b5a10f70 Author: Sujith Manoharan Date: Wed Apr 13 11:25:47 2011 +0530 ath9k_htc: Add TX slots Maintain a bitmap of slots for transmission and update the cookie field for every packet with the slot value. This value would be used for matching packets when TX completion processing is added. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 729bd3ab460d3bb8236cc8f6fd0289201124112d Author: Sujith Manoharan Date: Wed Apr 13 11:25:41 2011 +0530 ath9k_htc: Move endpoint header parsing to TX tasklet There is no need to do endpoint header removal in the ISR. Also, this is needed when TX slot management is added later on. Use a helper function to strip the driver header. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit d67ee5339363608adce786ec8fd62a0fb2b66116 Author: Sujith Manoharan Date: Wed Apr 13 11:25:35 2011 +0530 ath9k_htc: Introduce new HTC API A new routine that takes an endpoint explicitly is introduced. The normal htc_send() now retrieves the endpoint from the packet's private data. This would be useful in TX completion when the endpoint ID would be required. While at it, use a helper function to map the queue to endpoint. Data/mgmt/beacon packets use htc_send(), while WMI comamnds pass the endpoint to HTC. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 8e86a54715c4102a8ed697939de9ebd9715dc59c Author: Sujith Manoharan Date: Wed Apr 13 11:25:29 2011 +0530 ath9k_htc: Fix TX queue management Handle queue start/stop properly by maintaining a counter to check if the pending frame count has exceeded the threshold. Otherwise, packets would be dropped needlessly. While at it, use a simple flag to track queue status and use helper functions too. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 3deff76095c4ac4252e27c537db3041f619c23a2 Author: Sujith Manoharan Date: Wed Apr 13 11:25:23 2011 +0530 ath9k_htc: Increase URB count for REG_IN pipe Using a single URB for receiving WMI events is insufficient, increase it to 64 to not lose WMI events in high throughput situations. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 16c56ae87509d9bbcd8c711dc4f99b38c234d6c5 Author: Sujith Manoharan Date: Wed Apr 13 11:25:18 2011 +0530 ath9k_htc: Add a new WMI event WMI_TXSTATUS_EVENTID This event will be generated by the target for packet completions. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit e8e3860765641d5e9d1607ec50191cb33c28371d Author: Sujith Manoharan Date: Wed Apr 13 11:25:12 2011 +0530 ath9k_htc: Sync MGMT/DATA packet headers with firmware Add a new cookie field that would be filled by the host. This can be used to match the TX status WMI event with the appropriate packet. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 15f6d6d52fe0d9fcf8c09788caff5d1684e5f12c Author: Sujith Manoharan Date: Wed Apr 13 11:25:06 2011 +0530 ath9k_htc: Reduce TX queue size The current max queue length of 1024 is quite large and unnecessary. 256 suffices well enough even for high throughput situations. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 658ef04fd42a587b17a379ad9208023473442ddd Author: Sujith Manoharan Date: Wed Apr 13 11:25:00 2011 +0530 ath9k_htc: Move TX specific stuff to a separate structure Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit ee3fa1bdadd998652083a7814af745f765a06a25 Author: Sujith Manoharan Date: Wed Apr 13 11:24:55 2011 +0530 ath9k_htc: Remove unused WMI_WLAN_TXCOMP_EVENTID Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 0a8579f6b7c3f4332ad9eb6615c7631ef9cd4ed6 Author: Sujith Manoharan Date: Wed Apr 13 11:24:49 2011 +0530 ath9k_htc: Sync struct ath9k_htc_cap_target with FW Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit e4c62506fcfa7c1fa7c586ab518a172c3a65db0f Author: Sujith Manoharan Date: Wed Apr 13 11:24:43 2011 +0530 ath9k_htc: Sync struct ath9k_htc_target_vif with FW Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit b97c57ff3f568b33ed91915f48431feae2dab288 Author: Sujith Manoharan Date: Wed Apr 13 11:24:37 2011 +0530 ath9k_htc: Sync struct ath9k_htc_target_sta with FW Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 40dc9e4b86963b77918f1b8fa02b98c1e420a7e1 Author: Sujith Manoharan Date: Wed Apr 13 11:24:31 2011 +0530 ath9k_htc: Use SKB's private area for TX parameters For all packets sent through the USB_WLAN_TX_PIPE endpoint, the private area of the SKB's tx_info can be used to store driver-specific information. For packets sent through USB_REG_OUT_PIPE, this will not make a difference since they are routed through a separate routine that doesn't access the private region. This would help in situations where TX information is required in the URB callback. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit e723f3900c3b23feb427672c6ccfe5d4243d2c2d Author: Sujith Manoharan Date: Wed Apr 13 11:24:25 2011 +0530 ath9k_htc: Remove unused WMI commands WMI_TGT_TXQ_ENABLE_CMDID WMI_HOST_ATTACH WMI_DEBUG_INFO_CMDID WMI_BEACON_UPDATE_CMDID WMI_RESET_CMDID WMI_RX_LINK_CMDID WMI_STOP_DMA_RECV_CMDID Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit b1563a4c3d721cb0496b8e1fb874f08a8f2b62cc Author: Sujith Manoharan Date: Wed Apr 13 11:24:19 2011 +0530 ath9k_htc: Fix RX length check The length of the received SKB could be equal to HTC_RX_FRAME_HEADER_SIZE in case of packets with phy/crc errors, in which case they are dropped without being processed. Fix this check so that the error counters are updated correctly. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 719c4cf6b1b113e9caf377c6607ae45758a85871 Author: Sujith Manoharan Date: Wed Apr 13 11:24:10 2011 +0530 ath9k_htc: Add RX error statistics Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 8e42e4ba98f986be64016df79eacbb671dbd3d18 Author: Sujith Manoharan Date: Wed Apr 13 11:24:00 2011 +0530 ath9k_htc: Move debug code to a separate file Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit f4c88991f51e097b6541f998fd23d477999e5886 Author: Sujith Manoharan Date: Wed Apr 13 11:23:52 2011 +0530 ath9k_htc: Queue WMI events Use a queue to handle WMI events and schedule a tasklet to process the events. This fixes the race between the WMI event ISR and the SWBA tasklet when the arrival of WMI events in quick succession could overwrite the SWBA data before the tasklet from a previous iteration could have been scheduled. Also, drain the WMI queue properly. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit b0a6ba983e3663bf256ca2e79d17bb846878cd9e Author: Sujith Manoharan Date: Wed Apr 13 11:23:44 2011 +0530 ath9k_htc: Fix beacon miss under heavy load Transmission of beacons becomes erratic when TX load is high, since the latency involved in the generation of a SWBA interrupt on the target to the actual sending of a beacon is quite high for USB devices. Fix this by adjusting the beacon response time. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 7d547eb4bb664c5a6b7c8790c2ecb0aec5d15385 Author: Sujith Manoharan Date: Wed Apr 13 11:23:34 2011 +0530 ath9k_htc: Handle buffered frames in AP mode Use the CAB endpoint to send buffered multicast or broadcast frames after each SWBA event. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 2493a547ee81e6daca812d5dd7cf9357aebc379b Author: Sujith Manoharan Date: Wed Apr 13 11:23:26 2011 +0530 ath9k_htc: Configure the beacon queue Set operating parameters (cwmin, cwmax) for the beacon queue in AP mode. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 9b674a0207c9b75ddcdcdb07e46843fac8267507 Author: Sujith Manoharan Date: Wed Apr 13 11:23:17 2011 +0530 ath9k_htc: Add TSF adjust capability In multi-interface mode, beacons/probe responses that are sent out must have their timestamp field updated. Calculate the TSF adjustment value for each beaconing interface and set it in the frame properly. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 832f6a18fc2aead14954c081ece03b7a5b425f81 Author: Sujith Manoharan Date: Wed Apr 13 11:23:08 2011 +0530 ath9k_htc: Add beacon slots Beacon transmission is now handled through a slot mechanism. This allows multiple beaconing interfaces to be be present. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 1c165c972b040f9ce199b8d8d3cc4f619872cba5 Author: Sujith Manoharan Date: Wed Apr 13 11:22:59 2011 +0530 ath9k_htc: Fix WMI and beacon header Match the beacon header with that of the firmware. Also, the firmware reports the TSF for an SWBA, so store it. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 29bbfb2491316f9a3888e74b0de7fccdbde67aaa Author: Sujith Manoharan Date: Wed Apr 13 11:22:51 2011 +0530 ath9k_htc: Add a WMI command to get the firmware version Also, update the wiphy information and use the correct device pointer when registering. This would fix ethtool. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit ce18f391aa872a910e7798c340b6cf22d02c77a2 Author: Sujith Manoharan Date: Wed Apr 13 11:22:42 2011 +0530 ath9k_htc: Rename firmware Since the new FW requires backward incompatible host driver changes, rename the FW to allow older driver versions to work with the older FW. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit 9efabad2b228ef820f5ce969baa62860cf65b9ea Author: Sujith Manoharan Date: Wed Apr 13 11:22:33 2011 +0530 ath9k_htc: Remove AR7010 v1.0 support All the AR7010 devices supoprted by ath9k_htc are based on version v1.1, so remove support for v1.0. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville commit d0805c1c5758f8fd16c88bf1efa8fb4be4408ce1 Author: Brian Cavagnolo Date: Tue Apr 12 11:06:28 2011 -0700 mwl8k: use traffic threshold to decide when to start ampdu Currently, ampdu stream is created on the first qos packet to an HT sta. The overhead of setting up the BA session may not be justified if the outgoing packet rate is minimal (e.g., ping). So we only allow ampdu streams after seeing a critical number of packets in an arbitrary one-second interval. Based on work by Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 4114fa21465ec7ee9526173676d3122a98bbbbd8 Author: Felix Fietkau Date: Tue Apr 12 19:15:22 2011 +0200 mac80211: receive EAP frames from a station in an AP VLAN on the main AP This makes it easier to handle moving stations to VLAN interfaces that are part of a different bridge. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 8e26a0303614e766f993b1ac4a5bfbf80436d9dd Author: Gabor Juhos Date: Tue Apr 12 18:23:16 2011 +0200 ath9k: introduce ATH9K_{PCI,AHB} config options Currently ath9k only available in menuconfig if PCI bus support is enabled. However the driver is required for the built-in wireless MACs of the Atheros AR9130/AR9132 SoCs. These SoCs have no PCI controller, the wireless MAC is connected to the AHB bus on them. Introduce separated config options for the supported buses, in order to allow building of ath9h without PCI bus support. As a bonus, this patch removes the cross-reference of the ATHEROS_AR71XX option which is not present in the kernel. Cc: Luis R. Rodriguez Cc: Vasanthakumar Thiagarajan Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville commit 12488e01fb2b06bb3f6ee137efc88e29d827817e Author: Nishant Sarmukadam Date: Fri Apr 8 14:38:27 2011 +0530 mwl8k: interrupt handling changes We do not need to enable all the interrupts in mwl8k_probe_hw. We need to enable only MWL8K_A2H_INT_OPC_DONE interrupt for sending commands to the firmware. Keep the other interrupts masked in mwl8k_probe_hw. Also, in mwl8k_start, where we expect other interrupts, enable only those interrupts we are interested in. Signed-off-by: Nishant Sarmukadam Signed-off-by: John W. Linville commit 32235b07b52e948900613e27c5cbd955d084ae8a Merge: 59c23ea a6360dd Author: Greg Kroah-Hartman Date: Wed Apr 13 12:14:05 2011 -0700 Staging: merge 2.6.39-rc3 into staging-next This was done to handle a number of conflicts, the majority of which were caused by the big "fix spelling issues" patch. Signed-off-by: Greg Kroah-Hartman commit 74ae2fd7d326750d973920c30d5269596724ca71 Author: Giuseppe Cavallaro Date: Wed Apr 13 11:51:43 2011 -0700 stmmac: review Wol and enable the Unicast support Signed-off-by: Giuseppe Cavallaro Signed-off-by: David S. Miller commit b19f7f71b6fa5e0c49f65082044b8a2ff1009f00 Author: Alexander Stein Date: Wed Apr 13 05:03:24 2011 +0000 macb: Add rx overrun counter Signed-off-by: Alexander Stein Signed-off-by: David S. Miller commit 8b5933c380fc66a6311739f9b36a812383f82141 Author: amit salecha Date: Thu Apr 7 01:58:42 2011 +0000 net: ethtool support to configure number of channels Ethtool support to configure RX, TX and other channels. combined field in struct ethtool_channels to reflect set of channel (RX, TX or other). Other channel can be link interrupts, SR-IOV coordination etc. ETHTOOL_GCHANNELS will report max and current number of RX channels, max and current number of TX channels, max and current number of other channel or max and current number of combined channel. Number of channel can be modify upto max number of channel through ETHTOOL_SCHANNELS command. Ben Hutchings: o define 'combined' and 'other' types. Most multiqueue drivers pair up RX and TX queues so that most channels combine RX and TX work. o Please could you use a kernel-doc comment to describe the structure. Signed-off-by: Amit Kumar Salecha Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit f030d60b30855e18ac5bf080fa9e576147623d18 Merge: 6744791 6caa15d Author: Mark Brown Date: Wed Apr 13 10:37:18 2011 -0700 Merge branch 'for-2.6.39' into for-2.6.40 commit 674479124f8cbc4b5507d914ccd63ad08fd5326e Author: Lars-Peter Clausen Date: Tue Apr 12 19:33:29 2011 +0200 ASoC: codecs: JZ4740: Convert to table based controls and DAPM setup Use the newly introduced dapm_widgets, dpam_routes and controls fields of the snd_soc_dai_driver struct to setup controls and DAPM. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 621206b76825f24ccb650b9f59c18c17f6760a4c Author: Lars-Peter Clausen Date: Tue Apr 12 19:31:05 2011 +0200 ASoC: JZ4740: qi_lb60: Use the SND_SOC_DAPM_EVENT_OFF for the speakers status Use SND_SOC_DAPM_EVENT_OFF for determining whether the speaker should be turned on or off instead of open coding it. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c6f0ede7c563497f6d7fef847a965d7fd63d86f9 Author: Lars-Peter Clausen Date: Tue Apr 12 19:31:04 2011 +0200 ASoC: JZ4740: qi_lb60: Use gpio_request_array to request and setup gpios This patch changes the qi_lb60 setup code to use gpio_request_array instead of manually calling gpio_request and gpio_direction_output for each gpio. Doing so makes the code a bit more compact. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 13319699113a78e90625ece124666d3ee53033f6 Author: Lars-Peter Clausen Date: Tue Apr 12 19:31:03 2011 +0200 ASoC: JZ4740: Convert qi_lb60 codec to table based DAPM setup Use the newly introduced dapm_widgets, dpam_routes and fields of the snd_soc_card struct to setup DAPM. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit d06e48db1670b29b3f62f1dfe4a36af237d5aa0d Author: Lars-Peter Clausen Date: Tue Apr 12 19:31:01 2011 +0200 ASoC: Make struct snd_soc_card's dapm_widgets and dapm_routes const Those should not be modified (and are not) by the core code, so make them const. This also makes them consistent with the same members of snd_soc_codec. Signed-off-by: Lars-Peter Clausen Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit ec5af076f53da800eef939ab092561d85f162637 Merge: b7a5d14 1fdf9b4 Author: Mark Brown Date: Wed Apr 13 10:33:52 2011 -0700 Merge branch 'for-2.6.39' into for-2.6.40 commit b7a5d14c607093de1a030e9933bc8c95ab2afd3f Author: Mark Brown Date: Tue Apr 12 17:37:52 2011 -0700 ASoC: Mark Speyside widgets as ignoring suspend Allow audio paths through the Speyside system to be kept active while the system is suspended (for example, when on a voice call) by marking all the external widgets and the DAI link to the WM1250-EV1 baseband module as ignoring suspend. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 556e4fb1d801b0f977b1522e14fb06e2f3059f4c Author: Mark Brown Date: Tue Apr 12 14:15:10 2011 -0700 ASoC: Add stub baseband link on Speyside Demonstrate the connection of a baseband to the system. We add a DAI for the link to the baseband. This will become visible to the application layer - audio should be started from the application layer using an application such as this: http://opensource.wolfsonmicro.com/~gg/bluetooth-pcm/bluetooth_pcm.c which starts up audio as for CPU based playback and record up to the point where data is streamed. Due to non-availability of baseband simulation hardware we reuse the configuration for the CPU link with the CODEC acting as clock master, allowing signals to be observed with a scope. A more standard system would have separate configuration for the baseband with its own ops structure and operations. Normally the baseband would be clock master as the baseband audio will be synchronised to the external telephony network. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit ea0e60de385a984ab54d6694b03119d1706f548e Author: Mark Brown Date: Tue Apr 12 00:09:53 2011 -0700 ASoC: Add pin switches for fixed analogue inputs and outputs on Speyside Pin switches enable direct control of the DAPM state from userspace, enabling simple enabling and disabling of the path. This is especially useful for outputs such as the speaker which are composed of several physical devices as it allows them to be controlled as a group. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 68688e78ed4bc8d1a811ca29e2f8681561706db3 Author: Mark Brown Date: Tue Apr 12 00:00:36 2011 -0700 ASoC: Add Speyside headset jack detection support Speyside makes use of support the WM8915 has for detecting the polarity of the microphone and ground connections on headsets, using a GPIO to control the polarity of the ground connection and switching between the two microphone bias supplies available on the device in order to do so. As a result of this the detection support is more involved than for most other CODECs, using a callback to configure the current polarity of the jack and translate this into the board-specific connections required for the current scenario. On Android some additional work is required to hook this up to the application layer as the Android HeadsetObserver monitors a custom drivers/switch API rather than the standard Linux APIs. This can be done by either updating HeadsetObserver or modifying the ALSA core to report via drivers/switch as well. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit ea3e98e75a6f38522450b66e22e34267977915ef Author: Mark Brown Date: Mon Apr 11 23:42:25 2011 -0700 ASoC: Support the sub speaker driver on Speyside Speyside includes a WM9081 configured as an external speaker driver taking an analogue input from HPOUT2 on the WM8915 on the system. Add support for this to the driver, using a prefix of "Sub" for the WM9081 controls to ensure we avoid collisions with controls on the WM8915. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit ea0a591a28b9249ea585f2cf8045e43f57f48fbb Author: Mark Brown Date: Mon Apr 11 23:32:03 2011 -0700 ASoC: Optimise clock management for WM8915 Speyside Dynamically enable and disable the FLL on the WM8915, configuring the system clock to 256fs for 48kHz when the device is active but reverting to using the input 32.768kHz clock directly at other times to support features such as jack detection with minimal power consumption. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit ecfb1adf5f037eaff0b678918d84a8febd9f1c3e Author: Mark Brown Date: Mon Apr 11 23:09:15 2011 -0700 ASoC: Add basic widgets for WM8915 Speyside Provide widgets for the basic widgets connected directly to the WM8915 on Speyside - the headphones, speaker, digital and analogue microphones. For the outputs this is just documentation, for the inputs this ensures that the relevant microphone biases are enabled when they are in use. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 9b8dc66fbae53def2547df8c0a5cbe8924ea2b1f Author: Mark Brown Date: Tue Apr 12 17:24:39 2011 -0700 ASoC: Initial audio support for Speyside on Cragganmore 6410 This is minimal code required to get audio out of the Speyside audio subsystem on the Wolfson Cragganmore 6410 reference platform. It sets up the link between the CPU and AIF1 of the WM8915 on the system, enabling audio playback via the headphone and speaker outputs of the device (which require no further configuration except runtime). It allows verification of basic functionality of the system. Signed-off-by: Mark Brown Acked-by: Jassi Brar Acked-by: Liam Girdwood commit 9a841ebb9cac3f1b7253bb01c304f89b1af25aba Author: Mark Brown Date: Tue Apr 12 17:51:37 2011 -0700 ASoC: Create card DAPM widgets early so they can be used in callbacks This helps with things like setting up the initial state. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 01b07e2d84c887b432353ead846f4497a33b5f5d Author: Mark Brown Date: Mon Apr 11 23:39:10 2011 -0700 ASoC: Move WM8915 FLL operations onto the CODEC Since the WM8915 FLL is not tied to a particular audio interface move it to a CODEC wide operation. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 9f72c1d977e47a7d182d49ea131067cba0a96ab8 Author: Kevin Gan Date: Fri Apr 8 18:19:33 2011 -0700 Bluetooth: btmrvl: support Marvell Bluetooth device SD8787 The SD8787 firmware image is shared with mwifiex driver. Whoever gets loaded first will be responsible for firmware downloading. Signed-off-by: Kevin Gan Signed-off-by: Tristan Xu Signed-off-by: Bing Zhao Signed-off-by: Gustavo F. Padovan commit b86ed368f1f0b19de1918c57e4b056e73d5613a0 Author: Gustavo F. Padovan Date: Thu Apr 7 18:53:45 2011 -0300 Bluetooth: Check return value of hci_recv_stream_fragment() It may return error and in this case we do add to the stats. Signed-off-by: Gustavo F. Padovan commit 78b4a56c28c096a1eb02f1d864eb450eb910e43d Author: Jiejing Zhang Date: Thu Apr 7 20:37:06 2011 +0800 Bluetooth: hci_uart: check the return value of recv() Check the return value of hu->proto->recv() in hci_uart_tty_receive() the recv() may return error, check it, not add this to statistics. Signed-off-by: Jiejing Zhang Signed-off-by: Gustavo F. Padovan commit e1ba1f15469903b6f443fbf00f069d169e3fba6d Author: Szymon Janc Date: Wed Apr 6 13:01:59 2011 +0200 Bluetooth: Fix Out Of Band pairing when mgmt interface is disabled Use kernel stored remote Out Of Band data only if management interface is enabled. Otherwise HCI_OP_REMOTE_OOB_DATA_NEG_REPLY was sent to controller even if remote Out Of Band data was present in bluetoothd. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 9f69bda6aa8b365169b4a6fd35432ee40574d661 Author: Gustavo F. Padovan Date: Thu Apr 7 16:40:25 2011 -0300 Bluetooth: Add proper handling of received LE data Despite it works, handling through l2cap_data_channel() is wrongs. That function should handle only connection oriented data. Signed-off-by: Gustavo F. Padovan commit 0733119c0bed37eda4bb832d049939a0dc53a233 Author: Gustavo F. Padovan Date: Tue Apr 5 22:29:31 2011 -0300 Bluetooth: Clean up ath3k_load_firmware() Signed-off-by: Gustavo F. Padovan commit cd69a03af1106c486033df600c7945957ea5abeb Author: Gustavo F. Padovan Date: Tue Apr 5 15:24:40 2011 -0300 Bluetooth: Fix wrong comparison in listen() We should check for the pi->scid there. Signed-off-by: Gustavo F. Padovan commit 58d35f87effa0235181a24d55576aaa756ef7312 Author: Gustavo F. Padovan Date: Mon Apr 4 16:16:44 2011 -0300 Bluetooth: Move tx queue to struct l2cap_chan tx_q is the queue used by ERTM mode. Signed-off-by: Gustavo F. Padovan commit c916fbe45c1f30417fa28e62cbbfae295a3f315c Author: Gustavo F. Padovan Date: Mon Apr 4 16:00:55 2011 -0300 Bluetooth: Remove unneeded uninitialized_vars() That was unnecessary use of it. Signed-off-by: Gustavo F. Padovan commit 49208c9c7b483098401683fef5cfbd66931ca643 Author: Gustavo F. Padovan Date: Mon Apr 4 15:59:54 2011 -0300 Bluetooth: Remove some sk references from l2cap_core.c Change some BT_DBG messages and consequently remove some struct sock declarations. Signed-off-by: Gustavo F. Padovan commit 39d5a3ee355fa903ef4609402c79f570eb9fc4d2 Author: Gustavo F. Padovan Date: Mon Apr 4 15:40:12 2011 -0300 Bluetooth: Move SREJ list to struct l2cap_chan As part of moving all the Channel related operation to struct l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 8962d87129ec0a820d17ac44cbf3f51010ad8db8 Author: John W. Linville Date: Wed Apr 13 08:47:32 2011 -0400 ath5k: improve comments for optimized tx descriptor setup Comment the use of local variables to reduce the number of load/store operations on uncached memory, in hopes of not losing this optimization accidentally in the future. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 91eb7c08c6cb3b8eeba1c61f5753c56dcb77f018 Author: Jozsef Kadlecsik Date: Wed Apr 13 13:51:38 2011 +0200 netfilter: ipset: SCTP, UDPLITE support added SCTP and UDPLITE port support added to the hash:*port* set types. Signed-off-by: Jozsef Kadlecsik Signed-off-by: Patrick McHardy commit 9d5e6bdb3013acfb311ab407eeca0b6a6a3dedbf Author: Jiri Kosina Date: Wed Apr 13 11:12:34 2011 +0200 ath9k_hw: don't touch with treewide double semicolon removal This is a partial revert of 6eab04a87677 ("treewide: remove extra semicolons"). Wireless tree removes the code in question, so drop the hunk to avoid conflict. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit edb2fd9524cc2a55fb5a2e878b6e4e83f9e63fd0 Author: Antonio Ospite Date: Wed Apr 13 09:45:45 2011 +0200 include/linux/leds-regulator.h: fix syntax in example code Fix struct field initializer syntax in some example code from a comment, this will make copying and pasting the code more straightforward. Signed-off-by: Antonio Ospite Signed-off-by: Jiri Kosina commit 82a58a8b7f293e5bab3dd41ee160867bcad41f37 Author: Peter Ujfalusi Date: Tue Apr 12 09:09:17 2011 +0300 ASoC: tlv320dac33: Lower the OSC calibration time To get correct calibration, we can decrease the time needed for the OSC to calibrate itself. With this change we can save ~15ms in the OSC calibration phase. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit 8b86c1c28f569301aa1a113a060f9ed803300903 Author: Joonyoung Shim Date: Tue Apr 12 23:18:59 2011 -0700 Input: atmel_mxt_ts - convert to MT protocol B Atmel touchscreen chips can use MT protocol B because they can assign unique id to ABS_MT_TRACKING_ID from finger id provided by hardware. Signed-off-by: Joonyoung Shim Reviewed-by: Henrik Rydberg Signed-off-by: Dmitry Torokhov commit 08960a070add74cda8c968b8ace5418a5acf17c3 Author: Iiro Valkonen Date: Tue Apr 12 23:16:40 2011 -0700 Input: atmel_mxt_ts - make CHG line high after enabling interrupts Make the CHG line (interrupt line) go high after the interrupts have been enabled to make sure we don't miss the falling edge. Signed-off-by: Iiro Valkonen Acked-by: Joonyoung Shim Signed-off-by: Dmitry Torokhov commit 910d80513056589d3b12b3aad8598d19e0a0a5bd Author: Joonyoung Shim Date: Tue Apr 12 23:14:38 2011 -0700 Input: atmel_mxt_ts - support 12bit resolution Atmel touchscreen chip can support 12bit resolution and this patch modifies to get maximum x and y size from platform data. Signed-off-by: Joonyoung Shim Acked-by: Iiro Valkonen Signed-off-by: Dmitry Torokhov commit 6139e75f4a413bdc8f366fc11e437347be8abc59 Author: David S. Miller Date: Tue Apr 12 19:27:51 2011 -0700 net: Missing 'inline' in vlan-disabled vlan_untag() Reported-by: Stephen Rothwell Signed-off-by: David S. Miller commit a7e70158884629898d79709622a66b8ef99e4018 Merge: 2474353 252f4bf Author: David S. Miller Date: Tue Apr 12 16:16:02 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 commit 24743537d3f784a8b3014e934fad0a9c45e4e789 Author: David S. Miller Date: Tue Apr 12 16:14:21 2011 -0700 atm: iphase: Fix set-but-not-used warnings. The "iavcc" and "iadev" cases are obvious. The intr_status and frmr_intr cases are reading a register to clear the chip status. This driver is pretty old and creaky, and uses volatile pointer dereferences to do register I/O when it should be using readl() and friends. However that it outside of the scope of these changes. Signed-off-by: David S. Miller commit 095d3da610d4022d341c517c59dd5a5d656d966f Author: David S. Miller Date: Tue Apr 12 15:58:41 2011 -0700 9p: Kill set but unused variable in 9p_client_{read,write}() and p9_client_readdir() Fixes the following warnings: net/9p/client.c:1305:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable] net/9p/client.c:1370:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable] net/9p/client.c:1769:18: warning: variable ‘total’ set but not used [-Wunused-but-set-variable] Signed-off-by: David S. Miller commit 1aac62671686e6234c91b5f6fc4caaa850419d5d Author: Michał Mirosław Date: Tue Apr 12 04:07:39 2011 +0000 net: vlan_features comment clarification Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6d95ff974a4b51121777973ffba7547c648da974 Author: Michał Mirosław Date: Tue Apr 12 09:48:17 2011 +0000 net: ioc3: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 66371c44136b566f39f70c72cb4d117558bee3fa Author: Michał Mirosław Date: Tue Apr 12 09:38:23 2011 +0000 net: bnx2x: convert to hw_features Since ndo_fix_features callback is postponing features change when bp->recovery_state != BNX2X_RECOVERY_DONE, netdev_update_features() has to be called again when this condition changes. Previously, ethtool_ops->set_flags callback returned -EBUSY in that case (it's not possible in the new model). Signed-off-by: Michał Mirosław v5: - don't delay set_features, as it's rtnl_locked - same as recovery process v4: - complete bp->rx_csum -> NETIF_F_RXCSUM conversion - add check for failed ndo_set_features in ndo_open callback v3: - include NETIF_F_LRO in hw_features - don't call netdev_update_features() if bnx2x_nic_load() failed v2: - comment in ndo_fix_features callback Signed-off-by: David S. Miller commit e5ee20e70f078d584572709962f5d90f876912c3 Author: Michał Mirosław Date: Tue Apr 12 09:38:23 2011 +0000 net: bna: convert to hw_features Note: looks like bnad->conf_mutex is duplicating rtnl_lock. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit d1423c7ab847e72a63e0e3512a1a7f3bce55ae01 Author: Michał Mirosław Date: Sun Apr 10 04:49:55 2011 +0000 net: ps3_gelic: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit f5d640371dacda100a32a30e8013f957aff26ce1 Author: Michał Mirosław Date: Sun Apr 10 03:13:21 2011 +0000 net: sky2: convert to hw_features Caveats: - driver modifies vlan_features on HW VLAN TX changes - broken RX checksum will be reenabled on features change Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 872674858fe236b746317741013c830bb70775c2 Author: Michał Mirosław Date: Tue Apr 12 09:56:38 2011 +0000 net: add RTNL_ASSERT in __netdev_update_features() Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit bcc6d47903612c3861201cc3a866fb604f26b8b2 Author: Jiri Pirko Date: Thu Apr 7 19:48:33 2011 +0000 net: vlan: make non-hw-accel rx path similar to hw-accel Now there are 2 paths for rx vlan frames. When rx-vlan-hw-accel is enabled, skb is untagged by NIC, vlan_tci is set and the skb gets into vlan code in __netif_receive_skb - vlan_hwaccel_do_receive. For non-rx-vlan-hw-accel however, tagged skb goes thru whole __netif_receive_skb, it's untagged in ptype_base hander and reinjected This incosistency is fixed by this patch. Vlan untagging happens early in __netif_receive_skb so the rest of code (ptype_all handlers, rx_handlers) see the skb like it was untagged by hw. Signed-off-by: Jiri Pirko v1->v2: remove "inline" from vlan_core.c functions Signed-off-by: David S. Miller commit 6f11c819d5fb24b637f2db605e5d3c270c979627 Author: Vasanthakumar Thiagarajan Date: Tue Apr 12 12:42:22 2011 +0530 ath9k: Register id table for platform device Currently the device id in the platform driver is hardcoded to an id which is specific to AR9130/AR9132 SOCs as it supports only wmac (wireless mac) of these SOCs. But this needs to be dynamic when we want to support different wmac of SOCs. So add id_table to driver to make it extendable to more SOCs. Signed-off-by: Vasanthakumar Thiagarajan Acked-by: Gabor Juhos Signed-off-by: John W. Linville commit b3ba44c6d1633692b45910ee77064e635e2c3143 Author: Mark Davis Date: Tue Apr 12 00:19:10 2011 -0400 rt2800usb: Add seven new USB IDs Adds USB IDs for seven previously missing devices. Additionally, all instances of 'Conceptronic' have been replaced by the OEM name. Devices added are.. 0411:01a2 - Buffalo WLI-UC-GNM, RT3070V 0586:341e - ZyXEL NWD2105, RT3070 13b1:002f - Linksys AE1000, RT3572 13b1:0031 - Cisco / Linksys AM10, RT3072 14b2:3c2c - Keebox W150NU / Alpha Networks WUS-N12, RT3070 157e:3013 - TRENDnet TEW-645UB, RT2770+RT2720 15a9:0012 - Airlink AWLL7025 / Gemtek WUBR-208N, RT2870+RT2850 Signed-off-by: Mark Davis Acked-by: Gertjan van Wingerde Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit 901c1113da1efc98881233a8a67f98286a0b766a Author: Rajkumar Manoharan Date: Mon Apr 11 20:22:30 2011 +0530 ath9k_hw: update AR9003 low_ob_db_tx_gain to improve spur performance Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 5fb32faf821586312dc0b51a64bfa17ad0633daf Author: Rajkumar Manoharan Date: Mon Apr 11 20:22:29 2011 +0530 ath9k_hw: update Ar9003 intervals to fix carrier leak Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 2d05a0c2b4ac614cb5e0eba75d39a37205d129e8 Author: Rajkumar Manoharan Date: Mon Apr 11 20:22:28 2011 +0530 ath9k_hw: Remove unused code in AR9287 eeprom Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 3dfd7f606645279c788f48cfdfdf9565ec72c4f0 Author: Vasanthakumar Thiagarajan Date: Mon Apr 11 16:39:40 2011 +0530 ath9k: Implement integer mode for AR9485 This fixes random disconnect. Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 228bdfca9a09c1263c24509b4bc23a67be168e1a Author: Chaoming Li Date: Sun Apr 10 18:30:23 2011 -0500 rtlwifi: rtl8192ce: Fix LED initialization Driver rtl8192ce does not initialize the LED correctly. Signed-off-by: Chaoming Li Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit f0bce44f5f2eb37dba58aa992d0c58da92ded201 Author: roel Date: Sun Apr 10 21:09:55 2011 +0200 ath9k: index out of bounds Check whether index is within bounds before testing the element Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit 0f8e94d2ae4f7966d09c8105ccabb3b3d8238a4d Author: roel Date: Sun Apr 10 21:09:50 2011 +0200 ath9k_hw: index out of bounds Check whether index is within bounds before testing the element Both spurChans arrays in modalHeader5G and modalHeader2G have 5 elements, AR_EEPROM_MODAL_SPURS is defined 5. So unless a break occurs, in the last iteration (i=5) we tried to access spurChansPtr[5] before testing whether i was within bounds. Fix this. Signed-off-by: Roel Kluin Signed-off-by: John W. Linville commit c266c71a9cbdccb40fb6f4c05d4ddaa6226e5eba Author: Felix Fietkau Date: Sun Apr 10 18:32:19 2011 +0200 ath5k: reduce interrupt load caused by rx/tx interrupts While the rx/tx tasklet is pending, new unnecessary interrupts may arrive. Decrease the load by temporarily disabling the interrupts until the tasklet has completed. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 5b7916ad8c29da9f30fbf03a8b61862acdba00ce Author: Felix Fietkau Date: Sun Apr 10 18:32:18 2011 +0200 ath5k: clean up debugfs code The pointers to the debugfs entries do not need to be saved, because they will be recursively removed when the wiphy is unregistered. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ed8950857f728303a1463ac9267e72c278738bf6 Author: Felix Fietkau Date: Sun Apr 10 18:32:17 2011 +0200 ath5k: remove ts_retry from ath5k_tx_status Reusing the configured retry counts from the skb cb is more efficient than reloading the data from uncached memory. Replace ts_longretry (unused) with ts_final_retry which contains the retry count for the final rate only Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b2fd97d0190a400b49a2f910109a4a492bfea319 Author: Felix Fietkau Date: Sun Apr 10 18:32:16 2011 +0200 ath5k: optimize rx status processing Use ACCESS_ONCE to reduce the number of redundant loads on uncached memory Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b161b89fb97b30233526d31c5f94397ed94ffea6 Author: Felix Fietkau Date: Sun Apr 10 18:32:15 2011 +0200 ath5k: optimize tx status processing Use ACCESS_ONCE to reduce the number of variable reloads on uncached memory Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit fe12081cb664cd5d412dc56de0585a80484b1331 Author: Felix Fietkau Date: Sun Apr 10 18:32:14 2011 +0200 ath5k: remove ts_rate from ath5k_tx_status It is no longer necessary for preparing mac80211 tx status Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit c5e0a88aa2e0f42cdb4c79c977c52f6bc38ec160 Author: Felix Fietkau Date: Sun Apr 10 18:32:13 2011 +0200 ath5k: optimize tx descriptor setup Use local variables to reduce the number of load/store operations on uncached memory. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit b1ad1b6febb7772583c98d9a879fbbdb82a726a7 Author: Felix Fietkau Date: Sat Apr 9 23:10:21 2011 +0200 ath5k: fix slot time handling Set the slot time based on the mac80211 short slot vs long slot setting instead of just forcing long slot for all CCK-enabled channels. This slightly improves 802.11g mode performance in in my tests. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 488a50176c169eb36544b4f970c8bba68ede30a1 Author: Felix Fietkau Date: Sat Apr 9 23:10:20 2011 +0200 ath5k: fix SIFS time handling ath5k uses 8 usec as a sifs time, extracted from the initvals, whereas the standard requires a sifs time of 10. The difference originates from the fact that the SIFS register has an offset of 2 usec. Fix the SIFS time definition to use the standard value of 10 usec and subtract 2 usecs when writing the SIFS register. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a27049e2c926bcf68360532a5ae66e408296ae85 Author: Felix Fietkau Date: Sat Apr 9 23:10:19 2011 +0200 ath5k: fix short preamble rate duration value Subtract the difference in preamble duration (in usec) from the value returned by ieee80211_generic_frame_duration. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6d7b97b23e114c8fbb825e6721164d228c1af3fc Author: Felix Fietkau Date: Sat Apr 9 21:37:14 2011 +0200 ath5k: fix tx status reporting issues During normal operation, minstrel was showing suspicious EWMA probabilities exceeding 100%. It looks like the tx status reporting in ath5k was not properly clearing the rate index for rates which were never attempted. This is caused by uninitialized stale data in the on-stack tx status information, which is reused when more frames are received. To fix this, rely on ts->ts_final_idx to select the last attempted rate, instead of checking whether ts->ts_rate is set. Additionally, the conversion from the driver rate index back to the mac80211 rate index can be dropped, as the mac80211 tx status will still have the original rate index which was used to set up the descriptor. Additionally, one more inaccuracy was fixed - the final rate attempt count only needs to be increased by one if the transmission attempt was successful. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a065784620a2b78a2bbd00e066c004644d227ea8 Author: John W. Linville Date: Fri Apr 8 15:33:12 2011 -0400 ath5k: improve pcal error handling for ENOMEM case The ath5k driver does kmalloc allocations for pcal info in a loop. But, if one fails it was simply returning -ENOMEM without freeing already allocated memory. This patch corrects that oversight. Reported-by: Eugene A. Shatokhin Signed-off-by: John W. Linville Reviewed-by: Bob Copeland commit ba30c4a58ceb10e81dbf6bd80aeb6a4db42db8fe Author: Yogesh Ashok Powar Date: Sat Apr 9 00:25:37 2011 +0530 mwl8k: Fix checkpatch.pl and sparse warnings and errors Fix checkpatch errors and warnings comprising of indent errors, spaces and __packed warnings. Also fix 'make C = 2' warnings. Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit 1296433bf39a8dea852aafad1f29b775f993bca1 Author: Felix Fietkau Date: Fri Apr 8 20:49:16 2011 +0200 ath9k_hw: remove unnecessary parts of the AR9380 SREV check Older versions have not been sold and the driver does not explicitly check for them anyway, so we can simply ignore the macRev here. Reduces ath9k_hw size on mips by more than 2 KB. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ebe27c91af8b7f4810ae906fbd3eeb2d87850026 Author: Mohammed Shafi Shajakhan Date: Fri Apr 8 21:24:24 2011 +0530 {mac|nl}80211: Add station connected time Add station connected time in debugfs. This will be helpful to get a measure of stability of the connection and for debugging stress issues Cc: Senthilkumar Balasubramanian Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit f60c49b67dd6db2ccb740a6a671414f9dab00c4f Author: Rajkumar Manoharan Date: Fri Apr 8 17:06:25 2011 +0530 ath9k: Fix kernel panic on module unload The commit "ath9k: configure beacons based on hw opmode" introduced a regression which leads to kernel panic. Failed to stop ani timer during the driver unload while any of the beaconing vif is running. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit d0ef824b9a712b866e38212089ade3a7114225a4 Author: Senthil Balasubramanian Date: Fri Apr 8 15:30:35 2011 +0530 ath9k: Update gain table for AR9485 Update Tx gain 23 for all tx gain table. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 7d75541499319dff375af252345ae1999540b4a9 Author: Senthil Balasubramanian Date: Fri Apr 8 15:30:34 2011 +0530 ath9k: Add RSSI information from control and extension chains Export RSSI information from all the control and extension channel chains to debugfs. Also add rx antenna information to debugfs. This will be useful for debugging purpose. Signed-off-by: Senthil Balasubramanian Signed-off-by: John W. Linville commit 1570ca59279a74db73b8ff840abdfaf64a9ee2ff Author: Javier Cardona Date: Thu Apr 7 15:08:35 2011 -0700 mac80211: send notification on new peer candidate for our secure mesh Also, advertise support for mesh authentication. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit c93b5e717ec47b57abfe0229360bc11e77520984 Author: Javier Cardona Date: Thu Apr 7 15:08:34 2011 -0700 nl80211: New notification to discover mesh peer candidates. Notify userspace when a beacon/presp is received from a suitable mesh peer candidate for whom no sta information exists. Userspace can then decide to create a sta info for the candidate. If userspace is not ready to authenticate the peer right away, it can create the sta info with the authenticated flag unset and set it later. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 96b78dff0321d881ef27d858a462c476e0444619 Author: Javier Cardona Date: Thu Apr 7 15:08:33 2011 -0700 nl80211/mac80211: Perform PLINK_ACTION on new station Modify the NEW_STATION command to accept PLINK_ACTIONS, in case userspace wants to create stations and initiate a peer link right away (for authenticated stations) or create a blocked station (for debugging). Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 53e805111b69d55834f4e1ed0a31a97ea0b9e425 Author: Javier Cardona Date: Thu Apr 7 15:08:32 2011 -0700 mac80211: ignore peer link requests from unauthenticated stations. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 71839121a0f35f9968d2e204a76eb22683156fd8 Author: Javier Cardona Date: Thu Apr 7 15:08:31 2011 -0700 mac80211: Let user space receive and send mesh auth/deauth frames Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit b39c48fac1fc915a5dcd024bf6e9aabc855ed591 Author: Javier Cardona Date: Thu Apr 7 15:08:30 2011 -0700 nl80211/mac80211: let userspace authenticate stations Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 5cff5e01e818029a5d2c3c31b7ae5e5e7ee70452 Author: Javier Cardona Date: Thu Apr 7 15:08:29 2011 -0700 mac80211: ignore peers if security is enabled for this mesh Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit 15d5dda623139bbf6165030fc251bbd5798f4130 Author: Javier Cardona Date: Thu Apr 7 15:08:28 2011 -0700 cfg80211/nl80211: Add userspace authentication flag to mesh setup During mesh setup, use NL80211_MESH_SETUP_USERSPACE_AUTH flag to create a secure mesh and route management frames to userspace. Also, NL80211_CMD_GET_WIPHY now returns a flag NL80211_SUPPORT_MESH_AUTH if the wiphy's mesh implementation supports routing of mesh auth frames to userspace. This is useful for forward compatibility between old kernels and new userspace tools. Signed-off-by: Javier Cardona Signed-off-by: Thomas Pedersen Signed-off-by: John W. Linville commit 581a8b0feeed8877aab3a8ca4c972419790cd07f Author: Javier Cardona Date: Thu Apr 7 15:08:27 2011 -0700 nl80211: rename NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE To NL80211_MESH_SETUP_IE. This reflects our ability to insert any ie into a mesh beacon, not simply path selection ies. Signed-off-by: Javier Cardona Signed-off-by: John W. Linville commit a22e93f5d819f11d2a2d6332e20ff5b462e5c208 Author: Paul Bolle Date: Thu Apr 7 20:40:32 2011 +0200 iwl4965: drop a lone pr_err() iwl4965_rate_control_register() prints a message at KERN_ERR level. It looks like it's just a debugging message, so pr_err() seems to be overdone. But none of the similar functions in drivers/net/wireless print a message, so let's just drop it. Signed-off-by: Paul Bolle Signed-off-by: John W. Linville commit 952949738aba19f84dae9def18e0baa58f0ce0b8 Author: Felix Fietkau Date: Thu Apr 7 19:30:32 2011 +0200 ath9k: fix too early enabling of rx during ath_startrecv() rx should only be enabled after enough rx buffers have been given to the hardware, however ath_rx_buf_link was calling ath9k_hw_rxena after every single added buffer. Fix this by calling ath9k_hw_rxena directly from the rx tasklet after completion instead. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 264bbec811024e39fe8f9e7a45743f81f373529e Author: Felix Fietkau Date: Thu Apr 7 19:24:23 2011 +0200 ath9k: fix PS-Poll reception on AR9160 and earlier I can't find any valid reason for not setting the ATH9K_RX_FILTER_PSPOLL flag on older hardware and neither the documentation nor the reference code mention any reason for excluding older hardware here. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6a35a0ac5771fa962c45926678d1f194cbc98c4e Author: Yogesh Ashok Powar Date: Wed Apr 6 16:46:56 2011 -0700 mwifiex: use common keyinfo bitmap for different key types Instead of having separate key information definitions for each type of key, a common key information bitmap is used. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 18bf965702058f5f8039e6a46bb5ebaa18d38ebd Author: Bing Zhao Date: Wed Apr 6 16:46:55 2011 -0700 mwifiex: fix cmd_skb headroom decreasing issue Before calling host_to_card() to send the cmd to firmware, we use skb_push() to add 4 bytes SDIO interface header at the start of the data buffer. Since cmd_skb data structure will be re-used at a later time, we need to restore its headroom by removing the 4 bytes header. Signed-off-by: Bing Zhao Signed-off-by: Marc Yang Signed-off-by: Yogesh Ashok Powar Signed-off-by: John W. Linville commit d88525e8fdc00c0078d38353caffc29e5a9c70cc Author: Rajkumar Manoharan Date: Wed Apr 6 21:42:52 2011 +0530 ath9k_hw: Fix instable target power control b/w CCK/OFDM The problem is that when the attenuation is increased, the rate will start to drop from MCS7 -> MCS6, and finally will see MCS1 -> CCK_11Mbps. When the rate is changed b/w CCK and OFDM, it will use register desired_scale to calculate how much tx gain need to change. The output power with the same tx gain for CCK and OFDM modulated signals are different. This difference is constant for AR9280 but not AR9285/AR9271. It has different PA architecture a constant. So it should be calibrated against this PA characteristic. The driver has to read the calibrated values from EEPROM and set the tx power registers accordingly. Signed-off-by: Rajkumar Manoharan Acked-by: Felix Fietkau Signed-off-by: John W. Linville commit 15b91e830dbf300d653b3fe70f6ef71b568164a3 Author: Vivek Natarajan Date: Wed Apr 6 11:41:11 2011 +0530 ath9k: Implement dev_tx_frames_pending callback. This function returns true if there is atleast one frame in any one of the tx queues. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit e8306f989483e4b97a8b37dd268de6c8c6f35e75 Author: Vivek Natarajan Date: Wed Apr 6 11:41:10 2011 +0530 mac80211: Check for queued frames before entering power save. In a highly noisy environment, the tx rate of the driver drops and the application slows down since it has not yet received ACKs for the frames already queued in the hardware. Since this ACK may take more than 100ms, stopping the dev queues for entering PS at this stage breaks applications, WMM test cases in my testing. If there are frames already pending in the tx queue, postponing the PS logic helps to avoid redundant queue stops. When power save is enabled by default and in a noisy environment, this API certainly helps in improving the average throughput. Signed-off-by: Vivek Natarajan Signed-off-by: John W. Linville commit 143780c6562080c1117cd9197ee1b33c0d838376 Author: Allan, Bruce W Date: Mon Apr 11 13:01:59 2011 +0000 ethtool: time to blink provided in seconds not jiffies When blinking for a duration set by the user, the value specified is in seconds but it is used as the number of jiffies in the timeout after which the Physical ID indicator is deactivated. Fix by converting the timeout to seconds. Signed-off-by: Bruce Allan Acked-by: Ben Hutchings Signed-off-by: David S. Miller commit 252f4bf400df1712408fe83ba199a66a1b57ab1d Merge: 6ba1037 b37e3b6 Author: John W. Linville Date: Tue Apr 12 16:18:44 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem Conflicts: drivers/net/wireless/ath/ar9170/main.c drivers/net/wireless/ath/ar9170/phy.c drivers/net/wireless/zd1211rw/zd_rf_rf2959.c commit 607bf324ab3d780e1ec20b1b1a3bfaa3be58a957 Author: Li Zefan Date: Tue Apr 12 15:22:26 2011 +0800 slub: Fix a typo in config name There's no config named SLAB_DEBUG, and it should be a typo of SLUB_DEBUG. Acked-by: Christoph Lameter Signed-off-by: Li Zefan Signed-off-by: Pekka Enberg commit 6ba1037c3d871ab70e342631516dbf841c35b086 Author: Jon Mason Date: Fri Apr 8 11:11:23 2011 +0000 vxge: update driver version Update vxge driver version to 2.5.3 Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit 9f9b16458134ba9f06ef6f15369513aa9eebc81c Author: Jon Mason Date: Fri Apr 8 11:11:22 2011 +0000 vxge: spin-lock issue In vxge_hw_vpath_close, __vxge_hw_vp_terminate memsets the vpath which clobbers the spin lock state, then the driver attempts to acquire the spin lock. Resolve this by not zeroing the lock part of vpath struct, clean-up vpath locking in init, close, and fix locking hole in fw_api call. Issue found by Bob Picco Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit cd883a791b55c3c52ce402cd551585fed092d240 Author: Jon Mason Date: Fri Apr 8 11:11:21 2011 +0000 vxge: always enable hardware time stamp Hardware time stamp calculation can only be enabled by the privileged function. Enable it always by default and simply use the ethtool interface to set a flag to indicate whether or not the respective function driver should indicate the timestamp along with the received packet. Also, make certain fields in vxge_hw_device_config bit-fields to reduce the size of the struct. Signed-off-by: Jon Mason Signed-off-by: David S. Miller commit d83d282bcbf24ec8ddd4f0eb57f7ad302c431b8a Author: David S. Miller Date: Mon Apr 11 16:00:00 2011 -0700 s2io: Fix warnings due to -Wunused-but-set-variable. Most of these are cases where we are trying to read back a register after a write to ensure completion. Simply pre-fixing the readl() or readq() with "(void)" is sufficient because these are volatile operations and the compiler cannot eliminate them just because no real assignment takes place. The case of free_rxd_blk()'s assignments to "struct buffAdd *ba" is a real spurious assignment as this variable is completely otherwise unused. Signed-off-by: David S. Miller Acked-by: Jon Mason commit f68e542f3478147986a9c8958942ec649dc06201 Author: OGAWA Hirofumi Date: Tue Apr 12 21:08:39 2011 +0900 fat: Fix statfs->f_namelen pathconf(, _PC_NAME_MAX) is too small for long Unicode filename on fat. 255 as max filename size on fat is Unicode UTF-16 characters. it's not byte size. https://bugzilla.kernel.org/show_bug.cgi?id=16469 To fix it, this returns "len * NLS_MAX_CHARSET_SIZE" instead. Reported-by: Takumi Asaki Signed-off-by: OGAWA Hirofumi commit 869f58c0cdba3ae6880ab6113617e62672198773 Author: Alexey Fisher Date: Tue Apr 12 21:08:38 2011 +0900 fat: Replace all printk with fat_msg() Replace all printk with fat_msg() Signed-off-by: Alexey Fisher Signed-off-by: OGAWA Hirofumi commit 81ac21d34a91e85b029cd86e2ed5eeae8d7c3cd4 Author: Alexey Fisher Date: Tue Apr 12 21:08:38 2011 +0900 fat: Add fat_msg() function for preformated FAT messages Add fat_msg() to replace not cosequent used printk() in fs/fat/* New message format should be as fallow: FAT-fs (sda1): some thing happened. Signed-off-by: Alexey Fisher Signed-off-by: OGAWA Hirofumi commit 2c8a5ffb94bbb4f04aaf8a923e9098fb7a51a75a Author: Alexey Fisher Date: Tue Apr 12 21:08:38 2011 +0900 fat: Convert fat_fs_error to use %pV - convert fat_fs_error to use %pV - be consequent and use "supor_block *sb" instead of "supor_block *s" - use devise name in each message. Signed-off-by: Alexey Fisher Signed-off-by: OGAWA Hirofumi commit 700309295551ef9217e4ae00a5b1d3030fc5438c Author: OGAWA Hirofumi Date: Tue Apr 12 21:08:38 2011 +0900 fat: Fix possible null deref in fat_cache_add() Reported-by: Signed-off-by: OGAWA Hirofumi commit 384f5c96ea05aba24a11172ebd6f5d427ca199fc Author: OGAWA Hirofumi Date: Tue Apr 12 21:08:37 2011 +0900 fat: use new setup() for ->dir_ops too Signed-off-by: OGAWA Hirofumi commit f98e5b80add20ec20b9a3e450c3378eb9a163848 Author: Uwe Kleine-König Date: Tue Apr 12 09:59:29 2011 +0200 tty: fix typo in descripton of tty_termios_encode_baud_rate Signed-off-by: Uwe Kleine-König Acked-by: Alan Cox Signed-off-by: Jiri Kosina commit 58fc7f1419560efa9c426b829c195050e0147d7f Author: Joerg Roedel Date: Mon Apr 11 11:13:24 2011 +0200 x86/amd-iommu: Add support for invalidate_all command This patch adds support for the invalidate_all command present in new versions of the AMD IOMMU. Signed-off-by: Joerg Roedel commit d99ddec3eee0be8a43b2c1ff624b9dfaaa26b959 Author: Joerg Roedel Date: Mon Apr 11 11:03:18 2011 +0200 x86/amd-iommu: Add extended feature detection This patch adds detection of the extended features of an AMD IOMMU. The available features are printed to dmesg on boot. Signed-off-by: Joerg Roedel commit 4203306506ebe4eaaa84a2cbd7c1eb2fc0128faa Author: Zhang Jiejing Date: Mon Apr 11 23:48:23 2011 -0700 Input: add driver for Maxim max11801 touchscreen controller Add MAXI max11801 resistive touchscreen controller driver. This driver uses Auto Mode and Aperture Mode. Support for other max1180x devices can be added to this driver as well, as they use almost the same register addresses and codes. You can find data sheet here: http://www.maxim-ic.com/datasheet/index.mvp/id/5943 Signed-off-by: Zhang Jiejing Signed-off-by: Dmitry Torokhov commit 467112777c462a592c27338eeea5d1a320e82b5f Author: Alexander Stein Date: Mon Apr 11 23:34:48 2011 -0700 Input: gpio-keys - add support for setting device name This patch allows to set a device name which helps distinguishing several gpio-keys devices. Signed-off-by: Alexander Stein Signed-off-by: Dmitry Torokhov commit 92a47674f57b4a84a43ce93b0dfdb596c0543749 Author: Alexander Stein Date: Mon Apr 11 23:34:37 2011 -0700 Input: gpio_keys - add support for EV_ABS With this patch you can setup a group of GPIOs representing a specific position on an EV_ABS axis. Signed-off-by: Alexander Stein Signed-off-by: Dmitry Torokhov commit 3905c54f2bd2c6f937f87307987ca072eabc3e7b Author: Stephen Rothwell Date: Tue Apr 12 14:00:40 2011 +1000 sched, sparc64: Turn cpu_coregroup_mask() into a real function This compile error triggers on Sparc64: kernel/sched.c:7140: error: 'cpu_coregroup_mask' undeclared here (not in a function) Because after the recent scheduler domain cleanups the scheduler uses this arch method as a function pointer in a scheduler topology data structure - which is not possible with a macro. Signed-off-by: Stephen Rothwell Acked-by: David S. Miller Cc: Peter Zijlstra Link: http://lkml.kernel.org/r/20110412140040.3020ef55.sfr@canb.auug.org.au Signed-off-by: Ingo Molnar commit 420dd718ad0bc4a4e07ae0ac7f8eac7545eb253a Author: Mark Brown Date: Mon Apr 11 21:40:29 2011 -0700 ASoC: Fix mis cherry-pick of wm1250-ev1 driver Signed-off-by: Mark Brown commit f344c25dbab1a392ef7a7afc8ca061b3b7285423 Author: David S. Miller Date: Mon Apr 11 15:49:26 2011 -0700 niu: Fix warnings due to -Wunused-but-set-variable Most of these were legitimate, and once case was a real bug (not propagating errors from ->xcvr_init() methods). Signed-off-by: David S. Miller commit 39b9afbb4c0750742eb61b7a015e12f483e0b4a3 Author: Sjur Brændeland Date: Mon Apr 11 10:43:52 2011 +0000 caif: Add BUG_ON if dev_info is missing in packet Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 4dd820c088d201e526840c9dbc2f0b87a0a41868 Author: Sjur Brændeland Date: Mon Apr 11 10:43:51 2011 +0000 caif: Don't resend if dev_queue_xmit fails. If CAIF Link Layer returns an error, we no longer try to re-build the CAIF packet and resend it. Instead, we simply return any transmission errors to the socket client. Signed-off-by: Sjur Brændeland Signed-off-by: David S. Miller commit 73d6ac633c6c0ca703f90db0b808d9593e46aef6 Author: Stephen Hemminger Date: Mon Apr 11 10:43:50 2011 +0000 caif: code cleanup Cleanup of new CAIF code. * make local functions static * remove code that is never used * expand get_caif_conf() since wrapper is no longer needed * make args to comparison functions const * rename connect_req_to_link_param to keep exported names consistent Compile tested only. Signed-off-by: Stephen Hemminger Acked-by: Sjur Brændeland Signed-off-by: David S. Miller commit 1c01a80cfec6f806246f31ff2680cd3639b30e67 Merge: c44d799 4a9f65f Author: David S. Miller Date: Mon Apr 11 13:44:25 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/smsc911x.c commit 4bb3f43c6e3f3f6897f60ee1bab423ce23539d2c Author: Mark Brown Date: Fri Apr 8 16:49:42 2011 +0900 ASoC: Add initial WM1250-EV1 Springbank audio I/O module driver The WM1250-EV1 Springbank audio I/O module for the Wolfson Glenfarclas reference platform provides a simple audio I/O with an independant clock domain, intended to simulate cellular modem and bluetooth subsystems within the platform. The card supports some limited GPIO based control but this is currently not implemented. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c93993aca45a223452d2a95383b655c85878c6e8 Author: Mark Brown Date: Tue Feb 8 14:09:41 2011 +0000 ASoC: Add WM8915 CODEC driver The WM8915 is an ultra low power mobile CODEC designed for smartphones, featuring a mixture of digital and analogue I/O with flexible mixing options and advanced low power accessory detection functionality in a compact package. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 0671fd8ef4b32200e75396cd299f0853002fc11e Author: Kuninori Morimoto Date: Fri Apr 8 14:50:44 2011 +0900 ASoC: Add soc_remove_dai_links card->num_rtd should be 0 after soc_romve_dai_link Signed-off-by: Kuninori Morimoto Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b8eeee68dc81f08993ed5dc18dc6d574ba146674 Author: Sangbeom Kim Date: Sat Apr 9 10:57:59 2011 +0900 ASoC: SAMSUNG: Add WM8580 PCM Machine driver This patch add WM8580 PCM machine driver to support PCM audio on SMDKC110, SMDKV210, SMDK6450, SMDK6440 boards. Playback and Capture supports 8kHz sampling rates. and It is tested on SMDKC110, SMDKV210, SMDK6450 Signed-off-by: Sangbeom Kim Acked-by: Jassi Brar Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a19809875fb0952631767e2d2484bcd81b4365a1 Merge: 70da1dc 39cca16 Author: Mark Brown Date: Mon Apr 11 13:29:24 2011 -0700 Merge branch 'for-2.6.39' into for-2.6.40 commit c44d79950b2daa1025e62eede73e4e4a274d1ef3 Author: Ben Hutchings Date: Fri Apr 8 13:49:15 2011 +0000 niu: Recognise original ethtool class code for AH/ESP flow hashing When the RX network flow classification interface was originally defined for reporting and controlling of flow hashing, AH and ESP were not given distinct flow class codes (apparently because the Sun Neptune hardware treats them very similarly). For flow steering, they must be distinguished, so new and separate flow class codes were added for AH and ESP. But for backward- compatibility, flow hash operations should continue to support the original class codes. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit bde3528f17aebb9c74d6b0ef81860868c91af049 Author: Ben Hutchings Date: Fri Apr 8 13:45:11 2011 +0000 gianfar: Clean up implementation of RX network flow classification This code was cribbed from niu, so gfar_set_hash_opts() begins by converting the ethtool flow class code into a class code for Sun Neptune hardware, then does the same thing again for the hardware it's really dealing with. It may also return -1 (-EPERM) for some unhandled ethtool flow class codes. Remove the useless code and definitions, and fix the error code. Signed-off-by: Ben Hutchings Signed-off-by: David S. Miller commit 1b3291241a658fb4d4bbdb41483e1f53c26445ec Author: stephen hemminger Date: Wed Apr 6 13:47:50 2011 +0000 qlge: use ethtool set_phys_id This is a stab at replacing old ethtool phys_id with set_phys_id on the Qlogic 10Gb driver. Compile tested only. Not sure if set_led_cfg will flash continuously, or needs to be replaced by ETHTOOL_ID_ON/ETHTOOL_ID_OFF Signed-off-by: Stephen Hemminger Signed-off-by: Ron Mercer Signed-off-by: David S. Miller commit 127fe533ae56d7f4e7b5011869870982eba25723 Author: Alexander Duyck Date: Fri Apr 8 18:01:59 2011 +0000 v3 ethtool: add ntuple flow specifier data to network flow classifier This change is meant to add an ntuple data extensions to the rx network flow classification specifiers. The idea is to allow ntuple to be displayed via the network flow classification interface. The first patch had some left over stuff from the original flow extension flags I had added. That bit is removed in this patch. The second had some left over comments that stated we ignored bits in the masks when we actually match them. This work is based on input from Ben Hutchings. Signed-off-by: Alexander Duyck Reviewed-by: Ben Hutchings Signed-off-by: David S. Miller commit 5d9f11cf5038587cc53975deb8beaa1a876a7a7b Author: Alexander Duyck Date: Fri Apr 8 12:07:22 2011 +0000 ethtool: prevent null pointer dereference with NTUPLE set but no set_rx_ntuple This change is meant to prevent a possible null pointer dereference if NETIF_F_NTUPLE is defined but the set_rx_ntuple function pointer is not. The main motivation behind this patch is to eventually replace the ntuple interfaces entirely with the network flow classifier interfaces. This allows the device drivers to maintain the ntuple check internally while using the network flow classifier interface for setting up and displaying rules. Signed-off-by: Alexander Duyck Signed-off-by: David S. Miller commit b07f3bbee12163a6b48991138a37b87a1126462a Author: Jingoo Han Date: Mon Apr 11 07:25:37 2011 +0000 video: s3c-fb: add spinlock to interrupt routine The spinlock is added to interrupt routine to ensure that the driver is protected against multiple accesses. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 0d60b281dc7fd2ae7ec6463f916138fd2d182bee Author: Jingoo Han Date: Mon Apr 11 07:22:58 2011 +0000 video: s3c-fb: make runtime pm functions static This patch makes runtime pm functions static. Signed-off-by: Jingoo Han Signed-off-by: Paul Mundt commit 900d18c79d0c4d8c33079c163c6b8c7d8b9c4db6 Author: Alessio Igor Bogani Date: Sun Apr 10 15:02:00 2011 +0200 xtensa: remove obsolete BKL kernel option from defconfig The BKL doesn't exist anymore so remove CONFIG_LOCK_KERNEL. This work was supported by a hardware donation from the CE Linux Forum. Signed-off-by: Alessio Igor Bogani Signed-off-by: Jiri Kosina commit 29a78a3ed7fc9c4ee49962751eb321b038c190a2 Author: J. Bruce Fields Date: Sat Apr 9 11:28:53 2011 -0400 nfsd4: make fh_verify responsibility of nfsd_lookup_dentry caller The secinfo caller actually won't want this. Signed-off-by: J. Bruce Fields commit 22b03214962ec2a9748abc9987fc2e66dec4626d Author: J. Bruce Fields Date: Sat Apr 9 11:23:24 2011 -0400 nfsd4: introduce OPDESC helper Signed-off-by: J. Bruce Fields commit 204f4ce75434c3453907813f8a819d4cf2a5728f Author: J. Bruce Fields Date: Fri Apr 8 16:32:54 2011 -0400 nfsd4: allow fh_verify caller to skip pseudoflavor checks Signed-off-by: J. Bruce Fields commit aea93397db4b39c9d15443a0e7cc9a380ba990c6 Author: J. Bruce Fields Date: Sun Apr 10 10:35:12 2011 -0400 nfsd: distinguish functions of NFSD_MAY_* flags Most of the NFSD_MAY_* flags actually request permissions, but over the years we've accreted a few that modify the behavior of the permission or open code in other ways. Distinguish the two cases a little more. In particular, allow the shortcut at the start of nfsd_permission to ignore the non-permission-requesting bits. Signed-off-by: J. Bruce Fields commit 60495e7760d8ee364695006af37309b0755e0e17 Author: Peter Zijlstra Date: Thu Apr 7 14:10:04 2011 +0200 sched: Dynamic sched_domain::level Remove the SD_LV_ enum and use dynamic level assignments. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.969433965@chello.nl Signed-off-by: Ingo Molnar commit 54ab4ff4316eb329d2c1acc110fbc623d2966931 Author: Peter Zijlstra Date: Thu Apr 7 14:10:03 2011 +0200 sched: Move sched domain storage into the topology list In order to remove the last dependency on the statid domain levels, move the sd_data storage into the topology structure. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.924926412@chello.nl Signed-off-by: Ingo Molnar commit d069b916f7b50021d41d6ce498f86da32a7afaec Author: Peter Zijlstra Date: Thu Apr 7 14:10:02 2011 +0200 sched: Reverse the topology list In order to get rid of static sched_domain::level assignments, reverse the topology iteration. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.876506131@chello.nl Signed-off-by: Ingo Molnar commit 2c402dc3bb502e9dd74fce72c14d293fcef4719d Author: Peter Zijlstra Date: Thu Apr 7 14:10:01 2011 +0200 sched: Unify the sched_domain build functions Since all the __build_$DOM_sched_domain() functions do pretty much the same thing, unify them. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.826347257@chello.nl Signed-off-by: Ingo Molnar commit eb7a74e6cd936c00749e2921b9e058631d986648 Author: Peter Zijlstra Date: Thu Apr 7 14:10:00 2011 +0200 sched: Stuff the sched_domain creation in a data-structure In order to make the topology contruction fully dynamic, remove the still hard-coded list of possible domains and stick them in a data-structure. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.770335383@chello.nl Signed-off-by: Ingo Molnar commit d3081f52f29da1ba6c27685519a9222b39eac763 Author: Peter Zijlstra Date: Thu Apr 7 14:09:59 2011 +0200 sched: Create proper cpu_$DOM_mask() functions In order to unify the sched domain creation more, create proper cpu_$DOM_mask() functions for those domains that didn't already have one. Use the sched_domains_tmpmask for the weird NUMA domain span. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.717702108@chello.nl Signed-off-by: Ingo Molnar commit 4cb988395da6e16627a8be69729e50cd72ebb23e Author: Peter Zijlstra Date: Thu Apr 7 14:09:58 2011 +0200 sched: Avoid allocations in sched_domain_debug() Since we're all serialized by sched_domains_mutex we can use sched_domains_tmpmask and avoid having to do allocations. This means we can use sched_domains_debug() for cpu_attach_domain() again. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.664347467@chello.nl Signed-off-by: Ingo Molnar commit f96225fd51893b6650cffd5427f13f6b1b356488 Author: Peter Zijlstra Date: Thu Apr 7 14:09:57 2011 +0200 sched: Create persistent sched_domains_tmpmask Since sched domain creation is fully serialized by the sched_domains_mutex we can create a single persistent tmpmask to use during domain creation. This removes the need for s_data::send_covered. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.607287405@chello.nl Signed-off-by: Ingo Molnar commit 7dd04b730749f957c116f363524fd622b05e5141 Author: Peter Zijlstra Date: Thu Apr 7 14:09:56 2011 +0200 sched: Remove some dead code Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.553814623@chello.nl Signed-off-by: Ingo Molnar commit bf28b253266ebd73c331dde24d64606afde32ceb Author: Peter Zijlstra Date: Thu Apr 7 14:09:55 2011 +0200 sched: Remove nodemask allocation There's only one nodemask user left so remove it with a direct computation and save some memory and reduce some code-flow complexity. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.505608966@chello.nl Signed-off-by: Ingo Molnar commit 3bd65a80affb9768b91f03c56dba46ee79525f9b Author: Peter Zijlstra Date: Thu Apr 7 14:09:54 2011 +0200 sched: Simplify NODE/ALLNODES domain creation Don't treat ALLNODES/NODE different for difference's sake. Simply always create the ALLNODES domain and let the sd_degenerate() checks kill it when its redundant. This simplifies the code flow. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.455464579@chello.nl Signed-off-by: Ingo Molnar commit 3859173d43658d51a749bc0201b943922577d39c Author: Peter Zijlstra Date: Thu Apr 7 14:09:53 2011 +0200 sched: Reduce some allocation pressure Since we now allocate SD_LV_MAX * nr_cpu_ids sched_domain/sched_group structures when rebuilding the scheduler toplogy it might make sense to shrink that depending on the CONFIG_ options. This is only needed until we get rid of SD_LV_* alltogether and provide a full dynamic topology interface. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.406226449@chello.nl Signed-off-by: Ingo Molnar commit a6c75f2f8d988ecfecf971f98f1cb6fc4de522fe Author: Peter Zijlstra Date: Thu Apr 7 14:09:52 2011 +0200 sched: Avoid using sd->level Don't use sd->level for identifying properties of the domain. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.350174079@chello.nl Signed-off-by: Ingo Molnar commit 822ff793c34a5d4c8b5f3f9ce932602233d96464 Author: Peter Zijlstra Date: Thu Apr 7 14:09:51 2011 +0200 sched: Simplify the free path some If we check the root_domain reference count we can see if its been used or not, use this observation to simplify some of the return paths. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.298339503@chello.nl Signed-off-by: Ingo Molnar commit dce840a08702bd13a9a186e07e63d1ef82256b5e Author: Peter Zijlstra Date: Thu Apr 7 14:09:50 2011 +0200 sched: Dynamically allocate sched_domain/sched_group data-structures Instead of relying on static allocations for the sched_domain and sched_group trees, dynamically allocate and RCU free them. Allocating this dynamically also allows for some build_sched_groups() simplification since we can now (like with other simplifications) rely on the sched_domain tree instead of hard-coded knowledge. One tricky to note is that detach_destroy_domains() needs to hold rcu_read_lock() over the entire tear-down, per-cpu is not sufficient since that can lead to partial sched_group existance (could possibly be solved by doing the tear-down backwards but this is much more robust). A concequence of the above is that we can no longer print the sched_domain debug stuff from cpu_attach_domain() since that might now run with preemption disabled (due to classic RCU etc.) and sched_domain_debug() does some GFP_KERNEL allocations. Another thing to note is that we now fully rely on normal RCU and not RCU-sched, this is because with the new and exiting RCU flavours we grew over the years BH doesn't necessarily hold off RCU-sched grace periods (-rt is known to break this). This would in fact already cause us grief since we do sched_domain/sched_group iterations from softirq context. This patch is somewhat larger than I would like it to be, but I didn't find any means of shrinking/splitting this. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.245307941@chello.nl Signed-off-by: Ingo Molnar commit a9c9a9b6bff27ac9c746344a9c1a19bf3327002c Author: Peter Zijlstra Date: Thu Apr 7 14:09:49 2011 +0200 sched: Simplify sched_groups_power initialization Again, instead of relying on knowing the possible domains and their order, simply rely on the sched_domain tree and whatever domains are present in there to initialize the sched_group cpu_power. Note: we need to iterate the CPU mask backwards because of the cpumask_first() condition for iterating up the tree. By iterating the mask backwards we ensure all groups of a domain are set-up before starting on the parent groups that rely on its children to be completely done. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.187335414@chello.nl Signed-off-by: Ingo Molnar commit 21d42ccfd6c6c11f96c2acfd32a85cfc33514d3a Author: Peter Zijlstra Date: Thu Apr 7 14:09:48 2011 +0200 sched: Simplify finding the lowest sched_domain Instead of relying on knowing the build order and various CONFIG_ flags simply remember the bottom most sched_domain when we created the domain hierarchy. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.134511046@chello.nl Signed-off-by: Ingo Molnar commit 1cf51902546d60b8a7a6aba2dd557bd4ba8840ea Author: Peter Zijlstra Date: Thu Apr 7 14:09:47 2011 +0200 sched: Simplify sched_group creation Instead of calling build_sched_groups() for each possible sched_domain we might have created, note that we can simply iterate the sched_domain tree and call it for each sched_domain present. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.077862519@chello.nl Signed-off-by: Ingo Molnar commit 3739494e08da50c8a68d65eed5ba3012a54b40d4 Author: Peter Zijlstra Date: Thu Apr 7 14:09:46 2011 +0200 sched: Clean up some ALLNODES code Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122942.025636011@chello.nl Signed-off-by: Ingo Molnar commit cd4ea6ae3982f6861da3b510e69cbc194f331d83 Author: Peter Zijlstra Date: Thu Apr 7 14:09:45 2011 +0200 sched: Change NODE sched_domain group creation The NODE sched_domain is 'special' in that it allocates sched_groups per CPU, instead of sharing the sched_groups between all CPUs. While this might have some benefits on large NUMA and avoid remote memory accesses when iterating the sched_groups, this does break current code that assumes sched_groups are shared between all sched_domains (since the dynamic cpu_power patches). So refactor the NODE groups to behave like all other groups. (The ALLNODES domain again shared its groups across the CPUs for some reason). If someone does measure a performance decrease due to this change we need to revisit this and come up with another way to have both dynamic cpu_power and NUMA work nice together. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122941.978111700@chello.nl Signed-off-by: Ingo Molnar commit a06dadbec5c5df0bf3a35f33616f67d10ca9ba28 Author: Peter Zijlstra Date: Thu Apr 7 14:09:44 2011 +0200 sched: Simplify build_sched_groups() Notice that the mask being computed is the same as the domain span we just computed. By using the domain_span we can avoid some mask allocations and computations. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122941.925028189@chello.nl Signed-off-by: Ingo Molnar commit d274cb30f4a08045492d3f0c47cdf1a25668b1f5 Author: Peter Zijlstra Date: Thu Apr 7 14:09:43 2011 +0200 sched: Simplify ->cpu_power initialization The code in update_group_power() does what init_sched_groups_power() does and more, so remove the special init_ code and call the generic code instead. Also move the sd->span_weight initialization because update_group_power() needs it. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122941.875856012@chello.nl Signed-off-by: Ingo Molnar commit c4a8849af939082052d8117f9ea3e170a99ff232 Author: Peter Zijlstra Date: Thu Apr 7 14:09:42 2011 +0200 sched: Remove obsolete arch_ prefixes Non weak static functions clearly are not arch specific, so remove the arch_ prefix. Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Cc: Nick Piggin Cc: Linus Torvalds Cc: Andrew Morton Link: http://lkml.kernel.org/r/20110407122941.820460566@chello.nl Signed-off-by: Ingo Molnar commit f4ad9bd208c98f32a6f9136618e0b8bebe3fb370 Author: Shaohua Li Date: Fri Apr 8 12:53:09 2011 +0800 sched: Eliminate dead code from wakeup_gran() calc_delta_fair() checks NICE_0_LOAD already, delete duplicate check. Signed-off-by: Shaohua Li Signed-off-by: Peter Zijlstra Cc: Mike Galbraith Link: http://lkml.kernel.org/r/1302238389.3981.92.camel@sli10-conroe Signed-off-by: Ingo Molnar commit fd7b5535e10ce820f030842da3f289f80ec0d4f3 Author: Joerg Roedel Date: Tue Apr 5 15:31:08 2011 +0200 x86/amd-iommu: Add ATS enable/disable code This patch adds the necessary code to the AMD IOMMU driver for enabling and disabling the ATS capability on a device and to setup the IOMMU data structures correctly. Signed-off-by: Joerg Roedel commit 60f723b4117507c05c8b0b5c8b98ecc12a76878e Author: Joerg Roedel Date: Tue Apr 5 12:50:24 2011 +0200 x86/amd-iommu: Add flag to indicate IOTLB support This patch adds a flag to the AMD IOMMU driver to indicate that all IOMMUs present in the system support device IOTLBs. Signed-off-by: Joerg Roedel commit cb41ed85efa01e633388314c03a4f3004c6b783b Author: Joerg Roedel Date: Tue Apr 5 11:00:53 2011 +0200 x86/amd-iommu: Flush device IOTLB if ATS is enabled This patch implements a function to flush the IOTLB on devices supporting ATS and makes sure that this TLB is also flushed if necessary. Signed-off-by: Joerg Roedel commit 9844b4e5dd1932e175a23d84ce09702bdf4b5689 Author: Joerg Roedel Date: Tue Apr 5 09:22:56 2011 +0200 x86/amd-iommu: Select PCI_IOV with AMD IOMMU driver In order to support ATS in the AMD IOMMU driver this patch makes sure that the generic support for ATS is compiled in. Signed-off-by: Joerg Roedel commit 5cdede2408e80f190c5595e592c24e77c1bf44b2 Author: Joerg Roedel Date: Mon Apr 4 15:55:18 2011 +0200 PCI: Move ATS declarations in seperate header file This patch moves the relevant declarations from the local header file in drivers/pci to a more accessible locations so that it can be used by the AMD IOMMU driver too. The file is named pci-ats.h because support for the PCI PRI capability will also be added there in a later patch-set. Signed-off-by: Joerg Roedel Acked-by: Jesse Barnes commit 8d7dfc2b57bb2cad0731dedd58ec1d70bcca1ccf Author: Michał Mirosław Date: Sun Apr 10 04:47:46 2011 +0000 net: bnx2: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit f593fe363268e7354b3a7f3907170de1ac4de7e7 Author: Michał Mirosław Date: Sun Apr 10 03:13:21 2011 +0000 net: via-velocity: convert to hw_features Trivial conversion. This also enables toggling TX VLAN offload and fixes TX checksumming race with offload changes. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit e6a46416d4233c99a041ca35c1f692ecae9f942d Author: Michał Mirosław Date: Sun Apr 10 03:13:21 2011 +0000 net: ksz884x: convert to hw_features This also fixes possible race when changing receive checksum state and removes IPV6_CSUM_GEN_HACK as it's always set. BTW, The claim about fake IPV6 checksum looks dubious. If that were true, then there's a problem in networking core and should be fixed there and not in random drivers. BTW#2, there's no MAINTAINERS entry for this driver. I assume this driver is supported by Micrel? Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 5e982f3bfdd5d063f8806a26c87843496a35d26b Author: Michał Mirosław Date: Sat Apr 9 02:46:55 2011 +0000 net: stmmac: convert to hw_features This also removes TSO as it's made fully in software --- better to leave this to networking core. If the MAC features can be detected at probe time and not at open, then stmmac_fix_features could be simplified by limiting hw_features. That's also better for users as they don't see offloads being togglable but never turned on. Redundant fallbacks for TX csum are removed as it's already handled by network core. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 044a890c5a0fb7ac60c70bbb4e1b79e59272e504 Author: Michał Mirosław Date: Sat Apr 9 00:58:18 2011 +0000 net: 8139cp: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 350fb32ae45ec74ea9cc117c728c48b8e840f0f9 Author: Michał Mirosław Date: Fri Apr 8 06:35:56 2011 +0000 net: r8169: convert to hw_features Simple conversion with a bit of needed cleanup. This also fixes: - confusion around vlan_features in rtl8169_vlan_mode(), - problem with broken TSO for too big MTU (the limit is set at 0xFFF --- max MSS field value). SG+IP_CSUM+TSO is left disabled by default, based on suggestion by David Dillow. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 8b8ddc68df13032a5666438b48dfb7a86de3a610 Author: Michał Mirosław Date: Fri Apr 8 02:38:47 2011 +0000 net: benet: convert to hw_features - fixup Fix up after merge with NETIF_F_RXHASH implementation. This allows to toggle NETIF_F_RXHASH and NETIF_F_HW_VLAN_TX. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 4e01d2d1cac683477b539b40b7b4662d6a9c436f Author: Michał Mirosław Date: Fri Apr 8 02:38:46 2011 +0000 net: Remove invalid offloads Remove offload changing ethtool ops which drivers don't really support: - fs_enet - ucc_geth Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 990078afbf90e0175e71da2df04595b99153514c Author: Michael Smith Date: Thu Apr 7 04:51:51 2011 +0000 Disable rp_filter for IPsec packets The reverse path filter interferes with IPsec subnet-to-subnet tunnels, especially when the link to the IPsec peer is on an interface other than the one hosting the default route. With dynamic routing, where the peer might be reachable through eth0 today and eth1 tomorrow, it's difficult to keep rp_filter enabled unless fake routes to the remote subnets are configured on the interface currently used to reach the peer. IPsec provides a much stronger anti-spoofing policy than rp_filter, so this patch disables the rp_filter for packets with a security path. Signed-off-by: Michael Smith Signed-off-by: David S. Miller commit 5c04c819a20af40adb7d282199f4e34e14fa05c5 Author: Michael Smith Date: Thu Apr 7 04:51:50 2011 +0000 fib_validate_source(): pass sk_buff instead of mark This makes sk_buff available for other use in fib_validate_source(). Signed-off-by: Michael Smith Signed-off-by: David S. Miller commit 5325e92f33eef5fb54e2e63185d965b4be59a4b3 Author: simon Date: Wed Apr 6 21:40:15 2011 +0000 usb: plusb: Add debug to reset function This patch adds some debug to the reset function to print out the reason why it fails. Signed-off-by: Simon Wood Signed-off-by: David S. Miller commit 647da406e5e6cef87d17ee4d3c65c7b496883a3f Author: simon Date: Wed Apr 6 21:40:14 2011 +0000 usb: plusb: Add support for PL-25A1 This patch adds support for the PL-25A1 by adding the appropriate USB ID's. This chip is used in the Belkin 'Windows Easy Transfer' Cables. Signed-off-by: Simon Wood Signed-off-by: David S. Miller commit 6e4d2d9eb22dc9e9f0abfb1a464405b97a461cde Author: simon Date: Wed Apr 6 21:40:13 2011 +0000 usb: plusb: Whitespace This patch cleans up a couple of instances of incorrect whitespace Signed-off-by: Simon Wood Signed-off-by: David S. Miller commit 6c655db070ad0e43f66b45fed4c526d6aac07107 Author: Justin P. Mattock Date: Wed Mar 30 10:55:03 2011 -0700 m68k: fix comment typo 'occcured' The patch below changes a typo occcured to occurred in two comments. Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 687566990640e476aeeed844947f2ecadc4717d3 Author: Justin P. Mattock Date: Tue Mar 29 09:36:51 2011 -0700 arch:Kconfig.locks Remove unused config option. Signed-off-by: Justin P. Mattock Acked-by: Steven Rostedt Acked-by: Heiko Carstens Signed-off-by: Jiri Kosina commit 6eab04a87677a37cf15b52e2b4b4fd57917102ad Author: Justin P. Mattock Date: Fri Apr 8 19:49:08 2011 -0700 treewide: remove extra semicolons Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 9f0af69b2dd34d2c21817d599db7bdb3c972a759 Author: Nikanth Karthikesan Date: Thu Mar 24 11:46:18 2011 +0530 sysfs-memory: fix uninitialized variable warning and clean-up code. sysfs-memory: Fix uninitialized variable warning and clean-up code. Signed-off-by: Nikanth Karthikesan Signed-off-by: Jiri Kosina commit 06794eaeb766989e450c1b459ae28da76e1f8719 Author: Joe Perches Date: Wed Mar 23 12:55:36 2011 -0700 treewide: Fix iomap resource size miscalculations Convert off-by-1 r->end - r->start to resource_size(r) Signed-off-by: Joe Perches Acked-by: David Brown Acked-by: Linus Walleij Acked-by: Florian Fainelli Acked-by: Wim Van Sebroeck Acked-by: Ralf Baechle Signed-off-by: Jiri Kosina commit b0c3af5ef0d7b38eb1ba522becd47123ac9736d2 Author: Joe Perches Date: Wed Mar 23 12:55:37 2011 -0700 arm: mach-u300/gpio: Fix mem_region resource size miscalculations Convert off-by-1 r->end - r->start to resource_size(r) Signed-off-by: Joe Perches Acked-by: Linus Walleij Signed-off-by: Jiri Kosina commit 99172a2f9edb3517f610fb93356a6a6a0c30f0c8 Author: Jim Cromie Date: Fri Mar 18 11:33:08 2011 -0600 add printk.time=1 boot-time hint to Kconfig.debug help text Cite Documentation/kernel-parameters.txt for an alternative to building with PRINTK_TIME compiled in. Signed-off-by: Jim Cromie Signed-off-by: Jiri Kosina commit 205a44a436e2af83ce9b88144f0eacbb16f8e915 Author: Paul Bolle Date: Wed Mar 16 21:36:32 2011 +0100 drm: radeon: Fix printk typo 'ib poll' Signed-off-by: Paul Bolle Signed-off-by: Jiri Kosina commit 1dd45aae79b821620ce45765e6210d77173fcecd Author: Nikanth Karthikesan Date: Thu Mar 17 11:04:14 2011 +0530 ldm: Silence "ldm_validate_partition_table(): Disk read failed" when booting with "quiet" When the kernel does partition detection, on certain configurations with external fibre channel raid systems (e.g. clariion from EMC) the read would fail. And "ldm_validate_partition_table(): Disk read failed" messages are printed to the console. But the failure to read is not a critical error. Now since the message is flagged as KERN_CRIT, it gets printed even when booting with the "quiet" kernel parameter. Fix it by using KERN_INFO, as the failure to read here is not really an error. Signed-off-by: Nikanth Karthikesan Reported-by : Klaus Hartmann Signed-off-by: Anton Altaparmakov Signed-off-by: Jiri Kosina commit 853a1378ed6d6c9214d3a8f62d33186c6283cb51 Author: Nikanth Karthikesan Date: Tue Mar 15 10:59:27 2011 +0530 cs5535: Fix section mismatch Fix section mismatch by annotating using variable name suffix. Signed-off-by: Nikanth Karthikesan Signed-off-by: Jiri Kosina commit 58c2ee4007bea04cc37041fcbd380fadb7b7be82 Author: Nikanth Karthikesan Date: Tue Mar 15 10:59:02 2011 +0530 mm: Fix section mismatch for setup_zone_pageset() build_all_zonelists() which is not __meminit, calls setup_zone_pageset(). Signed-off-by: Nikanth Karthikesan Signed-off-by: Jiri Kosina commit 8620d81fadc0747f567909aa7ae2eeb7135a64e9 Author: Jesper Juhl Date: Tue Mar 15 01:14:14 2011 +0100 ARM: Remove duplicate linux/sched.h include from arch/arm/plat-iop/time.c There's no need to include linux/sched.h more than once in arch/arm/plat-iop/time.c Signed-off-by: Jesper Juhl Signed-off-by: Jiri Kosina commit cdb650a4b5eaf1c0aedbfd7dd6afd6d465c3b0a0 Author: Paul Bolle Date: Sun Feb 27 01:34:08 2011 +0100 drm: minor kref_put() nits There's no need to pass kref_put() the address of a function (just the function will do just fine) nor to cast its unused return to void. Signed-off-by: Paul Bolle Signed-off-by: Jiri Kosina commit 8985ef0b8af895c3b85a8c1b7108e0169fcbd20b Author: J. Bruce Fields Date: Sat Apr 9 10:03:10 2011 -0400 svcrpc: complete svsk processing on cb receive failure Currently when there's some failure to receive a callback (because we couldn't find a matching xid, for example), we exit svc_recv with sk_tcplen still set but without any pages saved with the socket. This will cause a crash later in svc_tcp_restore_pages. Instead, make sure we reset that tcp information whether the callback received failed or succeeded. Signed-off-by: J. Bruce Fields commit ae6b585eeb74670a2dec1fe4394bdfbdb9395cc2 Author: Oleg Nesterov Date: Sun Mar 6 18:03:11 2011 +0100 exec: document acct_arg_size() Add the comment to explain acct_arg_size(). Signed-off-by: Oleg Nesterov Reviewed-by: KOSAKI Motohiro commit 0e028465d18b7c6797fcbdea632299d16097c5cd Author: Oleg Nesterov Date: Sun Mar 6 18:02:54 2011 +0100 exec: unify do_execve/compat_do_execve code Add the appropriate members into struct user_arg_ptr and teach get_user_arg_ptr() to handle is_compat = T case correctly. This allows us to remove the compat_do_execve() code from fs/compat.c and reimplement compat_do_execve() as the trivial wrapper on top of do_execve_common(is_compat => true). In fact, this fixes another (minor) bug. "compat_uptr_t str" can overflow after "str += len" in compat_copy_strings() if a 64bit application execs via sys32_execve(). Unexport acct_arg_size() and get_arg_page(), fs/compat.c doesn't need them any longer. Signed-off-by: Oleg Nesterov Reviewed-by: KOSAKI Motohiro Tested-by: KOSAKI Motohiro commit ba2d01629d0d167598cfea85adc7926822bbfc45 Author: Oleg Nesterov Date: Sun Mar 6 18:02:37 2011 +0100 exec: introduce struct user_arg_ptr No functional changes, preparation. Introduce struct user_arg_ptr, change do_execve() paths to use it instead of "char __user * const __user *argv". This makes the argv/envp arguments opaque, we are ready to handle the compat case which needs argv pointing to compat_uptr_t. Suggested-by: Linus Torvalds Signed-off-by: Oleg Nesterov Reviewed-by: KOSAKI Motohiro Tested-by: KOSAKI Motohiro commit 1d1dbf8135ab2f3603cc72e39e0f68784f453c39 Author: Oleg Nesterov Date: Sun Mar 6 18:02:21 2011 +0100 exec: introduce get_user_arg_ptr() helper Introduce get_user_arg_ptr() helper, convert count() and copy_strings() to use it. No functional changes, preparation. This helper is trivial, it just reads the pointer from argv/envp user-space array. Signed-off-by: Oleg Nesterov Reviewed-by: KOSAKI Motohiro Tested-by: KOSAKI Motohiro commit 70da1dc052349b75a91fea1198258c99cea03390 Merge: 0d86733 b9cbfcb Author: Mark Brown Date: Sat Apr 9 11:33:45 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 0d86733cce776ca0262b850ee8eb46bc52dc8244 Author: Mark Brown Date: Wed Apr 6 11:38:14 2011 +0900 ASoC: Allow DAPM pin operations to match any context The DAPM pin operations currently require that the specific DAPM context that the pin being operated in is contained in be specified. With multi component and especially with the addition of a per-card DAPM context this isn't ideal as it means that things like disabling unused pins on CODECs require looking up the CODEC DAPM context. Fix this by falling back to matching a widget in any context if there isn't a match in the current context. The code isn't ideal currently but will do the job. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 52ba67bf85889828b3766207fa43ce7159c84c78 Author: Mark Brown Date: Mon Apr 4 21:05:11 2011 +0900 ASoC: Force all DAPM contexts into the same bias state Currently we allow all DAPM contexts to determine their own bias level. While this should in general work in most situations and will deliver the lowest possible power it causes problems for our integration with the card bias level as we're calling the card bias level functions for each DAPM context even though they're card wide but don't say which CODEC we're calling them for. Mitigate against this by forcing everything to be in the same state. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 0215c5cfd79e8c2e88c713cc8485d095e810c662 Merge: fefecc6 94c8a98 Author: Larry Finger Date: Fri Apr 8 20:52:00 2011 -0500 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 commit fefecc6989b4b24276797270c0e229c07be02ad3 Author: Larry Finger Date: Fri Apr 8 20:33:25 2011 -0500 staging: rt2860sta and rt2870sta: Remove drivers replaced in net/wireless The staging driver rt2860sta is replaced by mainline driver rt2800pci, and rt2870sta is replaced by rt2800usb. As a result, the staging drivers are deleted. Signed-off-by: Larry Finger --- commit cb3e85fe19575cce8af82bc62a070c72e8f781b8 Author: Jiri Kosina Date: Sat Apr 9 01:43:18 2011 +0200 HID: hidraw: fix samples miscompilation On systems where userspace doesn't have new hidraw.h populated to /usr/include, the hidraw sample won't compile as it's missing the new ioctl defitions. Introduce temporary ugly workaround to define the ioctls "manually" in such cases, just to avoid miscompilation in allmodconfig cases. Reported-by: Stephen Rothwell Signed-off-by: Jiri Kosina commit 7422caa5a1a53ee6b21a687c61cc5435edf8c19f Author: Alessio Igor Bogani Date: Fri Apr 8 19:33:07 2011 +0200 ufs: Fix a typo Signed-off-by: Alessio Igor Bogani Signed-off-by: Jiri Kosina commit 857a3d0fb648b450de4a87cc2df9055774cafd2d Author: Dimitris Michailidis Date: Fri Apr 8 13:07:08 2011 -0700 cxgb4vf: drop phys_id interface and implement the newer set_phys_id Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit c5e06360317d9c7a91de983749d136c4089e5379 Author: Dimitris Michailidis Date: Fri Apr 8 13:06:25 2011 -0700 cxgb4: drop phys_id interface and implement the newer set_phys_id Signed-off-by: Dimitris Michailidis Signed-off-by: David S. Miller commit 93ae653491f0a413d5f4d9aa4df45d09ecb55d62 Author: Michael Chan Date: Fri Apr 8 13:03:02 2011 -0700 cnic: Fix rtnl deadlock When cnic_stop_hw() -> cnic_cm_stop_bnx2x_hw() is called under rtnl_lock() from NETDEV_DOWN event, it waits for cnic_delete_task() to complete. It will deadlock when cnic_delete_task() takes rtnl_lock() before calling cnic_ulp_stop_one(). We fix it by removing the rtnl_lock() in cnic_delete_task(). cnic_ulp_stop_one() has mutex and atomic bit ops to prevent important operations from being done more than once, so it is not necessary to take rtnl_lock(). Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit ce9c99af8d4b3b0b9463654fd252d8640d804dc3 Author: Ian Campbell Date: Fri Apr 8 07:42:29 2011 +0100 x86, cpu: Move AMD Elan Kconfig under "Processor family" Currently the option resides under X86_EXTENDED_PLATFORM due to historical nonstandard A20M# handling. However that is no longer the case and so Elan can be treated as part of the standard processor choice Kconfig option. Signed-off-by: Ian Campbell Link: http://lkml.kernel.org/r/1302245177.31620.47.camel@localhost.localdomain Cc: H. Peter Anvin Signed-off-by: H. Peter Anvin commit 5ecd602e76b925eb19c31d8e861876c9a56321f3 Author: Justin P. Mattock Date: Fri Apr 8 08:23:23 2011 -0700 ibmasm: fix comment typo The patch below fixes a typo in a comment. Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit 6fc3ba999994b675c4e6af77ac4e1a6bfd8e6128 Author: Johannes Berg Date: Mon Apr 4 06:16:29 2011 -0700 iwlagn: downgrade warning on unknown TLV If we maintain API properly, then there isn't really a reason to warn about this since we'll just be adding things that are safe to ignore, so downgrade the warning to debug info level. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 0da0e5bf1522d75d446f5124e17016628d0a149e Author: Johannes Berg Date: Fri Apr 8 08:14:56 2011 -0700 iwlagn: clean up & autodetect statistics There's no need to keep both normal and BT statistics versions around all the time in memory when we only use a subset of both. So keep only the subsets that we need in memory, depending on the debug config). Also, in doing so, we can remove all the calls to iwl_bt_statistics() in the driver as we'll just access the copied statistics now. Finally, also remove this call from the one place where it might still be needed and automatically detect what kind of statistics the device is sending based on their size. This way, we don't need to keep track of which devices do what any more, which is good since this is subject to change based on the ucode version (as some ucode even for non-BT devices will in fact use BT statistics). Warn upon encountering a statistics command from the ucode that isn't known, so we will find such issues earlier in the future. Signed-off-by: Johannes Berg Tested-by: Don Fry Signed-off-by: Wey-Yi Guy commit 703bc583cb98a24eeedd297ee59dfa12852897d1 Author: Wey-Yi Guy Date: Sun Apr 3 08:14:41 2011 -0700 iwlagn: sensitivity and chain noise done by driver _agn driver should perform both sensitivity and chain noise calib. Signed-off-by: Wey-Yi Guy commit ae89726a02049e8f61bb3c8bf5dbf1fc06527a07 Author: Wey-Yi Guy Date: Fri Apr 1 16:29:54 2011 -0700 iwlagn: tx power calib always done in firmware Remove the config flag for tx power calib Signed-off-by: Wey-Yi Guy commit 23c0fcc66b4345ea97ae588c2e01f10c994652ba Author: Wey-Yi Guy Date: Fri Apr 1 16:29:53 2011 -0700 iwlagn: all _agn devices support power save mode Remove broken_power_save checking Signed-off-by: Wey-Yi Guy commit 8ff84a2c99bc7f5f22d9d2b5365d821ce4f7a8f9 Author: Wey-Yi Guy Date: Fri Apr 1 16:29:52 2011 -0700 iwlagn: more cleanup to remove unused reference More cleanup code, no functional changes Signed-off-by: Wey-Yi Guy commit 15ade3ca647d95611814333cfe0885fd0184481e Author: Wey-Yi Guy Date: Fri Apr 1 16:29:51 2011 -0700 iwlagn: remove un-needed configuration After driver split, set_l0s config is no longer needed, remove it Signed-off-by: Wey-Yi Guy commit 6bb64697ed58909985487e885c269dafd09583f1 Author: Wey-Yi Guy Date: Fri Apr 1 16:29:50 2011 -0700 iwlagn: remove more reference to legacy devices Remove the reference to both 3945 and 4965 in LED code Signed-off-by: Wey-Yi Guy commit ee3cd7e04ca08ff0ec1ebb96be7e64aef928f511 Author: Wey-Yi Guy Date: Fri Apr 1 16:35:10 2011 -0700 iwlagn: cleanup to remove the reference for 3945 More clean up after driver split Signed-off-by: Wey-Yi Guy commit ab4bf5ef5afce9d31cf5cf05ac80b3b01cbb24a3 Author: Wey-Yi Guy Date: Fri Apr 1 16:35:09 2011 -0700 iwlagn: remove unused 3945 define 3945 no longer apply Signed-off-by: Wey-Yi Guy commit ece3cd2e8fb119a4394dcdc6ef921e85cdd4cc69 Author: Wey-Yi Guy Date: Fri Apr 1 16:29:47 2011 -0700 iwlagn: no 3945 define needed Remove 3945 define Signed-off-by: Wey-Yi Guy commit dcf6640f0f58affa93f158d8573b6868136e3d62 Author: Wey-Yi Guy Date: Fri Apr 1 13:20:44 2011 -0700 iwlagn: PAPD read for 2000 series devices For 2000 series NICs, disable OTP refresh in order to read correct PAPD table from high OTP block Signed-off-by: Wey-Yi Guy commit a2b76b3b31568da9d281a393845f17689594ccdf Author: Johannes Berg Date: Tue Mar 29 06:29:37 2011 -0700 iwlwifi: fix bugs in change_interface If change_interface gets invoked during a firmware restart, it may crash; prevent that from happening by checking if ctx->vif is assigned. Additionally, in my initial commit I forgot to set the vif->p2p variable correctly, so fix that too. Cc: stable@kernel.org [2.6.38+] Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 68b993118f715cc631b62b6a50574e4701fe9ace Author: Garen Tamrazian Date: Wed Mar 30 02:29:32 2011 -0700 iwlagn: fix radar frame rejection The microcode may sometimes reject TX frames when on a radar channel even after we associated as it clears information during association and needs to receive a new beacon before allowing that channel again. This manifests itself as a TX status value of TX_STATUS_FAIL_PASSIVE_NO_RX. So in this case, stop the corresponding queue and give the frame back to mac80211 for retransmission. We start the queue again when a beacon from the AP is received which will make the regulatory enforcement in the device allow transmitting again. Signed-off-by: Garen Tamrazian Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 3ecccbcd3c67374aeee447c08fcb9e39a99f7ee5 Author: Wey-Yi Guy Date: Tue Mar 29 17:53:15 2011 -0700 iwlagn: remove un-necessary function pointer After driver split, no need to use function pointer for those event and register dump function. Signed-off-by: Wey-Yi Guy commit 1d5cc5559aaf5273cc1f9aac9b428e3a99d41de6 Author: root Date: Mon Mar 28 16:12:43 2011 -0700 iwlwifi: remove extranious macro from firmware define define of firmware filenames use extra macro to build the files name. Signed-off-by: Jay Sternberg Signed-off-by: Wey-Yi Guy commit a49e490c7a8a5c6c9474b1936ad8048f3e4440fc Author: Vladimir Zapolskiy Date: Fri Apr 8 20:40:51 2011 +0800 crypto: s5p-sss - add S5PV210 advanced crypto engine support This change adds support for AES encrypting and decrypting using advanced crypto engine found on Samsung S5PV210 and S5PC110 SoCs. Signed-off-by: Vladimir Zapolskiy Signed-off-by: Herbert Xu commit b3b7f0550f84e06ae60df0a13c2992792fbd1af9 Author: Julia Lawall Date: Fri Apr 8 20:39:23 2011 +0800 crypto: caam - introduce missing kfree Error handling code following a kmalloc should free the allocated data. The semantic match that finds the problem is as follows: (http://www.emn.fr/x-info/coccinelle/) // @r exists@ local idexpression x; statement S; expression E; identifier f,f1,l; position p1,p2; expression *ptr != NULL; @@ x@p1 = \(kmalloc\|kzalloc\|kcalloc\)(...); ... if (x == NULL) S <... when != x when != if (...) { <+...x...+> } ( x->f1 = E | (x->f1 == NULL || ...) | f(...,x->f1,...) ) ...> ( return \(0\|<+...x...+>\|ptr\); | return@p2 ...; ) @script:python@ p1 << r.p1; p2 << r.p2; @@ print "* file: %s kmalloc %s return %s" % (p1[0].file,p1[0].line,p2[0].line) // Signed-off-by: Julia Lawall Acked-by: Kim Phillips Signed-off-by: Herbert Xu commit 466de9183570fe9fd21ef167951488fc9d513fcb Author: Ben Hutchings Date: Sat Mar 19 04:26:10 2011 +0000 kconfig: Avoid buffer underrun in choice input commit 40aee729b350672c2550640622416a855e27938f ('kconfig: fix default value for choice input') fixed some cases where kconfig would select the wrong option from a choice with a single valid option and thus enter an infinite loop. However, this broke the test for user input of the form 'N?', because when kconfig selects the single valid option the input is zero-length and the test will read the byte before the input buffer. If this happens to contain '?' (as it will in a mips build on Debian unstable today) then kconfig again enters an infinite loop. Signed-off-by: Ben Hutchings Cc: stable@kernel.org [2.6.17+] Signed-off-by: Michal Marek commit d25b7c1ec7da4636587ad1a22b324bcd7b89b6bc Author: Mark Brown Date: Sat Apr 2 16:39:39 2011 +0900 ASoC: Remove special casing for registerless widgets Since we recently explicitly set the register for registerless widgets to no register there is no longer any need to special case power updates for them, we can allow them to be handled with the register compression code as other widgets are. As this is the only remaining user of dapm_generic_apply_power() and dapm_update_bits() also remove those functions. Noticed-by: Lu Guanqun Signed-off-by: Mark Brown commit 782d640afd15af7a1faf01cfe566ca4ac511319d Author: Michał Mirosław Date: Thu Apr 7 07:32:18 2011 +0000 net: atl*: convert to hw_features Things left as they were: - atl1: is RX checksum really enabled? - atl2: copy-paste from atl1, with-errors-on-modify I presume - atl1c: there's a bug: MTU can't be changed if device is not up Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit dc668910f4eaa233c241d43d96ed6b0b9258cc43 Author: Michał Mirosław Date: Thu Apr 7 03:35:07 2011 +0000 net: tg3: convert to hw_features Cleanup hint: Some features are calculated in tg3_get_invariants() and the rest in its caller --- tg3_init_one(). This is not changed here. Signed-off-by: Michał Mirosław Acked-by: Matt Carlson Signed-off-by: David S. Miller commit 5ec8f9b8e6d87faa9d3a4b079b83e3c0d9c39921 Author: Michał Mirosław Date: Thu Apr 7 02:43:48 2011 +0000 net: enic: convert to hw_features As the driver uses GRO and not LRO, LRO settings are ignored anyway and are removed here to avoid confusion. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6332c8d3a5e352fae854cbcac764622e083461e5 Author: Michał Mirosław Date: Thu Apr 7 02:43:48 2011 +0000 net: benet: convert to hw_features Simple conversion. This also fixes a bug in TX checksum toggling --- driver was changing NETIF_F_HW_CSUM instead of NETIF_F_IP_CSUM+NETIF_F_IPV6_CSUM. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit e92702b1046a418a562878b22f92433517760921 Author: Michał Mirosław Date: Thu Mar 31 01:01:35 2011 +0000 skge: convert to hw_features just IP_CSUM. This needs testing and so is not changed here. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 774fd7baf87829248365a07fdd42ca9882b5dd64 Author: Lu Guanqun Date: Fri Apr 8 08:41:38 2011 +0800 sst: fix compile error Add several include files to fix the below compile error. drivers/staging/intel_sst/intelmid.c: In function ‘snd_intelmad_sst_register’: drivers/staging/intel_sst/intelmid.c:805:2: error: ‘sst_drv_ctx’ undeclared (first use in this function) drivers/staging/intel_sst/intelmid.c:805:2: note: each undeclared identifier is reported only once for each function it appears in Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown commit faeede8cdc9093718a22b4ab2869350c07b1b407 Merge: b39e285 1b877cb Author: Mark Brown Date: Fri Apr 8 09:31:02 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit b39e285545a2bd7f331a53b32c8c40748fdd348e Author: Mike Frysinger Date: Thu Apr 7 02:05:11 2011 -0400 ASoC: SSM2602: add SPI support The ssm2602 codec has a SPI interface as well as I2C, so add the simple bit of glue to make it usable. Signed-off-by: Mike Frysinger Signed-off-by: Mark Brown commit b7af1dafdfaf8419065399d07fb7cbae14b286ef Author: Mark Brown Date: Thu Apr 7 19:18:44 2011 +0900 ASoC: Add data based control initialisation for CODECs and cards Allow CODEC and card drivers to point to an array of controls from their driver structure rather than explicitly calling snd_soc_add_controls(). Signed-off-by: Mark Brown commit 57841869197831542f25c739beaeab4465977878 Author: Ajit Khaparde Date: Wed Apr 6 18:08:43 2011 +0000 be2net: call FLR after setup wol in be_shutdown Calling setup_wol after a reset is inconsequential. The WOL setting should be programmed before FLR. And yes, FLR does not erase wol information. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 48f5a19168c228e6533401c563d9fcbc152bc33f Author: Ajit Khaparde Date: Wed Apr 6 18:08:30 2011 +0000 be2net: dynamically allocate adapter->vf_cfg Instead of a fixed sized array for vf_cfg, allocate the size dynamically depending on number of VFs the device supports. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 81be8f0ab47db1171dac0eb8b062291603b57dd4 Author: Ajit Khaparde Date: Wed Apr 6 18:08:17 2011 +0000 be2net: fix to get max VFs supported from adapter The user supplied num_vfs value need not be compared against a static BE_MAX_VF, but can be checked against the actual VFs that the device can support. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit b0060586d23968d66325d775651d92ee830c032f Author: Ajit Khaparde Date: Wed Apr 6 18:08:01 2011 +0000 be2net: use common method to check for sriov function type Lancer and BE can both use SLI_INTF_REG to check a VF or a PF. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 4b97291429bf59c09a969184a7d2ebde7287e7eb Author: Ajit Khaparde Date: Wed Apr 6 18:07:43 2011 +0000 be2net: add rxhash support Add rxhash support, Based on initial work by Eric Dumazet. Cc: Eric Dumazet Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller commit 2ead70b8390d199ca04cd35311b51f5f3676079e Author: Gustavo F. Padovan Date: Fri Apr 1 15:13:36 2011 -0300 Bluetooth: Fix lockdep warning with skb list lock This is a regression acctually, caused by the first patch series for creating a formal strcut l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 311bb895e325e5f4d708c1ed2206da8a3885c83a Author: Gustavo F. Padovan Date: Fri Mar 25 20:41:00 2011 -0300 Bluetooth: Move busy workqueue to struct l2cap_chan As part of the moving channel stuff to l2cap_chan. Signed-off-by: Gustavo F. Padovan commit f1c6775be6fc944e32e0150305d9753b9a846519 Author: Gustavo F. Padovan Date: Fri Mar 25 20:36:10 2011 -0300 Bluetooth: Move srej and busy queues to struct l2cap_chan As part of the moving channel stuff to l2cap_chan. Signed-off-by: Gustavo F. Padovan commit e92c8e70faf5e3cc22979daba2a895359aa1eab2 Author: Gustavo F. Padovan Date: Fri Apr 1 00:53:45 2011 -0300 Bluetooth: Move ERTM timers to struct l2cap_chan This also triggered a change in l2cap_send_disconn_req() parameters. Signed-off-by: Gustavo F. Padovan commit 2c03a7a49e0831646bd35d0877ec7d051d8f174b Author: Gustavo F. Padovan Date: Fri Mar 25 20:15:28 2011 -0300 Bluetooth: Move remote info to struct l2cap_chan As part of the moving channel stuff to l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 6f61fd475907bf0a1470cb969ee993a31d305513 Author: Gustavo F. Padovan Date: Fri Mar 25 20:09:37 2011 -0300 Bluetooth: Move SDU related vars to struct l2cap_chan As part of the moving channel stuff to l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 6a026610eee2c53ff59598905fcbaa979aec68d1 Author: Gustavo F. Padovan Date: Fri Apr 1 00:38:50 2011 -0300 Bluetooth: Move more ERTM stuff to struct l2cap_chan As part of the moving channel stuff to l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 42e5c8027bad6f1591032941f0ebf4fc079405c8 Author: Gustavo F. Padovan Date: Fri Mar 25 19:58:34 2011 -0300 Bluetooth: Move of ERTM *_seq vars to struct l2cap_chan As part of the moving channel to stuff to struct l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 525cd1851b9faaadf5ea33e05192b8d22f42487e Author: Gustavo F. Padovan Date: Fri Mar 25 19:43:39 2011 -0300 Bluetooth: Move conn_state to struct l2cap_chan This is part of "moving things to l2cap_chan". As one the first move it triggered a big number of changes in the funcions parameters, basically changing the struct sock param to struct l2cap_chan. Signed-off-by: Gustavo F. Padovan commit 710f9b0a423cad155144742f6497efe5163ed750 Author: Gustavo F. Padovan Date: Fri Mar 25 14:30:37 2011 -0300 Bluetooth: clean up l2cap_sock_recvmsg() Move some channel specific stuff to l2cap_core.c, this will make things more clear. Signed-off-by: Gustavo F. Padovan commit 73ffa904b78287f6acf8797e040150aa26a4af4a Author: Gustavo F. Padovan Date: Fri Mar 25 14:16:54 2011 -0300 Bluetooth: Move conf_{req,rsp} stuff to struct l2cap_chan They are also l2cap_chan specific. Signed-off-by: Gustavo F. Padovan commit fc7f8a7ed4543853a99852ca405ea71fabe78946 Author: Gustavo F. Padovan Date: Fri Mar 25 13:59:37 2011 -0300 Bluetooth: Move ident to struct l2cap_chan ident is chan property, no need to reside on socket. Signed-off-by: Gustavo F. Padovan commit 820ffdb3d25f74fbd553453f461709d52dfa72a2 Author: Gustavo F. Padovan Date: Fri Apr 1 00:35:21 2011 -0300 Bluetooth: Remove struct del_list As we use struct list_head to keep L2CAP channels list the workaround with del_list is not needed anymore. Signed-off-by: Gustavo F. Padovan commit baa7e1fa6d2870462bd744df1c6ddbd497fe86d6 Author: Gustavo F. Padovan Date: Thu Mar 31 16:17:41 2011 -0300 Bluetooth: Use struct list_head for L2CAP channels list Use a well known Kernel API is always a good idea than implement your own list. In the future we might use RCU on this list. Signed-off-by: Gustavo F. Padovan commit 48454079c2d4b9ee65c570a22c5fdfe1827996a4 Author: Gustavo F. Padovan Date: Fri Mar 25 00:22:30 2011 -0300 Bluetooth: Create struct l2cap_chan struct l2cap_chan cames to create a clear separation between what properties and data belongs to the L2CAP channel and what belongs to the socket. By now we just fold the struct sock * in struct l2cap_chan as all the channel info is struct l2cap_pinfo today. In the next commits we will see a move of channel stuff to struct l2cap_chan. Signed-off-by: Gustavo F. Padovan commit c1e48efc701b79ee4367c9a1a4e8bbc7c3586e02 Merge: 912d398 1b86a58 Author: David S. Miller Date: Thu Apr 7 14:05:23 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 Conflicts: drivers/net/benet/be_main.c commit b37e3b6d64358604960b35e8ecbb7aed22e0926e Merge: a90c7a3 bd39a27 Author: John W. Linville Date: Thu Apr 7 16:45:40 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 Conflicts: drivers/net/wireless/rtlwifi/efuse.c drivers/net/wireless/rtlwifi/rtl8192c/fw_common.c net/bluetooth/mgmt.c commit a90c7a313a1c5b4fc99f987a2ae8f92ab0ae35c7 Author: Luis R. Rodriguez Date: Tue Apr 5 10:49:04 2011 -0700 cfg80211: add a timer for invalid user reg hints We have no other option but to inform userspace that we have queued up their regulatory hint request when we are given one given that nl80211 operates atomically on user requests. The best we can do is accept the request, and add a delayed work item for processing failure and cancel it if we succeeed. Upon failure we restore the regulatory settings and ignore the user input. This fixes this reported bug: https://bugzilla.kernel.org/show_bug.cgi?id=28112 Reported-by: gregoryx.alagnou@intel.com Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 146095557b01cf5ff5d66554d96cbb8133d94eb9 Author: Luis R. Rodriguez Date: Tue Apr 5 10:49:03 2011 -0700 cfg80211: fix regulatory restore upon user hints When we restore regulatory settings its possible CRDA will not reply because of a bogus user entry. In this case the bogus entry will prevent any further processing on cfg80211 for regulatory domains even if we restore regulatory settings. To prevent this we suck out all pending requests when restoring regulatory settings and add them back into the queue after we have queued up the reset work. The impact of not having this applied is that a user with privileges can issue a userspace regulatory hint while we are disasocciating and this would prevent any further processing of regulatory domains. Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit 02a7fa00a6d145037d549c779ad7692deb504acc Author: Johannes Berg Date: Tue Apr 5 09:42:12 2011 -0700 iwlagn: move IO functions out of line This generates a massive reduction in module size: with debug: text data bss dec hex filename 670300 13136 420 683856 a6f50 iwlagn.ko (before) 388347 13136 408 401891 621e3 iwlagn.ko (after) without debug: text data bss dec hex filename 528575 13072 420 542067 84573 iwlagn.ko (before) 294192 13072 408 307672 4b1d8 iwlagn.ko (after) This also removes all the IO debug functionality since it can easily be replaced by tracing, and makes the code unnecessarily complex. I haven't done any CPU utilisation measurements, but given that the hotpaths don't use much IO it is not likely to have a negative impact; in fact, the size reduction will reduce cache pressure which possibly improves performance. Finally, an unused function or two were removed. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 519d8abd358afad825a1b919a2421d76779f23cd Author: Johannes Berg Date: Tue Apr 5 09:42:11 2011 -0700 iwlagn: remove ISR ops The ISR (interrupt service routine) ops are now no longer necessary since they are the same for all devices this driver now handles. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 0e5884458eeadbb48ab3eb1d5f63b4a53a044a95 Author: Johannes Berg Date: Tue Apr 5 09:42:10 2011 -0700 iwlagn: remove rxb page bookkeeping We never use the value in alloc_rxb_page, so there's no point in keeping it either. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit c2974a1d18832a9fffb2eb389c3878f5c4ed92f1 Author: Johannes Berg Date: Tue Apr 5 09:42:09 2011 -0700 iwlagn: remove rev_id The rev_id variable is only printed, we don't need to store it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e98a130259ed6f88bc2833fa525b10453c92c047 Author: Johannes Berg Date: Tue Apr 5 09:42:08 2011 -0700 iwlagn: remove hw_rev The hw_rev variable is used only during init, so there's no need to keep it around. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit bc255930639122d788d1b6ce10d3c01cc2946398 Author: Johannes Berg Date: Tue Apr 5 09:42:07 2011 -0700 iwlagn: remove hw_wa_rev The variable is never used. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 917b6777b45ac49c436570e36eb09d9b8b84c434 Author: Johannes Berg Date: Tue Apr 5 09:42:06 2011 -0700 iwlagn: remove BSM clock setting Again, a 4965 specific code path that we no longer need in iwlagn. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 17445b8c443bb1aaf7f85bcf60676d04be1c467c Author: Johannes Berg Date: Tue Apr 5 09:42:05 2011 -0700 iwlagn: init cmd_queue earlier We know after loading the ucode whether it will support PAN or not, so we can also initialise the cmd_queue variable much earlier. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit d7d5783c6668b54111cc77005755799e94261497 Author: Johannes Berg Date: Tue Apr 5 09:42:04 2011 -0700 iwlagn: clean up alive handling Devices newer than 4965 don't actually send two different versions of the ALIVE command, so we always had a bug here since before this patch we copy more data than we got. Remove the iwl_init_alive_resp struct and don't use it. Since we also really don't need to track all the data received in ALIVE as we only use the error and log event tables later, we can also save space by just keeping those and not more data around in memory. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3d09cdff233b5a37ce9993c533e8da1403e2da30 Author: Johannes Berg Date: Tue Apr 5 09:42:03 2011 -0700 iwlagn: fix ucode verify message My previous patch left a message talking about bootstrap, but that's clearly bogus. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3997ff39faa184a2ff670a6792cdb89ff51cf78f Author: Johannes Berg Date: Tue Apr 5 09:42:02 2011 -0700 iwlagn: add feature flags Some new devices and microcode files will a greater variety of features, so the TLV-per-feature approach we took before will quickly make things harder to manage and increase the file size. Add a new TLV that has feature flags. Currently, it will contain: 1) a PAN feature flag, which moves from a separate TLV 2) a new BT stats bit that indicates whether the microcode image uses bluetooth statistics 3) a new MFP flag for management frame protection which can be enabled once the device/microcode supports it Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 7415952ff789b1c1878119662d4dc011ac9d261e Author: Wey-Yi Guy Date: Tue Apr 5 09:42:01 2011 -0700 iwlagn: check more error return code In alive notify, we should check return code instead of assume everything ok Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 901069c71415a76d731857ccda814e18ded062f7 Author: Wey-Yi Guy Date: Tue Apr 5 09:42:00 2011 -0700 iwlagn: change Copyright to 2011 Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 6009c39c6fc1cb988bdc90a395d9cce273afc7d5 Author: Johannes Berg Date: Tue Apr 5 09:41:59 2011 -0700 iwlagn: remove ucode_data_backup This was used only on 4965 in conjunction with the bootstrap ucode. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit e649437fd6e2bae6f7b8a36a302a1ec4faa5d906 Author: Johannes Berg Date: Tue Apr 5 09:41:58 2011 -0700 iwlagn: centralize and fix ucode restart The ucode restart has to take into account a number of things, like clearing the HCMD_ACTIVE and other status bits, and waking up the wait_command_queue. Currently, however, there are a number of places that neither do that, nor actually set the FW error bit that leads to proper restart handling, which means that in those cases things will probably just hang completely. To clean this up, make all ucode restart go through a single function, except for the cases where it's called during firmware loading. Also fix a bug in wimax coexist restart avoidance, it needs to first clear the status bits (and it has to clear the HCMD_ACTIVE one as well) and then wake up anything waiting on wait_command_queue. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 1fc352765fb461e4afafff4d650624df8ab6b6d6 Author: Johannes Berg Date: Tue Apr 5 09:41:57 2011 -0700 iwlagn: remove bootstrap code Only 4965 had a bootstrap microcode image, so the agn driver can completely ignore that and we can remove some code from it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 35b1d92dfb361d24664381a0e4ae8ed47c771a66 Author: Johannes Berg Date: Tue Apr 5 09:41:56 2011 -0700 iwlagn: verify specific ucode When we loaded a ucode, there's no point in checking any one that is present, we know which one is supposed to be present so also verify that it is exactly the right one. That also simplifies the code and makes it faster since it doesn't have to check all. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit fb66216f9ebb146ad457829fcb62ae8f4348cda2 Author: Johannes Berg Date: Tue Apr 5 09:41:55 2011 -0700 iwlagn: simplify ucode check code The code in iwlcore_verify_inst_sparse really doesn't need to keep track of the number of errors it encountered since a single one is fatal. Also, the code in iwl_verify_inst_full is just used to print out some things, so rename it to iwl_print_inst and don't give it a return code and just make it print out the values. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 36127db02ec17828c1582bb6bc1f12160fd35d64 Author: Wey-Yi Guy Date: Tue Apr 5 09:41:54 2011 -0700 iwlagn: return send calibration result In alive notification call, return the status from iwl_send_calib_results() Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 08960dea6c736280a03cb947f445fdb94fdaa2ee Author: Johannes Berg Date: Tue Apr 5 09:41:53 2011 -0700 iwlagn: remove pointless return variables A number of places just use a variable to return it right away, which is useless, so let's remove the variables there. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 4de10b188070b1b96743b1b912843af729ebe50f Author: Wey-Yi Guy Date: Tue Apr 5 09:41:52 2011 -0700 iwlagn: remove more 3945/4965 related defines After driver split, remove unused #defines Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 7102762ef0ef330ab0601b6c3bc92bf9be5b1317 Author: Johannes Berg Date: Tue Apr 5 09:41:51 2011 -0700 iwlagn: clean up ucode loading All agn devices behave the same, so there's no need to go through function pointers for any of the ucode loading functionality. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 2dedbf58b2edbe940d370845dbf4210f1ddd2b31 Author: Johannes Berg Date: Tue Apr 5 09:41:50 2011 -0700 iwlagn: make mac80211 handlers static Now that these handlers are no longer shared between 4965 and agn, they can be static. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3240cab3ddfb2637cfca3a078078cdeda44d0a99 Author: Johannes Berg Date: Tue Apr 5 09:41:49 2011 -0700 iwlagn: clean up some 3945/4965 remnants When the driver was split, a bunch of definitions for the 3945 and 4965 devices stayed around, but they're now useless so remove (some of) them. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 68e022dfeb548b48635888d1392f983977293573 Author: Johannes Berg Date: Tue Apr 5 09:41:48 2011 -0700 iwlagn: remove unused variable Some code was removed, but a variable it used and that is now unused stayed around, kill it. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy Signed-off-by: John W. Linville commit cebb28ba1ebb00edee4606547d81acf8db0f0532 Author: Michal Marek Date: Tue Apr 5 16:59:06 2011 +0200 rt2x00: Drop __TIME__ usage The kernel already prints its build timestamp during boot, no need to repeat it in random drivers and produce different object files each time. Signed-off-by: Michal Marek Acked-by: Ivo van Doorn Acked-by: Gertjan van Wingerde Cc: linux-wireless@vger.kernel.org Cc: netdev@vger.kernel.org Signed-off-by: John W. Linville commit 0321708748d8f2ecfffa4a9feafb332312e4e57f Author: Nishant Sarmukadam Date: Tue Apr 5 14:18:09 2011 +0530 mwl8k: Do not configure tx power unconditionally Instead of configuring tx power unconditionally, check for IEEE80211_CONF_CHANGE_POWER and configure it only when stack sets this flag Signed-off-by: Nishant Sarmukadam Signed-off-by: John W. Linville commit 99e4d43ad5ff5778f92ee3bc40a29ac7cd8a28f4 Author: Rajkumar Manoharan Date: Mon Apr 4 22:56:19 2011 +0530 ath9k: configure beacons based on hw opmode Current ath9k code does not handle beacon timers on opmode specific. One such example is that a STA beacon config overwrites already configured AP vif's beacon timers during scan. On multi station vif case, configure beacon timers beased on primary vif selected. This also helps while moving back to single STA vif from multi STA vifs, where the power save is enabled and hw has to be reconfigured with proper beacon and bssid/aid. Otherwise connection poll will be triggered so frequently due to beacon loss. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 4f5ef75b155955bf92adc772c6660787151fc78c Author: Rajkumar Manoharan Date: Mon Apr 4 22:56:18 2011 +0530 ath9k: Handle BSSID/AID for multiple interfaces As of now bssid/aid is overridden with recently changed vif's bss config. This may cause improper beacon updation due to bssid/aid mismatch. On station mode, select an associated sta vif as primary vif and configure that vif's bss into hw. Update the primary vif on interface change and bss info change. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 66da424177db4f4f2fa7a462db5912655aad966f Author: Rajkumar Manoharan Date: Mon Apr 4 22:56:17 2011 +0530 ath9k: Cleanup ath_vif struct Remove unused bssid from ath_vif and set av_bslot on beacon alloc/return. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 59575d1c717815d62f1b5aeac74e5e60a1b27428 Author: Rajkumar Manoharan Date: Mon Apr 4 22:56:16 2011 +0530 ath9k: deny new interface addtion on IBSS mode The present check denies the IBSS interface addtion if we already have any other vifs. But it fails to deny interface addition if IBSS was already present. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 1e5f52de216a32986a5c3cbc358dbb2620a03047 Author: Jarkko Nikula Date: Mon Apr 4 11:04:58 2011 +0300 wl1251: Add support for idle mode On Nokia N900 the wl1251 consumes the most power when the interface is up but not associated to access point (that supports PSM). In terms of battery current consumption, the consumption is ~180 mA higher when the interface is up but not associated and only ~5 mA higher when associated compared to interface down and driver not loaded cases. This patch adds support for the mac80211 idle notifications. Chip is put into idle very much the same way when entering into PSM by utilizing the Extreme Low Power (ELP) mode. I.e. idle is entered by setting necessary conditions in wl1251_ps_set_mode followed by a call to wl1251_ps_elp_sleep. It seems it is just enough the authorize ELP mode followed by CMD_DISCONNECT (thanks to Kalle Valo about the idea to use it). Without disconnect command the chip remains somewhat active and stays consuming ~20 mA. Idle mode is left by same way than PSM. The wl1251_join call is used to revert the CMD_DISCONNECT. Without it association to AP doesn't work when trying second time. With this patch the interface up but not associated case the battery current consumption is less than 1 mA higher compared to interface down case. Signed-off-by: Jarkko Nikula Acked-by: Kalle Valo Signed-off-by: John W. Linville commit a0bbb58bcb70295ff05f870c93d34f9fbe614204 Author: Jarkko Nikula Date: Mon Apr 4 11:04:57 2011 +0300 wl1251: Prepare for idle mode support RFC for WL1251 idle mode support brought a few issues that are worth to update before adding the idle mode support. Since the idle mode can reuse the code that is now used in Power Save Mode (PSM), the flag psm in struct wl1251 is changed to variable station_mode to be able to distinguish between PSM and idle modes. As the station mode is different than the power power save mode command that is sent to chip, the enum wl1251_cmd_ps_mod values are used only when communicating with the chip and new enum wl1251_station_mode values are used inside the driver. Confusing comment about psm and elp relation is removed since the PSM is actually activated by putting the chip into Entreme Low Power (ELP) mode. Signed-off-by: Jarkko Nikula Acked-by: Kalle Valo Signed-off-by: John W. Linville commit ffbd308dce898a857de76d17cc05748505cf4ece Author: Mohammed Shafi Shajakhan Date: Sun Apr 3 19:05:28 2011 +0530 mac80211: remove few obsolete flags Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit fbd5d17b8e2b418b495599c554f9c4754b7f93c9 Author: Jussi Kivilinna Date: Sat Apr 2 11:25:54 2011 +0300 zd1211rw: rename CR* macros to ZD_CR* With compat-wireless CR* macros in zd_usb.h conflict with CR macros in include/asm-generic/termbits.h. So rename CR* macros to ZD_CR*. Conversion was done with using sed and then 'over 80 character line' checkpatch.pl warnings and comment indents were fixed. Reported-by: Walter Goldens Signed-off-by: Jussi Kivilinna Signed-off-by: John W. Linville commit 26cd322bacd3d65fffef6f8418c2fdad5b42e4b5 Author: Felix Fietkau Date: Sat Apr 2 03:39:48 2011 +0200 ath9k: use the hw opmode to select the beacon timer mode Since the beacon timers are global, the individual vif type should not be used to determine the beacon timer configuration mode, use the global opmode instead. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 5e65968a10bb628b87024161c9adc8dbd886b47a Author: Felix Fietkau Date: Sat Apr 2 03:39:47 2011 +0200 ath9k: fix beacon slot processing in ad-hoc mode The recent cleanups in the beacon code fixed SWBA backoff calculation, however it did not remove a line of code that worked around the issues from the earlier version of the code. After the cleanup, the initial TSF based slot calculation now always returns 0 instead of ATH_BCBUF-1, so the previous hack that reversed the slot order needs to be removed, as ad-hoc mode does not use staggered beacons. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 2be50b8df53f2f329b7ddcc8be286ef6a7469fd2 Author: Yogesh Ashok Powar Date: Fri Apr 1 18:36:47 2011 -0700 mwifiex: remove redundant encryption_mode mapping remove MWIFIEX_ENCRYPTION_MODE_ and use WLAN_CIPHER_SUITE_ macros directly Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 2d3d0a88bd136f8e6f39bc53242712852e5d0bb2 Author: Amitkumar Karwar Date: Fri Apr 1 18:36:46 2011 -0700 mwifiex: return success in set_default_key for WPA/WPA2 When testing wpa_supplicant with 'nl80211' driver to connect to an AP with WPA/WPA2 security, we notice the followings: 1) add_key is called firstly with the key from cfg80211 2) set_defaut_key is called next set_default_key() is specific to WEP keys and should not be called in case of WPA/WPA2 security. The set_default_key() won't be called if wpa_supplicant uses "-Dwext" option, but it's been called if "-Dnl80211" option is specified. We can fix this issue by adding a check to return from set_default_key() if WEP key is not configured. Signed-off-by: Amitkumar Karwar Signed-off-by: Yogesh Ashok Powar Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit f4263c9857e6411ef2388868cc6c79a1602a654e Author: Paul Stewart Date: Thu Mar 31 09:25:41 2011 -0700 nl80211: Add BSS parameters to station This allows user-space monitoring of BSS parameters for the associated station. This is useful for debugging and verifying that the paramaters are as expected. [Exactly the same as before but bundled into a single message] Signed-off-by: Paul Stewart Cc: Johannes Berg Signed-off-by: John W. Linville commit 8447c163afeaa7e9f6f015088177b1c8511e0877 Author: Stanislaw Gruszka Date: Thu Mar 31 17:36:28 2011 +0200 iwlwifi: remove sync_cmd_mutex We now use priv->mutex to serialize sync command, remove old priv->sync_cmd_mutex and add assertion that priv->mutex must be locked. Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit dc1a4068fce2657991c5c3b1f6849f7fc466c69f Author: Stanislaw Gruszka Date: Thu Mar 31 17:36:27 2011 +0200 iwlwifi: more priv->mutex serialization Check status bits with mutex taken, because when we wait for mutex unlock, status can change. Patch should also make remaining sync commands be send with priv->mutex taken. That will prevent execute these commands when we are currently reset firmware, what could possibly cause troubles. Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 3598e1774c94e55c71b585340e7dc4538f310e3f Author: Stanislaw Gruszka Date: Thu Mar 31 17:36:26 2011 +0200 iwlwifi: fix enqueue hcmd race conditions We mark command as huge by using meta->flags from other (non huge) command, but flags can be possibly overridden, when non huge command is enqueued, what can lead to: WARNING: at lib/dma-debug.c:696 dma_debug_device_change+0x1a3/0x1f0() DMA-API: device driver has pending DMA allocations while released from device [count=1] To fix introduce additional CMD_MAPPED to mark command as mapped and serialize iwl_enqueue_hcmd() with iwl_tx_cmd_complete() using hcmd_lock. Serialization will also fix possible race conditions, because q->read_ptr, q->write_ptr are modified/used in parallel. On the way fix whitespace. Signed-off-by: Stanislaw Gruszka Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 08b8099c128d601fd675b212ef8b10397706b633 Author: Xose Vazquez Perez Date: Sun Mar 27 01:15:53 2011 +0100 wireless: rt2x00: rt{2500,73}usb.c fix duplicate ids based on the Ralink drivers: W = Windows_ralink_driver L = Linux_ralink_driver USB_IDs W_73 W_2500 L_73 L_2500 ============= ==== ====== ==== ====== 0x050d,0x7050 - - - YES 0x050d,0x705a - - YES - 0x1371,0x9022 - YES YES - 0x148f,0x2573 YES - YES - Signed-off-by: Xose Vazquez Perez Acked-by: Ivo van Doorn Signed-off-by: John W. Linville commit f3b3e36f4ecad9fd7b0ae04d7400f2153a7834eb Merge: b0006e6 db940cb Author: John W. Linville Date: Thu Apr 7 15:30:53 2011 -0400 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-next-2.6 commit b0006e69615868f3dfdfe2bd64eb11973f1208fc Author: Christian Lamparter Date: Fri Mar 25 20:21:55 2011 +0100 ar9170usb: purge obsolete driver Signed-off-by: Christian Lamparter Signed-off-by: John W. Linville commit d6c558379abc27241c75b8c30fc8c94b82537d5e Merge: 9660439 954032d Author: J. Bruce Fields Date: Thu Apr 7 15:19:21 2011 -0400 Merge branch 'for-2.6.39' into for-2.6.40 commit e46bc9b6fd65bc9f406a4211fbf95683cc9c2937 Merge: 2b9accb 321fb56 Author: Oleg Nesterov Date: Thu Apr 7 20:44:11 2011 +0200 Merge branch 'ptrace' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into ptrace commit 9660439861aa8dbd5e2b8087f33e20760c2c9afc Author: Olga Kornievskaia Date: Tue Oct 21 14:13:47 2008 -0400 svcrpc: take advantage of tcp autotuning Allow the NFSv4 server to make use of TCP autotuning behaviour, which was previously disabled by setting the sk_userlocks variable. Set the receive buffers to be big enough to receive the whole RPC request, and set this for the listening socket, not the accept socket. Remove the code that readjusts the receive/send buffer sizes for the accepted socket. Previously this code was used to influence the TCP window management behaviour, which is no longer needed when autotuning is enabled. This can improve IO bandwidth on networks with high bandwidth-delay products, where a large tcp window is required. It also simplifies performance tuning, since getting adequate tcp buffers previously required increasing the number of nfsd threads. Signed-off-by: Olga Kornievskaia Cc: Jim Rees Signed-off-by: J. Bruce Fields commit 31d68ef65c7d49def19c1bae4e01b87d66cf5a56 Author: J. Bruce Fields Date: Thu Feb 24 11:25:33 2011 -0800 SUNRPC: Don't wait for full record to receive tcp data Ensure that we immediately read and buffer data from the incoming TCP stream so that we grow the receive window quickly, and don't deadlock on large READ or WRITE requests. Also do some minor exit cleanup. Signed-off-by: Trond Myklebust Signed-off-by: J. Bruce Fields commit 586c52cc61b5b84c70102208b78269ef5924bf49 Author: Trond Myklebust Date: Mon May 18 17:47:56 2009 -0400 svcrpc: copy cb reply instead of pages It's much simpler just to copy the cb reply data than to play tricks with pages. Callback replies will typically be very small (at least until we implement cb_getattr, in which case files with very long ACLs could pose a problem), so there's no loss in efficiency. Signed-off-by: J. Bruce Fields commit cc6c2127f2316c2b2ad1e8919b45cde5e03f65aa Author: J. Bruce Fields Date: Mon Feb 14 15:03:35 2011 -0500 svcrpc: close connection if client sends short packet If the client sents a record too short to contain even the beginning of the rpc header, then just close the connection. The current code drops the record data and continues. I don't see the point. It's a hopeless situation and simpler just to cut off the connection completely. Signed-off-by: J. Bruce Fields commit 48e6555c7b3bf0d92f8167d8b8b8ecf4a3fdab84 Author: J. Bruce Fields Date: Mon Feb 14 14:52:03 2011 -0500 svcrpc: note network-order types in svc_process_calldir Signed-off-by: J. Bruce Fields commit 5ee78d483c5812228e971e145b912e0a7e35e571 Author: Trond Myklebust Date: Mon May 18 17:47:56 2009 -0400 SUNRPC: svc_tcp_recvfrom cleanup Minor cleanup in preparation for later patches. Signed-off-by: Trond Myklebust Signed-off-by: J. Bruce Fields commit 0601f793921157603831d00a9541d92e8f5763f6 Author: Trond Myklebust Date: Mon May 18 17:47:56 2009 -0400 SUNRPC: requeue tcp socket less frequently Don't requeue the socket in some cases where we know it's unnecessary. Signed-off-by: Trond Myklebust Signed-off-by: J. Bruce Fields commit ff00c2a5b2308219ab952d01e5bb17b9ea772d7e Author: Tony Luck Date: Thu Apr 7 11:05:56 2011 -0700 [IA64] fix build warning in arch/ia64/oprofile/backtrace.c arch/ia64/oprofile/backtrace.c:63: warning: comparison of distinct pointer types lacks a cast Comparing a "u64 *" with an "unsigned long *". Make them match. Signed-off-by: Tony Luck commit 1214eac73f798bccabc6adb55e7b2d787527c13c Author: Harry Ciao Date: Thu Apr 7 14:12:57 2011 +0800 Initialize policydb.process_class eariler. Initialize policydb.process_class once all symtabs read from policy image, so that it could be used to setup the role_trans.tclass field when a lower version policy.X is loaded. Signed-off-by: Harry Ciao Signed-off-by: Eric Paris commit eba71de2cb7c02c5ae4f2ad3656343da71bc4661 Author: Stephen Smalley Date: Fri Mar 25 10:13:43 2011 -0400 selinux: Fix regression for Xorg Commit 6f5317e730505d5cbc851c435a2dfe3d5a21d343 introduced a bug in the handling of userspace object classes that is causing breakage for Xorg when XSELinux is enabled. Fix the bug by changing map_class() to return SECCLASS_NULL when the class cannot be mapped to a kernel object class. Reported-by: "Justin P. Mattock" Signed-off-by: Stephen Smalley Signed-off-by: James Morris commit ba4b87ad5497cba555954885db99c99627f93748 Author: Stanislaw Gruszka Date: Thu Mar 31 08:08:09 2011 -0400 dma-debug: print information about leaked entry When driver leak dma mapping, print additional information about one of leaked entries, to to help investigate problem. Patch should be useful for debugging drivers, which maps many different class of buffers. Signed-off-by: Stanislaw Gruszka Signed-off-by: Joerg Roedel commit a12d3e1e1cb67bab2411966b345151c316633847 Author: Takashi Iwai Date: Thu Apr 7 15:55:15 2011 +0200 ALSA: hda - Remember connection lists The connection lists are static and we can reuse the previous results instead of querying via verb at each time. This will reduce the I/O in the runtime especially for some codec auto-parsers. Signed-off-by: Takashi Iwai commit 8e28e3b29fdbb2b94bb279700114b5963fe1d4e8 Merge: ad93ffe 262ac22 Author: Takashi Iwai Date: Thu Apr 7 12:57:53 2011 +0200 Merge branch 'fix/hda' into topic/hda commit ad93ffe6e4fc02993987008e4a5dcdcf4c926cd5 Author: Takashi Iwai Date: Thu Apr 7 12:49:26 2011 +0200 ALSA: hda - Fix unused variable warning in patch_realtek.c Signed-off-by: Takashi Iwai commit 35ffe11587fb6e93725d420aa17cf1e7a6bf427f Author: Takashi Iwai Date: Thu Apr 7 12:34:26 2011 +0200 ALSA: hda - Remove superfluous inits for ALC662 auto-parser Since we now set up the connections and mutes dynamically in the auto-parser, all static initializations via alc662_init_verbs & co are no longer needed. Let's drop them. Signed-off-by: Takashi Iwai commit 10696aa0e56b29c6f3ce27081092785c564423e1 Author: Takashi Iwai Date: Thu Apr 7 12:46:45 2011 +0200 ALSA: hda - Mute ADC as default in ALC882 and other auto-parsers Mute the ADC as default in the auto-parser dynamically instead of relying on the static init verbs. Signed-off-by: Takashi Iwai commit 0e53f3440925aa36fe3bd2307e5fa0238a66f8bf Author: Takashi Iwai Date: Thu Apr 7 12:27:32 2011 +0200 ALSA: hda - Unmute mixer dynamically in alc662 auto-parser Instead of static init array, better to determine the connection and the mute status of the pin/mixer/DAC route dynamically. This fixes the uninitialized mixer 0x0f on ALC892. Signed-off-by: Takashi Iwai commit 7d0c5cc5be73f7ce26fdcca7b8ec2203f661eb93 Author: Joerg Roedel Date: Thu Apr 7 08:16:10 2011 +0200 x86/amd-iommu: Flush all internal TLBs when IOMMUs are enabled The old code only flushed a DTE or a domain TLB before it is actually used by the IOMMU driver. While this is efficient and works when done right it is more likely to introduce new bugs when changing code (which happened in the past). This patch adds code to flush all DTEs and all domain TLBs in each IOMMU right after it is enabled (at boot and after resume). This reduces the complexity of the driver and makes it less likely to introduce stale-TLB bugs in the future. Signed-off-by: Joerg Roedel commit d8c13085775c72e2d46edc54ed0c803c3a944ddb Author: Joerg Roedel Date: Wed Apr 6 18:51:26 2011 +0200 x86/amd-iommu: Rename iommu_flush_device This function operates on a struct device, so give it a name that represents that. As a side effect a new function is introduced which operates on am iommu and a device-id. It will be used again in a later patch. Signed-off-by: Joerg Roedel commit ac0ea6e92b2227c86fe4f7f9eb429071d617a25d Author: Joerg Roedel Date: Wed Apr 6 18:38:20 2011 +0200 x86/amd-iommu: Improve handling of full command buffer This patch improved the handling of commands when the IOMMU command buffer is nearly full. In this case it issues an completion wait command and waits until the IOMMU has processed it before continuing queuing new commands. Signed-off-by: Joerg Roedel commit 17b124bf1463582005d662d4dd95f037ad863c57 Author: Joerg Roedel Date: Wed Apr 6 18:01:35 2011 +0200 x86/amd-iommu: Rename iommu_flush* to domain_flush* These functions all operate on protection domains and not on singe IOMMUs. Represent that in their name. Signed-off-by: Joerg Roedel commit 61985a040f17c03b09a2772508ee02729571365b Author: Joerg Roedel Date: Wed Apr 6 17:46:49 2011 +0200 x86/amd-iommu: Remove command buffer resetting logic The logic to reset the command buffer caused more problems than it actually helped. The logic jumped in when the IOMMU hardware doesn't execute commands anymore but the reasons for this are usually not fixed by just resetting the command buffer. So the code can be removed to reduce complexity. Signed-off-by: Joerg Roedel commit 815b33fdc279d34ab40a8bfe1866623a4cc5669b Author: Joerg Roedel Date: Wed Apr 6 17:26:49 2011 +0200 x86/amd-iommu: Cleanup completion-wait handling This patch cleans up the implementation of completion-wait command sending. It also switches the completion indicator from the MMIO bit to a memory store which can be checked without IOMMU locking. As a side effect this patch makes the __iommu_queue_command function obsolete and so it is removed too. Signed-off-by: Joerg Roedel commit 5402e4cb80dc2cb407ca07e31cb7668ba45e5320 Author: Takashi Iwai Date: Thu Apr 7 10:39:25 2011 +0200 ALSA: hda - Rewrite alc269_suspend to alc269_shutup alc269_suspend is just calling the shut-up, so we can use the new shutup callback for the purpose. Signed-off-by: Takashi Iwai commit 1c716153a87ae75c8bd63f1b6f7916300d87df7e Author: Takashi Iwai Date: Thu Apr 7 10:37:16 2011 +0200 ALSA: hda - Introduce shutup callback to Realtek spec struct Add shutup callback to be called codec-specifically for avoiding pop noises at suspend or shutdown. As a generic callback, just turn EAPD off. Signed-off-by: Takashi Iwai commit 691f1fccf72e3092e3a7a79fd672940afc9305ef Author: Takashi Iwai Date: Thu Apr 7 10:31:43 2011 +0200 ALSA: hda - Refactoring EAPD controls Reduced the duplicated codes. Signed-off-by: Takashi Iwai commit a7f2371f9e9730ccdb70d6d5803da2a732c97cf3 Author: Takashi Iwai Date: Thu Apr 7 10:24:23 2011 +0200 ALSA: hda - Split EAPD init to a separate array from alc662_init_verbs So far, alc662_init_verbs[] is used for all ALC662-compatible chips, but the EAPD controls for 0x15 in there is invalid for ALC892. Also, since EAPDs should be set up in alc_auto_init_amp(), these static elements aren't needed for auto-parser, too. In this patch, the EAPD init verbs are split from alc662_init_verbs, and applied only to static quirks. Signed-off-by: Takashi Iwai commit 912d398d28b4359c2fb1f3763f1ce4f86de8350e Author: Wei Yongjun Date: Wed Apr 6 18:40:12 2011 +0000 net: fix skb_add_data_nocache() to calc csum correctly commit c6e1a0d12ca7b4f22c58e55a16beacfb7d3d8462 broken the calc (net: Allow no-cache copy from user on transmit) of checksum, which may cause some tcp packets be dropped because incorrect checksum. ssh does not work under today's net-next-2.6 tree. Signed-off-by: Wei Yongjun Acked-by: Tom Herbert Signed-off-by: David S. Miller commit 993ba1585cbb03fab012e41d1a5d24330a283b31 Author: Tejun Heo Date: Tue Apr 5 00:24:00 2011 +0200 x86-32, numa: Update remap allocator comments Now that remap allocator is cleaned up, update comments such that they are in docbook function description format and reflect the actual implementation. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-15-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 198bd06bbfde2984027e91f64c55eb19a7034a27 Author: Tejun Heo Date: Tue Apr 5 00:23:59 2011 +0200 x86-32, numa: Remove redundant node_remap_size[] Remap area size can be determined from node_remap_start_vaddr[] and node_remap_end_vaddr[] making node_remap_size[] redundant. Remove it. While at it, make resume_map_numa_kva() use @nr_pages for number of pages instead of @size. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-14-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 1d85b61baf0334dd6bb88261bec42b808204d694 Author: Tejun Heo Date: Tue Apr 5 00:23:58 2011 +0200 x86-32, numa: Remove now useless node_remap_offset[] With lowmem address reservation moved into init_alloc_remap(), node_remap_offset[] is no longer useful. Remove it and related offset handling code. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-13-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit b2e3e4fa3eee752b893687783f2a427106c93423 Author: Tejun Heo Date: Tue Apr 5 00:23:57 2011 +0200 x86-32, numa: Make pgdat allocation use alloc_remap() pgdat allocation is handled differnetly from other remap allocations - it's reserved during initialization. There's no reason to handle this any differnetly. Remap allocator is initialized for every node and if init failed the allocation will fail and pgdat allocation can fall back to generic code like anyone else. Remove special init-time pgdat reservation and make allocate_pgdat() use alloc_remap() like everyone else. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-12-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 2a286344f06d6341740b284494379373e87648f7 Author: Tejun Heo Date: Tue Apr 5 00:23:56 2011 +0200 x86-32, numa: Move remapping for remap allocator into init_alloc_remap() There's no reason to perform the actual remapping separately. Collapse remap_numa_kva() into init_alloc_remap() and, while at it, make it less verbose. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-11-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 0e9f93c1c04c8ab10cc564df54a7ad0f83c67796 Author: Tejun Heo Date: Tue Apr 5 00:23:55 2011 +0200 x86-32, numa: Move lowmem address space reservation to init_alloc_remap() Remap alloc init is done in the following stages. 1. init_alloc_remap() calculates how much memory is necessary for each node and reserves node local memory. 2. initmem_init() collects how much each node needs and reserves a single contiguous lowmem area which can contain all. 3. init_remap_allocator() initializes allocator parameters from the determined lowmem address and per-node offsets. 4. Actual remap happens. There is no reason for the lowmem remap area to be reserved as a single contiguous area at one go. They don't interact with each other and the memblock allocator will put them side-by-side anyway. This patch breaks up the single lowmem address reservation and put per-node lowmem address reservation into init_alloc_remap() and initializes allocator parameters directly in the function as all the addresses are determined there. This merges steps 2 and 3 into 1. While at it, remove now largely irrelevant comments in init_alloc_remap(). This change causes the following behavior changes. * Remap lowmem areas are allocated in smaller per-node chunks. * Remap lowmem area reservation failure fail future remap allocations instead of panicking. * Remap allocator initialization is less verbose. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-10-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 82044c328d6f6b22882c2a936e487e6d2240817a Author: Tejun Heo Date: Tue Apr 5 00:23:54 2011 +0200 x86-32, numa: Make init_alloc_remap() less panicky Remap allocator failure isn't fatal. The callers are required to fall back to regular early memory allocation mechanisms on failure anyway, so there's no reason to panic on remap init failure. Whining and returning are enough. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-9-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 7210cf9217937e470a9acbc113a590f476b9c047 Author: Tejun Heo Date: Tue Apr 5 00:23:53 2011 +0200 x86-32, numa: Calculate remap size in common code Only pgdat and memmap use remap area and there isn't much benefit in allowing per-node override. In addition, the use of node_remap_size[] is confusing in that it contains number of bytes before remap initialization and then number of pages afterwards. Move remap size calculation for memap from specific NUMA config implementations to init_alloc_remap() and make node_remap_size[] static. The only behavior difference is that, before this patch, numaq_32 didn't consider max_pfn when calculating the memmap size but it's enforced after this patch, which is the right thing to do. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-8-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit af7c1a6e8374e05aab4a98ce4d2fb07b66506a02 Author: Tejun Heo Date: Tue Apr 5 00:23:52 2011 +0200 x86-32, numa: Make @size in init_aloc_remap() represent bytes @size variable in init_alloc_remap() is confusing in that it starts as number of bytes as its name implies and then becomes number of pages. Make it consistently represent bytes. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-7-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit c4d4f577d49c441ab4f1bb6068247dafb366e635 Author: Tejun Heo Date: Tue Apr 5 00:23:51 2011 +0200 x86-32, numa: Rename @node_kva to @node_pa in init_alloc_remap() init_alloc_remap() is about to do more and using _kva suffix for physical address becomes confusing because the function will be handling both physical and virtual addresses. Rename @node_kva to @node_pa. This is trivial rename and doesn't cause any behavior difference. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-6-git-send-email-tj@kernel.org Signed-off-by: H. Peter Anvin commit 5510db9c1be111528ce46c57f0bec1c9dce258f4 Author: Tejun Heo Date: Tue Apr 5 00:23:50 2011 +0200 x86-32, numa: Reorganize calculate_numa_remap_page() Separate the outer node walking loop and per-node logic from calculate_numa_remap_pages(). The outer loop is collapsed into initmem_init() and the per-node logic is moved into a new function - init_alloc_remap(). The new function name is confusing with the existing init_remap_allocator() and the behavior is the function isn't very clean either at this point, but this is to prepare for further cleanups and it will become prettier. This function doesn't introduce any behavior change. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-5-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 5b8443b25c0f323ec190d094e4b441957b02664e Author: Tejun Heo Date: Tue Apr 5 00:23:49 2011 +0200 x86-32, numa: Remove redundant top-down alloc code from remap initialization memblock_find_in_range() now does top-down allocation by default, so there's no reason for its callers to explicitly implement it by gradually lowering the start address. Remove redundant top-down allocation logic from init_meminit() and calculate_numa_remap_pages(). Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-4-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit a6c24f7a705d939ddd2fcaa443fa3d8e852b933d Author: Tejun Heo Date: Tue Apr 5 00:23:48 2011 +0200 x86-32, numa: Align pgdat size while initializing alloc_remap When pgdat is reserved in init_remap_allocator(), PAGE_SIZE aligned size will be used. Match the size alignment in initialization to avoid allocation failure down the road. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-3-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit 3fe14ab541cd9b0d1f243afb7556046f12c8743c Author: Tejun Heo Date: Tue Apr 5 00:23:47 2011 +0200 x86-32, numa: Fix failure condition check in alloc_remap() node_remap_{start|end}_vaddr[] describe [start, end) ranges; however, alloc_remap() incorrectly failed when the current allocation + size equaled the end but it should fail only when it goes over. Fix it. Signed-off-by: Tejun Heo Link: http://lkml.kernel.org/r/1301955840-7246-2-git-send-email-tj@kernel.org Acked-by: Yinghai Lu Cc: David Rientjes Signed-off-by: H. Peter Anvin commit d9b3e4c5156476a4baf0d7e0f47ba2816b4fff8e Merge: fb631ea baa8160 Author: Mark Brown Date: Thu Apr 7 08:27:06 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 7b1b3afadf33627e707c5038af991ae2ce9b5ac5 Author: stephen hemminger Date: Wed Apr 6 11:58:36 2011 +0000 ewrk3: convert to set_phys_id Use ethtool infrastructure for blinking, which is now does locking at higher level. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 94469f75321d13a42056514e2883590b91d84cba Author: stephen hemminger Date: Wed Apr 6 11:47:23 2011 +0000 qlcnic: convert to set_phys_id Convert driver to use new ethtool set_phys_id. Not completely sure that this is correct for all cases of device up/down and doing operation. Compile tested only. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 066413dac420c8225e3ef7f0f76c3255448782d3 Author: Michał Mirosław Date: Tue Apr 5 01:36:58 2011 +0000 net: netxen: convert to hw_features Rather simple conversion to hw_features. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 1f90d6657c1ce2eaa4c7fbd1fb36738542f2b650 Author: Jan Kiszka Date: Wed Apr 6 10:58:37 2011 +0000 capi: Perform scheduled capifs removal udev fully replaces this special file system that only contains CAPI NCCI TTY device nodes. User space (pppdcapiplugin) works without noticing the difference. Signed-off-by: Jan Kiszka Signed-off-by: David S. Miller commit 17938a6983d634a909d9779143a8dc2922720de5 Author: Ian Campbell Date: Sun Apr 3 22:26:24 2011 +0000 Signed bit field; int have_hotplug_status_watch:1 Fixes error from sparse: CHECK drivers/net/xen-netback/xenbus.c drivers/net/xen-netback/xenbus.c:29:40: error: dubious one-bit signed bitfield int have_hotplug_status_watch:1; Reported-by: Dr. David Alan Gilbert Signed-off-by: Ian Campbell Signed-off-by: David S. Miller commit 034e345081cfb442abeb0e00fa26edeedb5ba96a Author: stephen hemminger Date: Mon Apr 4 15:09:25 2011 +0000 s2io: convert to set_phys_id (v2) Convert to new ethtool set physical id model. Remove no longer used timer, and fix docbook comment. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7bc93714042418cbc4ca89c51d3ab448ea3ef2fe Author: stephen hemminger Date: Mon Apr 4 12:31:19 2011 +0000 niu: convert to new ethtool set_phys_id Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 9871acf67c9af89c1e17aee907a3f36e88ccfb67 Author: stephen hemminger Date: Mon Apr 4 11:06:41 2011 +0000 pcnet32: convert to set_phys_id Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 1a64246913849b0cef0be88c23381468ce169ab6 Author: stephen hemminger Date: Mon Apr 4 11:06:40 2011 +0000 benet: convert to set_phys_id Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 32d3613475d8c7d2170313b9105499dece6a3735 Author: stephen hemminger Date: Mon Apr 4 11:06:37 2011 +0000 bnx2x: convert to set_phys_id Also cleanup error codes to no lie about things that driver doesn't support. If device is down report -EAGAIN (same as Broadcom), and if port doesn't blink then error as well. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 2e17e1aa80e914acd8a31a41b9bf1173186a976a Author: stephen hemminger Date: Mon Apr 4 11:06:36 2011 +0000 bnx2: convert to set_phys_id In this case, need to add element to device private to hold original led state. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 6d8a7e6f52b0bf646739f2d4bad4643c64977b2a Author: stephen hemminger Date: Mon Apr 4 11:06:35 2011 +0000 vxge: convert to set_phys_id Also fix up incorrect docbook comment Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 12fcf941674fd781117a56f998d2bb28b4bc4cf1 Author: stephen hemminger Date: Mon Apr 4 08:43:51 2011 +0000 cxgb3: implement set_phys_id Implement new ethtool set_phys_id on Chelsio cxgb3 board. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 81b8709c25e8c8f56224a24d860de7b77a772e83 Author: stephen hemminger Date: Mon Apr 4 08:43:50 2011 +0000 tg3: implement ethtool set_phys_id Implement control of LED via set_phys_id. Note: since PHY is powered off if device is down, this board only allows blinking if device is up. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit a5b9f41c228f93d368ab0f292d890ea7143ca5aa Author: stephen hemminger Date: Mon Apr 4 08:43:42 2011 +0000 skge: implement set_phys_id Implement set_phys_id led control on SysKonnect board. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 74e532ff3c634f20ee2eefe3f8f0083ea547c74c Author: stephen hemminger Date: Mon Apr 4 08:43:41 2011 +0000 sky2: support ethtool set_phys_id Use ethtool set_phys_id to control LED. Fixes issues with RTNL being held for extended periods. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d66f1886cab1b6539b0a54fb2ecc24ae830d103c Author: Paul Bolle Date: Wed Apr 6 22:34:00 2011 +0200 openezx-devel is moderated for non-subscribers Signed-off-by: Paul Bolle Signed-off-by: Jiri Kosina commit 191350e7887aa6d843f1097fc1de06cb59eb6ac1 Author: Anirban Chakraborty Date: Fri Apr 1 14:28:36 2011 +0000 qlcnic: Update version number to 5.0.16 Bumped up version number to 5.0.16 Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit b56421d0b7527f8ecea3de030cf508468fdc9ba1 Author: Rajesh Borundia Date: Fri Apr 1 14:28:31 2011 +0000 qlcnic: Fix LRO disable o In dev->open LRO was enabled by default, enable it depending upon netdev->features , kernel may have disabled it. o Configure LRO when interface is up. Signed-off-by: Rajesh Borundia Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit f8d54811cb125094769704722e4eda6610339b92 Author: Sritej Velaga Date: Fri Apr 1 14:28:26 2011 +0000 qlcnic: Use flt method to determine flash fw region Use flash layout table to get flash fw starting address and its size. If that fails, use legacy method. Signed-off-by: Sritej Velaga Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 8816d0099b9c0f48452b69471c2f54037f7e0e3b Author: Anirban Chakraborty Date: Fri Apr 1 14:28:21 2011 +0000 qlcnic: Remove unused code Cleaned up unused codes for interrupt coalescence settings Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit b9796a14d9705c4be4a080a4fe39379a51681374 Author: Anirban Chakraborty Date: Fri Apr 1 14:28:15 2011 +0000 qlcnic: Changes to VLAN code Made changes to VLAN code comply with new VLAN infrastructure in kernel Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 036d61f05189c9c02de22dd19a1c64a4fd74a914 Author: Anirban Chakraborty Date: Fri Apr 1 14:28:11 2011 +0000 qlcnic: Code optimization patch Optimized code resulted in achieving lower CPU utilization on transmit path and higher throughput for small packet sizes (64 bytes). Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit b1fc6d3cfaff6fefd838b84532cb356f8a80da7b Author: Anirban Chakraborty Date: Fri Apr 1 14:28:05 2011 +0000 qlcnic: Cleanup patch 1. Changed adapter structure to move away from embedding hardware and receive context structs and use pointers to those objects 2. Packed all the structs that interface with FW 3. Removed unused code and structs Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit f848d6dd10e8e27d5dd61a8ab7174a7dde3a3db5 Author: Sony Chacko Date: Fri Apr 1 14:27:59 2011 +0000 qlcnic: Memory leak fix Fix a memory leak in error path of pci info. Signed-off-by: Sony Chacko Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 53478fef7490c90564dd328b395f238952d95c77 Author: Sony Chacko Date: Fri Apr 1 14:27:47 2011 +0000 qlcnic: Make PCI info available in all modes Before this fix, PCI info was available only when multiple NIC functions are present on the same port. Signed-off-by: Sony Chacko Signed-off-by: Anirban Chakraborty Signed-off-by: David S. Miller commit 1ca050d909add6825224c015d8cec2425b3edf27 Author: Oliver Hartkopp Date: Tue Apr 5 08:01:16 2011 +0000 can: convert protocol handling to RCU This patch removes spin_locks at CAN socket creation time by using RCU. Inspired by the discussion with Kurt van Dijck and Eric Dumazet the RCU code was partly derived from af_phonet.c Signed-off-by: Oliver Hartkopp Reviewed-by: Eric Dumazet Acked-by: Kurt Van Dijck Signed-off-by: David S. Miller commit 4c844d97d269a7ec4a6ba7d530aa876ac64dfb76 Merge: 66ee33b c5e129a Author: David S. Miller Date: Wed Apr 6 12:27:34 2011 -0700 Merge branch 'for-davem' of git://git.kernel.org/pub/scm/linux/kernel/git/bwh/sfc-next-2.6 commit 66ee33bfda6237b009b6fb0e48690e31800ff334 Author: Matt Carlson Date: Tue Apr 5 14:22:51 2011 +0000 tg3: Support 4mb flash sizes for 5717 and 5719 If a 5717 or 5719 NVRAM part is manually strapped and is 2mb in size, the driver needs to look at the NVRAM size field rather than infer it from the strapping itself. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit ba1f3c76d7607a0af58834b79a055326619cbf2a Author: Matt Carlson Date: Tue Apr 5 14:22:50 2011 +0000 tg3: Enable 5720 support This patch adds the 5720 device ID to the PCI table, thus enabling 5720 support. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 6418f2c1b57f9a5d4e7380f698635e5a445c2a50 Author: Matt Carlson Date: Tue Apr 5 14:22:49 2011 +0000 tg3: Add 5720 PHY ID This patch adds the 5720 PHY ID. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit f2096f94b514d88593355995d5dd276961e88af1 Author: Matt Carlson Date: Tue Apr 5 14:22:48 2011 +0000 tg3: Add 5720 H2BMC support This patch adds support for the new Host to BMC feature. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 9b91b5f178605dd0d4debcbc184a3e97fcb4f591 Author: Matt Carlson Date: Tue Apr 5 14:22:47 2011 +0000 tg3: Add 5720 NVRAM decoding The 5720 implements its own NVRAM pin strapping scheme. This patch adds the required support. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit d78b59f5d18bf064abae2fa5bc87f00545e2160a Author: Matt Carlson Date: Tue Apr 5 14:22:46 2011 +0000 tg3: Add 5720 ASIC rev This patch adds support for the 5720 ASIC rev. Signed-off-by: Matt Carlson Reviewed-by: Michael Chan Signed-off-by: David S. Miller commit 0a58d6689bb7c0d49addbf6992aa97234bcfc96c Author: Matt Carlson Date: Tue Apr 5 14:22:45 2011 +0000 tg3: Reintroduce 5717_PLUS This patch reintroduces the TG3_FLG3_5717_PLUS to identify 5717 and later devices. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit 1407deb1a99f7ec7ed5b09798b02abea5aa44128 Author: Matt Carlson Date: Tue Apr 5 14:22:44 2011 +0000 tg3: 5717_PLUS => 57765_PLUS The 57765 arrived before the 5717 and has a subset of the features supported by the 5717. This patch renames the 5717_PLUS flag so that it can be reintroduced to designate only 5717 and later devices. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit de9f52300d03915846c2baab27332ec462f7f6b0 Author: Matt Carlson Date: Tue Apr 5 14:22:43 2011 +0000 tg3: Cleanup extended rx ring size code Hardcoded values are used in multiple places to describe the maximum rx ring sizes. This patch replaces those values with preprocessor constants. This patch also introduces a new TG3_FLG3_LRG_PROD_RING_CAP to determine if the device is capable of supporting larger ring sizes. Signed-off-by: Matt Carlson Signed-off-by: David S. Miller commit ba1835eb30a80a0e8a1c33724735f3a99a957cff Author: Uwe Kleine-König Date: Wed Apr 6 07:49:04 2011 -0700 vsprintf: make comment about vs{n,cn,}printf more understandable "You probably want ... instead." sounds like a recommendation better not to use the v... functions. Signed-off-by: Uwe Kleine-König Signed-off-by: Jiri Kosina commit fb631eae1f2171033327e1b9ab427d4a113dc179 Author: Lu Guanqun Date: Wed Apr 6 10:20:37 2011 +0800 ASoC: sst_platform: unregister sst card when being closed Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown commit 0ed625b2f2751c249417bd28694e37ef48eb5fbb Author: Lu Guanqun Date: Wed Apr 6 10:20:42 2011 +0800 sst: make register_sst_card more self-contained register_sst_card is used in ASoC code with field `scard_ops` being NULL. Without this patch, there will be NULL dereference. Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown commit 83a3fd3cf0bfdadfdfc633f6437f9121e28252b9 Author: Lu Guanqun Date: Wed Apr 6 10:20:32 2011 +0800 ASoC: sst_platform: free the resources on fail path Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown commit 0d1d7ce95156e0b040f1a4029613716aafd791b1 Author: Lu Guanqun Date: Wed Apr 6 10:20:26 2011 +0800 ASoC: sst_platform: initialize module_name properly module_name will be checked in register_sst_card. It will fail to register sst card if it's not initialized. Signed-off-by: Lu Guanqun Signed-off-by: Mark Brown commit 82a5a936f6dea13849d93a2899a9b7294a8db336 Author: Peter Hsiang Date: Mon Apr 4 19:35:30 2011 -0700 ASoC: Add max98095 CODEC driver This patch adds the MAX98095 CODEC driver. Signed-off-by: Peter Hsiang Signed-off-by: Mark Brown commit fa880004682cf0d10e7a7c71dc8d56bbd67ac3d5 Merge: 09f6807 deb2607 Author: Mark Brown Date: Wed Apr 6 23:15:15 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 5a3016a61530ea171c1b8ab23d7f651de919e39f Author: Paul Bolle Date: Wed Apr 6 11:09:55 2011 +0200 doc: fix 3 typos in sysctl/vm.txt Signed-off-by: Paul Bolle Signed-off-by: Jiri Kosina commit 79add6277396b91c638f16eb2f1338badc47760d Author: Justin P. Mattock Date: Mon Apr 4 14:15:29 2011 -0700 update David Miller's old email address Signed-off-by: Justin P. Mattock Acked-by: David S. Miller Signed-off-by: Jiri Kosina commit 1304ac8993e32c0530bc82bf1d3f953548a20971 Author: Takashi Iwai Date: Wed Apr 6 15:16:21 2011 +0200 ALSA: hda - Fix mix->DAC deduction for ALC892 The current alc662 parser doesn't set the DAC for the mixer 0x0f properly for ALC892, which has 4 DACs while ALC662 has 3. Fixed by implementing alc662_mix_to_dac() more genericly with the dynamic widget list. Signed-off-by: Takashi Iwai commit 11b6402c6673b530fac9920c5640c75e99fee956 Author: Joerg Roedel Date: Wed Apr 6 11:49:28 2011 +0200 x86/amd-iommu: Cleanup inv_pages command handling This patch reworks the processing of invalidate-pages commands to the IOMMU. The function building the the command is extended so we can get rid of another function. It was also renamed to match with the other function names. Signed-off-by: Joerg Roedel commit 94fe79e2f100bfcd8e7689cbf8838634779b80a2 Author: Joerg Roedel Date: Wed Apr 6 11:07:21 2011 +0200 x86/amd-iommu: Move inv-dte command building to own function This patch moves command building for the invalidate-dte command into its own function. Signed-off-by: Joerg Roedel commit ded467374a34eb80020c2213456b1d9ca946b88c Author: Joerg Roedel Date: Wed Apr 6 10:53:48 2011 +0200 x86/amd-iommu: Move compl-wait command building to own function This patch introduces a seperate function for building completion-wait commands. Signed-off-by: Joerg Roedel commit 364de77831213be20f7f33c39ca1c194593b5c11 Author: Liu Yuan Date: Sat Apr 2 14:20:47 2011 +0800 drivers, pch_dma: Fix uninitialized var before use In the function pdc_desc_get(), var 'i' is not initialized before use. This patch fixes it. Signed-off-by: Liu Yuan Signed-off-by: Vinod Koul commit 660e34cebf0a11d54f2d5dd8838607452355f321 Author: Matthew Garrett Date: Mon Apr 4 13:55:05 2011 -0400 x86: Reorder reboot method preferences We have a never ending stream of 'reboot quirks' for new boxes that will not reboot properly under Linux (they will hang on reboot). The reason is widespread 'Windows compatible' assumption of modern x86 hardware, which expects the following reboot sequence: - hitting the ACPI reboot vector (if available) - trying the keyboard controller - hitting the ACPI reboot vector again - then giving the keyboard controller one last go This sequence expectation gets more and more embedded in modern hardware, which often lacks a keyboard controller and may even lock up if the legacy io ports are hit - and which hardware is often not tested with Linux during development. The end result is that reboot works under Windows-alike OSs but not under Linux. Rework our reboot process to meet this hardware externality a little better and match this assumption of newer x86 hardware. In addition to the ACPI,kbd,ACPI,kbd sequence we'll still fall through to attempting a legacy triple fault if nothing else works - and keep trying that and the kbd reset. Signed-off-by: Matthew Garrett [ this commit will also save special casing Oaktrail boards ] Acked-by: Alan Cox Cc: Linus Torvalds Cc: Andrew Morton Cc: Leann Ogasawara Cc: Dave Jones Cc: Len Brown LKML-Reference: <1301939705-2404-1-git-send-email-mjg@redhat.com> Signed-off-by: Ingo Molnar commit 1bc7cf99a90b4cfbeed362f3f238bcc9fc2f2c28 Author: Takashi Iwai Date: Wed Apr 6 09:42:29 2011 +0200 ALSA: hda - Correct initial dac_nids for some ALC272-quirks Some ALC272-quirks use alc662_dac_nids instead of alc272_dac_nids. This patch fixes these entries. No functional change since the first two elements are identical in both arrays. Signed-off-by: Takashi Iwai commit e217b960e4f82610946fcad764b8af017a4811c0 Author: Raymond Yau Date: Wed Mar 30 20:00:39 2011 +0800 ALSA: emu10k1 - Remove CLFE-related controls for SB Live! Platinum CT4760P SB Live! Platinum CT4760P is just a 4 channels sound card with STAC9721 and Philips UDA1334 DAC. Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 8194145dcc9562387d93054a4fcf79438d3c3e40 Merge: 0ce790e e2142df Author: Vinod Koul Date: Wed Apr 6 11:51:12 2011 +0530 Merge branch 'old_next' into next commit 4bf4a6c5b1b2c73cd61d46d77e7da814effc6058 Author: Raymond Yau Date: Tue Apr 5 22:47:15 2011 +0800 ALSA: hda - Fix alc662_dac_nid and change "6stack-dig" to "5stack-dig" alc662 series only have 3 DAC, so it can only support 5stack-dig instead of 6stack-dig. [updated HD-Audio-Models.txt as well by tiwai] Signed-off-by: Raymond Yau Signed-off-by: Takashi Iwai commit 59c23eabdae97a18cfc400339138f6d1dbde926a Author: Michael Hennerich Date: Mon Apr 4 15:39:15 2011 +0200 staging: IIO: DAC: New driver for the AD5504 and AD55041 High Voltage DACs Changes since V1: IIO: DAC: Apply review feedback from Jonathan Fix array size and declare const. Fix reversed dacY_powerdown read back. Use individual attribute groups instead of is_visible. Fix event naming and add the _en file. Changes since V2: IIO: DAC: AD5504 use proper event type Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit d6f087ec9c7ba029419762273a685460c93c8454 Author: Michael Hennerich Date: Thu Mar 24 19:37:00 2011 +0100 staging: IIO: ADC: New driver for the AD7780 / AD7781 24-bit Sigma-Delta ADC Changes since v1: IIO: ADC: AD7780: Apply review feedback Abort probe() with error in case platform_data is not present. Add comment explaining power down reset (PDRST) GPIO handling and dual function DOUT/RDY interrupt usage. Signed-off-by: Michael Hennerich Acked-by: Jonathan Cameron Signed-off-by: Greg Kroah-Hartman commit 8a789f8c306b5e3fe6ef71bb5412055075d8c87f Author: Alan Cox Date: Tue Apr 5 16:55:26 2011 +0100 staging: gma500: Add oaktrail Oaktrail needs a couple of slight plumbing tweaks Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit cb048d558690ba1468e6bb26b82594b4330fb21c Author: Alan Cox Date: Fri Apr 1 22:24:15 2011 +0100 staging: gma500: enable the 2D op stuff Well one of them anyway - not yet sure why the other fails Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 636fa5c78c73901022ed6c20c50543af8811e050 Author: Alan Cox Date: Fri Apr 1 18:44:16 2011 +0100 staging: gma500: psb_reset actually holds lid functions So rename the file something sensible Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9c6ac29cb08da3ac56db668b8f3e33cbf048b879 Author: Alan Cox Date: Fri Apr 1 18:42:47 2011 +0100 staging: gma500: Set the TWOD base 2D accel still doesn't work but now it doesn't crash either Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 3350dead09da181b664775027abc51540425b93d Author: Alan Cox Date: Fri Apr 1 18:42:22 2011 +0100 staging: gma500: cleanup the SDVO messages Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c3460fd3ec3819c37aeb7bd68e4705ff87733872 Author: Alan Cox Date: Fri Apr 1 18:42:08 2011 +0100 staging: gma500: begin tidying up the power management Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a3461ee16c73f9caa4948651f9c24c284205a378 Author: Alan Cox Date: Fri Apr 1 18:41:40 2011 +0100 staging: gma500: prune more unused fields Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 99172946238c77160c97cc71b68bb0004c00aed2 Author: Alan Cox Date: Fri Apr 1 18:41:30 2011 +0100 staging: gma500: Add a test ioctl for issuing 2D accel ops via user space Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit ad9f792e67c0a0522bb78109bc979197c9756fcc Author: Alan Cox Date: Fri Apr 1 18:41:22 2011 +0100 staging: gma500: Fix some set up bugs found by comparing driver versions Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0c6b262753eededa3596d37e8d68ef44718c365b Author: Alan Cox Date: Fri Apr 1 18:41:12 2011 +0100 staging: gma500: kill some more #if 0 bits Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit b0e2326ca7117d802d7af552d2bfdf10ba966ea3 Author: Alan Cox Date: Fri Apr 1 18:41:04 2011 +0100 staging: gma500: Another file we don't need Zap... bang And take out a few more variables that are now dead Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c34433b19d66a7c476fdfaa04c15d8eb9ca86461 Author: Alan Cox Date: Wed Mar 30 10:01:54 2011 +0100 staging: gma500: turn on psb SDVO Keep this as its own commit for bisection purposes Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 8fc5945f8fdcd7e902b3852051c8e1d9f0714487 Author: Justin P. Mattock Date: Wed Mar 30 10:01:42 2011 +0100 staging: gma500: Remove extra semi-colon. The patch below removes an extra semi-colon from various parts of the kernel. Please have a look when you have time, and let me know if its legit or not. Signed-off-by: Justin P. Mattock Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit aea74b6567997bbb670357caa57aff39c8c390a5 Author: Alan Cox Date: Wed Mar 30 10:01:31 2011 +0100 staging: gma500: kill off TTM We are not using TTM, we are not going to use TTM either Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 0b35c063b2084258efee6f1bae583ee21bb07892 Author: Alan Cox Date: Wed Mar 30 10:01:22 2011 +0100 staging: gma500: pull mrst firmware stuff into its own header Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 5c7d3a7aba44864547906cd326dd115c9327e19f Author: Alan Cox Date: Wed Mar 30 10:01:13 2011 +0100 staging: gma500: Clean up more unused structures and code We don't need the 3D validation stuff so it and all the related gunge can depart. While we are at it prune some unused definitions. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 1163a0b88c5882bef744b40133195d7231d4e409 Author: Alan Cox Date: Wed Mar 30 10:01:03 2011 +0100 staging: gma500: We don't support the CI either The camera interface is also not covered (and we won't be using TTM anyway even if it ever re-emerges) so it to can go Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 7e2c6c433e000e2e001f1a8464ea08d053c8fb52 Author: Alan Cox Date: Wed Mar 30 10:00:54 2011 +0100 staging: gma500: delete the RAR handling RAR registers are used on MID platforms for various protected video playback activities using video playback engines we don't support. So Rasputin can keep his Rars Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c69a20369b0f8fca522b8420991f7b214e4e737f Author: Alan Cox Date: Wed Mar 30 10:00:43 2011 +0100 staging: gma500: Add Moorestown identifiers Turn it on, turn it up, turn it loose Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 427096db840eb199450e6099e4f9b2731daa692c Author: Alan Cox Date: Wed Mar 30 10:00:32 2011 +0100 staging: gma500: Moorestown does its setup differently Grovel the firmware via the Moorestown interfaces and read the other bits off the fuses. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit e68e8c711b58646c129383828c4ccc49f3b3d6cf Author: Alan Cox Date: Wed Mar 30 10:00:23 2011 +0100 staging: gma500: enable Moorestown CRTC handling Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 9ba06b5fabdfe23f3fe68b04fbe5928a38349bbf Author: Alan Cox Date: Wed Mar 30 10:00:13 2011 +0100 staging: gma500: add framebuffer setup For Moorestown we want to use the mrst LVDS setup not the Poulsbo setup Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a7cf87e64a5cd5862381c6e874e58b13d5d54c3a Author: Alan Cox Date: Wed Mar 30 10:00:05 2011 +0100 staging: gma500: Add Moorestown backlight support Which is of course different to Poulsbo. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit f4f7868bf9de98934ae026a87c66b67f1149e38c Author: Alan Cox Date: Wed Mar 30 09:59:57 2011 +0100 staging: gma500: Makefiles Build the new files now all the changes they need are present. They won't yet be used but the plumbing is next step. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit d3fc13d8fb6b7d71313fe57c342ba313bad22fd4 Author: Alan Cox Date: Wed Mar 30 09:59:45 2011 +0100 staging: gma500: Add moorestown specific data to the device structure Moorestown needs somewhere to stash various pipe config registers and the firmware and fuse configurations Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit a9100caeea46e345f918319048b817cd7d295518 Author: Alan Cox Date: Wed Mar 30 09:59:37 2011 +0100 staging: gma500: Add moorestown config structures We have a set of firmware passed descriptors and things we need to grovel through for video configuration. This differs from the setup for the PC style Poulsbo hardware. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit c9981d941cfe1d5b5244ca4c5f7211153b1d0805 Author: Alan Cox Date: Wed Mar 30 09:59:25 2011 +0100 staging: gma500: Make some of the lvds operations non-static We need these as they are also used by the Moorestown LVDS display support. Make the various needed symbols visible in the headers Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 54edcea62dbf7c4b4a429411d216d86c2788d8e9 Author: Alan Cox Date: Wed Mar 30 09:59:17 2011 +0100 staging: gma500: Add moorestown lvds driver code Add the new files needed for the GMA500 driver to support Moorestown LVDS displays. Don't wire them in yet. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit 2627aaa6795753e787e544bbc8be60e38e0b08e6 Author: Alan Cox Date: Wed Mar 30 09:59:08 2011 +0100 staging: gma500: begin adding Moorestown support The Moorestown systems have some graphics differences we care about and some we don't need to. To start with it has a single pipe and that pipe can be used for LVDS Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman commit db940cb0db7c69a217661ecd49e1e6b0d680a6cc Author: Alexey Dobriyan Date: Sat Apr 2 14:19:41 2011 +0300 Bluetooth: convert net/bluetooth/ to kstrtox Convert from strict_strto*() interfaces to kstrto*() interfaces. Signed-off-by: Alexey Dobriyan Signed-off-by: Gustavo F. Padovan commit e63a15ec0f25c0f97e8f6247b97ac9b30968b6b3 Author: Gustavo F. Padovan Date: Mon Apr 4 18:56:53 2011 -0300 Bluetooth: Use GFP_KERNEL in user context The allocation in mgmt_control() code are in user context and not locked by any spinlock, so it's not recommended the use of GFP_ATOMIC there. Signed-off-by: Gustavo F. Padovan commit 1322901da5094cecd9826ec3aaade83f6452cc45 Author: Gustavo F. Padovan Date: Mon Apr 4 19:06:05 2011 -0300 Bluetooth: Don't use spin_lock_bh in user context spin_lock() and spin_unlock() are more apropiated for user context. Signed-off-by: Gustavo F. Padovan commit 2a7ce0edd661b3144c7b916ecf1eba0967b6d4a5 Author: David Teigland Date: Mon Apr 4 15:19:59 2011 -0500 dlm: remove shared message stub for recovery kmalloc a stub message struct during recovery instead of sharing the struct in the lockspace. This leaves the lockspace stub_ms only for faking downconvert replies, where it is never modified and sharing is not a problem. Also improve the debug messages in the same recovery function. Signed-off-by: David Teigland commit fada4ac33992b1f953d95584e36f6ca7860aea40 Author: Szymon Janc Date: Mon Mar 21 14:20:06 2011 +0100 Bluetooth: Use kthread API in cmtp kernel_thread() is a low-level implementation detail and EXPORT_SYMBOL(kernel_thread) is scheduled for removal. Use the API instead. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit f4d7cd4a4c25cb4a5c30a675d4cc0052c93b925a Author: Szymon Janc Date: Mon Mar 21 14:20:00 2011 +0100 Bluetooth: Use kthread API in bnep kernel_thread() is a low-level implementation detail and EXPORT_SYMBOL(kernel_thread) is scheduled for removal. Use the API instead. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit aabf6f897e44bdf3e237ada04aa8f88d77d75cac Author: Szymon Janc Date: Tue Apr 5 15:37:45 2011 +0200 Bluetooth: Use kthread API in hidp kernel_thread() is a low-level implementation detail and EXPORT_SYMBOL(kernel_thread) is scheduled for removal. Use the API instead. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit c5e129ac2fc72c119b85db79a629de66332f136d Author: Ben Hutchings Date: Sat Apr 2 00:43:46 2011 +0100 sfc: Implement ethtool_ops::set_phys_id instead of ethtool_ops::phys_id Signed-off-by: Ben Hutchings commit 68f512f21a64c9b264df6c61a9333e7890faf74b Author: Ben Hutchings Date: Sat Apr 2 00:35:15 2011 +0100 ethtool: Change ETHTOOL_PHYS_ID implementation to allow dropping RTNL The ethtool ETHTOOL_PHYS_ID command runs for an arbitrarily long period of time, holding the RTNL lock. This blocks routing updates, device enumeration, and various important operations that one might want to keep running while hunting for the flashing LED. We need to drop the RTNL lock during this operation, but currently the core implementation is a thin wrapper around a driver operation and drivers may well depend upon holding the lock. Define a new driver operation 'set_phys_id' with an argument that sets the ID indicator on/off/inactive/active (the last optional, for any driver or firmware that prefers to handle blinking asynchronously). When this is defined, the ethtool core drops the lock while waiting and only acquires it around calls to this operation. Deprecate the 'phys_id' operation in favour of this. It can be removed once all in-tree drivers are converted. Signed-off-by: Ben Hutchings commit 8717d07b1143e0f150921f5bd7cfe7af579a995a Author: Ben Hutchings Date: Fri Apr 1 23:57:41 2011 +0100 ethtool: Fill out and update comment for struct ethtool_ops Briefly document all operations (except get_rx_ntuple), including whether they may return an error code and whether they are deprecated. Also mention some things that should be handled by the ethtool core rather than by drivers. Briefly document general requirements for callers. Signed-off-by: Ben Hutchings commit e20b5b61a36bd5b80eea064c0f2e73285dbe0d3b Author: Ben Hutchings Date: Fri Apr 1 22:52:34 2011 +0100 ethtool: Convert struct ethtool_ops comment to kernel-doc format Signed-off-by: Ben Hutchings commit abfe903980161b11f3594e3dcbab8b5c5a67168b Author: Ben Hutchings Date: Tue Apr 5 15:00:02 2011 +0100 sfc: Implement generic features interface Signed-off-by: Ben Hutchings commit f82d9a67fbcdfd8af6be7a7c9e381864ec9a271a Author: Ben Hutchings Date: Tue Apr 5 13:36:09 2011 +0100 sfc: Enable all TSO features on VLANs The TSO code already supports IPv6 on VLAN, so enable it. Signed-off-by: Ben Hutchings commit 42258daba22897f9859b0f3cb42700322b7c16bc Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:48 2011 +1200 ALSA: asihpi: Minor cleanups Remove some unneeded defintions Use %pR to print resources Make some data const Consistent braces for else Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 6d0b898e9c402d6b7d0d07adacdbee2ebedafdcd Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:47 2011 +1200 ALSA: asihpi: Simplify driver unload cleanup Replacing subsys_delete_adapter with adapter_delete allows some special-case adapter lookup code to be removed. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit b0096a65677fa8d7e50975dc7282ce313610d9e8 Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:46 2011 +1200 ALSA: asihpi: Standardise substream name generation Define and use pcm_debug_name if CONFIG_SND_DEBUG Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 6027dfa46ea477b1223d83e74a3b3dcc572285b5 Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:45 2011 +1200 ALSA: asihpi: Remove 2 unused functions Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit f3d145aac913b318e96e5c2763d8908805a5e30a Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:44 2011 +1200 ALSA: asihpi: MMAP for non-busmaster cards Allow older non DMA capable cards to use MMAP by emulating the DMA using read and write functions, and getting rid of copy & silence callbacks that were used only by older cards. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 0b7ce9e2bd2d9dbc8f4797b0cd5e0d138cb529e1 Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:43 2011 +1200 ALSA: asihpi: Handle playback drained status better Use the card drained status reporting for playback, but allow it to persist for a few timer cycles before signalling XRUN, to allow card to recover by itself. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit a6477134db119a22aa30911ff18e440b8db9df65 Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:42 2011 +1200 ALSA: asihpi: Update debug printing Debug print full substream ID. Other minor debug print updates. Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 550ac6ba4ef0e57f6edbadf2b018d5125d2f7e98 Author: Eliot Blennerhassett Date: Tue Apr 5 20:55:41 2011 +1200 ALSA: snd-asihpi: Control naming Clock source is neither capture nor playback, so change 'Capture Clock' to 'Clock'. Add spaces to control name string for consistency, always 'PCM 0' , never 'PCM0' Signed-off-by: Eliot Blennerhassett Signed-off-by: Takashi Iwai commit 09f68072b32089f2e3b4749161eb3ce954faf8d4 Merge: d454f39 ef49e4f Author: Takashi Iwai Date: Tue Apr 5 09:12:41 2011 +0200 Merge branch 'for-2.6.40' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc commit 427beeb21ad0b4297657d578003b2eb3803f95c9 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:30 2011 -0700 ath6kl: remove ar6000_prepare_target() crap This was empty code, WTF^pi. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 628a7dd85cff27db40a1759d883a76a6fef20346 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:29 2011 -0700 ath6kl: remove chatty debug messages on ath6kl driver ops These do not help in any way. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 437c567b1a02bdd50a9d0ce57c1310b827eb0ae4 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:28 2011 -0700 ath6kl: rename the pm ops to something more sensible This has no functional changes. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 0174d3c26448a132d01e6741fb80749dc81180b7 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:27 2011 -0700 ath6kl: cleanup and move the ath6kl pm ops to be assigned statically There should be no need to assign the pm ops dynamically, so assign them statically and make them const. While we are doing this just do some simple code style cleanup on the routines and move them above prior to their assignment into the driver ops. This has no functional change other than assigning the pm ops statically. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 2df44b8b9bd9c3d9dcc8d4532d02515dd8712b6e Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:26 2011 -0700 ath6kl: remove completely pointles platform driver Perhaps there was some good intention on having some platform driver on ath6kl, but right now its pointless. Kill! Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 60a9bc57804bd6a629ff1016fea43766f3f6eaf3 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:25 2011 -0700 ath6kl: style cleanup on struct sdio_driver components No functional changes except renames of the routines and id data structure. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 09b6b5e916afa32a4a4a4c9d7cb3ed00563d6b0e Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:24 2011 -0700 ath6kl: cleanup allocation and getting of the hif dev Removes verbose debug messages and checks that are just not needed, and renames the functions to something more sensible. While we clean this up, just move the routines above and remove the forward declarations. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 4f56a12dd58ca2025b22ac4caabb89c90e1f1b7b Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:23 2011 -0700 ath6kl: propagate errors on hifEnableFunc() failures This will be passed along to the SDIO probe routine when it fails. This will generate better error code to the user when loading the module if it fails. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 0c804c5a573867b0a0eeed957508601fb0f29a7a Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:22 2011 -0700 ath6kl: remove useless plat_setup_power() calls These map to do nothing. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 711908df76bedee2df653be057465168ed626742 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:21 2011 -0700 ath6kl: propagate errors on module setup This propagates initial platform registration failures and also HIF initialization failures. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 0e7fd280fb1eb8a870d223fdfe4821d318001af5 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:20 2011 -0700 ath6kl: simplify btcoex parameter programming Make the code more legible by parsing the config options on the header file. While a it ensure to propagate errors and bail out if we fail to set btcoex params. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 524717f1a4624dcee164a69722bb1506d97c5d80 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:19 2011 -0700 ath6kl: use CONFIG_ATH6KL_ENABLE_COEXISTENCE When CONFIG_ATH6KL_ENABLE_COEXISTENCE gets enabled we define another flag called ENABLE_COEXISTENCE, just use CONFIG_ATH6KL_ENABLE_COEXISTENCE since that is already defined by the generated autoconf header file from the kernel. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 5b1978ee0053667956ef9d65e5b48d2f1f14bc05 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:18 2011 -0700 ath6kl: remove AR600x_CUSTOM_XXX define There already is a CONFIG_AR600x_CUSTOM_XXX if this is desired to be used. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 42ad85dbc1c594f34a272ddbaee6387f4f369f8a Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:17 2011 -0700 ath6kl: use CONFIG_AR600x_SD32_XXX When CONFIG_AR600x_SD32_XXX gets enabled we define another flag called AR600x_SD32_XXX, just use CONFIG_AR600x_SD32_XXX since that is already defined by the generated autoconf header file from the kernel. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 1e6d4562eb7f2ecef9c03639f2ca6f3e6d6fdf7e Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:16 2011 -0700 ath6kl: use CONFIG_AR600x_WB31_XXX When CONFIG_AR600x_WB31_XXX gets enabled we define another flag called AR600x_WB31_XXX, just use CONFIG_AR600x_WB31_XXX since that is already defined by the generated autoconf header file from the kernel. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 492543eae4f95a746c9d10265c78a3d2853ac315 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:15 2011 -0700 ath6kl: use CONFIG_AR600x_SD31_XXX When CONFIG_AR600x_SD31_XXX gets enabled we define another flag called AR600x_SD31_XXX, just use CONFIG_AR600x_SD31_XXX since that is already defined by the generated autoconf header file from the kernel. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 1822d7f80e35fd605687cdf194f15f1c151cdb17 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:14 2011 -0700 ath6kl: remove INIT_MODE_DRV_ENABLED define Since this is defined statically we just leave the code. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit f22ac91fae621dc6035e15b489e46b711ad22689 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:13 2011 -0700 ath6kl: remove unused define WLAN_HEADERS All the code is used so just keep it and remove the static define. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 382241010ce9cc231c350524695db9d822971da2 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:12 2011 -0700 ath6kl: remove define HTC_EP_STAT_PROFILING This is always set so just keep the code it idefs around. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit e53a79d977071cb3cd9bb2923693a8fe6a7b884e Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:11 2011 -0700 ath6kl: remove unused define NO_SYNC_FLUSH Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit efa5dc420a0f2f3f8dbc6b2d4037b8148b3cdb64 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:10 2011 -0700 ath6kl: remove USER_KEYS define This is always defined so just keep the code. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 871f7105cc406fb963d1b47f0f99608f6b5037df Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:09 2011 -0700 ath6kl: remove SEND_EVENT_TO_APP define This was enabled by default but its pretty useless for upstream given that its sendign some custom wireless event. These need to be reviewed instead and a respective cfg80211 event / call should be used later. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit eba67f4366521b6c761f50af859917b89eba7dbf Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:08 2011 -0700 ath6kl: remove dependency on LINUX and KERNEL_2_6 macros Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 1d7abecc84b29f4e0ce0290e0326500eee0c0a40 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:07 2011 -0700 ath6kl: remove define ATH_AR6K_11N_SUPPORT This is always enabled. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 69e87c22b64b9bb03ed90fc9ed201cf41ee4f44e Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:06 2011 -0700 ath6kl: remove all the wext and super extended private ioctl crap This removes all the wext and super extended ioctl crap. The wext interfaces are already provided by cfg80211 and the "private" ioctl stuff defined here is not even using private wext, they are using netdev private ioctls! This is completely unacceptable upstream. Die. Die Die. As part of all this we end up removing the CONFIG_HOST_GPIO_SUPPORT which ended up being heavily abused by the internal ioctl work. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 8efba264d45d0af4b7c64373262dbcc01059b602 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:05 2011 -0700 ath6kl: kill Android specific code To get upstream we can't use out of tree defines, kill all the androidisms. ath6kl won't be usable on Android unless external patches are supported later or Android gets their shit together and gets all their crap upstream. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 9d72a9e13a150124862b74c658271736297709f4 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:04 2011 -0700 ath6kl: remove Bluetooth PAL code and WMI ACL TX/RX data support ath6kl used to have an internal PAL for Bluetooth 3.0 support but this is no longer supported. The target used a WMI with an ACL header for supporting these frames. Userspace would use the ioctl AR6000_XIOCTL_ACL_DATA to send data to the target and the firmware would generate ACL frames. Remove both the parsing of the frames and the ioctl support. We leave a warning for now for if the target generates some sort of ACL data frame, later on we can remove this warning once we have proven the target is no longer generating these frames. It should be noted this also provides a fix for the processing of spurious ACL data frames from the target, previously they would not be dropped if they were generated by the target but EXPORT_HCI_PAL_INTERFACE was not compiled in. Cc: Naveen Singh Cc: Prerepa (Dham) Viswanadham Cc: Shanmugamkamatchi Balashanmugam Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 1fd8d02467606a3f69118b495f6ff5dfb9749422 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:03 2011 -0700 ath6kl: move setting netdev for non-cf80211 case The check for SET_NETDEV_DEV is not required given that this is upstream. The setting of the SET_NETDEV_DEV with the osDevInfo.pOSDevice is redundant for the cfg80211 case as this was already being done, so just set the netdev device for the non-cfg80211 which was missing. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 8f05c5b940f3c08d30f4298ceb7cc076dd444008 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:02 2011 -0700 ath6kl: remove SET_MODULE_OWNER usage This is not required. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit e4551c7bb19c2f094eaabbcd610ab3dfd2ee86a0 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:01 2011 -0700 ath6kl: replace do while loop with function helpers on ar6000_avail_ev() This unwraps the do while loops in favor for function helpers. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit c1ccd0868efcb7607d2cdf41341542928e066219 Author: Luis R. Rodriguez Date: Tue Mar 29 17:56:00 2011 -0700 ath6kl: propagate error values on ar6000_avail_ev() When something fails we set up some generic error values, instead keep the values from the callers and make sure to pass them on. Cc: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit eb60cfa9b80a45391d25e9f90df7f3961cc59757 Author: Luis R. Rodriguez Date: Tue Mar 29 17:55:59 2011 -0700 ath6kl: remove BMIENABLE_SET define Leave the code in place as this is always defined statically. Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit ab8911150f824f496c67b3bab19c15ff62ddff27 Author: Luis R. Rodriguez Date: Tue Mar 29 17:55:58 2011 -0700 ath6kl: s|A_FREE|kfree|g for i in $(find ./drivers/staging/ath6kl/ -name \*.[ch]) ; do \ sed -r -i -e "s/A_FREE/kfree/g" $i; done Tested-by: Naveen Singh Signed-off-by: Luis R. Rodriguez Signed-off-by: Greg Kroah-Hartman commit 1fec95c503bea25665e5d62221016255a20f2c02 Author: Jonathan Neuschäfer Date: Mon Mar 21 14:24:03 2011 +0100 staging: winbond/mto.c: remove unused variables They are unused since commit a22517fec0b13b5813932a3583a2b11a2ee17f5d: Staging: w35und: remove dead code from mto.c Signed-off-by: Jonathan Neuschäfer Acked-by: Pekka Enberg Signed-off-by: Greg Kroah-Hartman commit 7441729769927b424afa762fd4284f2d5eea78f0 Author: Chihau Chau Date: Wed Mar 23 18:30:43 2011 -0400 staging: winbond: fixing some code styles issues This patch fix some code style warnings found by the checkpatch.pl script, changing spaces for a tab Signed-off-by: Chihau Chau Signed-off-by: Greg Kroah-Hartman commit b3b97f5c23c0a6944ec1f5481ceaac12528a826b Author: Peter Huewe Date: Sat Mar 26 02:17:52 2011 +0100 staging/brcm80211: Fix common spelling mistakes This patch fixes some very common spelling mistakes in drivers/staging/brcm80211. WRONG -> RIGHT accomodate -> accommodate occured -> occurred recieve -> receive unferflow -> underflow useable -> usable Kernel Version: staging/staging-next 20110325 (4bbba111) Signed-off-by: Peter Huewe Signed-off-by: Greg Kroah-Hartman commit 0997325e31737e90626baac80ab687e51500b2ef Author: Stanislav Fomichev Date: Mon Mar 28 01:31:38 2011 +0400 brcm80211: remove unused defines in pcicfg.h Signed-off-by: Stanislav Fomichev Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit e7c7add92cf073bb81ee11bb3e63a0e1f83d6658 Author: Stanislav Fomichev Date: Mon Mar 28 01:31:37 2011 +0400 brcm80211: remove unused defines in bcmdevs.h Signed-off-by: Stanislav Fomichev Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit be1c09f987ff523e7299cd8322a176dc80d8f66d Author: Stanislav Fomichev Date: Mon Mar 28 01:31:36 2011 +0400 brcm80211: replace VENDOR_BROADCOM with PCI_VENDOR_ID_BROADCOM use Linux native defines Signed-off-by: Stanislav Fomichev Acked-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 28562f3cd502a97e607590586a87811c8f438e38 Author: Arend van Spriel Date: Fri Mar 25 11:26:01 2011 +0100 staging: brcm80211: remove support functions for older chipsets from bcmsrom The source file contained functions for both older and current chipsets but the brcmsmac driver does not support the older chipsets so those functions are removed. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 72a279620facd56cf650573c8705136e25908357 Author: Arend van Spriel Date: Fri Mar 25 11:26:00 2011 +0100 staging: brcm80211: remove conditional BCMSDIO code from bcmsrom.c The source file is only used by the softmac driver and will never be compiled with the BCMSDIO flag enabled so there is no need to have code ifdef for this flag. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 94da53f91df196a62727363722dd20bd616f7362 Author: Arend van Spriel Date: Fri Mar 25 11:25:59 2011 +0100 staging: brcm80211: remove unneccessary include from bcmsrom.c Include statement of if_ether.h turned out to be unneccessary so this is removed. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c6042b3043f4ee1776c10572f517b25ed4f8188f Author: Arend van Spriel Date: Fri Mar 25 11:25:58 2011 +0100 staging: brcm80211: remove defines from bcmsrom.c Two macro definitions in the file were either not used or meaningless and have been removed. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 0686acf730344e0e9442649952e34fe4e1d6ccb0 Author: Arend van Spriel Date: Fri Mar 25 11:25:57 2011 +0100 staging: brcm80211: replace si_* calls with ai_* calls in brcmsmac driver The brcmsmac only supports chips with amba silicon interconnect so no abstraction is required. The siutils functions will be removed from the brcmsmac driver and this commit does easy replacement of siutils functions that simply delegate to the corresponding aiutils function. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 933b720f2f4e76d307cd50ae49dcbc1e598e79a9 Author: Arend van Spriel Date: Fri Mar 25 11:25:55 2011 +0100 staging: brcm80211: remove duplicate prototype for si_pmu_pllupd The prototype for this function occurred twice in this header file so removed one occurrence. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 014cdb5f454486b20de0e6358fb3692dbe067557 Author: Arend van Spriel Date: Fri Mar 25 11:25:54 2011 +0100 staging: brcm80211: cleanup si_doattach function for fullmac si_doattach for the fullmac driver is selected using BCMSDIO flag. Within the function there are #ifdef BRCM_FULLMAC but this is implicitly true so these have been removed and the function itself is now between #ifdef BRCM_FULLMAC instead of BCMSDIO. Reviewed-by: Henry Ptasinski Signed-off-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit c6e1a0d12ca7b4f22c58e55a16beacfb7d3d8462 Author: Tom Herbert Date: Mon Apr 4 22:30:30 2011 -0700 net: Allow no-cache copy from user on transmit This patch uses __copy_from_user_nocache on transmit to bypass data cache for a performance improvement. skb_add_data_nocache and skb_copy_to_page_nocache can be called by sendmsg functions to use this feature, initial support is in tcp_sendmsg. This functionality is configurable per device using ethtool. Presumably, this feature would only be useful when the driver does not touch the data. The feature is turned on by default if a device indicates that it does some form of checksum offload; it is off by default for devices that do no checksum offload or indicate no checksum is necessary. For the former case copy-checksum is probably done anyway, in the latter case the device is likely loopback in which case the no cache copy is probably not beneficial. This patch was tested using 200 instances of netperf TCP_RR with 1400 byte request and one byte reply. Platform is 16 core AMD x86. No-cache copy disabled: 672703 tps, 97.13% utilization 50/90/99% latency:244.31 484.205 1028.41 No-cache copy enabled: 702113 tps, 96.16% utilization, 50/90/99% latency 238.56 467.56 956.955 Using 14000 byte request and response sizes demonstrate the effects more dramatically: No-cache copy disabled: 79571 tps, 34.34 %utlization 50/90/95% latency 1584.46 2319.59 5001.76 No-cache copy enabled: 83856 tps, 34.81% utilization 50/90/95% latency 2508.42 2622.62 2735.88 Note especially the effect on latency tail (95th percentile). This seems to provide a nice performance improvement and is consistent in the tests I ran. Presumably, this would provide the greatest benfits in the presence of an application workload stressing the cache and a lot of transmit data happening. Signed-off-by: Tom Herbert Signed-off-by: David S. Miller commit 6b5a5a3eb77ea69382da9d2a64d74107e49cedaa Author: Grant Grundler Date: Fri Mar 18 15:56:57 2011 -0700 STAGING: brcm80211 v2 keep power on in suspend state Keep WIFI power on during suspend. Consumes 10s of milliwatts but avoids having to reload firmware on resume. Tested on tegra2_seaboard. Signed-off-by: Venkat Rao Tested-by: Grant Grundler Signed-off-by: Greg Kroah-Hartman commit 6f27b08d5b781608e97652ae5b83c271c9d177bc Author: Roland Vossen Date: Fri Mar 18 11:09:35 2011 +0100 staging: brcm80211: cleaned up TODO file Brought TODO file in line with current driver state. Moved longer term TODO items (the ones to be done once this driver hits mainline) to website. Removed the bugs that have been solved. Added new TODO items. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit ddc332df71409fdb5f22d5273b380c91a9ffb823 Author: Roland Vossen Date: Fri Mar 18 11:09:34 2011 +0100 staging: brcm80211: revised README Removed duplicated text sections in README. Removed Bugs/problems that no longer occur. One brcmsmac instability remains, (to be solved with new ucode), that has been moved to the TODO file. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit 4a266c4fc99d9b27afb2a476ea8fdd7189788115 Author: Roland Vossen Date: Fri Mar 18 11:09:33 2011 +0100 staging: brcm80211: moved several README items to website Intended audience for the README file are users of the driver. Information only interesting to developers has been moved out of the file and placed on the website: http://linuxwireless.org/en/users/Drivers/brcm80211 Also, resolved bugs have been removed from the README. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit dd0308742b1ba9fbf45422be968816123cc9b6aa Author: Roland Vossen Date: Fri Mar 18 11:09:32 2011 +0100 staging: brcm80211: unified README files There were separate README files for softmac and fullmac. Fullmac file contents has been merged into the toplevel README file. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit da5fa38f4ae6c565accd4e3a81e0b89561c049a4 Author: Roland Vossen Date: Tue Mar 15 15:11:28 2011 +0100 staging: brcm80211: deleted unused code in hndpmu.c Code cleanup. Code is not necessary since BCMDBG does not have to be defined for a functional driver. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 8906d770d8314cf9ab5289ee971594cb250f541d Author: Roland Vossen Date: Tue Mar 15 15:11:27 2011 +0100 staging: brcm80211: Removed invalid comment in receive processing. Comment was a left over from a driver that handled AMPDU aggregation itself (instead of relying on Mac80211). Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit d3f54f319a6145241c37663f0e21b10888ee0920 Author: Roland Vossen Date: Tue Mar 15 15:11:26 2011 +0100 staging: brcm80211: changed comment on rx buffer len in wlc_ampdu.c Code cleanup. Code in wlc_ampdu.c is waiting for Mac80211 functionality to be released. Added this information to a code comment. Signed-off-by: Roland Vossen Reviewed-by: Arend van Spriel Signed-off-by: Greg Kroah-Hartman commit 4cbdbca020bd26dde0feb2a7511ae14fd394faf6 Author: Roland Vossen Date: Tue Mar 15 14:51:06 2011 +0100 staging: brcm80211: deleted inactive BCMDBG_FORCEHT code Code cleanup. Preprocessor flag BCMDBG_FORCEHT is never defined, is a debug feature, so ifdeff'ed code has been removed. The removed section would force the backplane clock on HT rate, which facilitates debug but has a negative effect on power usage. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit ea7b2805e0c5ed8cfbac2914f9807a056a1ab13e Author: Roland Vossen Date: Tue Mar 15 14:51:05 2011 +0100 staging: brcm80211: code cleanup Removed inactive code sections (BCM_DMAPAD and CHIPC_UART_ALWAYS_ON were never defined). Also replaced magic number by #define. Deleted incorrect comment. Signed-off-by: Roland Vossen Signed-off-by: Greg Kroah-Hartman commit c0765e995059afc57fafe3b5f2a3a85d62300f2f Author: Hank Janssen Date: Fri Apr 1 14:32:14 2011 -0700 staging: hv: Convert camel case in in all functions to lower case in hv_mouse Convert all camelcase variables inside of all remaining functions to lower case in hv_mouse. Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit ac41d402d64aeb42568bce88663200d8b348dab2 Author: Hank Janssen Date: Fri Apr 1 14:32:13 2011 -0700 staging: hv: Convert camel case members of struct mousevsc_dev to lower case Change camelcase members of struct mousevsc_dev to lower case in hv_mouse Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 4b5d5181500e294ceb1bc05efa2df90e2abad47e Author: Hank Janssen Date: Fri Apr 1 14:32:12 2011 -0700 staging: hv: Convert camel case member of struct mousevsc_drv_obj to lower case Change camelcase members of mousevsc_drv_obj to lower case in hv_mouse. Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 2ba6810baafbed19e3af436f00b3adb5d74e9131 Author: Hank Janssen Date: Fri Apr 1 14:32:11 2011 -0700 staging: hv: Convert camel case func params to lower case in hv_mouse Change all camelcase function params to lower case in hv_mouse Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 94e44cb5ae624cc34a3e4d16907c088d14901c5f Author: Hank Janssen Date: Fri Apr 1 14:32:10 2011 -0700 staging: hv: change camel case funct names to lower case funct in hv_mouse Change all camelcase function names to lower case in hv_mouse Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit d0d6e9c8f5ae4749d8010851e4ed10b6fb759c20 Author: Hank Janssen Date: Tue Mar 29 13:58:50 2011 -0700 staging: hv: Replaced printk with pr_info in hv_timesource Replaced printk in hv_timesource with pr_ calls Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit af7a5b6e598c936476fe8dcfaa09d1c7d7e1b165 Author: Hank Janssen Date: Tue Mar 29 13:58:49 2011 -0700 staging: hv: Replaced DPRINT and printk with native functions in hv_utils Replaced all DPRINT and printk calls with pr_ calls Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit eb335bc42781ddc19da98a3c74add1013ba08da2 Author: Hank Janssen Date: Tue Mar 29 13:58:48 2011 -0700 staging: hv: replace DPRINT with native primitives in hv_netvsc Replace all remaining DPRINT calls with their native dev_ and netvsc_ calls. And also change some of the verbiage to be more useful. rndis_filter has a few remaining DPRINT calls in it that will be removed in a future patch because the debug will be implemented differently. Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 0a46618d58c90f93e8b8e9a18062d1691b70297e Author: Hank Janssen Date: Tue Mar 29 13:58:47 2011 -0700 staging: hv: Replace DPRINT with natives in hv_vmbus Replace all remaining DPRINT calls (excluding the ringbuffer debug which is going to be done in a next set of patches) with their native pr_ calls. And also changed some of the printouts to be more useful. Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 8de61e31466a87cf77231db52ff9c94ddb1f758b Author: Hank Janssen Date: Tue Mar 29 13:58:46 2011 -0700 staging: hv: Remove all unneeded DPRINT from hv_utils Remove all un-needed DPRINT calls from hv_utils. This patch deals with hv_utils only. Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit b8a3d52b2f7db637edcb62f9a332e1b35eefad13 Author: Hank Janssen Date: Tue Mar 29 13:58:45 2011 -0700 staging: hv: Remove all unneeded DPRINT from hv_netvsc Remove all un-needed DPRINT calls from hv_netvsc. This patch deals with hv_netvsc only. Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit 98e087022b611c6f748c74d952193ccf69280f52 Author: Hank Janssen Date: Tue Mar 29 13:58:44 2011 -0700 staging: hv: Remove all unneeded DPRINT from hv_vmbus Remove all un-needed DPRINT calls from hv_vmbus. Several are remaining that will be cleaned up in my next set of patches. They deal with printing out the ringbuffer debugging which is going to be implemented slightly differently. This patch deals with hv_vmbus only. Signed-off-by: Hank Janssen Signed-off-by: Haiyang Zhang Signed-off-by: K. Y. Srinivasan Signed-off-by: Greg Kroah-Hartman commit f3365453a3c4a1e8ca28c0dedabf371385456d1f Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:45 2011 -0700 Staging: hv: Get rid of synch primitive in struct blkvsc_request Get rid of synch primitive in struct blkvsc_request and instead use the synch primitive already embedded in the struct hv_storvsc_request structure. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit d7a1bdb990b9dfe93d080dc242860e33d08ec5a6 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:44 2011 -0700 Staging: hv: Rename struct storvsc_request_extension Now that all duplicate state has been eliminated from struct hv_storvsc_request and all needed state has been moved to struct storvsc_request_extension, get rid of struct hv_storvsc_request and rename struct storvsc_request_extension as struct hv_storvsc_request. Cleanup and consolidation of I/O request state is now complete. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e9e936c60dfa4ea5ead0ddf5f9ee457a1906366d Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:43 2011 -0700 Staging: hv: Move the data_buffer field from struct hv_storvsc_request In preparation of consolidating all I/O request state, move the data_buffer field from struct hv_storvsc_request struct storvsc_request_extension. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6dc3f0a7edf15fcaf90270b1ac6de501fe6a60c6 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:42 2011 -0700 Staging: hv: Get rid of the status field from struct hv_storvsc_request In preparation of consolidating all I/O request state, get rid of the status field from struct hv_storvsc_request and instead use the state in the struct vmscsi_request directly. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 0bb71127060b1abb76e8864d45f9be9e9fb2882d Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:41 2011 -0700 Staging: hv: Move on_io_completion() from struct hv_storvsc_request In preparation of consolidating all I/O request state, move the on_io_completion() field from struct hv_storvsc_request to struct storvsc_request_extension. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit efb5a663e460c0213cfd2a65ae4b6b35047b0e9b Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:40 2011 -0700 Staging: hv: Move the context field from struct hv_storvsc_request In preparation of consolidating all I/O request state, move the context field from struct hv_storvsc_request to struct storvsc_request_extension. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 237ecd6d58256dc95458098bc5c4b65cf4a62eee Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:39 2011 -0700 Staging: hv: Move sense_buffer field In preparation for consolidating all I/O request state, move sense_buffer field from struct hv_storvsc_request to struct storvsc_request_extension. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6f461cc46d2d19daf98bfe1a6502900cb80a293b Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:38 2011 -0700 Staging: hv: Get rid of sense_buffer_size from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the sense_buffer_size field from struct hv_storvsc_request and instead hardcode this value as is currently done. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 373dd8a93aab78d0074188429c350b1e457ddf23 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:37 2011 -0700 Staging: hv: Get rid of cdb from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the cdb field from struct hv_storvsc_request and instead directly copy the command into struct vmscsi_request. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 473f9409e4614880656cae2028c567831a82a03f Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:36 2011 -0700 Staging: hv: Get rid of the cdb_len from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the cdb_len field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - cdb_length field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit fc3967b0c3169fe8a3b33cc90e5bc8248d5b18d9 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:35 2011 -0700 Staging: hv: Get rid of lun_id from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the lun_id field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - lun field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b4dba0a3b4008c48316f712283c682f422b2c973 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:34 2011 -0700 Staging: hv: Get rid of the target_id from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the target_id field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - target_id field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 735625fe4d95e2a73fe41a7e4d23f05fd97b9e80 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:33 2011 -0700 Staging: hv: Get rid of the bus field from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the bus field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - path_id field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 124661ded38b4bbd8a95e1e66d4e03ce328d4481 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:32 2011 -0700 Staging: hv: Get rid of the host field from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the host field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - port_number field. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 12fbd4164ea1fa4a4a717d72a68e48d1cc0362a3 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:31 2011 -0700 Staging: hv: Get rid of the type field from struct hv_storvsc_request In preparation for consolidating all I/O request state, get rid of the type field from struct hv_storvsc_request and instead use the equivalent state in struct vmscsi_request - data_in field. In the current code there is a call to zero out the struct vstor_packet in stor_vsc_on_io_request(). So, to be able to directly set the state in the vstor_packet in blkvsc_drv.c and storvsc_drv.c, get rid of the call to zero out the packet in stor_vsc_on_io_request() and instead allocate the request structure that has been zeroed out. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 93958465598f22833ee21f9aa3d79749acb7d6eb Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:30 2011 -0700 Staging: hv: Use struct completion in struct storvsc_request_extension Get rid of the wait_queue mechanism for synchronization in struct storvsc_request_extension and instead use completion mechanism. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit ced01b0df71fb184744c473b934f9ea70454b750 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:29 2011 -0700 Staging: hv: Add a function to map a hv_driver pointer to storvsc driver Get rid of the need for struct hv_device to be the first element of struct host_device_context. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1e05d88e9374036cd2d6d0f7e840a790cf4bb43a Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:28 2011 -0700 Staging: hv: Get rid of request_ext_size from struct storvsc_driver_object Now that struct storvsc_request_extension is part of struct hv_storvsc_request get rid of the field request_ext_size from struct storvsc_driver_object. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2fd0df276e4ebb411dd0f87a2c9381b466f81ed4 Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:27 2011 -0700 Staging: hv: Embed struct storvsc_request_extension into hv_storvsc_request Embed struct storvsc_request_extension into hv_storvsc_request. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit bf587a1dfd992c3f4dcc2886a36964126b5a4ade Author: K. Y. Srinivasan Date: Mon Mar 28 09:33:26 2011 -0700 Staging: hv: Move the definition of struct storvsc_request_extension In preperation for embedding struct storvsc_request_extension into struct hv_storvsc_request, move the definition of struct storvsc_request_extension. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 12cb12ef23bfe90f4e6c003a88b4500c6ff2b71b Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:34 2011 -0700 Staging: hv: Make the function stor_vsc_on_host_reset() static Make stor_vsc_on_host_reset() a static function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit af3043c64a4a87bc0a4596f4952dc194ebc5af72 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:33 2011 -0700 Staging: hv: Move the definition of the function stor_vsc_on_host_reset() stor_vsc_on_host_reset() function is only used in storvsc_drv.c. Move this function from storvsc.c to storvsc_drv.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1604b1bda3c20534efad534f3fc77470f455d862 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:32 2011 -0700 Staging: hv: Move the definition of the function put_stor_device() In preparation for further cleaning up storvsc.c move the definition of the inline function put_stor_device() from storvsc.c to storvsc_api.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 852c16dbdcf84d43803a4ccfa647cf2f2952afc9 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:31 2011 -0700 Staging: hv: Move the definition of the function get_stor_device() In preparation for further cleaning up storvsc.c move the definition of the inline function get_stor_device() from storvsc.c to storvsc_api.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 834702f82ab8fe1ea5de5e464764d5ca2d326dbd Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:30 2011 -0700 Staging: hv: Cleanup initialization of blkvsc driver Cleanup the initialization sequence for the block driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 86762a5bd908499e3936c9c765184d3f4c0d069e Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:29 2011 -0700 Staging: hv: Get rid of the file blkvsc.c Now delete the file. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 19b5931d54695ca748ede122ed67a9f12e791f0e Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:28 2011 -0700 Staging: hv: Move the contents of blkvsc.c to blkvsc_drv.c In preparation for getting rid of the file blkvsc.c, move its contents to the appropriate file. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit db0857771be7c5fe2d235e5a00a3ded8ac48b09d Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:27 2011 -0700 Staging: hv: Cleanup the initialization of storvsc driver Cleanup the initialization sequence for the storvsc driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 2b8b35825fb0c4b36771b9f3c5565092fff5d164 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:26 2011 -0700 Staging: hv: Make the function stor_vsc_initialize() static Make the function stor_vsc_initialize() a static function. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6dec24423803273a2619ad383d19b18264c8ce1b Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:25 2011 -0700 Staging: hv: Move the definition of stor_vsc_initialize() Since stor_vsc_initialize() is only used in storvs_drv.c, move this function to storvsc_drv.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 5e081c91eb515d55bdd5d121adff8d216914c0dc Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:24 2011 -0700 Staging: hv: Get rid of dead code in storvsc.c Get rid of some "dead code" from storvsc.c Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit afa3f3d7f57bc9adb3f7cc2c853153916f690eda Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:23 2011 -0700 Staging: hv: Get rid of the include of storvsc.c from blkvsc.c Now that all the structure definitions have been moved to a header file, get rid of the inclusion of storvsc.c from blkvsc.c. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 78101852f3d08134e89979b491a9fa815395c9f5 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:22 2011 -0700 Staging: hv: Cleanup struct storvsc_device Get rid of some dated comments from struct storvsc_device. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f24eeb06a430f8508d03a419ff4274d5596a5436 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:21 2011 -0700 Staging: hv: Move the definition of struct storvsc_device In preparation for getting rid of the inclusion of storvsc.c from blkvsc.c, move the definition of struct storvsc_device from storvsc.c to storvsc_api.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 036bbeda8c802c438e167d35a3ce726bcb0bb42e Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:20 2011 -0700 Staging: hv: Move the definition of struct storvsc_request_extension In preparation for getting rid of the inclusion of storvsc.c from blkvsc.c, move the definition of struct storvsc_request_extension from storvsc.c to storvsc_api.h. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 6e1870a847c2bd40a56f3a8807bf12ad2bf28c33 Author: K. Y. Srinivasan Date: Wed Mar 23 10:50:19 2011 -0700 Staging: hv: Add the inclusion guard for vstorage.h In preparation for getting rid of the inclusion of storvsc.c from blkvsc.c, add inclusion guard to vstorage.h Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 98db4335e978dcec8d31900c58447690e6850f3b Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:44 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_show_device_attr Get rid of the forward declaration of vmbus_show_device_attr by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 793be9c76e7ca3841992e8bbdea46dcceb3e3118 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:43 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_isr Get rid of the forward declaration of vmbus_isr by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 086e7a5685babba533644acd1d39a81e3f8eed54 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:42 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_device_release Get rid of the forward declaration of vmbus_device_release by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit eb1bb259cf216be0cd924e76e2185c7fb2c7e8ee Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:41 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_shutdown Get rid of the forward declaration of vmbus_shutdown by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit c5dce3db89def8e35d30521e187a0e8127937dd0 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:40 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_remove Get rid of the forward declaration of vmbus_remove by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit f1f0d67b6ea022a90bfa817bf364a91740d02f4d Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:39 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_probe Get rid of the forward declaration of vmbus_probe by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit b7fc147bd8732b54019e52af8f923cecd023c711 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:38 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_match Get rid of the forward declaration of vmbus_match by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit adde2487d306a0153856cb0a777528ac1f19fa59 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:37 2011 -0700 Staging: hv: Get rid of the forward declaration for vmbus_uevent Get rid of the forward declaration of vmbus_uevent by moving the code around. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 04677c0862677430f8bf5bbc356bd44bcba48f1f Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:35 2011 -0700 Staging: hv: Rename vmbus_driver_context structure Now that struct vmbus_driver_context is properly cleaned up, rename this structure appropriately and cleanup the code. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 52e5c1cec89879bd64eb4e681b4cb1525eabb472 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:34 2011 -0700 Staging: hv: Cleanup irq management Now that vmbus_driver is a pci driver, cleanup the irq allocation mess by using the standard irq allocation mechanisms. Note that this patch generates an error when the checkpatch script is run because of the IRQF_SAMPLE_RANDOM flag used in request_irq() function. This interrupt may be the only external event this VM will get and consequently if this flag (IRQF_SAMPLE_RANDOM) is not specified, experimentally we have shown that the entropy in the VM will very very low. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 800b6902fdc86f48f39c1db8fb2ec2116058a1c7 Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:33 2011 -0700 Staging: hv: Cleanup root device handling Now we can complete the cleanup of the root device management - use the pci device as the root device for all Hyper-V devices. As part of this cleanup get rid of the root device object from vmbus_driver_context. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit 1168ac22314d11447976d7803facc2744a0308ad Author: K. Y. Srinivasan Date: Tue Mar 15 15:03:32 2011 -0700 Staging: hv: Make vmbus driver a pci driver Make vmbus driver a pci driver. This is in preparation to cleaning up the root device management as well as the irq allocation for this driver. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Mike Sterling Signed-off-by: Abhishek Kane Signed-off-by: Hank Janssen Signed-off-by: Greg Kroah-Hartman commit e3f6a652fd0e828de586a3a87b56c07f7a32259a Author: Simon Horman Date: Tue Apr 5 11:25:03 2011 +0900 IPVS: combine consecutive #ifdef CONFIG_PROC_FS blocks Signed-off-by: Simon Horman commit 14f98f258f1936e0dba77474bd7eda63f61a9826 Author: stephen hemminger Date: Mon Apr 4 14:03:33 2011 +0000 bridge: range check STP parameters Apply restrictions on STP parameters based 802.1D 1998 standard. * Fixes missing locking in set path cost ioctl * Uses common code for both ioctl and sysfs This is based on an earlier patch Sasikanth V but with overhaul. Note: 1. It does NOT enforce the restriction on the relationship max_age and forward delay or hello time because in existing implementation these are set as independant operations. 2. If STP is disabled, there is no restriction on forward delay 3. No restriction on holding time because users use Linux code to act as hub or be sticky. 4. Although standard allow 0-255, Linux only allows 0-63 for port priority because more bits are reserved for port number. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit bb900b27a2f49b37bc38c08e656ea13048fee13b Author: stephen hemminger Date: Mon Apr 4 14:03:32 2011 +0000 bridge: allow creating bridge devices with netlink Add netlink device ops to allow creating bridge device via netlink. This works in a manner similar to vlan, macvlan and bonding. Example: # ip link add link dev br0 type bridge # ip link del dev br0 The change required rearranging initializtion code to deal with being called by create link. Most of the initialization happens in br_dev_setup, but allocation of stats is done in ndo_init callback to deal with allocation failure. Sysfs setup has to wait until after the network device kobject is registered. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 36fd2b63e3b4336744cf3f6a6c9543ecbec334a7 Author: stephen hemminger Date: Mon Apr 4 14:03:31 2011 +0000 bridge: allow creating/deleting fdb entries via netlink Use RTM_NEWNEIGH and RTM_DELNEIGH to allow updating of entries in bridge forwarding table. This allows manipulating static entries which is not possible with existing tools. Example (using bridge extensions to iproute2) # br fdb add 00:02:03:04:05:06 dev eth0 Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit b078f0df676233fc7ebc1ab270bd11ef5824bb64 Author: stephen hemminger Date: Mon Apr 4 14:03:30 2011 +0000 bridge: add netlink notification on forward entry changes This allows applications to query and monitor bridge forwarding table in the same method used for neighbor table. The forward table entries are returned in same structure format as used by the ioctl. If more information is desired in future, the netlink method is extensible. Example (using bridge extensions to iproute2) # br monitor Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 664de48bb6c4e167fcdf92a4bddf880030fbfbb3 Author: stephen hemminger Date: Mon Apr 4 14:03:29 2011 +0000 bridge: split rcu and no-rcu cases of fdb lookup In some cases, look up of forward database entry is done with RCU; and for others no RCU is needed because of locking. Split the two cases into two differnt loops (and take off inline). Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 7cd8861ab0d907430bbea0af93bc41aee0437efc Author: stephen hemminger Date: Mon Apr 4 14:03:28 2011 +0000 bridge: track last used time in forwarding table Adds tracking the last used time in forwarding table. Rename ageing_timer to updated to better describe it. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 03e9b64b89243ccc6f8f48f5955a5a78a8ca1431 Author: stephen hemminger Date: Mon Apr 4 14:03:27 2011 +0000 bridge: change arguments to fdb_create Later patch provides ability to create non-local static entry. To make this easier move the updating of the flag values to after the code that creates entry. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit ef49e4fae3f364af8da041dcc1bb4931c749b3da Author: Mark Brown Date: Mon Apr 4 20:48:13 2011 +0900 ASoC: Add bias level data to DAPM context debugfs This is also in the old sysfs diagnostics but it's nice to have everything in one place. Signed-off-by: Mark Brown commit 34bad69cf63efc761b05f603d99e121b83635c08 Author: Mark Brown Date: Mon Apr 4 17:55:42 2011 +0900 ASoC: Fix comment width in soc-cache.c Lines should be less than 80 columns. Signed-off-by: Mark Brown commit d420d40e9c044e8fae7957ed82cd63d2afe4147f Author: Mark Brown Date: Mon Apr 4 14:55:59 2011 +0900 ASoC: Remove excessively verbose logging on I2C write We don't need to log every I2C transfer, and certainly not at error level. Signed-off-by: Mark Brown commit 898f8b0b65715843f7afd86f3867270dc9ed8b74 Author: Seungwhan Youn Date: Mon Apr 4 13:43:42 2011 +0900 ASoC: Fix to avoid compile error This patch fixes to avoid compile error when ASoC codec doesn't use I2C nor SPI on snd_soc_hw_bulk_write_raw(). Signed-off-by: Seungwhan Youn Signed-off-by: Mark Brown commit a88a9652d25a63ce10b6a5fe680d0ad8f33b9c9b Author: Johan Hedberg Date: Wed Mar 30 13:18:12 2011 +0300 Bluetooth: Add mgmt_remote_name event This patch adds a new remote_name event to the Management interface which is sent every time the name of a remote device is resolved (over BR/EDR). Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit e17acd40f6006d0a0e0b1b3f7359ba4d543011c6 Author: Johan Hedberg Date: Wed Mar 30 23:57:16 2011 +0300 Bluetooth: Add mgmt_device_found event This patch adds a device_found event to the Management interface. For now the event only maps to BR/EDR inquiry result HCI events, but in the future the plan is to also use it for the LE device discovery process. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 1e429f3842b5c9b5967a250f4daf78f92436268c Author: Gustavo F. Padovan Date: Mon Apr 4 18:25:14 2011 -0300 Bluetooth: Remove gfp_mask param from hci_reassembly() It is unnecessary, once we are always in interrupt context. Signed-off-by: Gustavo F. Padovan commit 26d59535aa08386b97ece58a27bb16fca4f066db Author: Johannes Berg Date: Fri Apr 1 13:52:48 2011 +0200 mac80211: clean up station cleanup timer We currently run this timer exactly once when a new mac80211 device is registered, but that is completely pointless since it will have no work to do at all. Therefore, remove that and also simplify some code using the timer. Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit ccc7c28af205888798b51b6cbc0b557ac1170a49 Author: Rafał Miłecki Date: Fri Apr 1 13:26:52 2011 +0200 ssb: pci: implement serdes workaround Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit ba91d1a1bcccd90247b5b9703c1a236cc2e95698 Author: Rafał Miłecki Date: Fri Apr 1 12:07:34 2011 +0200 ssb: pci: implement mdio reading Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 1b1c7acd9709e545399d1b6b89888f025911c0a2 Author: Rafał Miłecki Date: Fri Apr 1 12:07:33 2011 +0200 ssb: pci: fix mdio writes on newer cores (rev 10+) Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 6c74608bd479bbe02ce330f83df43c3f535ed200 Author: Rafał Miłecki Date: Fri Apr 1 12:07:32 2011 +0200 ssb: pci: trivial: drop useless pointer Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit ce57d9e694d98e421e329fbac5d6f5dc5e9e101e Author: Rafał Miłecki Date: Fri Apr 1 12:06:48 2011 +0200 ssb: trivial: use u8 for chip_rev (it's mask is 0xF) Signed-off-by: Rafał Miłecki Signed-off-by: John W. Linville commit 832fd35a545ecde11082d2dab74dd0aef8e0505e Author: Vasanthakumar Thiagarajan Date: Fri Apr 1 15:32:16 2011 +0530 ath9k_hw: Use appropriate rx gain table for AR9485 Signed-off-by: Vasanthakumar Thiagarajan Signed-off-by: John W. Linville commit 8120347de30f98982b8c75243e3b17dd1ee75740 Author: Bing Zhao Date: Thu Mar 31 19:50:14 2011 -0700 mwifiex: remove unused macros in decl.h and main.h These macros are leftover of previous cleanup patches. Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 7327890a1f42046c50030c8723bdbd9266d781bc Author: Bing Zhao Date: Wed Mar 30 18:12:45 2011 -0700 mwifiex: remove struct mwifiex_802_11_fixed_ies struct mwifiex_802_11_fixed_ies is not necessary. struct mwifiex_event_wep_icv_err is not used any more. Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 2b06bdbe073f8dff93eb476f07352df43dcdba44 Author: Marc Yang Date: Wed Mar 30 18:12:44 2011 -0700 mwifiex: cleanup power save related struct and macros remove redundant structures and unused macros Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 4dd365fd55991b4e54a1d1c255081e6370b9da29 Author: Bing Zhao Date: Wed Mar 30 18:01:15 2011 -0700 ieee80211: add HT extended capabilities masks IEEE Std 802.11n, Oct. 29, 2009: 7.3.2.56.5 HT Extended Capabilities field Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 4f3f1ee9f373abfdc09bb3bed87969b7fe0fba06 Author: Marc Yang Date: Mon Mar 28 17:55:44 2011 -0700 mwifiex: remove unused macros in fw.h These definitions are no longer used after previous cleanups. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit fd2e401a35500c9af63dc7ffbc545d2e3c478702 Author: Marc Yang Date: Mon Mar 28 17:55:43 2011 -0700 mwifiex: remove unused radio_on variable and macros The radio_on variable is defined but never used. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit f986b6d538c9351c99108b51be9f77ac1b300b16 Author: Marc Yang Date: Mon Mar 28 17:55:42 2011 -0700 mwifiex: remove MWIFIEX_AUTH_MODE_ macros replace them with NL80211_AUTHTYPE_ macros Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit eecd8250e492ffc4e7b72953cda9c2f3ba0e6ccc Author: Bing Zhao Date: Mon Mar 28 17:55:41 2011 -0700 mwifiex: remove MWIFIEX_BSS_MODE_ macros replace them with NL80211_IFTYPE_ macros Also remove redundant functions mwifiex_drv_get_mode() and mwifiex_bss_ioctl_mode(). Signed-off-by: Bing Zhao Signed-off-by: Amitkumar Karwar Signed-off-by: John W. Linville commit 6a4c499e86f54ed9316a87e7ddc6b7d33adb4976 Author: Helmut Schaa Date: Mon Mar 28 13:35:51 2011 +0200 rt2x00: Add an error message when trying to send on a full queue We already tell mac80211 to stop the queue when we hit a certain threshold. Hence, it shouldn't happen at all that a frame gets queued for tx on a full queue. Add an error message for this case. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f16d2db704b873d34cec54f992637f3579e10e08 Author: Helmut Schaa Date: Mon Mar 28 13:35:21 2011 +0200 rt2x00: Fix tx aggregation problems with some clients Some clients seem to rely upon the reception of BlockAckReqs to flush their rx reorder buffer. In order to fix aggregation for these clients rt2x00 should send a BlockAckReq if the transmission of an AMPDU subframe fails. Introduce a new flag TXDONE_AMPDU to indicate that this is an AMPDU subframe and pass IEEE80211_TX_STAT_AMPDU_NO_BACK to mac80211 if an AMPDU subframe failed during transmission. This fixes aggregation problems with Intel 5100 Windows STAs (and maybe others as well). Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit b35e77cf84137bbb4b6888dc90616eb0b452ea36 Author: Ivo van Doorn Date: Mon Mar 28 13:34:50 2011 +0200 rt2x00: Add support for the ZyXEL NWD-211AN USB Add new USB ID Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 351151e8ace033fe3b1977516b32a6c76e9a3f6d Author: Helmut Schaa Date: Mon Mar 28 13:34:15 2011 +0200 rt2x00: Fix STBC transmissions to STAs with Rx STBC > 1 For STBC transmissions rt2x00 used the number of RxSTBC streams the destination STA indicates in its HT capabilities as STBC value in the TXWI. However, the legacy drivers and our own comment in rt2800.h suggest that the STBC field in the TXWI only allows a value of 0 or 1. The values 2 and 3 are reserved (probably for future devices). And indeed, STBC transmissions to STAs indicating more then 1 RxSTBC stream fail when the STBC field is set to something >1. Fix this by only setting the STBC field to 1 when STBC should be used. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 9e33a3553821418b2c4f53d09311476c55176b13 Author: Helmut Schaa Date: Mon Mar 28 13:33:40 2011 +0200 rt2x00: Implement tx power temperature compensation rt2800 devices should adjust their tx power in accordance with the eeproms temperature calibration values. Add a new driver callback gain_calibration that is called every 4 seconds. The rt2800 gain calibration routine simply runs the tx power configuration that takes care of calculating the temperature compensation delta. We don't need to synchronize the calls to rt2800_config_txpower as they should all happen from mac80211's single threaded workqueue. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 2f2bb7e8bdc977c94cdaaf84328526555eba89b1 Author: Helmut Schaa Date: Mon Mar 28 13:33:04 2011 +0200 rt2x00: Remove obsolete rt2x00queue_align_payload Since commit d1c3a37ceeb1a5ea02991a0476355f1a1d3b3e83 ("mac80211: clarify alignment docs, fix up alignment") removed the requirement for a 4-byte aligned payload rt2x00queue_align_payload is obsolete as mac80211 will align the payload when it passes the frame to the net stack. As a result we can remove the call to rt2x00queue_align_payload in the rx path and since that's the last user we can remove rt2x00queue_align_payload altogether. One advantage is that we save some alignment operations for frames that don't need to be aligned (for example beause they are not passed to the net stack). Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit fa71a160272c0eec9c04102ab2a82befb7cb107f Author: Helmut Schaa Date: Mon Mar 28 13:32:32 2011 +0200 rt2x00: Indention cleanup in rt2800lib Fix the indention in rt2800_compesate_txpower and also fix a typo in the function name rt2800_compesate_txpower -> rt2800_compensate_txpower. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 2af242e19f06cfaade7ac8608c9df8af1e0fbb34 Author: Helmut Schaa Date: Mon Mar 28 13:32:01 2011 +0200 rt2x00: Don't recalculate HT40 compensation for each rate Previously the HT40 tx power compensation value was calculated for each rate. However, the calculation is independent of the tx rate and as such can be precalculated and just passed in for each rate. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 75faae8b80171b447bfc4bac448308676fb8a663 Author: Helmut Schaa Date: Mon Mar 28 13:31:30 2011 +0200 rt2x00: Restructure bw_comp calculation Move the HT40 check inside the calculation function to make it easier for a later cleanup. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit aca7305be5cd9e07f042e6bf6547e7c5635f0041 Author: Helmut Schaa Date: Mon Mar 28 13:30:59 2011 +0200 rt2x00: Remove DRIVER_SUPPORT_WATCHDOG flag We can simply check if the driver registered the watchdog callback. There's no need to have an additional flag for that. Signed-off-by: Helmut Schaa Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit f78987cf8bb740b7a3636c08e003f1976f860cfc Author: Helmut Schaa Date: Mon Mar 28 13:30:36 2011 +0200 rt2x00: Calculate tx status fifo size instead of hardcoding it Instead of hardcoding the tx status fifo size as 512 calculate it based on the number of tx queues and the number of entries per queue. Also round the size up to a power of 2 as kfifo would otherwise round it down. On rt2800pci this will increase the kfifo size from 512 bytes to 1024 bytes which is then able to hold the tx status for all entries in all tx queues. Furthermore, if the number of tx queues or tx entries changes in the future (use of the MGMT queue for example) the kfifo size doesn't need to be updated. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 2e7798b7c12bdaab4a4aee76d6d1ab7c986234ac Author: Helmut Schaa Date: Mon Mar 28 13:30:09 2011 +0200 rt2x00: Limit rt2800pci txdone processing to 16 entries at once Instead of reporting an unlimited number of tx status reports to mac80211 stop after 16 frames and reschedule the tx status tasklet. This allows other tasklets to be run inbetween. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 166389375d5a3894aa00a9c2e490ac4b9af2a891 Author: Helmut Schaa Date: Mon Mar 28 13:29:44 2011 +0200 rt2x00: Limit rt2x00pci rxdone processing to 16 entries at once Instead of receiving an unlimited number of frames, stop after 16 entries and reschedule the rxdone tasklet. This allows other tasklets to be run inbetween. Signed-off-by: Helmut Schaa Acked-by: Gertjan van Wingerde Signed-off-by: Ivo van Doorn Signed-off-by: John W. Linville commit 324732848c42bf79988479ee1b4359e15f08154b Author: Larry Finger Date: Sun Mar 27 16:19:57 2011 -0500 rtlwifi: Remove unused/unneeded variables Remove some unused variables and correct spelling errors. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 6d2bd916afe6950b50f750cd82bbb9c6ff58611f Author: Marc Yang Date: Fri Mar 25 19:47:02 2011 -0700 mwifiex: use IEEE80211_HT_CAP_ macros for 11n cap_info The hw_dot_11n_dev_cap reported by firmware hw_spec has different format than the 11n capabilities. Hence a lot of SET_ and RESET_ bit operation macros were used to convert the dev_cap format to 11n capability format. However the locally defined 11n ht_cap macros are not necessary as we can use IEEE80211_HT_CAP_ macros directly. The 32-bit dev_cap bitmap is added as comment to explain the mapping between firmware and 11n spec. Some unused macros and unnecessary adapter variables are also removed. Signed-off-by: Marc Yang Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit b93f85f0fb019f527b68569aafb836c94b89a47e Author: Bing Zhao Date: Fri Mar 25 19:47:01 2011 -0700 mwifiex: remove macro SHORT_SLOT_TIME_DISABLED and SHORT_SLOT_TIME_ENABLED. Use WLAN_CAPABILITY_SHORT_SLOT_TIME instead. Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 5f9f1812b68a2979bc97399cd4954f1c191986af Author: Felix Fietkau Date: Fri Mar 25 21:39:19 2011 +0100 mac80211: remove the dependency on crypto_blkcipher The only thing that using crypto_blkcipher with ecb does over just using arc4 directly is wrapping the encrypt/decrypt function into a for loop, looping over each individual character. To be able to do this, it pulls in around 40 kb worth of unnecessary kernel modules (at least on a MIPS embedded device). Using arc4 directly not only eliminates those dependencies, it also makes the code smaller. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 203afecaa320fa8c541ce130aed449ff53f5b4aa Author: Marc Yang Date: Thu Mar 24 20:49:39 2011 -0700 mwifiex: remove unnecessary _set_auth functions mwifiex_set_encrypt_mode() mwifiex_set_auth_mode() mwifiex_set_auth() These functions are confusing and misleading. And they are really not needed at all. Some unused definitions are also removed. Signed-off-by: Marc Yang Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 0022801c893e953ebff8e0ad00cc22716055babf Author: Yogesh Ashok Powar Date: Thu Mar 24 20:49:38 2011 -0700 mwifiex: remove helper functions for displaying 11n capabilities 'iw list' is sufficient to retrieve the information which was displayed by these functions. Signed-off-by: Yogesh Ashok Powar Signed-off-by: Bing Zhao Signed-off-by: John W. Linville commit 1ed76487ce115110171480deabd3cd4656f9803e Author: Felix Fietkau Date: Thu Mar 24 19:46:18 2011 +0100 mac80211: fix suppressing probe responses in ad-hoc mode The commit "mac80211: reply to directed probes in IBSS" changed ad-hoc specific code to respond to unicast probe requests, even if drv_tx_last_beacon returns false, however due to confusion over the meaning of the IEEE80211_RX_RA_MATCH flag, it also unconditionally enabled responding to multicast probe requests. Fix this by explicitly checking for a multicast destination address instead. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 2638126a7c7cce87d51ae5d3bfaca9350503c0b4 Author: Mohammed Shafi Shajakhan Date: Thu Mar 24 19:06:40 2011 +0530 ath9k_hw: remove ath9k_get_channel_edges This function is nowhere used. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 468b0d4482cadd174298e2fe9bde6a20044f90f5 Author: Mohammed Shafi Shajakhan Date: Thu Mar 24 15:49:54 2011 +0530 ath9k: remove set11n_virtualmorefrag This does not seems to be used anywhere so remove it. Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit b64c6a3d1ab1bab9396e6efd2fd03479be4d0a63 Author: Mohammed Shafi Shajakhan Date: Thu Mar 24 14:36:16 2011 +0530 ath9k: cleanup few redundant macros Signed-off-by: Mohammed Shafi Shajakhan Signed-off-by: John W. Linville commit 279daf64c01e391379060a6d30e9827cc0c56612 Author: Ben Greear Date: Wed Mar 23 14:04:31 2011 -0700 wifi: Add hwflags to debugfs. Aids debugging wifi behaviour. Signed-off-by: Ben Greear Signed-off-by: John W. Linville commit 1c0ce89c87b310e8022f50bb75c1b693ee9d7158 Author: Stanislaw Gruszka Date: Fri Mar 25 17:59:39 2011 +0100 iwlegacy: MAINTAINERS Add iwlegacy driver to MAINTAINERS. Signed-off-by: Stanislaw Gruszka Signed-off-by: John W. Linville commit 18d6a0f5b6693d630a8da9dfd6cac1ea4e5dccab Merge: 83860c5 7eaa6a5 Author: John W. Linville Date: Mon Apr 4 16:10:36 2011 -0400 Merge branch 'wireless-next-2.6' of git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-2.6 commit 0545a3037773512d3448557ba048cebb73b3e4af Author: stephen hemminger Date: Mon Apr 4 05:30:58 2011 +0000 pkt_sched: QFQ - quick fair queue scheduler This is an implementation of the Quick Fair Queue scheduler developed by Fabio Checconi. The same algorithm is already implemented in ipfw in FreeBSD. Fabio had an earlier version developed on Linux, I just cleaned it up. Thanks to Eric Dumazet for testing this under load. Signed-off-by: Stephen Hemminger Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit fc3e5941248be00996150965a469d38c92913ac2 Author: Ian Campbell Date: Mon Apr 4 11:07:57 2011 -0700 xen: netfront: assume all hw features are available until backend connection setup We need to assume that all features will be available when registering the netdev otherwise they are ommitted from the initial set of dev->wanted_features. When we connect to the backed we reduce the set as necessary due to the call to netdev_update_features() in xennet_connect(). Signed-off-by: Ian Campbell Signed-off-by: David S. Miller commit 5373db886b791b2bc7811e2c115377916c409a5d Author: Jan Glauber Date: Wed Mar 16 15:58:30 2011 -0400 jump label: Add s390 support Implement the architecture backend for jump label support on s390. For a shared kernel booted from a NSS silently disable jump labels because the NSS is read-only. Therefore jump labels will be disabled in a shared kernel and can't be activated. Signed-off-by: Jan Glauber LKML-Reference: <6935d2c41ce111e1719176ed4bbd3dbe4de80855.1300299760.git.jbaron@redhat.com> Acked-by: Peter Zijlstra Signed-off-by: Martin Schwidefsky Signed-off-by: Steven Rostedt commit ef64789413c73f32faa5e5f1bc393e5843b0aa51 Author: Jason Baron Date: Wed Mar 16 15:58:27 2011 -0400 jump label: Add _ASM_ALIGN for x86 and x86_64 The linker should not be adding holes to word size aligned pointers, but out of paranoia we are explicitly specifying that alignment. I have not seen any holes in the jump label section in practice. Signed-off-by: Jason Baron LKML-Reference: Acked-by: Peter Zijlstra Acked-by: Mathieu Desnoyers Signed-off-by: Steven Rostedt commit 083dd8b8aacfcb62d65fb53ec744090879dd8150 Merge: 95b8fba a14b289 Author: David S. Miller Date: Mon Apr 4 10:39:12 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit d430d3d7e646eb1eac2bb4aa244a644312e67c76 Author: Jason Baron Date: Wed Mar 16 17:29:47 2011 -0400 jump label: Introduce static_branch() interface Introduce: static __always_inline bool static_branch(struct jump_label_key *key); instead of the old JUMP_LABEL(key, label) macro. In this way, jump labels become really easy to use: Define: struct jump_label_key jump_key; Can be used as: if (static_branch(&jump_key)) do unlikely code enable/disale via: jump_label_inc(&jump_key); jump_label_dec(&jump_key); that's it! For the jump labels disabled case, the static_branch() becomes an atomic_read(), and jump_label_inc()/dec() are simply atomic_inc(), atomic_dec() operations. We show testing results for this change below. Thanks to H. Peter Anvin for suggesting the 'static_branch()' construct. Since we now require a 'struct jump_label_key *key', we can store a pointer into the jump table addresses. In this way, we can enable/disable jump labels, in basically constant time. This change allows us to completely remove the previous hashtable scheme. Thanks to Peter Zijlstra for this re-write. Testing: I ran a series of 'tbench 20' runs 5 times (with reboots) for 3 configurations, where tracepoints were disabled. jump label configured in avg: 815.6 jump label *not* configured in (using atomic reads) avg: 800.1 jump label *not* configured in (regular reads) avg: 803.4 Signed-off-by: Peter Zijlstra LKML-Reference: <20110316212947.GA8792@redhat.com> Signed-off-by: Jason Baron Suggested-by: H. Peter Anvin Tested-by: David Daney Acked-by: Ralf Baechle Acked-by: David S. Miller Acked-by: Mathieu Desnoyers Signed-off-by: Steven Rostedt commit ee5e51f51be755830f57445e268ba50e88ccbdbb Author: Jiri Olsa Date: Fri Mar 25 12:05:18 2011 +0100 tracing: Avoid soft lockup in trace_pipe running following commands: # enable the binary option echo 1 > ./options/bin # disable context info option echo 0 > ./options/context-info # tracing only events echo 1 > ./events/enable cat trace_pipe plus forcing system to generate many tracing events, is causing lockup (in NON preemptive kernels) inside tracing_read_pipe function. The issue is also easily reproduced by running ltp stress test. (ftrace_stress_test.sh) The reasons are: - bin/hex/raw output functions for events are set to trace_nop_print function, which prints nothing and returns TRACE_TYPE_HANDLED value - LOST EVENT trace do not handle trace_seq overflow These reasons force the while loop in tracing_read_pipe function never to break. The attached patch fixies handling of lost event trace, and changes trace_nop_print to print minimal info, which is needed for the correct tracing_read_pipe processing. v2 changes: - omit the cond_resched changes by trace_nop_print changes - WARN changed to WARN_ONCE and added info to be able to find out the culprit v3 changes: - make more accurate patch comment Signed-off-by: Jiri Olsa LKML-Reference: <20110325110518.GC1922@jolsa.brq.redhat.com> Signed-off-by: Steven Rostedt commit 1813dc3776c22ad4b0294a6df8434b9a02c98109 Author: Steven Rostedt Date: Mon Mar 21 23:36:31 2011 -0400 tracing: Print trace_bprintk() formats for modules too The file debugfs/tracing/printk_formats maps the addresses to the formats that are used by trace_bprintk() so that userspace tools can read the buffer and be able to decode trace_bprintk events to get the format saved when reading the ring buffer directly. This is because trace_bprintk() does not store the format into the buffer, but just the address of the format, which is hidden in the kernel memory. But currently it only exports trace_bprintk()s from the kernel core and not for modules. The modules need their formats exported as well. Signed-off-by: Steven Rostedt commit 0588fa30db44fd2d4032b36a061c87478a43fbee Author: Steven Rostedt Date: Mon Mar 21 22:59:21 2011 -0400 tracing: Convert trace_printk() formats for module to const char * The trace_printk() formats for modules do not show up in the debugfs/tracing/printk_formats file. Only the formats that are for trace_printk()s that are in the kernel core. To facilitate the change to add trace_printk() formats from modules into that file as well, we need to convert the structure that holds the formats from char fmt[], into const char *fmt, and allocate them separately. Signed-off-by: Steven Rostedt commit 64d21fc194e12bdf7347019bf10325a4b3d77e7b Author: Rakib Mullick Date: Sat Apr 2 13:17:48 2011 +0600 x86, mpparse: Put check_slot() into .init section check_slot() is only called from replace_intsrc_all() - which is in the .init section. So, put check_slot into the .init section as well, so it can be freed after system boot. Signed-off-by: Rakib Mullick LKML-Reference: Signed-off-by: Ingo Molnar commit 7f5c6d4f665bb57a19a34ce1fb16cc708c04f219 Author: Eric Dumazet Date: Mon Apr 4 17:04:03 2011 +0200 netfilter: get rid of atomic ops in fast path We currently use a percpu spinlock to 'protect' rule bytes/packets counters, after various attempts to use RCU instead. Lately we added a seqlock so that get_counters() can run without blocking BH or 'writers'. But we really only need the seqcount in it. Spinlock itself is only locked by the current/owner cpu, so we can remove it completely. This cleanups api, using correct 'writer' vs 'reader' semantic. At replace time, the get_counters() call makes sure all cpus are done using the old table. Signed-off-by: Eric Dumazet Cc: Jan Engelhardt Signed-off-by: Patrick McHardy commit 9402efaa96e4c047dcc63ad5db65384c328aee5f Merge: 78fca1b9 711b8c8 Author: Ingo Molnar Date: Mon Apr 4 16:39:20 2011 +0200 Merge branch 'x86-mm' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into x86/mm commit 177525d26e31806d71653f74bbec13574b97892c Author: Andreas Mohr Date: Sun Apr 3 20:58:28 2011 +0200 eradicate bashisms in scripts/patch-kernel Silence a remaining annoying (or worse, irritating - "is my entire patched tree broken now!?") bashism-related message that occurs when /bin/sh is configured to instead deploy dash, a POSIX-compliant shell, as is the pretty much standard case on e.g. Debian. Current kernel version is 2.6.38 ( Flesh-Eating Bats with Fangs) ===> linux-2.6.38.patch-kernel_test/scripts/patch-kernel: line 253: [: =: unary operator expected <=== cannot find patch file: patch-2.6.39 Signed-off-by: Andreas Mohr Signed-off-by: Michal Marek commit d8e4f9aed82c68b60f81b2e7977c46868d51062f Author: Takashi Iwai Date: Mon Apr 4 12:43:23 2011 +0200 ALSA: core - Don't use "default' for default The card-id parser assigns the string "default" when no appropriate word is found in the card name. But this string may confuse the alsa-lib, so better to avoid. Use "Default" now instead. Signed-off-by: Takashi Iwai commit 2475b0d407614ea5a41b8325d45c614d94087088 Author: Torsten Schenk Date: Mon Apr 4 11:50:53 2011 +0200 ALSA: 6fire - Add support of digital-thru mixer Digital Thru mixer element added (device can act as converter optical<->coax) Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit b84610b95f7e7bcd1cd9ecf3e8506a59e9f557fd Author: Torsten Schenk Date: Mon Apr 4 11:49:57 2011 +0200 ALSA: 6fire - Improve firmware loader Firmware loader: magical device bytes check updated (accepts all device versions now and accepts possibly loaded firmware, if it is knowing to be working) Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit 58c54fa47f5de976959767fa8d9bb857eee4c4e5 Author: Torsten Schenk Date: Mon Apr 4 11:49:00 2011 +0200 ALSA: 6fire - Add support for S32_LE format Added support for sample format s32_le. Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit e220fa3bf503d63039fa8e0398a1c252d24663f9 Author: Torsten Schenk Date: Mon Apr 4 11:47:50 2011 +0200 ALSA: 6fire - Fix pcm rate assignment Completion of signedness bug for pcm_runtime.rate: variable will never get assigned a negative value now. Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit 78caf66cb568f2b0c63bf8f87cff2fe1583dd9d0 Author: Torsten Schenk Date: Mon Apr 4 11:45:28 2011 +0200 ALSA: 6fire - Update kernel configuration Kernel configuration updated: - experimental dependency removed - description updated Signed-off-by: Torsten Schenk Signed-off-by: Takashi Iwai commit 17fbb5bdfc93bc205e5f5d1e2b5b92fdfd694c68 Merge: cdccfc8 12ff414 Author: Takashi Iwai Date: Mon Apr 4 12:21:55 2011 +0200 Merge branch 'fix/misc' into topic/misc commit 43b3e1898206a1e385c9cb06f6040ea83a58b638 Author: Santosh Shilimkar Date: Mon Apr 4 09:32:46 2011 +0100 ARM: 6860/1: OMAP4: Move the privately used SMP boot functions to OMAP specific header. Header files in arch/arm/*/include/mach included from arch/arm/include/asm/*.h are there to provide necessary definitions for either the rest of the kernel or the ARM specific parts. They shouldn't be polluted with *any* platform private stuff which is not absolutely necessary to satisfy the rest of the kernel. Hence move the OMAP specific SMP boot functions to different header instead of keeping them in 'plat/smp.h' which gets included indirectly by linux/smp.h The patch is outcome of the discussion in below thread: http://www.spinics.net/lists/arm-kernel/msg120363.html Cc: Tony Lindgren Signed-off-by: Santosh Shilimkar Signed-off-by: Russell King commit 95b8fbada76d978ce13a26785f8b85ff54478bb2 Author: Jan Engelhardt Date: Sun Apr 3 13:31:06 2011 +0000 mISDN: fix "persistant" typo Signed-off-by: Jan Engelhardt Signed-off-by: David S. Miller commit a3232d2fa2e3cbab3e76d91cdae5890fee8a4034 Author: Eric Paris Date: Fri Apr 1 17:08:45 2011 -0400 capabilities: delete all CAP_INIT macros The CAP_INIT macros of INH, BSET, and EFF made sense at one point in time, but now days they aren't helping. Just open code the logic in the init_cred. Signed-off-by: Eric Paris Acked-by: David Howells Signed-off-by: James Morris commit 5163b583a036b103c3cec7171d6731c125773ed6 Author: Eric Paris Date: Fri Apr 1 17:08:39 2011 -0400 capabilities: delete unused cap_set_full unused code. Clean it up. Signed-off-by: Eric Paris Acked-by: David Howells Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit ffa8e59df047d57e812a04f7d6baf6a25c652c0c Author: Eric Paris Date: Fri Apr 1 17:08:34 2011 -0400 capabilities: do not drop CAP_SETPCAP from the initial task In olden' days of yore CAP_SETPCAP had special meaning for the init task. We actually have code to make sure that CAP_SETPCAP wasn't in pE of things using the init_cred. But CAP_SETPCAP isn't so special any more and we don't have a reason to special case dropping it for init or kthreads.... Signed-off-by: Eric Paris Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit 4bf2ea77dba76a22f49db3c10773896aaeeb8f66 Author: Eric Paris Date: Fri Apr 1 17:08:28 2011 -0400 capabilities: do not special case exec of init When the global init task is exec'd we have special case logic to make sure the pE is not reduced. There is no reason for this. If init wants to drop it's pE is should be allowed to do so. Remove this special logic. Signed-off-by: Eric Paris Acked-by: Serge Hallyn Acked-by: David Howells Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit 17f60a7da150fdd0cfb9756f86a262daa72c835f Author: Eric Paris Date: Fri Apr 1 17:07:50 2011 -0400 capabilites: allow the application of capability limits to usermode helpers There is no way to limit the capabilities of usermodehelpers. This problem reared its head recently when someone complained that any user with cap_net_admin was able to load arbitrary kernel modules, even though the user didn't have cap_sys_module. The reason is because the actual load is done by a usermode helper and those always have the full cap set. This patch addes new sysctls which allow us to bound the permissions of usermode helpers. /proc/sys/kernel/usermodehelper/bset /proc/sys/kernel/usermodehelper/inheritable You must have CAP_SYS_MODULE and CAP_SETPCAP to change these (changes are &= ONLY). When the kernel launches a usermodehelper it will do so with these as the bset and pI. -v2: make globals static create spinlock to protect globals -v3: require both CAP_SETPCAP and CAP_SYS_MODULE -v4: fix the typo s/CAP_SET_PCAP/CAP_SETPCAP/ because I didn't commit Signed-off-by: Eric Paris No-objection-from: Serge E. Hallyn Acked-by: David Howells Acked-by: Serge E. Hallyn Acked-by: Andrew G. Morgan Signed-off-by: James Morris commit 8f7b01a178b8e6a7b663a1bbaa1710756d67b69b Author: Eric Dumazet Date: Sun Apr 3 17:21:00 2011 -0700 xen: netfront: fix declaration order Must declare xennet_fix_features() and xennet_set_features() before using them. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 321fb561971ba0f10ce18c0f8a4b9fbfc7cef4b9 Author: Oleg Nesterov Date: Fri Apr 1 20:13:01 2011 +0200 ptrace: ptrace_check_attach() should not do s/STOPPED/TRACED/ After "ptrace: Clean transitions between TASK_STOPPED and TRACED" d79fdd6d96f46fabb779d86332e3677c6f5c2a4f, ptrace_check_attach() should never see a TASK_STOPPED tracee and s/STOPPED/TRACED/ is no longer legal. Add the warning. Note: ptrace_check_attach() can be greatly simplified, in particular it doesn't need tasklist. But I'd prefer another patch for that. Signed-off-by: Oleg Nesterov Signed-off-by: Tejun Heo commit ee77f075921730b2b465880f9fd4367003bdab39 Author: Oleg Nesterov Date: Fri Apr 1 20:12:38 2011 +0200 signal: Turn SIGNAL_STOP_DEQUEUED into GROUP_STOP_DEQUEUED This patch moves SIGNAL_STOP_DEQUEUED from signal_struct->flags to task_struct->group_stop, and thus makes it per-thread. Like SIGNAL_STOP_DEQUEUED, GROUP_STOP_DEQUEUED can be false-positive after return from get_signal_to_deliver(), this is fine. The only purpose of this bit is: we can drop ->siglock after __dequeue_signal() returns the sig_kernel_stop() signal and before we call do_signal_stop(), in this case we must not miss SIGCONT if it comes in between. But, unlike SIGNAL_STOP_DEQUEUED, GROUP_STOP_DEQUEUED can not be false-positive in do_signal_stop() if multiple threads dequeue the sig_kernel_stop() signal at the same time. Consider two threads T1 and T2, SIGTTIN has a hanlder. - T1 dequeues SIGTSTP and sets SIGNAL_STOP_DEQUEUED, then it drops ->siglock - SIGCONT comes and clears SIGNAL_STOP_DEQUEUED, SIGTSTP should be cancelled. - T2 dequeues SIGTTIN and sets SIGNAL_STOP_DEQUEUED again. Since we have a handler we should not stop, T2 returns to usermode to run the handler. - T1 continues, calls do_signal_stop() and wrongly starts the group stop because SIGNAL_STOP_DEQUEUED was restored in between. With or without this change: - we need to do something with ptrace_signal() which can return SIGSTOP, but this needs another discussion - SIGSTOP can be lost if it races with the mt exec, will be fixed later. Signed-off-by: Oleg Nesterov Signed-off-by: Tejun Heo commit 780006eac2fe7f4d2582da16a096e5a44c4767ff Author: Oleg Nesterov Date: Fri Apr 1 20:12:16 2011 +0200 signal: do_signal_stop: Remove the unneeded task_clear_group_stop_pending() PF_EXITING or TASK_STOPPED has already called task_participate_group_stop() and cleared its ->group_stop. No need to do task_clear_group_stop_pending() when we start the new group stop. Add a small comment to explain the !task_is_stopped() check. Note that this check is not exactly right and it can lead to unnecessary stop later if the thread is TASK_PTRACED. What we need is task_participated_in_group_stop(), this will be solved later. Signed-off-by: Oleg Nesterov Signed-off-by: Tejun Heo commit 1deac632fc3dcff33a6df3e82ef10c738ac13fe6 Author: Oleg Nesterov Date: Fri Apr 1 20:11:50 2011 +0200 signal: prepare_signal(SIGCONT) shouldn't play with TIF_SIGPENDING prepare_signal(SIGCONT) should never set TIF_SIGPENDING or wake up the TASK_INTERRUPTIBLE threads. We are going to call complete_signal() which should pick the right thread correctly. All we need is to wake up the TASK_STOPPED threads. If the task was stopped, it can't return to usermode without taking ->siglock. Otherwise we don't care, and the spurious TIF_SIGPENDING can't be useful. The comment says: * If there is a handler for SIGCONT, we must make * sure that no thread returns to user mode before * we post the signal It is not clear what this means. Probably, "when there's only a single thread" and this continues to be true. Otherwise, even if this SIGCONT is not private, with or without this change only one thread can dequeue SIGCONT, other threads can happily return to user mode before before that thread handles this signal. Note also that wake_up_state(t, __TASK_STOPPED) can't race with the task which changes its state, TASK_STOPPED state is protected by ->siglock as well. In short: when it comes to signal delivery, SIGCONT is the normal signal and does not need any special support. Signed-off-by: Oleg Nesterov Signed-off-by: Tejun Heo commit 6ea0c34dac89611126455537552cffe6c7e832ad Author: Mike Frysinger Date: Mon Apr 4 01:41:32 2011 +0200 percpu: Unify input section names The two percpu helper macros have the section names duplicated. So create a new define to merge the two. This also allows arches who need to link things more directly themselves to avoid duplicating the input sections in their linker script. Signed-off-by: Mike Frysinger Signed-off-by: Tejun Heo commit 711b8c87a5fe6de78e90411cb67b506babfef74a Author: Florian Mickler Date: Mon Apr 4 01:17:40 2011 +0200 x86-64, NUMA: Remove unused variable In case !CONFIG_ACPI_NUMA and !CONFIG_AMD_NUMA gcc emits a warning about the unused variable ret. As that variable is in fact not needed I choose to remove it. Signed-off-by: Florian Mickler LKML-Reference: <1301843624-22364-1-git-send-email-florian@mickler.org> Signed-off-by: Tejun Heo commit f6fcdc145679f5c86ff3fe587b060c9c3709d360 Merge: 04368d0 00b317a Author: Mark Brown Date: Sun Apr 3 22:12:15 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 04368d051a6aa90c14a3ca5a48f60aca2f6ecdd1 Author: Marek Vasut Date: Sat Apr 2 03:43:15 2011 +0200 ASoC: Properly handle spitz MIC GPIO This patch firstly restructurizes the code a bit by getting rid of continuous checking for machine type in spitz_mic_bias(). Then the patch properly requests the MIC GPIO in the spitz_init() and frees it in spitz_exit(). Signed-off-by: Marek Vasut Signed-off-by: Mark Brown commit 363618f013f2f11a1089b610748beb5de93b8630 Author: Stephen Warren Date: Fri Apr 1 14:50:43 2011 -0600 ASoC: Name jack GPIOs based on jack not codec snd_soc_jack_gpio has a name field. Use that name when registering the IRQ, since this is far more informative than the codec driver name. This shows up in /proc/interrupts. Signed-off-by: Stephen Warren Signed-off-by: Mark Brown commit f94f3cb37a1c4d44dd2070cc4a6165689bda9c92 Merge: e27808d 1b4610e Author: Mark Brown Date: Sun Apr 3 19:29:43 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 8a0427bb688eae86a8bb939b6a74e5aa00aa035a Author: Michał Mirosław Date: Sat Apr 2 22:49:12 2011 -0700 vlan: convert VLAN devices to use ndo_fix_features() Note: get_flags was actually broken, because it should return the flags capped with vlan_features. This is now done implicitly by limiting netdev->hw_features. RX checksumming offload control is (and was) broken, as there was no way before to say whether it's done for tagged packets. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 6cb6a27c45cec9184302c2e350b3593c64bc7f6c Author: Michał Mirosław Date: Sat Apr 2 22:48:47 2011 -0700 net: Call netdev_features_change() from netdev_update_features() Issue FEAT_CHANGE notification when features are changed by netdev_update_features(). This will allow changes made by extra constraints on e.g. MTU change to be properly propagated like changes via ethtool. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit e9403c8437cf3721e7901c1a8fcb06bb642a7e55 Author: Michał Mirosław Date: Fri Apr 1 20:58:37 2011 -0700 net: convert sunhme/sungem network drivers to hw_features Side effects: - TX offloads (HW csum, scatter-gather) can be toggled now - RX checksum is reported correctly now (it's always active) Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit a2c725fa39b79fcc3f09151e847cc006ff0d4389 Author: Michał Mirosław Date: Thu Mar 31 01:01:35 2011 +0000 veth: convert to hw_features This should probably get TSO available as it's basically a loopback device. Offloads are left disabled by default - as before. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit d7b576545648e487b2958c220542e111f5ac46f0 Author: Michał Mirosław Date: Thu Mar 31 01:01:35 2011 +0000 jme: convert offload constraints to ndo_fix_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit fb507934fd6faa00b3d833facb53b90c71ddc307 Author: Michał Mirosław Date: Thu Mar 31 01:01:35 2011 +0000 net: convert xen-netfront to hw_features Not tested in any way. The original code for offload setting seems broken as it resets the features on every netback reconnect. This will set GSO_ROBUST at device creation time (earlier than connect time). RX checksum offload is forced on - so advertise as it is. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 78e47fe4194ca7fac2cc29d25f1327db86922724 Author: Michał Mirosław Date: Fri Apr 1 20:56:23 2011 -0700 net: convert SMSC USB net drivers to hw_features There's a race (not fixed here) in smsc75xx in setting RFE_CTL that's not properly handled via rfe_ctl_lock. Spinlock is not a good tool here, as this has to wait for URB completion (or maybe just submission) after issuing register write request. Otherwise, the rfe_ctl might be changed just after spin_unlock() and device left programmed with other value. smsc95xx has increased hard_header_len for the case of TX checksumming. smsc75xx is fixed to advertise IP+IPV6_CSUM instead of HW_CSUM as it does not use csum_start/csum_offset. Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit 98e778c9aa4f4f75550fa3a31358304e4ce67b96 Author: Michał Mirosław Date: Thu Mar 31 01:01:35 2011 +0000 virtio_net: convert to hw_features Signed-off-by: Michał Mirosław Signed-off-by: David S. Miller commit ab3cf6d0f3d2daeef2101a2a97b6c0beee6b70cf Author: Ben Hutchings Date: Fri Apr 1 22:20:06 2011 +0100 sfc: Move test of rx_checksum_enabled from nic.c to rx.c This is preparation for using the generic netdev features interface, and should have no effect in itself. Signed-off-by: Ben Hutchings commit f50a3ec961f90e38c0311411179d5dfee1412192 Author: Kohei Kaigai Date: Fri Apr 1 15:39:26 2011 +0100 selinux: add type_transition with name extension support for selinuxfs The attached patch allows /selinux/create takes optional 4th argument to support TYPE_TRANSITION with name extension for userspace object managers. If 4th argument is not supplied, it shall perform as existing kernel. In fact, the regression test of SE-PostgreSQL works well on the patched kernel. Thanks, Signed-off-by: KaiGai Kohei [manually verify fuzz was not an issue, and it wasn't: eparis] Signed-off-by: Eric Paris commit 6bde95ce33e1c2ac9b5cb3d814722105131090ec Author: Eric Paris Date: Fri Apr 1 17:09:41 2011 -0400 SELinux: update git tree in MAINTAINERS update the git tree in MAINTAINERS Signed-off-by: Eric Paris commit c6ff669bac5c409f4cb74366248f51b73f7d6feb Author: David Teigland Date: Mon Mar 28 14:17:26 2011 -0500 dlm: delayed reply message warning Add an option (disabled by default) to print a warning message when a lock has been waiting a configurable amount of time for a reply message from another node. This is mainly for debugging. Signed-off-by: David Teigland commit 4d9fd0b72cd80624f9f5c6a4c69c503615bec370 Author: Florian Tobias Schandinat Date: Sat Mar 26 03:17:42 2011 +0000 viafb: delete clock and PLL initialization We do this also in the real program code so there is no reason to do it here too (and here it's hardly readable). Signed-off-by: Florian Tobias Schandinat commit e2142df7ec7184ed4a77ada686bc1eb41075490f Author: Kristen Carlson Accardi Date: Thu Mar 31 11:02:43 2011 -0700 intel_mid_dma: fix runtime pm issues Use the correct api in probe to enable runtime pm for this driver. Additionally, do not just call legacy suspend for runtime_suspend, as this duplicates some work the pci core does for you. Signed-off-by: Kristen Carlson Accardi Signed-off-by: Vinod Koul commit 3b16651f806d35b5c404f2525fbce76afa3c9297 Author: Tejun Heo Date: Fri Apr 1 11:15:12 2011 +0200 x86: Clean up memory model related configs in arch/x86/Kconfig * Remove bogus dependency on ARCH_SELECT_MEMORY_MODEL from ARCH_FLATMEM_ENABLE. ENABLE configs don't interfere with SELECT_MEMORY_MODEL. They just need to indicate whether the specific memory model is supported. * Relocate HAVE_ARCH_ALLOC_REMAP, ARCH_PROC_KCORE_TEXT and ARCH_SPARSEMEM_DEFAULT so that memory model related configs are together in consistent order. Signed-off-by: Tejun Heo Reviewed-by: Christoph Lameter Cc: Ingo Molnar Cc: Yinghai Lu Cc: "H. Peter Anvin" Cc: Thomas Gleixner commit 052936080c8fb2f791103995b21bd4018c8df886 Author: Tejun Heo Date: Fri Apr 1 11:15:12 2011 +0200 x86-64, NUMA: Remove custom phys_to_nid() implementation phys_to_nid() maps physical address to NUMA node id. This is implemented by building perfect hash in compute_hash_shift() during initialization. However, with SPARSE memory model, the nid is encoded in page flags. The perfect hash implementation was for DISCONTIG memory model which got removed years ago by b263295dbf (x86: 64-bit, make sparsemem vmemmap the only memory model). So, the perfect hash ends up being used only during initialization when the core SPARSE code already provides perfectly acceptable generic early_pfn_to_nid() implementation. Drop phys_to_nid() and use the generic ealry_pfn_to_nid() instead. Signed-off-by: Tejun Heo Reviewed-by: Christoph Lameter Acked-by: Yinghai Lu Cc: Ingo Molnar Cc: "H. Peter Anvin" Cc: Thomas Gleixner commit 1cb7b1e0de6a1f8f071f4a146e3d10f3a662f707 Author: Thomas Renninger Date: Thu Mar 31 13:36:38 2011 +0200 ACPI EC: remove dead code static void acpi_ec_gpe_query(void *ec_cxt); -> The function is right above this declaration -> not needed. poll_force is also not used, cleaned up in ec.c and its users: compal-laptop and msi-laptop. Signed-off-by: Thomas Renninger Signed-off-by: Len Brown commit 9b12c75bf4d58dd85c987ee7b6a4356fdc7c1222 Author: David S. Miller Date: Thu Mar 31 18:03:35 2011 -0700 net: Order ports in same order as addresses in flow objects. For consistency. Signed-off-by: David S. Miller commit fab0dc89f0d98459c6ce7fa27422949ac15837fa Author: Dmitry Kravkov Date: Thu Mar 31 17:04:22 2011 -0700 bnx2x, cnic: Disable iSCSI if DCBX negotiation is successful With current bnx2x firmware 6.2.9, iSCSI is not supported in DCB network, so we need to disable it. Add cnic command to disconnect iSCSI connections and prevent future connections when DCBX negotiation succeeds. Signed-off-by: Dmitry Kravkov Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 3b7f817e47bb66ae4d82ed73689a521af70a5410 Author: Dmitry Kravkov Date: Thu Mar 31 17:04:01 2011 -0700 bnx2x: don't write dcb/llfc fields in STORM memory We could get hardware attention during DCB/FCoE traffic without this fix. Signed-off-by: Dmitry Kravkov Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 96b8e1a0e96bd30ffb07e739b29b8c4c5759b93f Author: Dmitry Kravkov Date: Thu Mar 31 17:03:36 2011 -0700 bnx2x: Update firmware to 6.2.9 To fix bugs when running offloaded FCoE/iSCSI traffic in multiple Class of Service environments. In some scenarios, traffic could stop on certain rings and eventually all traffic would stop. Signed-off-by: Dmitry Kravkov Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 220b881a77eca96afdd6037dbca3441e8938228f Merge: 80a1e1d 6f5ef99 Author: Gustavo F. Padovan Date: Thu Mar 31 16:26:01 2011 -0300 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/padovan/bluetooth-2.6 commit 6f5ef998b7b0b1bf1471654bf6176a5419197128 Author: Thomas Gleixner Date: Thu Mar 24 20:16:42 2011 +0100 Bluetooth: Fix warning with hci_cmd_timer After we made debugobjects working again, we got the following: WARNING: at lib/debugobjects.c:262 debug_print_object+0x8e/0xb0() Hardware name: System Product Name ODEBUG: free active (active state 0) object type: timer_list hint: hci_cmd_timer+0x0/0x60 Pid: 2125, comm: dmsetup Tainted: G W 2.6.38-06707-gc62b389 #110375 Call Trace: [] warn_slowpath_common+0x7a/0xb0 [] warn_slowpath_fmt+0x46/0x50 [] debug_print_object+0x8e/0xb0 [] ? hci_cmd_timer+0x0/0x60 [] debug_check_no_obj_freed+0x125/0x230 [] ? check_object+0xb3/0x2b0 [] kfree+0x150/0x190 [] ? bt_host_release+0x16/0x20 [] bt_host_release+0x16/0x20 [] device_release+0x27/0xa0 [] kobject_release+0x4c/0xa0 [] ? kobject_release+0x0/0xa0 [] kref_put+0x36/0x70 [] kobject_put+0x27/0x60 [] put_device+0x17/0x20 [] hci_free_dev+0x29/0x30 [] vhci_release+0x36/0x70 [] fput+0xd6/0x1f0 [] filp_close+0x66/0x90 [] sys_close+0x99/0xf0 [] system_call_fastpath+0x16/0x1b That timer was introduced with commit 6bd32326cda(Bluetooth: Use proper timer for hci command timout) Timer seems to be running when the thing is closed. Removing the timer unconditionally fixes the problem. And yes, it needs to be fixed before the HCI_UP check. Signed-off-by: Thomas Gleixner Tested-by: Ingo Molnar Signed-off-by: Gustavo F. Padovan commit 34bd0273b631742e8d929c80e90cb7782105d8da Author: Andrei Emeltchenko Date: Thu Mar 24 17:16:08 2011 +0200 Bluetooth: delete hanging L2CAP channel Sometimes L2CAP connection remains hanging. Make sure that L2CAP channel is deleted. Signed-off-by: Andrei Emeltchenko Signed-off-by: Gustavo F. Padovan commit 08ba53824a7fb224085a0ff73eab213cab0197e9 Author: Johan Hedberg Date: Wed Mar 16 14:29:34 2011 +0200 Bluetooth: Fix missing hci_dev_lock_bh in user_confirm_reply The code was correctly calling _unlock at the end of the function but there was no actual _lock call anywhere. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 8693ac900e230c85d6fff428984a0f983330844d Author: Vinicius Costa Gomes Date: Mon Mar 14 18:20:33 2011 -0300 Bluetooth: Fix sending LE data over USB Now that we have support for LE connections, before discarding a frame we must check if there's a LE connection over that transport. Signed-off-by: Vinicius Costa Gomes Acked-by: Ville Tervo Signed-off-by: Gustavo F. Padovan commit 105721328f0fa53e772592eaca17ee0023f0cc87 Author: Gustavo F. Padovan Date: Wed Mar 16 15:36:29 2011 -0300 Bluetooth: Fix HCI_RESET command synchronization We can't send new commands before a cmd_complete for the HCI_RESET command shows up. Reported-by: Mikko Vinni Reported-by: Justin P. Mattock Reported-by: Ed Tomlinson Signed-off-by: Gustavo F. Padovan Tested-by: Justin P. Mattock Tested-by: Mikko Vinni Tested-by: Ed Tomlinson commit 23e9fde2b344c22c5176c7fd37b52c3776ef5aba Author: Suraj Sumangala Date: Wed Mar 9 14:44:05 2011 +0530 Bluetooth: Increment unacked_frames count only the first transmit This patch lets 'l2cap_pinfo.unacked_frames' be incremented only the first time a frame is transmitted. Previously it was being incremented for retransmitted packets too resulting the value to cross the transmit window size. Signed-off-by: Suraj Sumangala Signed-off-by: Gustavo F. Padovan commit 88d377b6c3c28ee54cd4c76bfe6e60f2d9bf6ae1 Author: Marc-Antoine Perennou Date: Thu Mar 24 14:51:21 2011 -0300 Bluetooth: add support for Apple MacBook Pro 8,2 Just adding the vendor details makes it work fine. Signed-off-by: Marc-Antoine Perennou Signed-off-by: Gustavo F. Padovan commit 80a1e1dbf62a08984d4c1bfb5a4bca38c3e1664f Author: Johan Hedberg Date: Mon Mar 28 14:07:23 2011 +0300 Bluetooth: Add local Extended Inquiry Response (EIR) support This patch adds automated creation of the local EIR data based on what 16-bit UUIDs are registered and what the device name is. This should cover the majority use cases, however things like 32/128-bit UUIDs, TX power and Device ID will need to be added later to be on par with what bluetoothd is capable of doing (without the Management interface). Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit e90165be9a4d6a1e8fa632fcae00a5294abd3981 Author: Andrei Emeltchenko Date: Fri Mar 25 11:31:41 2011 +0200 Bluetooth: check L2CAP info_rsp ident and state Information requests/responses are unbound to L2CAP channel. Patch fixes issue arising when two devices connects at the same time to each other. This way we do not process out of the context messages. We are safe dropping info_rsp since info_timer is left running. Signed-off-by: Andrei Emeltchenko Signed-off-by: Gustavo F. Padovan commit d1010240fa9aac93da56a683c1295e759ee69d10 Author: Gustavo F. Padovan Date: Fri Mar 25 00:39:48 2011 -0300 Bluetooth: Move bt_accept_enqueue() to outside __l2cap_chan_add bt_accept_enqueue() is not really a channel action, so do it outside. This patch is part of a set of patches to create an struct l2cap_chan to have a clear separation between the struct sock and the L2CAP channel stuff. Signed-off-by: Gustavo F. Padovan commit f3dd4f0f586b3a70734820b68c69985363e2d798 Author: Gustavo F. Padovan Date: Thu Mar 24 20:14:16 2011 -0300 Bluetooth: Remove unused struct l2cap_conn item Signed-off-by: Gustavo F. Padovan commit ce85ee13e6b5d078f4a6c3b02ba7cd0fa140c552 Author: Szymon Janc Date: Tue Mar 22 13:12:23 2011 +0100 Bluetooth: Enable support for out of band association model If remote side reports oob availability or we are pairing initiator use oob data for pairing if available. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 2763eda6ccaf126633bb3180f440c8f3589f0679 Author: Szymon Janc Date: Tue Mar 22 13:12:22 2011 +0100 Bluetooth: Add add/remove_remote_oob_data management commands This patch adds commands to add and remove remote OOB data to the managment interface. Remote data is stored in kernel and can be used by corresponding HCI commands and events when needed. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit c35938b2f56547ee77b5a038fe0db394aeac59bb Author: Szymon Janc Date: Tue Mar 22 13:12:21 2011 +0100 Bluetooth: Add read_local_oob_data management command This patch adds a command to read local OOB data to the managment interface. The command maps directly to the Read Local OOB Data HCI command. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 8fce6357a9e72c4c9c846f9951895954bfb34ad1 Author: Szymon Janc Date: Tue Mar 22 13:12:20 2011 +0100 Bluetooth: Allow for NULL data in mgmt_pending_add Since index is in mgmt_hdr it is possible to have mgmt command with no parameters that still needs to add itself to pending list. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit c68fb7ff29622a7db8264f939f94e37330c27080 Author: Szymon Janc Date: Tue Mar 22 13:12:19 2011 +0100 Bluetooth: Rename cmd to param in pending_cmd This field holds not whole command but only command specific parameters. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit e0e185efbad442a659657c152a9cd9b3fdcb43f2 Author: Szymon Janc Date: Mon Mar 21 14:20:05 2011 +0100 Bluetooth: Fix checkpatch error in cmtp.h Do not use C99 // comments. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit ffd13320aa96e07f3048ebdcc603aaf38bed0c47 Author: Szymon Janc Date: Mon Mar 21 14:20:04 2011 +0100 Bluetooth: Use #include instead of As warned by checkpatch.pl, use #include instead of Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 58aac468be411f2a9b4a28f2ed8e6e2a0db04267 Author: Szymon Janc Date: Mon Mar 21 14:20:03 2011 +0100 Bluetooth: Do not use assignments in IF conditions Fix checkpatch warnings concerning assignments in if conditions. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 17f09a7e4ec5dd6a0d96498da6bf78762fba4468 Author: Szymon Janc Date: Mon Mar 21 14:20:01 2011 +0100 Bluetooth: Fix checkpatch errors, code style issues and typos in hidp Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 8c20aa9ffc5a5ef52b6148e905671a8d12b40c87 Author: Szymon Janc Date: Mon Mar 21 14:19:59 2011 +0100 Bluetooth: Use #include instead of As warned by checkpatch.pl, use #include instead of Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 3aad75a128e2f2b8da31de1df4b9b9b4a8f65c66 Author: Szymon Janc Date: Mon Mar 21 14:19:58 2011 +0100 Bluetooth: Fix checkpatch errors and some code style issues in bnep Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit a3d9bd4c00f13defd4c0fdcf8b47f8764a69e54d Author: Szymon Janc Date: Mon Mar 21 14:19:57 2011 +0100 Bluetooth: Opencode macros in bnep/core.c BNEP_RX_TYPES and INCA macros have only one user each and don't provide any benefits compared to opencoding them. Signed-off-by: Szymon Janc Signed-off-by: Gustavo F. Padovan commit 2c6d1a2eec5c49793c6760546d05515ce1b76881 Author: Gustavo F. Padovan Date: Wed Mar 23 14:38:32 2011 -0300 Bluetooth: Improve error message on wrong link type Signed-off-by: Gustavo F. Padovan commit b0d2199d6ff9f788b324fe54b1f783aff83502c4 Author: Gustavo F. Padovan Date: Tue Mar 22 18:06:49 2011 -0300 Bluetooth: Remove unused struct item num in struct l2cap_chan_list isn't used anywhere. Signed-off-by: Gustavo F. Padovan commit b312b161ecb833b1bce5c4a97853f4a4f40c7901 Author: Johan Hedberg Date: Wed Mar 16 14:29:37 2011 +0200 Bluetooth: mgmt: Add support for setting the local name This patch adds a new set_local_name management command as well as a local_name_changed management event. With these user space can both change the local name as well as monitor changes to it by others. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit dc4fe30b8675033e538e2dea50be8af9c75f1b6a Author: Johan Hedberg Date: Wed Mar 16 14:29:36 2011 +0200 Bluetooth: mgmt: Add local name information to read_info reply This patch adds the name of the adapter to the reply of the read_info management command. The management messages reserve 249 bytes for the name instead of 248 (like in the HCI spec) so that there is always a guarantee that it is nul-terminated. That way it can safely be passed onto string manipulation functions. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit 1f6c6378c59f3ddac9ed89a68ccefe2611300c09 Author: Johan Hedberg Date: Wed Mar 16 14:29:35 2011 +0200 Bluetooth: Add define for the maximum name length on HCI level This patch adds a clear define for the maximum device name length in HCI messages and thereby avoids magic numbers in the code. Signed-off-by: Johan Hedberg Signed-off-by: Gustavo F. Padovan commit f0681a68dd3a32699891cd1de93459aee5af7728 Author: Gustavo F. Padovan Date: Wed Mar 16 21:06:52 2011 -0300 Bluetooth: remove unnecessary function declaration hci_notify() doesn't need declaration first. Signed-off-by: Gustavo F. Padovan commit c0951cbcfd7142003bc683046ef78a53c66d3265 Author: David S. Miller Date: Thu Mar 31 04:54:27 2011 -0700 ipv4: Use flowi4_init_output() in udp_sendmsg() Signed-off-by: David S. Miller commit 1bba6ffeeb44480ddbdda912cc85ad2cfd4725ae Author: David S. Miller Date: Thu Mar 31 04:54:08 2011 -0700 ipv4: Use flowi4_init_output() in cookie_v4_check() Signed-off-by: David S. Miller commit ef164ae3563bf4d291b6f75ca2e120b17d606963 Author: David S. Miller Date: Thu Mar 31 04:53:51 2011 -0700 ipv4: Use flowi4_init_output() in raw_sendmsg() Signed-off-by: David S. Miller commit 538de0e01f1ca3568ad03877ff297c646dd8ad23 Author: David S. Miller Date: Thu Mar 31 04:53:37 2011 -0700 ipv4: Use flowi4_init_output() in ip_send_reply() Signed-off-by: David S. Miller commit e79d9bc7ea76e08fc24d7adaad8b6a821d1624c3 Author: David S. Miller Date: Thu Mar 31 04:53:20 2011 -0700 ipv4: Use flowi4_init_output() in inet_connection_sock.c Signed-off-by: David S. Miller commit 94b92b88344641dbeadd2ef371549b7663a48fb1 Author: David S. Miller Date: Thu Mar 31 04:52:59 2011 -0700 ipv4: Use flowi4_init_output() in net/route.h Signed-off-by: David S. Miller commit 83229aa5e2c242163599266a686483e3b91ec07e Author: David S. Miller Date: Thu Mar 31 04:52:14 2011 -0700 net: Add helper flowi4_init_output(). On-stack initialization via assignment of flow structures are expensive because GCC emits a memset() to clear the entire structure out no matter what. Add a helper for ipv4 output flow key setup which we can use to avoid the memset. Signed-off-by: David S. Miller commit 8d1a7ed9d0ce3556a962a7472a3d09a8332d030a Author: Johannes Berg Date: Thu Mar 31 13:35:23 2011 +0200 CREDITS: update Johannes Berg's gpg key I've had a new key for almost two years and revoked the old one, but forgot to update it here. Signed-off-by: Johannes Berg Signed-off-by: Jiri Kosina commit 0a5c047507aaaf00519921336d19c0f8f5f9f363 Author: Eric Dumazet Date: Thu Mar 31 01:51:35 2011 -0700 fib: add __rcu annotations Add __rcu annotations and lockdep checks. Add const qualifiers node_parent() and node_parent_rcu() can use rcu_dereference_index_check() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 427cdf19b97e509e21e5d347e18d8b0b34723dfc Author: Coly Li Date: Sun Mar 27 01:26:54 2011 +0800 dma: use BUG_ON correctly in ppc4xx/adam.c, v4 This patch makes BUG_ON() usage correct in drivers/dma/ppc4xx/adam.c Cc: Vinod Koul Cc: Dan Williams Cc: Grant Likely Cc: Anatolij Gustschin Cc: Sean MacLennan Cc: Joe Perches Signed-off-by: Coly Li Signed-off-by: Vinod Koul commit 7912d30007d0c958bcf11cd5ce19f77856cf041b Author: Coly Li Date: Sun Mar 27 01:26:53 2011 +0800 dma: use BUG_ON correctly in mv_xor.c, v4 This patch makes BUG_ON() usage correct in drivers/dma/mv_xor.c Cc: Vinod Koul Cc: Dan Williams Signed-off-by: Coly Li Signed-off-by: Vinod Koul commit e2ec771a99a5cf231c9dea4da26238bf073e1e9c Author: Coly Li Date: Sun Mar 27 01:26:52 2011 +0800 dma: use BUG_ON correctly in iop-adma.c, v4 This patch makes BUG_ON() usage correct in drivers/dma/iop-adma.c. Cc: Dan Williams Cc: Vinod Koul Signed-off-by: Coly Li Signed-off-by: Vinod Koul commit 84adccfb8cd2a6b8237da6752668ba25cd90c20b Author: Viresh Kumar Date: Thu Mar 24 11:32:15 2011 +0530 dmaengine/dw_dmac fix: dwc_scan_descriptors must compare first desc address also with llp dwc_scan_descriptors scans all descriptors from active_list in case transfer is not completed. It compares first_desc->lli.llp, and then all childrens of its tx_list. But it doesn't compare its own address, i.e. first_desc->txd.phys, as this is what we have initially programmed into the controller register. So this causes dma to stop and finish a transfer, which was never started. And thus fail. Signed-off-by: Viresh Kumar Signed-off-by: Vinod Koul commit ab392d2d6d4e2e50502985eead545b44ee58802c Author: Javier Martinez Canillas Date: Mon Mar 28 16:27:31 2011 +0000 drivers/net: Remove IRQF_SAMPLE_RANDOM flag from network drivers The IRQF_SAMPLE_RANDOM flag is marked as deprecated and will be removed. Every input point to the kernel's entropy pool have to better document the type of entropy source it is. drivers/char/random.c now implements a set of interfaces that can be used for devices to collect enviromental noise. IRQF_SAMPLE_RANDOM will be replaced with these add_*_randomness exported functions. Network drivers are not a good source of entropy. They use as a source of entropy essentially a remote host. Which means that the source of entropy can be potentially controlled by an attacker. Also, with heavy workloads the entropy decreases due to less hardware interrupts happening thanks to irq mitigation and NAPI. If a system relies in its network interface as a entropy source it has a false sense of security. Systems that don't have devices whose drivers are good sources of entropy, should either use a hardware random number generator or feed the kernel's entropy pool from userspace using other sources of entropy such as EGD, video_entropyd, timer_entropyd and audio-entropyd. Signed-off-by: Javier Martinez Canillas Signed-off-by: David S. Miller commit b3abfbd2951102f5f5b8fe251a672e5223ac972b Author: Roopa Prabhu Date: Tue Mar 29 20:36:07 2011 +0000 enic: Add support for PORT_REQUEST_PREASSOCIATE_RR Current enic code only supports ASSOCIATE and DISASSOCIATE port profile operations. This patch adds enic support for port profile PORT_REQUEST_PREASSOCIATE_RR operation. The VIC adapter (8021qbh) is capable of handling port profile requests done in two steps namely PREASSOCIATE_RR and ASSOCIATE today. The motivation to support PREASSOCIATE_RR comes mainly from its use as an optimization during VM migration ie, to do resource reservation on destination host before resources on source host are released. PREASSOCIATE_RR is a VDP operation and according to the latest at IEEE, 8021qbh will also need to support VDP commands. In addition to handling the new PORT_REQUEST_PREASSOCIATE_RR operation this patch also does the below: - Introduces handlers for PORT_REQUEST operations - Moves most of the port profile handling code to new files enic_pp.[ch] - Uses new fw devcmds for port profile operations Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: Christian Benvenuti Signed-off-by: David S. Miller commit 756462f3434ec4807a61f884d59358092a03fc15 Author: Roopa Prabhu Date: Tue Mar 29 20:36:02 2011 +0000 enic: Cleanups in port profile helper code This patch does the following: - Introduces a new macro VIC_PROVINFO_ADD_TLV - Adds a new OS type in vic_generic_prov_os_type - Changes some vic_provinfo* helper routine args to constants Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: Christian Benvenuti Signed-off-by: David S. Miller commit 18714ff8de7a000e7642561cabaf8ace8d082e9f Author: Roopa Prabhu Date: Tue Mar 29 20:35:56 2011 +0000 enic: Add wrapper routines for new fw devcmds for port profile handling This patch adds wrapper routines to new port profile related fw devcmds and removes the old ones Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: Christian Benvenuti Signed-off-by: David S. Miller commit 9085fd09859fafbde17380b93d317a13c23c39af Author: Roopa Prabhu Date: Tue Mar 29 20:35:51 2011 +0000 enic: Add support for new fw devcmds for port profile handling This patch introduces new fw devcmds for port profile handling. These new commands are similar to the current fw commands for port profile handling. The only difference being that the new commands split the existing port profile handling devcmds into multiple fw commands, giving the driver finer control over port profile operations. Signed-off-by: Roopa Prabhu Signed-off-by: David Wang Signed-off-by: Christian Benvenuti Signed-off-by: David S. Miller commit 4562b2fe1ebc7c547746660f735ff9af964f28ad Author: Harvey Harrison Date: Mon Mar 28 17:08:59 2011 +0000 via-rhine: trivial sparse annotation in vlan_tci helper Noticed by sparse: drivers/net/via-rhine.c:1706:16: warning: cast to restricted __be16 Signed-off-by: Harvey Harrison Signed-off-by: David S. Miller commit 19eccc2bc6ad3b1c81d0826a77955500be972504 Author: Alexey Dobriyan Date: Sun Mar 27 02:58:35 2011 +0000 kstrtox: convert drivers/isdn/ Signed-off-by: Alexey Dobriyan Signed-off-by: David S. Miller commit dffc6b2432ea89af24a36e8100b3eeea09db67e5 Author: Joe Perches Date: Fri Mar 25 14:21:22 2011 +0000 smsc911x: Use pr_fmt, netdev_, and netif_ Use the more common/verbose logging styles. Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove smsc911x prefixes from format strings. Rename SMSC_WARNING to SMSC_WARN. Remove DPRINTK macro. Use netif_ in SMSC_ macros. Convert NETIF_MSG_ uses to lower case. Add no_printk verification in non-debug uses. Add pdata to SMSC_ uses to avoid hidden variable uses. Convert printks to netdev_ as appropriate. Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit e8c37c80006c99a00aa70a783023d616c166a04b Author: Sathya Perla Date: Mon Mar 21 20:49:29 2011 +0000 be2net: remove one useless line Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 0f4a682882171d81c9e3c33c1094b87a197c09fa Author: Sathya Perla Date: Mon Mar 21 20:49:28 2011 +0000 be2net: cancel be_worker in be_shutdown() even when i/f is down As the be_worker() workqueue is scheduled in be_probe() it must be canceled unconditionally in be_shutdown(). Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 16da8250df36547269d20a3d53daa11c79f59637 Author: Sathya Perla Date: Mon Mar 21 20:49:27 2011 +0000 be2net: remove redundant code in be_worker() Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 15d721847f56f32fe9fd43d34db1b32b13de78dc Author: Sathya Perla Date: Mon Mar 21 20:49:26 2011 +0000 be2net: parse vid and vtm fields of rx-compl only if vlanf bit is set Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit ac6a0c4aab16070d7d55f49a52de33f716ae1d3d Author: Sathya Perla Date: Mon Mar 21 20:49:25 2011 +0000 be2net: refactor code that decides adapter->num_rx_queues The code has been refactored to not set num_rx_qs inside be_enable_msix(). num_rx_qs is now set at the time of queue creation based on the number of available msix vectors. Signed-off-by: Sathya Perla Signed-off-by: David S. Miller commit 311fddc7569d7a3340d61de262cff11685060f74 Author: Somnath Kotur Date: Wed Mar 16 21:22:43 2011 +0000 be2net: Support for FAT dump retrieval using ethtool --register-dump option Signed-off-by: Somnath Kotur Signed-off-by: David S. Miller commit 01dc7fec4025f6bb72b6b98ec88b375346b6dbbb Author: hayeswang Date: Mon Mar 21 01:50:28 2011 +0000 net/r8169: support RTL8168E Support RTL8168E/RTL8111E. Signed-off-by: Hayes Wang Signed-off-by: David S. Miller commit 4804b3b3aec163b59328140d6c858c3ed1c85992 Author: hayeswang Date: Mon Mar 21 01:50:29 2011 +0000 net/r8169: add a new chip for RTL8168DP Add a new chip for RTL8168DP. Signed-off-by: Hayes Wang Signed-off-by: David S. Miller commit 36a0e6c2d6f3eb59b7a5ddfda63d252a42dba189 Author: hayeswang Date: Mon Mar 21 01:50:30 2011 +0000 net/r8169: add a new chip for RTL8105 Add a new chip for RTL8105 whose settings are the same with RTL_GIGA_MAC_VER_30. Signed-off-by: Hayes Wang Signed-off-by: David S. Miller commit 4e700bcdd89a5592a5a991bf3e78904de1140611 Merge: 6aba74f a84b50c Author: David S. Miller Date: Wed Mar 30 21:37:29 2011 -0700 Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 commit 3b8a4dd3ebfcc647260ad5c39ef4f73eb3a6b155 Author: Alek Du Date: Wed Mar 30 23:09:55 2011 +0800 spi/dw_spi: improve the interrupt mode with the batch ops leverage the performance gain by change in low level read/write batch operations Signed-off-by: Alek Du Signed-off-by: Feng Tang Signed-off-by: Grant Likely commit 2ff271bf6505038d8c937e73438ea3c80c387439 Author: Alek Du Date: Wed Mar 30 23:09:54 2011 +0800 spi/dw_spi: change poll mode transfer from byte ops to batch ops Current poll transfer will read/write one word, then wait till the hw is non-busy, it's not efficient. This patch will try to read/write as many words as permitted by hardware FIFO depth. Signed-off-by: Alek Du Signed-off-by: Feng Tang Signed-off-by: Grant Likely commit 8a33a373e5ffb6040c58ff41ea48ba21d5f8b5e9 Author: Alek Du Date: Wed Mar 30 23:09:53 2011 +0800 spi/dw_spi: remove the un-necessary flush() The flush() is used to drain all the left data in rx fifo, currently is is always called together with disabling hw. But from spec, disabling hw will also reset all the fifo, so flush() is not needed. Signed-off-by: Alek Du Signed-off-by: Feng Tang Signed-off-by: Grant Likely commit de6efe0a966cf86b3c4039a610b2d4157db707f2 Author: Feng Tang Date: Wed Mar 30 23:09:52 2011 +0800 spi/dw_spi: unify the low level read/write routines The original version has many duplicated codes for null/u8/u16 case, so unify them to make it cleaner Signed-off-by: Feng Tang Signed-off-by: Grant Likely commit cfc64fd91fabed099a4c3df58559f4b7efe9bcce Author: Xiaochen Wang Date: Thu Mar 31 00:27:32 2011 +0900 tomoyo: fix memory leak in tomoyo_commit_ok() When memory used for policy exceeds the quota, tomoyo_memory_ok() return false. In this case, tomoyo_commit_ok() must call kfree() before returning NULL. This bug exists since 2.6.35. Signed-off-by: Xiaochen Wang Acked-by: Tetsuo Handa Signed-off-by: James Morris commit 86ef925f45d384d7d255859da3962ae19b24e228 Author: Joe Perches Date: Thu Mar 31 00:19:19 2011 +0200 MAINTAINERS: Add "K:" pattern for trivial Since scripts/get_maintainer.pl was updated to search content before the patch by commit 7764dcb ("get_maintainer.pl: allow "K:" pattern tests to match non-patch text") perhaps this might direct a few more patches the right place. Original-patch-by: L. Alberto Gim?nez Signed-off-by: Joe Perches Signed-off-by: Andrew Morton Signed-off-by: Jiri Kosina commit e27808df97ff7b43b4927aadf410705f33313523 Author: Lu Guanqun Date: Wed Mar 30 21:53:17 2011 +0800 ASoC: Use data based init for sn95031 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b63c963da21d05f40f20de0a586143922bfa19d9 Author: Lu Guanqun Date: Wed Mar 30 21:53:07 2011 +0800 ASoC: Use data based init for ak4535 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a7dca707a73ca700124e04372fc91334d898e6a6 Author: Lu Guanqun Date: Wed Mar 30 21:53:16 2011 +0800 ASoC: Use data based init for tlv320aic23 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 203140006173ec1df42a05d8eb7051d82eb61c25 Author: Lu Guanqun Date: Wed Mar 30 21:53:15 2011 +0800 ASoC: Use data based init for wm8711 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8428edf96ebb9e8c8a5bec257568101b6ba01dc3 Author: Lu Guanqun Date: Wed Mar 30 21:53:14 2011 +0800 ASoC: Use data based init for wm8728 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 97a58d6e1ba74c6c3663b50960a521c54c2f3c90 Author: Lu Guanqun Date: Wed Mar 30 21:53:13 2011 +0800 ASoC: Use data based init for wm9705 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 983347785bb3807c125e7c00f31790ed11c231fc Author: Lu Guanqun Date: Wed Mar 30 21:53:12 2011 +0800 ASoC: Use data based init for wm9712 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 7ad7dd125ae936719205672565ef48df018731c4 Author: Lu Guanqun Date: Wed Mar 30 21:53:11 2011 +0800 ASoC: Use data based init for wm9713 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit dc6fc49b141ed14256e1319ccb9797e9825f1734 Author: Lu Guanqun Date: Wed Mar 30 21:53:10 2011 +0800 ASoC: Use data based init for max98088 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 51fb1a8704f6bccfcf5248f9edc2751c272fbdf2 Author: Lu Guanqun Date: Wed Mar 30 21:53:09 2011 +0800 ASoC: Use data based init for cx20442 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fc3b9230cc2cdbcbef37953fe8cf5af0977e7a95 Author: Lu Guanqun Date: Wed Mar 30 21:53:08 2011 +0800 ASoC: Use data based init for ak4671 DAPM Signed-off-by: Lu Guanqun Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f20eda5d8fafe35ca3c63ec8149a700a7db228a5 Author: Dimitris Papastamos Date: Mon Mar 28 11:39:15 2011 +0100 ASoC: soc-cache: Warn on syncing any non-writable registers When syncing the cache, if the driver has given us a writable_register() callback, use it to check if we are syncing a non-writable register and if so warn the user. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit fbda18245beff52ec1edf096e7a77d4cdf3effb9 Author: Dimitris Papastamos Date: Mon Mar 28 11:39:14 2011 +0100 ASoC: soc-cache: Fix indentation issues Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 176fcc5c5f0131504a55e1e1d35389c49a9177c2 Author: Arnaldo Carvalho de Melo Date: Wed Mar 30 15:30:43 2011 -0300 perf script: Add more documentation about the -f/--fields parameters Using the commit log for 2c9e45f. Cc: David Ahern Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: Signed-off-by: Arnaldo Carvalho de Melo commit 83860c594f65945b1a2c99e84338e1145cd34890 Author: Felix Fietkau Date: Wed Mar 23 20:57:33 2011 +0100 ath9k_hw: remove pCap->tx_triglevel_max It has the same purpose (and value) as ah->config.max_txtrig_level Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 340d0ea774d4ff0038a068e14340b59c5a1fce2c Author: Felix Fietkau Date: Wed Mar 23 20:57:32 2011 +0100 ath9k_hw: remove ATH9K_HW_CAP_ENHANCEDPM It is not used anywhere Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6de12a1bcef0145436e815d30a3d48b9fadb199d Author: Felix Fietkau Date: Wed Mar 23 20:57:31 2011 +0100 ath9k_hw: remove pCap->keycache_size Similar to the number of tx queue, the number of keycache entries depends on the chip and shouldn't be messed with based on EEPROM data. Remove this field and stick to using AR_KEYTABLE_SIZE Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit c429bdcf8fe033f04830a960e07c13a01f631499 Author: Felix Fietkau Date: Wed Mar 23 20:57:30 2011 +0100 ath9k_hw: remove pCap->reg_cap It is not used anywhere and seems pointless Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 0db156e9648e69c34e8e88328358a26611fd71e3 Author: Felix Fietkau Date: Wed Mar 23 20:57:29 2011 +0100 ath9k_hw: remove ah->config.ht_enable It is only used in one place, and the device id check that it's based on can be moved there as well. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f4c607dc53ece4ac15afed163292425efa060775 Author: Felix Fietkau Date: Wed Mar 23 20:57:28 2011 +0100 ath9k_hw: remove pCap->total_queues The EEPROM contains a field that can restrict the number of hardware queues, however this is not only useless (all the known chips contain the same number of hardware queues), but also potentially dangerous in case of a misprogrammed EEPROM (could trigger driver crashes), so let's just ignore it completely. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit a9b6b2569cf107fe541381e82faa0a3c47a9a7fd Author: Felix Fietkau Date: Wed Mar 23 20:57:27 2011 +0100 ath9k_hw: turn a few big macros into functions RF_BANK_SETUP, REG_WRITE_RF_ARRAY and REG_WRITE_ARRAY are way too big, so they shouldn't be inlined at every single callsite, especially since they can easily be turned into real functions. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ca7a4deb4a1a87dbdc6e7cab0d1022a535204226 Author: Felix Fietkau Date: Wed Mar 23 20:57:26 2011 +0100 ath9k_hw: replace REG_READ+REG_WRITE with REG_RMW It's easier to read and it slightly decreases code size Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 845e03c93dda2c00ffb5c68a1f7c8efc412d7c1a Author: Felix Fietkau Date: Wed Mar 23 20:57:25 2011 +0100 ath9k_hw: add a new register op for read-mask-write Reduces the number of calls to register ops. On MIPS this reduces the ath9k_hw binary size from 321k down to 310k Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f9f84e96f6d642aa7b337c22cbb7d6f936039fda Author: Felix Fietkau Date: Wed Mar 23 20:57:24 2011 +0100 ath9k_hw: embed the ath_ops callbacks in the ath_hw struct With this change, loading the address to a register read/write function costs only one pointer dereference instead of two. On MIPS this reduces ath9k_hw binary size from 326k down to 321k. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit ec15e68ba6a505631016f230899bafbb7b8cd0d6 Author: Jouni Malinen Date: Wed Mar 23 15:29:52 2011 +0200 cfg80211: Add nl80211 event for deletion of a station entry Indicate an NL80211_CMD_DEL_STATION event when a station entry in mac80211 is deleted to match with the NL80211_CMD_NEW_STATION event that is used when the entry was added. This is needed, e.g., to allow user space to remove a peer from RSN IBSS Authenticator state machine to avoid re-authentication and re-keying delays when the peer is not reachable anymore. Signed-off-by: Jouni Malinen Reviewed-by: Johannes Berg Signed-off-by: John W. Linville commit cfdc9a8bb8d90c6aa212a5a881862599673c443d Author: Jouni Malinen Date: Wed Mar 23 14:52:19 2011 +0200 ath9k: Support RSN IBSS Add support for using RSN IBSS with ath9k. For now, this uses software crypto for group addressed frames in RSN IBSS, but that may be optimized in the future by extending the key cache design to support per-STA RX GTK. Signed-off-by: Jouni Malinen Signed-off-by: John W. Linville commit c944daf46a8cfa50d6c1f54d4842180d0384c594 Author: Felix Fietkau Date: Tue Mar 22 21:54:19 2011 +0100 ath9k: fix stuck beacon detection Stuck beacon detection is supposed to trigger when 9 consecutive beacons could not be sent by the hardware. When the driver runs only one active AP mode interface, it still configures the hardware beacon timer for 4 (ATH_BCBUF) beacon slots slots, which causes stuck beacon detection to be reset if ath9k_hw_stoptxdma clears the stuck frames between SWBA intervals. Fix this by not resetting the missed beacon count for empty slots and multiplying the threshold not by the maximum number of beacon slots but by the configured number of beacon interfaces. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 87c510fe2d4f193cd4eb518364a2dfa5059b1218 Author: Felix Fietkau Date: Tue Mar 22 21:54:18 2011 +0100 ath9k: trigger nfcal only after multiple missed beacons in AP mode Single missed (i.e. not transmitted) beacons in AP mode are not very rare and not necessarily an indicator of strong interference, so only trigger noise floor recalibration when multiple consecutive beacons could not be transmitted. Signed-off-by: John W. Linville commit dd347f2fb2ddb20a80e9a8285252bf208ab91398 Author: Felix Fietkau Date: Tue Mar 22 21:54:17 2011 +0100 ath9k: fix beacon timer handling issues AP mode beacon timers in ath9k are configured in milliseconds, which breaks when increasing ATH_BCBUF to 8 instead of 4 (due to rounding errors). Since the hardware timers are actually configured in microseconds, it's better to let the driver use that unit directly. To be able to do that, the beacon interval parameter abuse for passing certain flags needs to be removed. This is easy to do, because those flags are completely unnecessary anyway. ATH9K_BEACON_ENA is ignored, ATH9K_BEACON_RESET_TSF can be replaced with calling ath9k_hw_reset_tsf from the driver directly. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f39de992540cf68cc865498242f963f70f7e97b3 Author: Vasily Khoruzhick Date: Wed Mar 16 16:41:46 2011 +0200 libertas_spi: Add support for suspend/resume Add support for suspend/resume in if_spi. Signed-off-by: Vasily Khoruzhick Acked-by: Dan Williams Signed-off-by: John W. Linville commit 5e6e3a92b9a4c9416b17f468fa5c7fa2233b8b4e Author: Bing Zhao Date: Mon Mar 21 18:00:50 2011 -0700 wireless: mwifiex: initial commit for Marvell mwifiex driver This driver adds WiFi support for Marvell 802.11n based chipsets with SDIO interface. Currently only SD8787 is supported. More chipsets will be supported later. drivers/net/wireless/mwifiex/ Signed-off-by: Nishant Sarmukadam Signed-off-by: Amitkumar Karwar Signed-off-by: Kiran Divekar Signed-off-by: Bing Zhao Signed-off-by: Yogesh Ashok Powar Signed-off-by: Marc Yang Signed-off-by: Ramesh Radhakrishnan Signed-off-by: Frank Huang Signed-off-by: John W. Linville commit 903946e6e21ef4dd678acafb8881cabde9182caf Author: Luis R. Rodriguez Date: Mon Mar 21 17:27:35 2011 -0700 ath9k_hw: remove AR9485 1.0 support Only AR9485 1.1 was sold. This debloats the driver by ~14 KiB. text data bss dec hex filename 300413 624 1056 302093 49c0d drivers/net/wireless/ath/ath9k/ath9k_hw.ko text data bss dec hex filename 310285 624 1056 311965 4c29d drivers/net/wireless/ath/ath9k/ath9k_hw-old.ko $ du -b ath9k_hw* 6210541 ath9k_hw.ko 6225089 ath9k_hw-old.ko Cc: Bill Wu Cc: Paul Shaw Cc: Forbes Tsai Cc: Jesmine Chen Cc: Marvian Chen Cc: Vivek Natarajan Cc: Bernadette Yetso Cc: Sarvesh Shrivastava Acked-by: Yi-Chen Su Acked-by: Jeffrey Chung Signed-off-by: Luis R. Rodriguez Signed-off-by: John W. Linville commit be7974aa105dc47bb25013016d1fcad17da17783 Author: Helmut Schaa Date: Mon Mar 21 15:07:55 2011 +0100 mac80211: Minor optimization in tx status handling ieee80211_tx_status iterates over all tx rates the driver reports back in order to 1) mark tx rates as invalid if the driver cannot have tried that rate 2) find the actually used tx rate for the final retransmission By leaving the for loop when the first invalid rate index is found we can move the rates_idx assignment after the loop and therefore save a few assignments and conditionals. Signed-off-by: Helmut Schaa Signed-off-by: John W. Linville commit a9cbe96d19861755680a712b709cccac5dc6aca8 Author: Felix Fietkau Date: Sat Mar 19 13:55:43 2011 +0100 ath9k: remove the pending frames ath_txq_schedule workaround This workaround called ath_txq_schedule whenever there were still pending frames for a queue, but the queue depth was zero. Because of its its high false positive probability (e.g. with paused TIDs) and because it is in the way of other pending work (AP powersave fixes), it is better to remove this code entirely. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 598cdd5246ea158310942699e5008ac7f687ad62 Author: Felix Fietkau Date: Sat Mar 19 13:55:42 2011 +0100 ath9k_hw: force rx chainmask to 7 on AR9100 Most AR9100 devices already have a chainmask of 7 (three antennas), however on the ones that don't (rx and tx chainmask set to 5), problems with IQ mismatch calibration have been observed. This shows up as tx queue hangs (and subsequent hardware resets) if traffic is sent during this type of calibration. Forcing the rx chainmask to 7 fixes the calibration issues with no apparent negative side effects on throughput and stability. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit f171760c558946c7a2e0ee310dfb968f9d4853c6 Author: Felix Fietkau Date: Sat Mar 19 13:55:41 2011 +0100 ath9k_hw: enable a BlockAck related fixup specific to AR9100 Fixes interop issues with aggregation in combination with multi-BSSID Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6de66dd963ddd669667a81a2401f2fd6472ff55c Author: Felix Fietkau Date: Sat Mar 19 13:55:40 2011 +0100 ath9k: add support for overriding LED pin and GPIO settings from platform data Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 6fb1b1e18fe3d141c54182c5d5b3af823bed455f Author: Felix Fietkau Date: Sat Mar 19 13:55:39 2011 +0100 ath9k: add support for overriding the MAC address through platform data On some devices the correct MAC address is not in the EEPROM data, but stored somewhere else. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 691680b8335fa8995b190676f53e3bcef6477b4a Author: Felix Fietkau Date: Sat Mar 19 13:55:38 2011 +0100 ath9k: add an interface for overriding the value of specific GPIO pins Some devices control antenna settings or other things through GPIO pins of the wireless interface. Add a debugfs interface for changing those and keeping them set across card resets. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit c70cab1a45d56395db03957f6504c6b613bece5b Author: Felix Fietkau Date: Sat Mar 19 13:55:37 2011 +0100 ath9k: remove unnecessary debugfs return code checks Since the ath9k debugfs directory is cleaned up by debugfs_remove_recursive, there's no point in checking the return code of every single debugfs create line. Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville commit 716b1bf3c5040f2303d6d1d0dfee6d8851cedc9d Author: Larry Finger Date: Thu Mar 17 21:53:01 2011 -0500 rtlwifi: rtl8192c{e,u}: Remove some extraneous casts on memcpy commands Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit a0e7c6cfe2a04af450274638845802b5c384e8df Author: Nishant Sarmukadam Date: Thu Mar 17 11:58:49 2011 -0700 mwl8k: Queue ADDBA requests in respective data queues Queue ADDBA requests in respective data queues to avoid ADDBA requests and the the related data packets (to the same ra/tid) queued in the hardware to be sent out asynchronously. Signed-off-by: Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 170335432ad36584a6d24fc1fd903024d221ef55 Author: Nishant Sarmukadam Date: Thu Mar 17 11:58:48 2011 -0700 mwl8k: Check outgoing rate for a station to decide if ampdu can be created If the outgoing packet rate to a particular HT station is <=6.5 Mbps, do not attempt to create an ampdu. Also, if the outgoing rate is legacy rate, do not create an ampdu. Signed-off-by: Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 3aefc37ee789188f0d4488cae04ff618f4c4ddf6 Author: Nishant Sarmukadam Date: Thu Mar 17 11:58:47 2011 -0700 mwl8k: Handle the watchdog event from the firmware When an ampdu stream is on, if the firmware rate adaptation logic decides that the outgoing packet rate to the station needs to go below 6.5Mbps (non HT rate), it sends an event indicating that the ampdu stream needs to be destroyed. Handle this event in the driver and destroy the ampdu stream so that the rate can go below 6.5Mbps Signed-off-by: Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 65f3ddcd08fe24490359274a8c9bf526e81357a5 Author: Nishant Sarmukadam Date: Thu Mar 17 11:58:46 2011 -0700 mwl8k: Initiate BA sessions Specifically, handle ampdu_action and attempt to start a BA session on receiving the first qos packet from mac80211 for transmission to a HT sta. While the BA session is being created, all the packets belonging to that stream will be dropped to prevent sequence number mismatch at the recipient. Contains contributions from: Yogesh Powar Pradeep Nemavat Brian Cavagnolo Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit ac109fd0427008e5b55e0e52e59c364de6d686fe Author: Brian Cavagnolo Date: Thu Mar 17 11:58:45 2011 -0700 mwl8k: add internal API for managing AMPDU streams In particular, we can now add, start, lookup, and remove streams. Based on work by Nishant Sarmukadam and Pradeep Nemavat . Signed-off-by: Pradeep Nemavat Signed-off-by: Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit e600707b021efdc109e7becd467798da339ec26d Author: Brian Cavagnolo Date: Thu Mar 17 11:58:44 2011 -0700 mwl8k: differentiate between WMM queues and AMPDU queues We now have two different kinds of queues. And the number of AMPDU queues may vary. So we must be clear about which queues we are dealing with. Note that when we report the number of queues to mac80211, we only report the WMM queues. Based on work by Yogesh Powar . Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 5faa1aff08ef8d82b98ac2dfd7beb62ae6eda5e5 Author: Nishant Sarmukadam Date: Thu Mar 17 11:58:43 2011 -0700 mwl8k: add support for block ack commands Signed-off-by: Pradeep Nemavat Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 8a7a578c2e3ac463a17fe30b11ada0509658a952 Author: Brian Cavagnolo Date: Thu Mar 17 11:58:42 2011 -0700 mwl8k: update to ap firmware API version 2 Firmware APIv2 adds the following enhancements: -- capabilities are reported by the firmware -- API supports up to 8 dedicated AMPDU streams -- optional packet timestamping and expiration can be enabled. Specifically, packets that are queued in firmware for longer than 500ms will be dropped if this option is used. Based on work by "Nishant Sarmukadam" Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit 73b46320209e9fe0d65aba1b8c21489278047574 Author: Brian Cavagnolo Date: Thu Mar 17 11:58:41 2011 -0700 mwl8k: refactor in preparation for APIv2 update Specifically, APIv2 will specify a variable number of AMPDU queues in the MWL8K_CMD_GET_HW_SPEC. So init the tx queues after MWL8K_CMD_GET_HW_SPEC for ap fw. Also, we make it safe to deinit queues that have not been init'd. This happens if the mwl8k_get_hw_spec_ap routine fails, for example. Signed-off-by: Nishant Sarmukadam Signed-off-by: Brian Cavagnolo Signed-off-by: John W. Linville commit c835b21405fa551cd5af2c7bfe1c3ae129c5f8ef Author: Johannes Berg Date: Tue Mar 15 23:17:01 2011 +0100 mac80211: add comment about reordering Took me a minute to figure this out, maybe it's better documented... Signed-off-by: Johannes Berg Signed-off-by: John W. Linville commit e7fc63388def06d2d1bdb6916748c92c037a42c6 Author: Rajkumar Manoharan Date: Tue Mar 15 23:11:35 2011 +0530 ath9k_hw: Speedup register ops for HTC driver Fine-tuning register write operation and avoid unnecessay delays for ath9k_htc driver, saves hw reset time which improves scanning time and also solves one of the following scenario. Sometimes the ACK is sent by STA for assoc response is not seen at AP side. So the AP continues to send retry assoc responses. At the STA side, since the assoc response was already forwarded to mac80211, it proceeded to channel change which in turns does chip reset. In most of the cases the chip reset was completed before max retries are reached at AP side. Hence STA can able to ACK the retried frames again. But in clear environment these retries are completed within shortspan of time. Since ath9k_htc consumes more time for hw reset, this latency is causing dissociation by AP due to max reties are reached. This issue was originally reported with Cisco Aironet 1250 AP in HT40 mode in noise free environment. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit b0a9ede228175c25f76314a028d305fd5b2de427 Author: Rajkumar Manoharan Date: Tue Mar 15 19:55:38 2011 +0530 ath: Speedup key set/reset ops for HTC driver By enabling buffered register write for ath9k_htc driver avoids unnecessary dissociation while rekeying phase under heavy traffic exchange. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 81544026e4cecb85a8b727d5f64cb3c8a8cb64a3 Author: Rajkumar Manoharan Date: Tue Mar 15 19:55:36 2011 +0530 ath9k_hw: Fix throughput drops in HT40 mode for AR9287 chips Doing adc gain calibration for AR9287 chips is causing throughput drops in HT40 mode. Remove ADC Gain from supported calibration list. Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 6d64ab7f9240e3201fde3fd16ce4227bd795d2ab Author: Rajkumar Manoharan Date: Tue Mar 15 19:55:35 2011 +0530 ath9k_htc: Fix LED pin for AR9287 HTC device Signed-off-by: Rajkumar Manoharan Signed-off-by: John W. Linville commit 22dd2fd283ea96b4d45185d3e861ef46005082f4 Author: Dan Carpenter Date: Tue Mar 15 10:03:24 2011 +0300 iwlwifi: remove duplicate initialization in __iwl_down() We initialize exit_pending twice. It's the second initialization which is correct. That was added in d745d472af "iwlwifi: cancel scan when down the device". Signed-off-by: Dan Carpenter Acked-by: Wey-Yi Guy Signed-off-by: John W. Linville commit 2c9e45f7a287384e1382932597e41a9a567811ba Author: David Ahern Date: Thu Mar 17 10:03:21 2011 -0600 perf script: If type not given fields apply to all event types Allow: perf script -f to be equivalent to: perf script -f trace: -f sw: -f hw: i.e., the specified fields apply to all event types if the type string is not given. The field (-f) arguments are processed in the order received. A later usage can reset a prior request. e.g., -f trace: -f comm,tid,time,sym The first -f suppresses trace events (field list is ""), but then the second invocation sets the fields to comm,tid,time,sym. In this case a warning is given to the user: "Overriding previous field request for all events." Alternativey, consider the order: -f comm,tid,time,sym -f trace: The first -f sets the fields for all events and the second -f suppresses trace events. The user is given a warning message about the override, and the result of the above is that only S/W and H/W events are displayed with the given fields. For the 'wildcard' option if a user selected field is invalid for an event type, a message is displayed to the user that the option is ignored for that type. For example: perf script -f comm,tid,trace 2>&1 | less 'trace' not valid for hardware events. Ignoring. 'trace' not valid for software events. Ignoring. Alternatively, if the type is given an invalid field is specified it is an error. For example: perf script -v -f sw:comm,tid,trace 2>&1 | less 'trace' not valid for software events. At this point usage is displayed, and perf-script exits. Finally, a user may not set fields to none for all event types. i.e., -f "" is not allowed. Cc: Frederic Weisbecker Cc: Ingo Molnar Cc: Paul Mackerras Cc: Peter Zijlstra Cc: linux-kernel@vger.kernel.org LPU-Reference: <1300377801-27246-1-git-send-email-daahern@cisco.com> Signed-off-by: David Ahern Signed-off-by: Arnaldo Carvalho de Melo commit 09ca132a8e469f87504899b4016c7517511887d0 Author: Daniel Kiper Date: Mon Mar 28 11:35:59 2011 +0200 xen/balloon: Move dec_totalhigh_pages() from __balloon_append() to balloon_append() git commit 9be4d4575906af9698de660e477f949a076c87e1 (xen: add extra pages to balloon) splited balloon_append() into two functions (balloon_append() and __balloon_append()) and left decrementation of totalram_pages counter in __balloon_append(). In this situation if __balloon_append() is called on i386 with highmem page referenced then totalhigh_pages is decremented, however, it should not. This patch corrects that issue and moves dec_totalhigh_pages() from __balloon_append() to balloon_append(). Now totalram_pages and totalhigh_pages are decremented simultaneously only when balloon_append() is called. Acked-by: Ian Campbell Acked-by: Daniel De Graaf Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 83be7e52d46a5b3a9955a38a9597bf1de1851ea7 Author: Daniel Kiper Date: Mon Mar 28 11:34:10 2011 +0200 xen/balloon: Clarify credit calculation Move credit calculation to current_target() and rename it to current_credit(). Acked-by: Ian Campbell Acked-by: Daniel De Graaf Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 4dfe22f5f24345511c378272189b7504d67767fb Author: Daniel Kiper Date: Mon Mar 28 11:33:18 2011 +0200 xen/balloon: Simplify HVM integration Simplify HVM integration proposed by Stefano Stabellini in 53d5522cad291a0e93a385e0594b6aea6b54a071. Acked-by: Ian Campbell Acked-by: Daniel De Graaf Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit a7f3c8f1da1050ad778c3a3930f07c63a5ec570b Author: Daniel Kiper Date: Mon Mar 28 11:32:31 2011 +0200 xen/balloon: Use PageHighMem() for high memory page detection Replace pfn < max_low_pfn by !PageHighMem() in increase_reservation(). It makes more clearer what is going on. Acked-by: Ian Campbell Acked-by: Daniel De Graaf Signed-off-by: Daniel Kiper Signed-off-by: Konrad Rzeszutek Wilk commit 3f8acea307abfbecf0dca8793c30195797c62dba Author: Justin P. Mattock Date: Tue Mar 29 09:29:01 2011 -0700 doc: stable_api_nonsense.txt: fix paragraph to make more sense. Signed-off-by: Justin P. Mattock Signed-off-by: Jiri Kosina commit ae18cbfe9f147085426635763f1fe0c68f1071e2 Merge: 1d32188 cd25f8b Author: Ingo Molnar Date: Wed Mar 30 09:06:51 2011 +0200 Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core commit 2c66cb99d134d787827ed1cd93cc59351ab66a95 Author: Barry Song Date: Mon Mar 28 01:45:10 2011 -0400 ASoC: Blackfin: push down SPORT settings from global variables Now that we have multi-component support, take the time to unify the SPORT implementations a bit and make the setup dynamic. This kills off the global sport_handle which was shared across all the Blackfin machine drivers. The pin management aspect is off loaded to platform resources, and now multiple SPORTs can be instantiated simultaneously. Signed-off-by: Barry Song Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit bfe4ee0a935dccf5980ecb5605c66fe50feb9056 Author: Mike Frysinger Date: Mon Mar 28 01:45:09 2011 -0400 ASoC: Blackfin: standardize machine driver names Some machine drivers were using "bf5xx-", others were using "bf5xx_", while others were using "bfin-". Further, some were using the same name in the transport layer which makes it hard to use different codecs at the same time. So standardize all of them to "bfin-" and make sure they are name spaced according to their driver name. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit c8ad38b8b26ad04d5125606065c87315308d6df5 Author: Mike Frysinger Date: Mon Mar 28 01:45:08 2011 -0400 ASoC: Blackfin: drop "-codec" from codec names The recent multi-component patch incorrectly added "-codec" suffixes to parts which are not MFD. Drop the suffix from the machine drivers too. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f04cd9cb11469a6a9cbfdad824254143250d78d2 Author: Scott Jiang Date: Sun Mar 27 05:33:04 2011 -0400 ASoC: Blackfin: add ad193x sysclk configuration Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 93547e89b6d2adeec627d2a8d8fc4d4b40b0e2c4 Author: Cliff Cai Date: Sun Mar 27 17:22:57 2011 -0400 ASoC: SSM2602: convert to soc-cache Signed-off-by: Cliff Cai Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 1afa98b8074136c81d23e56836a59b2c8f1529c8 Author: Mike Frysinger Date: Sun Mar 27 00:44:13 2011 -0400 ASoC: ad1980: fix codec name The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit e43a7d4116c868676eca329c4211bc5cc5a93a9b Author: Mike Frysinger Date: Sun Mar 27 00:44:12 2011 -0400 ASoC: ad193x: fix codec name The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 370fd17dea6056cdb2fbbca47812cf96d2a02726 Author: Mike Frysinger Date: Sun Mar 27 00:44:11 2011 -0400 ASoC: ad73311: fix codec name The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 2a161018914d7f12ed73991d1aedb609fdba3fcf Author: Mike Frysinger Date: Sun Mar 27 00:44:10 2011 -0400 ASoC: SSM2602: fix codec name The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 754dec6b7f01efadd400f3291591627093a17988 Author: Mike Frysinger Date: Sun Mar 27 00:43:59 2011 -0400 ASoC: fix sorting order of codecs in kconfig Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 99b59f3ccb72c15f13169236eda16682930e47f0 Author: Mark Brown Date: Sun Mar 27 14:35:15 2011 +0100 ASoC: Remove -codec from WM8731 driver name Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 5e251aecbd4a4bf3ff0b0ff04653afa4d01eba54 Author: Mark Brown Date: Sun Mar 27 14:33:03 2011 +0100 ASoC: Convert WM8731 to table based DAPM setup Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit ecd015127813c7893f6900cf54c6362b26d8ff90 Author: Mark Brown Date: Sun Mar 27 13:43:45 2011 +0100 ASoC: Convert WM8903 to table based DAPM setup Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 60e627b4530819a3c67434ef6eafd3e702ce6572 Merge: 5683dc7 326b9bd Author: Mark Brown Date: Wed Mar 30 07:14:04 2011 +0900 Merge branch 'for-2.6.39' into for-2.6.40 commit 93b9c98b3498db5842e2812b32cff4c1ae947eb1 Merge: efb3bb4 5806896 Author: James Morris Date: Wed Mar 30 08:51:46 2011 +1100 Merge branch 'next-queue' into next commit efb3bb4fad062f8e9b8c9c945d499597e14007e7 Author: James Morris Date: Wed Mar 30 08:50:41 2011 +1100 Merge branch 'master'; commit 'v2.6.39-rc1' into next commit cd25f8bc2696664877b21d33b7994e12fa570919 Author: Lin Ming Date: Fri Mar 25 16:27:48 2011 +0800 perf probe: Add fastpath to do lookup by function name v3 -> v2: - Make pubname_search_cb more generic - Add fastpath to find_probes also v2 -> v1: - Don't compare file names with cu_find_realpath(...), instead, compare them with the name returned by dwarf_decl_file(sp_die) The vmlinux file may have thousands of CUs. We can lookup function name from .debug_pubnames section to avoid the slow loop on CUs. 1. Improvement data for find_line_range ./perf stat -e cycles -r 10 -- ./perf probe -k /home/mlin/vmlinux \ -s /home/mlin/linux-2.6 \ --line csum_partial_copy_to_user > tmp.log before patch applied ===================== 847,988,276 cycles 0.355075856 seconds time elapsed after patch applied ===================== 206,102,622 cycles 0.086883555 seconds time elapsed 2. Improvement data for find_probes ./perf stat -e cycles -r 10 -- ./perf probe -k /home/mlin/vmlinux \ -s /home/mlin/linux-2.6 \ --vars csum_partial_copy_to_user > tmp.log before patch applied ===================== 848,490,844 cycles 0.355307901 seconds time elapsed after patch applied ===================== 205,684,469 cycles 0.086694010 seconds time elapsed Acked-by: Masami Hiramatsu Cc: Ingo Molnar Cc: Masami Hiramatsu Cc: Peter Zijlstra Cc: linux-kernel LKML-Reference: <1301041668.14111.52.camel@minggr.sh.intel.com> Signed-off-by: Lin Ming Signed-off-by: Arnaldo Carvalho de Melo commit 9d42a53e0f46505b39494041d514372235817e15 Author: Christoph Lameter Date: Sat Mar 12 12:51:12 2011 +0100 acpi throttling: Use this_cpu_has and simplify code current cpu With the this_cpu_xx we no longer need to pass an acpi structure to the msr management code. Simplifies code and improves performance. NOTE: This code is x86 specific (see #ifdef CONFIG_X86) but not under arch/x86. Signed-off-by: Christoph Lameter Acked-by: Tejun Heo Signed-off-by: Tejun Heo commit fe5042138b6fc60edde3b60025078884c2eb71ac Author: Christoph Lameter Date: Sat Mar 12 12:50:46 2011 +0100 x86: Use this_cpu_has for thermal_interrupt current cpu It is more effective to use a segment prefix instead of calculating the address of the current cpu area amd then testing flags. Signed-off-by: Christoph Lameter Acked-by: Tejun Heo Signed-off-by: Tejun Heo commit 349c004e3d31fda23ad225b61861be38047fff16 Author: Christoph Lameter Date: Sat Mar 12 12:50:10 2011 +0100 x86: A fast way to check capabilities of the current cpu Add this_cpu_has() which determines if the current cpu has a certain ability using a segment prefix and a bit test operation. For that we need to add bit operations to x86s percpu.h. Many uses of cpu_has use a pointer passed to a function to determine the current flags. That is no longer necessary after this patch. However, this patch only converts the straightforward cases where cpu_has is used with this_cpu_ptr. The rest is work for later. -tj: Rolled up patch to add x86_ prefix and use percpu_read() instead of percpu_read_stable(). Signed-off-by: Christoph Lameter Acked-by: Tejun Heo Signed-off-by: Tejun Heo commit 1d321881afb955bba1e0a8f50d3a04e111fcb581 Author: Cyrill Gorcunov Date: Mon Mar 28 00:46:11 2011 +0400 perf, x86: P4 PMU - clean up the code a bit No change on the functional level, just align the table properly. Signed-off-by: Cyrill Gorcunov Cc: Lin Ming LKML-Reference: <4D8FA213.5050108@openvz.org> Signed-off-by: Ingo Molnar commit c900ff323d761753a56d8d6a67b034ceee277b6e Author: Harry Ciao Date: Fri Mar 25 13:52:00 2011 +0800 SELinux: Write class field in role_trans_write. If kernel policy version is >= 26, then write the class field of the role_trans structure into the binary reprensentation. Signed-off-by: Harry Ciao Acked-by: Stephen Smalley Signed-off-by: Eric Paris commit 63a312ca55d09a3f6526919df495fff1073c88f4 Author: Harry Ciao Date: Fri Mar 25 13:51:58 2011 +0800 SELinux: Compute role in newcontext for all classes Apply role_transition rules for all kinds of classes. Signed-off-by: Harry Ciao Acked-by: Stephen Smalley Signed-off-by: Eric Paris commit 8023976cf4627d9f1d82ad468ec40e32eb87d211 Author: Harry Ciao Date: Fri Mar 25 13:51:56 2011 +0800 SELinux: Add class support to the role_trans structure If kernel policy version is >= 26, then the binary representation of the role_trans structure supports specifying the class for the current subject or the newly created object. If kernel policy version is < 26, then the class field would be default to the process class. Signed-off-by: Harry Ciao Acked-by: Stephen Smalley Signed-off-by: Eric Paris commit 5f55924deaa62d6df687c131fb92aebe071ec787 Author: Eric Dumazet Date: Mon Mar 28 18:06:58 2011 +0200 percpu: Avoid extra NOP in percpu_cmpxchg16b_double percpu_cmpxchg16b_double() uses alternative_io() and looks like : e8 .. .. .. .. call this_cpu_cmpxchg16b_emu X bytes NOPX or, once patched (if cpu supports native instruction) on SMP build : 65 48 0f c7 0e cmpxchg16b %gs:(%rsi) 0f 94 c0 sete %al on !SMP build : 48 0f c7 0e cmpxchg16b (%rsi) 0f 94 c0 sete %al Therefore, NOPX should be : P6_NOP3 on SMP P6_NOP2 on !SMP Signed-off-by: Eric Dumazet Acked-by: Christoph Lameter Cc: Ingo Molnar Cc: Pekka Enberg Signed-off-by: Tejun Heo commit 787e5b06a80e7fc9dc02d9b53a9d8d2ac63b7ace Author: Mike Frysinger Date: Wed Mar 23 08:23:52 2011 +0100 percpu: Cast away printk format warning On 32-bit systems which don't happen to implicitly define or cast VMALLOC_START and/or VMALLOC_END to long in their arch headers, the printk in the percpu code will cause a warning to be emitted: mm/percpu.c: In function 'pcpu_embed_first_chunk': mm/percpu.c:1648: warning: format '%lx' expects type 'long unsigned int', but argument 3 has type 'unsigned int' So add an explicit cast to unsigned long here. Signed-off-by: Mike Frysinger Signed-off-by: Tejun Heo commit 4bcad6c1ef53a9a0224f4654ceb3b9030d0769ec Author: Matt Fleming Date: Thu Mar 24 13:56:47 2011 +0000 dlm: Remove superfluous call to recalc_sigpending() recalc_sigpending() is called within sigprocmask(), so there is no need call it again after sigprocmask() has returned. Signed-off-by: Matt Fleming Signed-off-by: David Teigland commit cdccfc8dc0bf62a1da327324a8d639139acc9279 Merge: b21a8ee c6b3587 Author: Takashi Iwai Date: Mon Mar 28 13:03:58 2011 +0200 Merge branch 'fix/misc' into topic/misc commit f6994ce4a8180ea0093c62a61d697086855058e7 Merge: ec7e7e4 c6b3587 Author: Takashi Iwai Date: Mon Mar 28 13:03:39 2011 +0200 Merge branch 'fix/hda' into topic/hda commit d2a1cfebe38edc0bbac8f5cfbce062fe3d146d7a Author: Jiri Kosina Date: Sun Mar 27 20:29:02 2011 +0200 HID: hidraw: fix comments Adjust the comments a little bit. Signed-off-by: Jiri Kosina commit ac065bf214bb6a7fb7536f2dde686d4694342801 Author: Dan Carpenter Date: Sat Mar 26 04:47:35 2011 +0300 HID: hiddev: fix brace indent There was an extra tab so the close curly brace didn't match up with the right if statement. Signed-off-by: Dan Carpenter Signed-off-by: Jiri Kosina commit cd00b1154d3c7d711e83c3c17b831aafe6377532 Author: Florian Tobias Schandinat Date: Sun Mar 27 03:36:00 2011 +0000 viafb: replace custom return values This patch replaces OK/FAIL by true/false which is simpler and saner. Signed-off-by: Florian Tobias Schandinat commit 7f980a06e4a9e3bb26db91da8f0e980b0786023a Author: Florian Tobias Schandinat Date: Sun Mar 27 02:54:32 2011 +0000 viafb: some small cleanup for global variables We do not need viafb_second{,_virtual}_{xres,yres} outside of viafbdev.c so move them there and eliminate the virtual ones where the only sane usage is done during initalization. Signed-off-by: Florian Tobias Schandinat commit 40bfc14f3250691dca6fcb00f791727e180a7f79 Author: Jamie Iles Date: Sun Mar 27 10:48:29 2011 +0800 crypto: picoxcell - fix possible status FIFO overflow The SPAcc's have 2 equally sized FIFO's - a command FIFO and a status FIFO. The command FIFO takes the requests that are to be performed and the status FIFO reports the results. It is possible to get into the situation where there are more free spaces in the command FIFO than the status FIFO if we don't empty the status FIFO quickly enough resulting in a possible overflow of the status FIFO. This can result in incorrect status being reported in the status FIFO. Make sure that when we are submitting requests the number of requests that have been dispatched but not yet popped from the status FIFO does not exceed the size of a single FIFO. Signed-off-by: Jamie Iles Signed-off-by: Herbert Xu commit 0475add3c27a43a6599fe6338f8fffe919a13547 Author: Brilly Wu Date: Sun Mar 27 10:45:00 2011 +0800 crypto: padlock - Add SHA-1/256 module for VIA Nano Add new SHA-1/256 module that never needs any fallback and just calls the PadLock hardware instruction supported from VIA Nano processors to implement the "update" and "final" function. They are respectively named "sha1_alg_nano" and "sha256_alg_nano", and will be used on any VIA Nano processor or the later ones. On VIA C7 CPU, the "sha1_alg" and "sha256_alg" modules will still be used as before. Signed-off-by: Brilly Wu Signed-off-by: Kary Jin Signed-off-by: Herbert Xu commit 7dfc2179ec7339a180e822a5af7eb1294da245cf Author: Kim Phillips Date: Wed Mar 23 21:23:36 2011 +0800 crypto: caam - de-CHIP-ify device tree compatibles - all the integration parameters have been captured by the binding. - the block name really uniquely identifies this hardware. Some advocate putting SoC names everywhere in case software needs to work around some chip-specific bug, but more precise SoC information already exists in SVR, and board information already exists in the top-level device tree node. Note that sometimes the SoC name is a worse identifier than the block version, as the block version can change between revisions of the same SoC. As a matter of historical reference, neither SEC versions 2.x nor 3.x (driven by talitos) ever needed CHIP references. Signed-off-by: Kim Phillips Cc: Kumar Gala Cc: Scott Wood Acked-off-by: Grant Likely Signed-off-by: Herbert Xu commit 6d00376ad15a931d4b148e52d80abc54173e9bf5 Author: Dan Carpenter Date: Wed Mar 23 21:21:53 2011 +0800 crypto: caam - ARRAY_SIZE() vs sizeof() ARRAY_SIZE() was intended here instead of sizeof(). sizeof() is four times larger than ARRAY_SIZE(). outstr is normally 256 chars so printing garbage to it could overfill the buffer and corrupt memory. Signed-off-by: Dan Carpenter Acked-by: Kim Phillips Signed-off-by: Herbert Xu commit cdc712d884cec0354d6899e7a329eee542ca2f7d Author: Dan Carpenter Date: Wed Mar 23 21:20:27 2011 +0800 crypto: caam - dereferencing ERR_PTR on allocation failure t_alg is an ERR_PTR here so we can't dereference it. Signed-off-by: Dan Carpenter Acked-by: Kim Phillips Signed-off-by: Herbert Xu commit 54e198d4c162b36ba864ecc658c829454074523f Author: Kim Phillips Date: Wed Mar 23 21:15:44 2011 +0800 crypto: caam - standardize device tree naming convention to utilize '-vX.Y' Help clarify that the number trailing in compatible nomenclature is the version number of the device, i.e., change: "fsl,p4080-sec4.0", "fsl,sec4.0"; to: "fsl,p4080-sec-v4.0", "fsl,sec-v4.0"; Signed-off-by: Kim Phillips Cc: Kumar Gala Cc: Steve Cornelius Signed-off-by: Herbert Xu commit 8e8ec596e6c0144e2dd500a57ee23dde9684df46 Author: Kim Phillips Date: Sun Mar 13 16:54:26 2011 +0800 crypto: caam - Add support for the Freescale SEC4/CAAM The SEC4 supercedes the SEC2.x/3.x as Freescale's Integrated Security Engine. Its programming model is incompatible with all prior versions of the SEC (talitos). The SEC4 is also known as the Cryptographic Accelerator and Assurance Module (CAAM); this driver is named caam. This initial submission does not include support for Data Path mode operation - AEAD descriptors are submitted via the job ring interface, while the Queue Interface (QI) is enabled for use by others. Only AEAD algorithms are implemented at this time, for use with IPsec. Many thanks to the Freescale STC team for their contributions to this driver. Signed-off-by: Steve Cornelius Signed-off-by: Kim Phillips Signed-off-by: Herbert Xu commit 95d517cfce023eb24c5363ab82377146bd659816 Author: Florian Tobias Schandinat Date: Sat Mar 26 23:39:07 2011 +0000 viafb: gather common good, old VGA initialization in one place This patch moves all unprotected VGA initialization in one table and provides some documentation for those values. Signed-off-by: Florian Tobias Schandinat commit 5683dc7ae86987e392d5616731eec636abd6c7ad Author: Scott Jiang Date: Sat Mar 26 04:38:30 2011 -0400 ASoC: ad73311: drop I2C requirement The AD73311 codec does not use I2C, so don't require it in Kconfig. Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 119bfef2f954bfca74a960bff7be7d49f97e5daf Author: Scott Jiang Date: Sat Mar 26 03:52:20 2011 -0400 ASoC: ad193x: tweak style to match other codecs Rename the snd_soc_control_type field from "bus_type" to "control_type", and drop the now unused "control_data" field. Signed-off-by: Scott Jiang Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 4b2ffc205cb9964e7270abc7c8bcbd6127dfcf5e Author: Cliff Cai Date: Sat Mar 26 03:05:08 2011 -0400 ASoC: Blackfin I2S: add 8-bit sample support Signed-off-by: Cliff Cai Signed-off-by: Mike Frysinger Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 239c970626b9d9c7449de751d91f9a9da1018b85 Author: Dimitris Papastamos Date: Thu Mar 24 13:45:18 2011 +0000 ASoC: Add snd_soc_codec_{readable,writable}_register() Provide the top level ASoC core functions for indicating whether a given register is readable or writable. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8020454c9a1ec5ac5801805896b5f69d0c573e17 Author: Dimitris Papastamos Date: Thu Mar 24 13:45:17 2011 +0000 ASoC: Add default snd_soc_default_writable_register() callback By using struct snd_soc_reg_access for the read/write/vol attributes of the registers, we provide callbacks that automatically determine whether a given register is readable/writable or volatile. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit acd61451e55ea5848a6ab50d39a103e146fcf7ba Author: Dimitris Papastamos Date: Tue Mar 22 10:48:49 2011 +0000 ASoC: soc-cache: Return -ENOSYS instead of -EINVAL These functions fail with -EINVAL if the corresponding callbacks are not implemented. Change them to return -ENOSYS as it is more appropriate for unimplemented callbacks. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 30539a18d366cff6b21f66a81e4d9dccc4a90c89 Author: Dimitris Papastamos Date: Tue Mar 22 10:37:00 2011 +0000 ASoC: soc-cache: Factor-out the SPI write code The handling of all snd_soc_x_y_spi_write() functions is similar. Create a separate function and update all callers to use it. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit b8cbc195202d05efcda6af81c669577e3cb793e5 Author: Dimitris Papastamos Date: Tue Mar 22 10:36:59 2011 +0000 ASoC: soc-cache: Factor-out the hw_read() specific code The handling of all snd_soc_x_y_read() functions is similar. Factor it out into a separate function and update all callers. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 26e9984cbcdde100e5af15382f2297fef1ce7804 Author: Dimitris Papastamos Date: Tue Mar 22 10:36:58 2011 +0000 ASoC: soc-cache: Factor-out the hw_write() specific code The handling of all snd_soc_x_y_write() functions is similar. Factor it out into a separate function and update all functions to use it. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 67850a892bf627e1c627bc8d0bcd84b90ecc9d7f Author: Dimitris Papastamos Date: Tue Mar 22 10:36:57 2011 +0000 ASoC: Add control_type in snd_soc_codec This is mainly used by the soc-cache code to easily determine the currently used underlying serial bus. Set SND_SOC_CUSTOM to 1 so we can distinguish it if it is not initialized or set. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 5fb609d435f0679ed322ddeb1fdafe6142463fdf Author: Dimitris Papastamos Date: Tue Mar 22 10:37:03 2011 +0000 ASoC: soc-cache: Introduce raw bulk write support As it has become more common to have to write firmware or similar large chunks of data to the hardware, add a function to perform raw bulk writes that bypass the cache. This only handles volatile registers as we should avoid getting out of sync with the actual cache. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit f3594f5c5c489d159f6d487a889d9d68ca4c0123 Author: Dimitris Papastamos Date: Tue Mar 22 10:37:01 2011 +0000 ASoC: soc-cache: Factor-out the I2C read code The handling of all snd_soc_x_y_read_i2c() functions is similar. Make a generic I2C read function and update all callers to use it. Signed-off-by: Dimitris Papastamos Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit 8b573c95d7bd1cf28c69ab4e0255cd272d214482 Author: Wolfram Sang Date: Fri Mar 25 16:51:46 2011 +0100 ASoC: imx: remove superfluous code in imx-ssi.c Checking if IMX_SSI_DMA is set and then set it again is useless. Signed-off-by: Wolfram Sang Acked-by: Liam Girdwood Signed-off-by: Mark Brown commit a0b1550677a4449a57a32ebc167cba552da9871e Merge: 3121587 e1bb31b Author: Mark Brown Date: Sat Mar 26 17:25:22 2011 +0000 Merge branch 'for-2.6.39' into for-2.6.40 commit 4b8ffdb959c35f5e271fb7e08635dbdb2593018f Author: Peter Ujfalusi Date: Thu Mar 24 09:11:49 2011 +0200 ASoC: tlv320dac33: Move codec power up to DAPM Move the codec power on (in reg 0x01, bit 4) from set_bias_level:SND_SOC_BIAS_ON to a DAPM supply. In this way we can be sure, that all the things within the codec is powered before the external amp is going to be enabled. Signed-off-by: Peter Ujfalusi Acked-by: Mark Brown Signed-off-by: Liam Girdwood commit bea02e45874a5d18127b0779740c4fd5b3e7e44a Author: Florian Tobias Schandinat Date: Sat Mar 26 02:29:18 2011 +0000 viafb: add engine clock support This patch adds support for enabling and configuring the engine on VIAs IGPs. This is the main clock used for everything but pixel output. Signed-off-by: Florian Tobias Schandinat commit 7eaa6a5e964f1ab02d849bda36950c0d30be8ce2 Author: Wey-Yi Guy Date: Tue Mar 22 08:05:38 2011 -0700 iwlagn: remove deprecated module parameters Number of deprecated module parameters need to be remove for 2.6.40 kernel Signed-off-by: Wey-Yi Guy commit f7d046f91bd165e747b9a95d089a4168b6f9796a Author: Wey-Yi Guy Date: Tue Mar 22 08:05:37 2011 -0700 iwlagn: remove reference to 3945 and 4965 After driver split, remove the unused reference to 3945 and 4965 Signed-off-by: Wey-Yi Guy commit 2a226ab67f2f9c46e534f37f867d3bf3af335d02 Author: Wey-Yi Guy Date: Tue Mar 22 08:05:36 2011 -0700 iwlagn: remove 3945 only station code After driver split, no more 3945 only station support needed. Signed-off-by: Wey-Yi Guy commit d6b8061824a03fbe915c6cf5be2b290ae44c4ec4 Author: Wey-Yi Guy Date: Mon Mar 21 16:53:38 2011 -0700 iwlwifi: remove legacy isr tasklet After driver split, no need for support legacy isr, remove it. Signed-off-by: Wey-Yi Guy commit 4263108c2a9028544cf4037fa4e72000ee456c33 Author: Daniel Halperin Date: Mon Mar 21 15:27:34 2011 -0700 iwlwifi: set default aggregation frame limit to 63 This gives much better performance at fast 3x3 rates (up to ~160 Mbps). The scheduler will still make most decisions about batch size based on available packets and RX parameters. Signed-off-by: Daniel Halperin Signed-off-by: Wey-Yi Guy commit 2520546aecc969372080448a2422b39eedb2a528 Author: Daniel Halperin Date: Fri Mar 18 18:48:55 2011 -0700 iwlwifi: add RATE_MCS_RATE_MSK Throughout the code we use rate_n_flags & 0xff to extract the lower byte of the rate_n_flags u32 that contains the information about the rate. Add a #define and remove the use of the magic number. Signed-off-by: Daniel Halperin Signed-off-by: Wey-Yi Guy commit d0eb633431ec922f8f9b2040f46d9b42a4cec193 Author: Daniel Halperin Date: Wed Mar 16 17:17:36 2011 -0700 iwlwifi: cleanup and bugfix tx aggregation code Since the driver split, there's no need for no_agg_framecnt_info since all devices have this set to false. Secondly, the compressed block ack handling code was broken. Fix this. (1) A shift less than zero simply implies that the buffer wrapped, this is expected. Remove the incorrect comment. (2) The (agg->frame_count > (64-sh)) condition can happen if the last frame is dropped. E.g., if I send 7 frames and the 6th is received but the 7th is lost, the other side may only shift the window 6, not 7 frames since the last bit is a 0. This is perfectly fine behavior and doesn't invalidate the feedback. (3) Store the feedback from a Compressed BA in the first newly received frame, rather than the start of the window. This way it will get processed by the rate selection code. Feedback stored in a non-received frame is likely to get overwritten by the retransmission. This is based on the approach taken by minstrel_ht. Signed-off-by: Daniel Halperin Signed-off-by: Wey-Yi Guy commit 374920cb0512f5938fdf1f5af4f9afa7502dd0f9 Author: Daniel Halperin Date: Wed Mar 16 19:16:36 2011 -0700 iwlwifi: limit number of attempts for highest HT rate When filling out its rate scale table, iwlwifi repeats the first HT rate IWL_HT_NUMBER_TRY times. The hardware scheduler will stop using aggregation for any frame that fails LINK_QUAL_AGG_DISABLE_START_DEF times. Currently, both these constants equal 3. If iwlwifi probes a faster rate than the link supports, all frames in a (potentially tens of frames large) batch will fail IWL_HT_NUMBER_TRY times. Because this happens to be as large as LINK_QUAL_AGG_DISABLE_START_DEF, all frames will then be sent individually. This leads to a short, but performance-degrading window where the legacy stop-and-wait MAC takes over. Bounding the initial rate by (LINK_QUAL_AGG_DISABLE_START_DEF-1) attempts makes the third try use a lower rate and hence more be likely to succeed. This somewhat mitigates the above described behavior. Signed-off-by: Daniel Halperin Signed-off-by: Wey-Yi Guy commit c8823ec1337017e23b99fb0814e2f3d62537f811 Author: Johannes Berg Date: Tue Mar 15 11:33:03 2011 -0700 iwlagn: fix aggregation queue scheduler setup iwlagn's hardware scheduler needs to be set up with the right aggregation frame limit and buffer sizes. To achieve this, we need to move the hardware queue setup to when the session becomes operational. Tested-by: Daniel Halperin Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit 7ffef13d7a24654292c4641450f2794224b9eb5d Author: Johannes Berg Date: Tue Mar 15 04:59:10 2011 -0700 iwlagn: clean up TX aggregation code Since the driver split, there's no need for function pointers any more for aggregation queue setup and teardown as all devices now share the same code. Simplify this. Signed-off-by: Johannes Berg Signed-off-by: Wey-Yi Guy commit d103e3448a3ecb9f81babd1f6d7f5a678e213c82 Author: Wey-Yi Guy Date: Thu Mar 10 03:17:16 2011 -0800 iwlagn: use 6030 configuration for 6035 series 6035 series of devices should use the same uCode as 6030 series, change it. Signed-off-by: Wey-Yi Guy commit efa3144e7cb2a7a58961e5b881b1b9ef73f39cd5 Author: Wey-Yi Guy Date: Tue Feb 22 16:43:05 2011 -0800 iwlegacy: MAINTAINERS Add iwlegacy driver to MAINTAINERS file and mark as 'Orphan' Signed-off-by: Wey-Yi Guy commit 749c27639b95c5c4a8185e02a4efb189034944ed Author: Lin Ming Date: Wed Mar 23 17:26:36 2011 +0800 ACPICA: Fix code divergence of global lock handling Commit 9cd0314(ACPI / ACPICA: Fix global lock acquisition) was backported into ACPICA code base, and some divergence was introduced. This patch fixed it, - rename acpi_ev_global_lock_pending/acpi_ev_global_lock_pending_lock to acpi_gbl_global_lock_pending/acpi_gbl_global_lock_pending_lock. - move the initialization of acpi_gbl_global_lock_pending_lock from acpi_ut_mutex_initialize to acpi_ev_init_global_lock_handler. Signed-off-by: Lin Ming Reviewed-by: Rafael J. Wysocki Signed-off-by: Len Brown commit 3854c8e32f46ffa6ee0bf2eb01137f5a48b2754f Author: Lin Ming Date: Wed Mar 23 17:26:35 2011 +0800 ACPICA: Use acpi_os_create_lock interface Replace spin_lock_init with acpi_os_create_lock. Signed-off-by: Lin Ming Signed-off-by: Len Brown commit 9f63b88bd7a1ac1afbb4358772a39abaeddbdd13 Author: Lin Ming Date: Wed Mar 23 17:26:34 2011 +0800 ACPI: osl, add acpi_os_create_lock interface Signed-off-by: Lin Ming Signed-off-by: Len Brown commit b692a63af8b63a7a7e84702a713d0072e336b326 Author: Florian Tobias Schandinat Date: Thu Mar 24 14:25:51 2011 +0000 viafb: add VIA slapping capability This patch introduces dummy functions to execute when we don't know what we should do (due to missing documentation). They do nothing but print a nice message in the log explaining the situation. To trigger this message initial power management support is activated which might save a bit energy by disabling PLL and clock if no device is configured to use them. Note: The message is only shown for the oldest IGPs CLE266 and K400 as for the other platforms there are reasonable assumptions how it does (hopefully) work. Signed-off-by: Florian Tobias Schandinat commit 0415b00d175e0d8945e6785aad21b5f157976ce0 Author: Tejun Heo Date: Thu Mar 24 18:50:09 2011 +0100 percpu: Always align percpu output section to PAGE_SIZE Percpu allocator honors alignment request upto PAGE_SIZE and both the percpu addresses in the percpu address space and the translated kernel addresses should be aligned accordingly. The calculation of the former depends on the alignment of percpu output section in the kernel image. The linker script macros PERCPU_VADDR() and PERCPU() are used to define this output section and the latter takes @align parameter. Several architectures are using @align smaller than PAGE_SIZE breaking percpu memory alignment. This patch removes @align parameter from PERCPU(), renames it to PERCPU_SECTION() and makes it always align to PAGE_SIZE. While at it, add PCPU_SETUP_BUG_ON() checks such that alignment problems are reliably detected and remove percpu alignment comment recently added in workqueue.c as the condition would trigger BUG way before reaching there. For um, this patch raises the alignment of percpu area. As the area is in .init, there shouldn't be any noticeable difference. This problem was discovered by David Howells while debugging boot failure on mn10300. Signed-off-by: Tejun Heo Acked-by: Mike Frysinger Cc: uclinux-dist-devel@blackfin.uclinux.org Cc: David Howells Cc: Jeff Dike Cc: user-mode-linux-devel@lists.sourceforge.net commit 2c536f84c19c73ab1e3411bf1596ff85c4a23783 Author: Florian Tobias Schandinat Date: Thu Mar 24 13:30:09 2011 +0000 viafb: split clock and PLL code to an extra file This patch is a huge move operation with some rename and introduces an interface to still use the functions. This should be a step in the right direction to reuse the code whenever possible but cleanly separate code that differs on different platform and keeping the complexity as low as possible. pll_config was renamed to via_pll_config to keep the naming scheme. Signed-off-by: Florian Tobias Schandinat commit f786bba4499cf3de20da345ce090457ebcef03b0 Author: Benjamin Tissoires Date: Tue Mar 22 17:34:01 2011 +0100 HID: hid-multitouch: migrate 3M PCT touch screens to hid-multitouch This patch merges the hid-3m-pct driver into hid-multitouch. To keep devices working the same way they used to with hid-3m-pct, we need to add two signal/noise ratios for width and height. We also need to work on width/height to send proper ABS_MT_ORIENTATION flag. Importing 3M into hid-multitouch also solved the bug in which devices handling width and height in their report descriptors did not show ABS_MT_TOUCH_MAJOR and ABS_MT_TOUCH_MINOR. Signed-off-by: Benjamin Tissoires Reviewed-by: Stéphane Chatty Reviewed-and-tested-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit 9f1f1bfd8d7e579f07dbe56d6f93bd594da43b3d Author: Rakib Mullick Date: Wed Mar 23 21:31:40 2011 +0600 x86, mpparse: Remove unnecessary variable 'ret' isn't used by check_slot(), gets initialized but has no real use, so remove it. Signed-off-by: Rakib Mullick LKML-Reference: Signed-off-by: Ingo Molnar commit ec7e7e42da0b33c77f1baafeac93e5128c4eea7a Author: Lydia Wang Date: Thu Mar 24 12:43:44 2011 +0800 ALSA: hda - VIA: Update unsolicited event function Update unsolicited event process function via_unsol_event() to make it can process more unsolicited events. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit eadb9a804de223ef899ebb64aa037fa0da7bdee9 Author: Lydia Wang Date: Thu Mar 24 12:43:02 2011 +0800 ALSA: hda - VIA: Update VT2002P initial verbs Add some hardware related verbs in VT2002P initial verbs. These verbs are used to fix Class-D speaker no sound issue. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 4ab2d53a99b6dcee86837d2a9739bfb9f468db45 Author: Lydia Wang Date: Thu Mar 24 12:42:03 2011 +0800 ALSA: hda - VIA: Update VT1718S initial verbs Add a verb to enable control amplifier of stereo mixer in VT1718S initial verbs. Set stereo mixer default amplifier value as un-mute. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit aa266fccf569c6ed675f15b1654a5b2c08d9dde5 Author: Lydia Wang Date: Thu Mar 24 12:41:01 2011 +0800 ALSA: hda - VIA: Update VT1708 initial verbs Add a verb of power down jack detect in VT1708 initial verbs. This verb is used to avoid noise caused by hardware issue. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 27439ce717fea649ed77d256bb6efee7d1eb8e56 Author: Lydia Wang Date: Thu Mar 24 12:40:10 2011 +0800 ALSA: hda - VIA: Add VT1802 check in via_speaker_automute function Add VT1802 check in via_speaker_automute() function. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit e87885fea58ef49e08f2b4218587397586dc155d Author: Lydia Wang Date: Thu Mar 24 12:39:05 2011 +0800 ALSA: hda - VIA: Fix side channel mute invalid issue Modify side_mute_channel() and update_side_mute_status() functions to fix invalid side channel mute issue of VT2002P, VT1812 and VT1802 codecs. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit c5593d26aea3aba2a7703a0b5d74b4ea8b726889 Author: Florian Tobias Schandinat Date: Thu Mar 24 02:03:42 2011 +0000 viafb: add primary/secondary clock on/off switches This patch adds functions to enable/disable the display clocks. It also fixes a tiny bug that slipped in with a previous commit but could not yet have caused any problems. Signed-off-by: Florian Tobias Schandinat commit 6c1093af5833d4c69634711d9453287ab9e0cb77 Author: Florian Tobias Schandinat Date: Wed Mar 23 21:04:01 2011 +0000 viafb: add clock source selection and PLL power management support This patch adds some support for clock source selection as well as PLL power management. The code is unused at the moment but was successfully tested as far as possible. The implementation is according to the documentation for VX700, VX800, VX855, VX900. Probably the source selection works like this starting with K800 and the power managemennt at least since VX700. (guessed based on the initialization in viamode.c) Signed-off-by: Florian Tobias Schandinat commit 0f77d4a052aec7392dbfd3d8942a519d013d66d9 Author: Florian Tobias Schandinat Date: Wed Mar 23 17:14:26 2011 +0000 viafb: prepare for PLL separation This patch splits some functionality to extra functions. Signed-off-by: Florian Tobias Schandinat commit 1606f87e98f83512762da6dbc992103ae690ff11 Author: Florian Tobias Schandinat Date: Wed Mar 23 13:49:32 2011 +0000 viafb: call viafb_get_clk_value only in viafb_set_vclock As no caller is interested in the result call viafb_get_clk_value directly from viafb_set_vclock to encapsulate the hardware dependend stuff there. Signed-off-by: Florian Tobias Schandinat commit c91faa61697a60ee5cc653db9b6fd3c7049890a6 Author: Florian Tobias Schandinat Date: Tue Mar 22 20:33:20 2011 +0000 viafb: remove unused max_hres/vres This patch removes the max_hres and max_vres which are not used at the moment. In general they could be useful but it would be better to get them via any standard EDID implementation and not the buggy incomplete one currently used which is also removed as far as possible. Signed-off-by: Florian Tobias Schandinat commit eb0536c5e2815e3e38ed2b2f31401e114faec016 Author: Florian Tobias Schandinat Date: Mon Mar 21 13:28:26 2011 +0000 viafb: allow some pll calculations This patch allows calculating the pll multiplier within limits based on the previous table. All available information supports that it should be possible/sane to choose the multiplier free within some ranges. Storing the multiplier ranges instead of lots of pll configurations reduces the memory needed and may as well improve the performance. It is also expected to provide better pll values resulting in better frequencies for the connected devices. Signed-off-by: Florian Tobias Schandinat commit 11890956e948e6ed1b3e4acc11b6879db6ace01b Author: Lydia Wang Date: Wed Mar 23 17:57:34 2011 +0800 ALSA: hda - VIA: Add support for VT1802 Add support for VT1802 codec, which is similiar with VT2002P except VT1802 has no Class-D and has some different pin widget id. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit bc92df7fe55e49c616a003b0b77e7badf2736429 Author: Lydia Wang Date: Wed Mar 23 17:56:05 2011 +0800 ALSA: hda - VIA: Add support for VT1705 Add support for VT1705 codec, which is similiar with VT1708S except it has 6 channels output. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit 244056f9dbbc6dc4126a301c745fa3dd67d8af3c Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Don't send duplicate job control stop notification while ptraced Just as group_exit_code shouldn't be generated when a PTRACE_CONT'd task re-enters job control stop, notifiction for the event should be suppressed too. The logic is the same as the group_exit_code generation suppression in do_signal_stop(), if SIGNAL_STOP_STOPPED is already set, the task is re-entering job control stop without intervening SIGCONT and the notifications should be suppressed. Test case follows. #include #include #include #include #include #include static const struct timespec ts100ms = { .tv_nsec = 100000000 }; static pid_t tracee, tracer; static const char *pid_who(pid_t pid) { return pid == tracee ? "tracee" : (pid == tracer ? "tracer" : "mommy "); } static void sigchld_sigaction(int signo, siginfo_t *si, void *ucxt) { printf("%s: SIG status=%02d code=%02d (%s)\n", pid_who(getpid()), si->si_status, si->si_code, pid_who(si->si_pid)); } int main(void) { const struct sigaction chld_sa = { .sa_sigaction = sigchld_sigaction, .sa_flags = SA_SIGINFO|SA_RESTART }; siginfo_t si; sigaction(SIGCHLD, &chld_sa, NULL); tracee = fork(); if (!tracee) { tracee = getpid(); while (1) pause(); } kill(tracee, SIGSTOP); waitid(P_PID, tracee, &si, WSTOPPED); tracer = fork(); if (!tracer) { tracer = getpid(); ptrace(PTRACE_ATTACH, tracee, NULL, NULL); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); waitid(P_PID, tracee, &si, WSTOPPED); printf("tracer: detaching\n"); ptrace(PTRACE_DETACH, tracee, NULL, NULL); return 0; } while (1) pause(); return 0; } Before the patch, the parent gets the second notification for the tracee after the tracer detaches. si_status is zero because group_exit_code is not set by the group stop completion which triggered this notification. mommy : SIG status=19 code=05 (tracee) tracer: SIG status=00 code=05 (tracee) tracer: SIG status=19 code=04 (tracee) tracer: SIG status=00 code=05 (tracee) tracer: detaching mommy : SIG status=00 code=05 (tracee) mommy : SIG status=00 code=01 (tracer) ^C After the patch, the duplicate notification is gone. mommy : SIG status=19 code=05 (tracee) tracer: SIG status=00 code=05 (tracee) tracer: SIG status=19 code=04 (tracee) tracer: SIG status=00 code=05 (tracee) tracer: detaching mommy : SIG status=00 code=01 (tracer) ^C Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit ceb6bd67f9b9db765e1c29405f26e8460391badd Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Notify the real parent of job control events regardless of ptrace With recent changes, job control and ptrace stopped states are properly separated and accessible to the real parent and the ptracer respectively; however, notifications of job control stopped/continued events to the real parent while ptraced are still missing. A ptracee participates in group stop in ptrace_stop() but the completion isn't notified. If participation results in completion of group stop, notify the real parent of the event. The ptrace and group stops are separate and can be handled as such. However, when the real parent and the ptracer are in the same thread group, only the ptrace stop event is visible through wait(2) and the duplicate notifications are different from the current behavior and are confusing. Suppress group stop notification in such cases. The continued state is shared between the real parent and the ptracer but is only meaningful to the real parent. Always notify the real parent and notify the ptracer too for backward compatibility. Similar to stop notification, if the real parent is the ptracer, suppress a duplicate notification. Test case follows. #include #include #include #include #include #include #include int main(void) { const struct timespec ts100ms = { .tv_nsec = 100000000 }; pid_t tracee, tracer; siginfo_t si; int i; tracee = fork(); if (tracee == 0) { while (1) { printf("tracee: SIGSTOP\n"); raise(SIGSTOP); nanosleep(&ts100ms, NULL); printf("tracee: SIGCONT\n"); raise(SIGCONT); nanosleep(&ts100ms, NULL); } } waitid(P_PID, tracee, &si, WSTOPPED | WNOHANG | WNOWAIT); tracer = fork(); if (tracer == 0) { nanosleep(&ts100ms, NULL); ptrace(PTRACE_ATTACH, tracee, NULL, NULL); for (i = 0; i < 11; i++) { si.si_pid = 0; waitid(P_PID, tracee, &si, WSTOPPED); if (si.si_pid && si.si_code == CLD_TRAPPED) ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); } printf("tracer: EXITING\n"); return 0; } while (1) { si.si_pid = 0; waitid(P_PID, tracee, &si, WSTOPPED | WCONTINUED | WEXITED); if (si.si_pid) printf("mommy : WAIT status=%02d code=%02d\n", si.si_status, si.si_code); } return 0; } Before this patch, while ptraced, the real parent doesn't get notifications for job control events, so although it can access those events, the later waitid(2) call never wakes up. tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT tracee: SIGSTOP tracee: SIGCONT tracee: SIGSTOP tracee: SIGCONT tracee: SIGSTOP tracer: EXITING mommy : WAIT status=19 code=05 ^C After this patch, it works as expected. tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP tracer: EXITING mommy : WAIT status=19 code=05 ^C -v2: Oleg pointed out that * Group stop notification to the real parent should also happen when ptracer detach races with ptrace_stop(). * real_parent_is_ptracer() should be testing thread group equality not the task itself as wait(2) and stop/cont notifications are normally thread-group wide. Both issues are fixed accordingly. -v3: real_parent_is_ptracer() updated to test child->real_parent instead of child->group_leader->real_parent per Oleg's suggestion. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 62bcf9d992ecc19ea4f37ff57ee0b3333e3e843e Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Job control stop notifications should always go to the real parent The stopped notifications in do_signal_stop() and exit_signals() are always for the completion of job control. The one in do_signal_stop() may be delivered to the ptracer if PTRACE_ATTACH races with notification and the one in exit_signals() if task exits while ptraced. In both cases, the notifications are meaningless and confusing to the ptracer as it never accesses the group stop state while the real parent would miss notifications for the events it is watching. Make sure these notifications always go to the real parent by calling do_notify_parent_cld_stop() with %false @for_ptrace. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 75b95953a56969a990e6ce154b260be83818fe71 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Add @for_ptrace to do_notify_parent_cldstop() Currently, do_notify_parent_cldstop() determines whether the notification is for the real parent or ptracer. Move the decision to the caller by adding @for_ptrace parameter to do_notify_parent_cldstop(). All the callers are updated to pass task_ptrace(target_task), so this patch doesn't cause any behavior difference. While at it, add function comment to do_notify_parent_cldstop(). Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 45cb24a1da53beb70f09efccc0373f6a47a9efe0 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Allow access to job control events through ptracees Currently a real parent can't access job control stopped/continued events through a ptraced child. This utterly breaks job control when the children are ptraced. For example, if a program is run from an interactive shell and then strace(1) attaches to it, pressing ^Z would send SIGTSTP and strace(1) would notice it but the shell has no way to tell whether the child entered job control stop and thus can't tell when to take over the terminal - leading to awkward lone ^Z on the terminal. Because the job control and ptrace stopped states are independent, there is no reason to prevent real parents from accessing the stopped state regardless of ptrace. The continued state isn't separate but ptracers don't have any use for them as ptracees can never resume without explicit command from their ptracers, so as long as ptracers don't consume it, it should be fine. Although this is a behavior change, because the previous behavior is utterly broken when viewed from real parents and the change is only visible to real parents, I don't think it's necessary to make this behavior optional. One situation to be careful about is when a task from the real parent's group is ptracing. The parent group is the recipient of both ptrace and job control stop events and one stop can be reported as both job control and ptrace stops. As this can break the current ptrace users, suppress job control stopped events for these cases. If a real parent ptracer wants to know about both job control and ptrace stops, it can create a separate process to serve the role of real parent. Note that this only updates wait(2) side of things. The real parent can access the states via wait(2) but still is not properly notified (woken up and delivered signal). Test case polls wait(2) with WNOHANG to work around. Notification will be updated by future patches. Test case follows. #include #include #include #include #include #include #include int main(void) { const struct timespec ts100ms = { .tv_nsec = 100000000 }; pid_t tracee, tracer; siginfo_t si; int i; tracee = fork(); if (tracee == 0) { while (1) { printf("tracee: SIGSTOP\n"); raise(SIGSTOP); nanosleep(&ts100ms, NULL); printf("tracee: SIGCONT\n"); raise(SIGCONT); nanosleep(&ts100ms, NULL); } } waitid(P_PID, tracee, &si, WSTOPPED | WNOHANG | WNOWAIT); tracer = fork(); if (tracer == 0) { nanosleep(&ts100ms, NULL); ptrace(PTRACE_ATTACH, tracee, NULL, NULL); for (i = 0; i < 11; i++) { si.si_pid = 0; waitid(P_PID, tracee, &si, WSTOPPED); if (si.si_pid && si.si_code == CLD_TRAPPED) ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); } printf("tracer: EXITING\n"); return 0; } while (1) { si.si_pid = 0; waitid(P_PID, tracee, &si, WSTOPPED | WCONTINUED | WEXITED | WNOHANG); if (si.si_pid) printf("mommy : WAIT status=%02d code=%02d\n", si.si_status, si.si_code); nanosleep(&ts100ms, NULL); } return 0; } Before the patch, while ptraced, the parent can't see any job control events. tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT tracee: SIGSTOP tracee: SIGCONT tracee: SIGSTOP tracee: SIGCONT tracee: SIGSTOP tracer: EXITING mommy : WAIT status=19 code=05 ^C After the patch, tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP mommy : WAIT status=19 code=05 tracee: SIGCONT mommy : WAIT status=18 code=06 tracee: SIGSTOP tracer: EXITING mommy : WAIT status=19 code=05 ^C -v2: Oleg pointed out that wait(2) should be suppressed for the real parent's group instead of only the real parent task itself. Updated accordingly. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 9b84cca2564b9a5b2d064fb44d2a55a5b44473a0 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Fix ptracer wait(2) hang and explain notask_error clearing wait(2) and friends allow access to stopped/continued states through zombies, which is required as the states are process-wide and should be accessible whether the leader task is alive or undead. wait_consider_task() implements this by always clearing notask_error and going through wait_task_stopped/continued() for unreaped zombies. However, while ptraced, the stopped state is per-task and as such if the ptracee became a zombie, there's no further stopped event to listen to and wait(2) and friends should return -ECHILD on the tracee. Fix it by clearing notask_error only if WCONTINUED | WEXITED is set for ptraced zombies. While at it, document why clearing notask_error is safe for each case. Test case follows. #include #include #include #include #include #include #include static void *nooper(void *arg) { pause(); return NULL; } int main(void) { const struct timespec ts1s = { .tv_sec = 1 }; pid_t tracee, tracer; siginfo_t si; tracee = fork(); if (tracee == 0) { pthread_t thr; pthread_create(&thr, NULL, nooper, NULL); nanosleep(&ts1s, NULL); printf("tracee exiting\n"); pthread_exit(NULL); /* let subthread run */ } tracer = fork(); if (tracer == 0) { ptrace(PTRACE_ATTACH, tracee, NULL, NULL); while (1) { if (waitid(P_PID, tracee, &si, WSTOPPED) < 0) { perror("waitid"); break; } ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); } return 0; } waitid(P_PID, tracer, &si, WEXITED); kill(tracee, SIGKILL); return 0; } Before the patch, after the tracee becomes a zombie, the tracer's waitid(WSTOPPED) never returns and the program doesn't terminate. tracee exiting ^C After the patch, tracee exiting triggers waitid() to fail. tracee exiting waitid: No child processes -v2: Oleg pointed out that exited in addition to continued can happen for ptraced dead group leader. Clear notask_error for ptraced child on WEXITED too. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 823b018e5b1196d810790559357447948f644548 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Small reorganization of wait_consider_task() Move EXIT_DEAD test in wait_consider_task() above ptrace check. As ptraced tasks can't be EXIT_DEAD, this change doesn't cause any behavior change. This is to prepare for further changes. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 408a37de6c95832a4880a88a742f89f0cc554d06 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 job control: Don't set group_stop exit_code if re-entering job control stop While ptraced, a task may be resumed while the containing process is still job control stopped. If the task receives another stop signal in this state, it will still initiate group stop, which generates group_exit_code, which the real parent would be able to see once the ptracer detaches. In this scenario, the real parent may see two consecutive CLD_STOPPED events from two stop signals without intervening SIGCONT, which normally is impossible. Test case follows. #include #include #include #include int main(void) { pid_t tracee; siginfo_t si; tracee = fork(); if (!tracee) while (1) pause(); kill(tracee, SIGSTOP); waitid(P_PID, tracee, &si, WSTOPPED); if (!fork()) { ptrace(PTRACE_ATTACH, tracee, NULL, NULL); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_DETACH, tracee, NULL, NULL); return 0; } while (1) { si.si_pid = 0; waitid(P_PID, tracee, &si, WSTOPPED | WNOHANG); if (si.si_pid) printf("st=%02d c=%02d\n", si.si_status, si.si_code); } return 0; } Before the patch, the latter waitid() in polling mode reports the second stopped event generated by the implied SIGSTOP of PTRACE_ATTACH. st=19 c=05 ^C After the patch, the second event is not reported. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit 0e9f0a4abfd80f8adca624538d479d95159b16d8 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 ptrace: Always put ptracee into appropriate execution state Currently, __ptrace_unlink() wakes up the tracee iff it's in TASK_TRACED. For unlinking from PTRACE_DETACH, this is correct as the tracee is guaranteed to be in TASK_TRACED or dead; however, unlinking also happens when the ptracer exits and in this case the ptracee can be in any state and ptrace might be left running even if the group it belongs to is stopped. This patch updates __ptrace_unlink() such that GROUP_STOP_PENDING is reinstated regardless of the ptracee's current state as long as it's alive and makes sure that signal_wake_up() is called if execution state transition is necessary. Test case follows. #include #include #include #include #include static const struct timespec ts1s = { .tv_sec = 1 }; int main(void) { pid_t tracee; siginfo_t si; tracee = fork(); if (tracee == 0) { while (1) { nanosleep(&ts1s, NULL); write(1, ".", 1); } } ptrace(PTRACE_ATTACH, tracee, NULL, NULL); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); waitid(P_PID, tracee, &si, WSTOPPED); ptrace(PTRACE_CONT, tracee, NULL, (void *)(long)si.si_status); write(1, "exiting", 7); return 0; } Before the patch, after the parent process exits, the child is left running and prints out "." every second. exiting..... (continues) After the patch, the group stop initiated by the implied SIGSTOP from PTRACE_ATTACH is re-established when the parent exits. exiting Signed-off-by: Tejun Heo Reported-by: Oleg Nesterov Acked-by: Oleg Nesterov commit e3bd058f62896ec7a2c605ed62a0a811e9147947 Author: Tejun Heo Date: Wed Mar 23 10:37:01 2011 +0100 ptrace: Collapse ptrace_untrace() into __ptrace_unlink() Remove the extra task_is_traced() check in __ptrace_unlink() and collapse ptrace_untrace() into __ptrace_unlink(). This is to prepare for further changes. While at it, drop the comment on top of ptrace_untrace() and convert __ptrace_unlink() comment to docbook format. Detailed comment will be added by the next patch. This patch doesn't cause any visible behavior changes. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov commit d79fdd6d96f46fabb779d86332e3677c6f5c2a4f Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Clean transitions between TASK_STOPPED and TRACED Currently, if the task is STOPPED on ptrace attach, it's left alone and the state is silently changed to TRACED on the next ptrace call. The behavior breaks the assumption that arch_ptrace_stop() is called before any task is poked by ptrace and is ugly in that a task manipulates the state of another task directly. With GROUP_STOP_PENDING, the transitions between TASK_STOPPED and TRACED can be made clean. The tracer can use the flag to tell the tracee to retry stop on attach and detach. On retry, the tracee will enter the desired state in the correct way. The lower 16bits of task->group_stop is used to remember the signal number which caused the last group stop. This is used while retrying for ptrace attach as the original group_exit_code could have been consumed with wait(2) by then. As the real parent may wait(2) and consume the group_exit_code anytime, the group_exit_code needs to be saved separately so that it can be used when switching from regular sleep to ptrace_stop(). This is recorded in the lower 16bits of task->group_stop. If a task is already stopped and there's no intervening SIGCONT, a ptrace request immediately following a successful PTRACE_ATTACH should always succeed even if the tracer doesn't wait(2) for attach completion; however, with this change, the tracee might still be TASK_RUNNING trying to enter TASK_TRACED which would cause the following request to fail with -ESRCH. This intermediate state is hidden from the ptracer by setting GROUP_STOP_TRAPPING on attach and making ptrace_check_attach() wait for it to clear on its signal->wait_chldexit. Completing the transition or getting killed clears TRAPPING and wakes up the tracer. Note that the STOPPED -> RUNNING -> TRACED transition is still visible to other threads which are in the same group as the ptracer and the reverse transition is visible to all. Please read the comments for details. Oleg: * Spotted a race condition where a task may retry group stop without proper bookkeeping. Fixed by redoing bookkeeping on retry. * Spotted that the transition is visible to userland in several different ways. Most are fixed with GROUP_STOP_TRAPPING. Unhandled corner case is documented. * Pointed out not setting GROUP_STOP_SIGMASK on an already stopped task would result in more consistent behavior. * Pointed out that calling ptrace_stop() from do_signal_stop() in TASK_STOPPED can race with group stop start logic and then confuse the TRAPPING wait in ptrace_check_attach(). ptrace_stop() is now called with TASK_RUNNING. * Suggested using signal->wait_chldexit instead of bit wait. * Spotted a race condition between TRACED transition and clearing of TRAPPING. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath Cc: Jan Kratochvil commit 5224fa3660ad3881d2f2ad726d22614117963f10 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Make do_signal_stop() use ptrace_stop() if the task is being ptraced A ptraced task would still stop at do_signal_stop() when it's stopping for stop signals and do_signal_stop() behaves the same whether the task is ptraced or not. However, in addition to stopping, ptrace_stop() also does ptrace specific stuff like calling architecture specific callbacks, so this behavior makes the code more fragile and difficult to understand. This patch makes do_signal_stop() test whether the task is ptraced and use ptrace_stop() if so. This renders tracehook_notify_jctl() rather pointless as the ptrace notification is now handled by ptrace_stop() regardless of the return value from the tracehook. It probably is a good idea to update it. This doesn't solve the whole problem as tasks already in stopped state would stay in the regular stop when ptrace attached. That part will be handled by the next patch. Oleg pointed out that this makes a userland-visible change. Before, SIGCONT would be able to wake up a task in group stop even if the task is ptraced if the tracer hasn't issued another ptrace command afterwards (as the next ptrace commands transitions the state into TASK_TRACED which ignores SIGCONT wakeups). With this and the next patch, SIGCONT may race with the transition into TASK_TRACED and is ignored if the tracee already entered TASK_TRACED. Another userland visible change of this and the next patch is that the ptracee's state would now be TASK_TRACED where it used to be TASK_STOPPED, which is visible via fs/proc. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath Cc: Jan Kratochvil commit 0ae8ce1c8c5b9007ce6bfc83ec2aa0dfce5bbed3 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Participate in group stop from ptrace_stop() iff the task is trapping for group stop Currently, ptrace_stop() unconditionally participates in group stop bookkeeping. This is unnecessary and inaccurate. Make it only participate if the task is trapping for group stop - ie. if @why is CLD_STOPPED. As ptrace_stop() currently is not used when trapping for group stop, this equals to disabling group stop participation from ptrace_stop(). A visible behavior change is increased likelihood of delayed group stop completion if the thread group contains one or more ptraced tasks. This is to preapre for further cleanup of the interaction between group stop and ptrace. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath commit 39efa3ef3a376a4e53de2f82fc91182459d34200 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 signal: Use GROUP_STOP_PENDING to stop once for a single group stop Currently task->signal->group_stop_count is used to decide whether to stop for group stop. However, if there is a task in the group which is taking a long time to stop, other tasks which are continued by ptrace would repeatedly stop for the same group stop until the group stop is complete. Conversely, if a ptraced task is in TASK_TRACED state, the debugger won't get notified of group stops which is inconsistent compared to the ptraced task in any other state. This patch introduces GROUP_STOP_PENDING which tracks whether a task is yet to stop for the group stop in progress. The flag is set when a group stop starts and cleared when the task stops the first time for the group stop, and consulted whenever whether the task should participate in a group stop needs to be determined. Note that now tasks in TASK_TRACED also participate in group stop. This results in the following behavior changes. * For a single group stop, a ptracer would see at most one stop reported. * A ptracee in TASK_TRACED now also participates in group stop and the tracer would get the notification. However, as a ptraced task could be in TASK_STOPPED state or any ptrace trap could consume group stop, the notification may still be missing. These will be addressed with further patches. * A ptracee may start a group stop while one is still in progress if the tracer let it continue with stop signal delivery. Group stop code handles this correctly. Oleg: * Spotted that a task might skip signal check even when its GROUP_STOP_PENDING is set. Fixed by updating recalc_sigpending_tsk() to check GROUP_STOP_PENDING instead of group_stop_count. * Pointed out that task->group_stop should be cleared whenever task->signal->group_stop_count is cleared. Fixed accordingly. * Pointed out the behavior inconsistency between TASK_TRACED and RUNNING and the last behavior change. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath commit e5c1902e9260a0075ea52cb5ef627a8d9aaede89 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 signal: Fix premature completion of group stop when interfered by ptrace task->signal->group_stop_count is used to track the progress of group stop. It's initialized to the number of tasks which need to stop for group stop to finish and each stopping or trapping task decrements. However, each task doesn't keep track of whether it decremented the counter or not and if woken up before the group stop is complete and stops again, it can decrement the counter multiple times. Please consider the following example code. static void *worker(void *arg) { while (1) ; return NULL; } int main(void) { pthread_t thread; pid_t pid; int i; pid = fork(); if (!pid) { for (i = 0; i < 5; i++) pthread_create(&thread, NULL, worker, NULL); while (1) ; return 0; } ptrace(PTRACE_ATTACH, pid, NULL, NULL); while (1) { waitid(P_PID, pid, NULL, WSTOPPED); ptrace(PTRACE_SINGLESTEP, pid, NULL, (void *)(long)SIGSTOP); } return 0; } The child creates five threads and the parent continuously traps the first thread and whenever the child gets a signal, SIGSTOP is delivered. If an external process sends SIGSTOP to the child, all other threads in the process should reliably stop. However, due to the above bug, the first thread will often end up consuming group_stop_count multiple times and SIGSTOP often ends up stopping none or part of the other four threads. This patch adds a new field task->group_stop which is protected by siglock and uses GROUP_STOP_CONSUME flag to track which task is still to consume group_stop_count to fix this bug. task_clear_group_stop_pending() and task_participate_group_stop() are added to help manipulating group stop states. As ptrace_stop() now also uses task_participate_group_stop(), it will set SIGNAL_STOP_STOPPED if it completes a group stop. There still are many issues regarding the interaction between group stop and ptrace. Patches to address them will follow. - Oleg spotted duplicate GROUP_STOP_CONSUME. Dropped. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath commit fe1bc6a0954611b806f9e158eb0817cf8ba21660 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Add @why to ptrace_stop() To prepare for cleanup of the interaction between group stop and ptrace, add @why to ptrace_stop(). Existing users are updated such that there is no behavior change. Signed-off-by: Tejun Heo Acked-by: Roland McGrath commit edf2ed153bcae52de70db00a98b0e81a5668e563 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Kill tracehook_notify_jctl() tracehook_notify_jctl() aids in determining whether and what to report to the parent when a task is stopped or continued. The function also adds an extra requirement that siglock may be released across it, which is currently unused and quite difficult to satisfy in well-defined manner. As job control and the notifications are about to receive major overhaul, remove the tracehook and open code it. If ever necessary, let's factor it out after the overhaul. * Oleg spotted incorrect CLD_CONTINUED/STOPPED selection when ptraced. Fixed. Signed-off-by: Tejun Heo Cc: Oleg Nesterov Cc: Roland McGrath commit 71db5eb99c960e9c30e4b3ed04103c513b6251b5 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 signal: Remove superflous try_to_freeze() loop in do_signal_stop() do_signal_stop() is used only by get_signal_to_deliver() and after a successful signal stop, it always calls try_to_freeze(), so the try_to_freeze() loop around schedule() in do_signal_stop() is superflous and confusing. Remove it. Signed-off-by: Tejun Heo Acked-by: Rafael J. Wysocki Acked-by: Oleg Nesterov Acked-by: Roland McGrath commit 9f2bf6513a6cca0b00cbbf67ba6197017cfba548 Author: Tejun Heo Date: Wed Mar 23 10:37:00 2011 +0100 ptrace: Remove the extra wake_up_state() from ptrace_detach() This wake_up_state() has a turbulent history. This is a remnant from ancient ptrace implementation and patently wrong. Commit 95a3540d (ptrace_detach: the wrong wakeup breaks the ERESTARTxxx logic) removed it but the change was reverted later by commit edaba2c5 (ptrace: revert "ptrace_detach: the wrong wakeup breaks the ERESTARTxxx logic") citing compatibility breakage and general brokeness of the whole group stop / ptrace interaction. Then, recently, it got converted from wake_up_process() to wake_up_state() to make it less dangerous. Digging through the mailing archives, the compatibility breakage doesn't seem to be critical in the sense that the behavior isn't well defined or reliable to begin with and it seems to have been agreed to remove the wakeup with proper cleanup of the whole thing. Now that the group stop and its interaction with ptrace are being cleaned up, it's high time to finally kill this silliness. Signed-off-by: Tejun Heo Acked-by: Oleg Nesterov Cc: Roland McGrath commit c672af35d54992b88d3c48133bd62cc3386fb2f9 Author: Tejun Heo Date: Wed Mar 23 10:36:59 2011 +0100 signal: Fix SIGCONT notification code After a task receives SIGCONT, its parent is notified via SIGCHLD with its siginfo describing what the notified event is. If SIGCONT is received while the child process is stopped, the code should be CLD_CONTINUED. If SIGCONT is recieved while the child process is in the process of being stopped, it should be CLD_STOPPED. Which code to use is determined in prepare_signal() and recorded in signal->flags using SIGNAL_CLD_CONTINUED|STOP flags. get_signal_deliver() should test these flags and then notify accoringly; however, it incorrectly tested SIGNAL_STOP_CONTINUED instead of SIGNAL_CLD_CONTINUED, thus incorrectly notifying CLD_CONTINUED if the signal is delivered before the task is wait(2)ed and CLD_STOPPED if the state was fetched already. Fix it by testing SIGNAL_CLD_CONTINUED. While at it, uncompress the ?: test into if/else clause for better readability. Signed-off-by: Tejun Heo Reviewed-by: Oleg Nesterov Acked-by: Roland McGrath commit 3e95b9aba50deeee69afce87d2bcd94c4cd1d95e Author: Lydia Wang Date: Wed Mar 23 15:13:28 2011 +0800 ALSA: hda - VIA: Add new power management function. Use set_widgets_power_state() function to seperately control different codecs' power management actions and to replace the original large function. Also fix some wrong widgets power up sequence which caused no sound issue under Smart5.1 mode and Independent HP mode. Signed-off-by: Lydia Wang Signed-off-by: Takashi Iwai commit b21a8ee67013372f439fbd1591e91d09de49bb9c Author: Ondrej Zary Date: Sat Mar 19 17:23:47 2011 +0100 [media] remove radio-maestro Remove broken radio-maestro driver as the radio functionality is now integrated in the es1968 driver. Signed-off-by: Ondrej Zary Acked-by: Mauro Carvalho Chehab Acked-by: Hans Verkuil Signed-off-by: Takashi Iwai commit b299eb5cde1a91706c450804006c6559b0826df8 Author: Durgadoss R Date: Thu Mar 3 04:30:13 2011 +0530 ACPI:Fix goto flows in thermal-sys This patch fixes two minor bugs in thermal_sys: (a) The flow of goto's in thermal_hwmon_add_sysfs. (b) Remove the temp*_crit only if there is a get_crit_temp defined, in thermal_remove_hwmon_sysfs. Signed-off-by: Durgadoss R Signed-off-by: Len Brown commit 312158718fe2056703b2744801165a9574560495 Author: Mark Brown Date: Thu Mar 17 20:23:43 2011 +0000 ASoC: Add WM8958 enhanced EQ support DSP2 in the WM8958 can be used to support an upgraded EQ for use in demanding applications. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 09e10d7fe509408d15818db6a0299f563668a7ba Author: Mark Brown Date: Wed Mar 16 22:57:47 2011 +0000 ASoC: Add WM8958 VSS support With appropriate firmware the WM8958 can support Virtual Surround Sound or VSS, widening the stereo audio image for improved user experience. Enable support for this mode of operation when the appropriate firmware can be loaded at runtime. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit f20d77ce2663b31c2994462d9ab9143726b67f3e Author: Mark Brown Date: Wed Mar 16 20:55:37 2011 +0000 ASoC: Refactor WM8958 DSP to support additional algorithms In preparation for the addition of additional WM8958 algorithms reorganise the code to make it easier to add such support later. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit fbbf592002ee46ed14d5bd88f1150c604b34e705 Author: Mark Brown Date: Fri Mar 11 18:09:04 2011 +0000 ASoC: Support download of WM8958 MBC firmware Allow userspace to supply an update to the ROM firmware. The firmware request is non-blocking so userspace can load the firmware at its leisure without delaying startup, the driver will begin using the firmware the next time MBC is started after it has been supplied. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 66b5b9722b8743f83d4c3f11f39665f5f2c40b12 Author: Dimitris Papastamos Date: Wed Mar 16 12:16:39 2011 +0000 ALSA: Add snd_ctl_replace() to dynamically replace a control Add a function to dynamically replace a given control. If the control does not already exist, a third parameter is used to determine whether to actually add that control. This is useful in cases where downloadable firmware at runtime can add or replace existing controls. A separate patch needs to be made to allow ALSA Mixer to render the replaced controls on the fly. Signed-off-by: Dimitris Papastamos Signed-off-by: Takashi Iwai commit 1a978c50c6cff743c3516ffa6d2ce44382e7b70b Author: Alan Ott Date: Sat Mar 19 20:29:45 2011 -0400 HID: Move hiddev.txt to the new Documentation/hid directory With the new Documentation/hid directory, it makes sense to have hiddev.txt here as well. Signed-off-by: Alan Ott Signed-off-by: Jiri Kosina commit c54ea4918c2b7722d7242ea53271356501988a9b Author: Alan Ott Date: Sat Mar 19 20:29:44 2011 -0400 HID: Documentation for hidraw Documenation for the hidraw driver, with sample program. Signed-off-by: Alan Ott Signed-off-by: Jiri Kosina commit 5806896019ceaa0a1e808182afb4bba33c948ad6 Author: Paul Gortmaker Date: Mon Mar 14 19:32:21 2011 -0400 security: select correct default LSM_MMAP_MIN_ADDR on ARM. The default for this is universally set to 64k, but the help says: For most ia64, ppc64 and x86 users with lots of address space a value of 65536 is reasonable and should cause no problems. On arm and other archs it should not be higher than 32768. The text is right, in that we are seeing selinux-enabled ARM targets that fail to launch /sbin/init because selinux blocks a memory map. So select the right value if we know we are building ARM. Signed-off-by: Paul Gortmaker Signed-off-by: James Morris commit 0523656eed6941a1a0e6b8de36ca73f44d2142c0 Author: Florian Tobias Schandinat Date: Mon Mar 21 01:46:24 2011 +0000 viafb: kill crt_setting_information As the iga path is the only remaining information which is also handled by the active devices there is no reason to keep it. Signed-off-by: Florian Tobias Schandinat commit 486d4c08dd2eb29b26b4a27f8056155a7a639861 Author: Florian Tobias Schandinat Date: Wed Mar 16 13:46:36 2011 +0000 viafb: no need to write CRTC values twice Later the correct values will be written so there is no need to write early some values which might be wrong. Signed-off-by: Florian Tobias Schandinat commit 0f8132b7431e241c29e61ac14f22549a6fca9632 Author: Florian Tobias Schandinat Date: Wed Mar 16 13:11:17 2011 +0000 viafb: move initialization code This moves some mode independend initialization code to the function where the other parts of the initialization are. Signed-off-by: Florian Tobias Schandinat commit 1e648a13720ef5de51f132501acf3e443d1a36d4 Author: Benjamin Tissoires Date: Fri Mar 18 14:27:55 2011 +0100 HID: hid-multitouch: refactor initialization of ABS_MT_ORIENTATION The way the input_set_abs_params was called for the new composite field ABS_MT_ORIENTATION was not very clear at second reading. We can remove the non-necessary call to set_abs and use the simple call to input_set_abs_params. Signed-off-by: Benjamin Tissoires Reviewed-by: Stéphane Chatty Signed-off-by: Jiri Kosina commit a841b62c5d5f75ce3676fde755696d30cc8de99a Author: Benjamin Tissoires Date: Fri Mar 18 14:27:54 2011 +0100 HID: hid-multitouch: migrate Cando dual touch panels to hid-multitouch This patch merges hid-cando into the unified multitouch driver. Signed-off-by: Benjamin Tissoires Reviewed-by: Stéphane Chatty Reviewed-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit 043b403aede4a528ed99ceaf050f567f1283a23e Author: Benjamin Tissoires Date: Fri Mar 18 14:27:53 2011 +0100 HID: hid-multitouch: migrate support for Stantum panels to the unified driver. This patch merges hid-stantum to the generic multitouch driver. Signed-off-by: Benjamin Tissoires Reviewed-by: Stéphane Chatty Reviewed-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit 9498f954a4ec389806333041a1018909c6fe0518 Author: Benjamin Tissoires Date: Fri Mar 18 14:27:52 2011 +0100 HID: hid-multitouch: Auto detection of maxcontacts This patch enables support of autodetection of maxcontacts. When adding support for a new device, one is now able to let the device tell how many contacts it supports, or to manually set the value if the device happens to provide wrong information. Signed-off-by: Benjamin Tissoires Reviewed-by: Stéphane Chatty Reviewed-by: Henrik Rydberg Signed-off-by: Jiri Kosina commit 1872f589951caee1afd7cd2ea6729ac892de9ddf Author: Ondrej Zary Date: Sat Mar 19 16:33:14 2011 +0100 ALSA: es1968: add radio (tea575x tuner) support Add TEA5757 radio tuner support to es1968 driver. This is found at least on MediaForte SF64-PCE2 sound cards. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit f8960d61bc8ba945b07a4de1288aac5d52f8607b Author: Ondrej Zary Date: Sat Mar 19 16:33:01 2011 +0100 ALSA: tea575x-tuner: remove dev_nr Remove unused dev_nr from struct tea575x_tuner. Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit 375d135818f32bbe7b3f071bd54d977c4ff8d84a Author: Ondrej Zary Date: Sat Mar 19 16:32:53 2011 +0100 ALSA: tea575x-tuner: various improvements Improve tea575x-tuner with various good things from radio-maestro: - extend frequency range to 50-150MHz - fix querycap(): card name, CAP_RADIO - improve g_tuner(): CAP_STEREO, stereo and tuned indication - improve g_frequency(): tuner index checking and reading frequency from HW - improve s_frequency(): tuner index and type checking Signed-off-by: Ondrej Zary Signed-off-by: Takashi Iwai commit af9af866020ea341aca32123b3109b6a9408dd8c Author: Mark Brown Date: Wed Mar 16 21:05:06 2011 +0000 ASoC: Mark WM8958 DSP2 registers readable Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit c6b7b57012c8307b936025ad41fcbef6b1b6b52f Author: Mark Brown Date: Fri Mar 11 18:13:12 2011 +0000 ASoC: Handle startup sequencing of WM8958 DSP2 with deferred clocking The DSP2 startup requires that the clock be enable so if we've deferred clock startup we need to defer DSP2 startup Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit f701a2e594e62b35d895ad5ec1db8d2d0714c158 Author: Mark Brown Date: Wed Mar 9 19:31:01 2011 +0000 ASoC: Factor WM8958 DSP2 handling into separate file DSP2 on the WM8958 has a default ROM which provides a multi-band compressor for enhanced performance on mobile devices but can also support runtime download of alternative firmware. In preparation for more exploiting this functionality refactor the code to split the handling of DSP2 into a separate file. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 780e2806986f9cc980808687da95160c65baa78a Author: Mark Brown Date: Fri Mar 11 18:00:19 2011 +0000 ASoC: Treat WM8958 revision A as WM8994 revision D The first WM8958 revision requires similar treatment. Signed-off-by: Mark Brown Acked-by: Liam Girdwood commit 4aab1e896a0a9d57420ff2867caa5a369123d8cb Author: David Howells Date: Fri Mar 11 17:57:33 2011 +0000 KEYS: Make request_key() and co. return an error for a negative key Make request_key() and co. return an error for a negative or rejected key. If the key was simply negated, then return ENOKEY, otherwise return the error with which it was rejected. Without this patch, the following command returns a key number (with the latest keyutils): [root@andromeda ~]# keyctl request2 user debug:foo rejected @s 586569904 Trying to print the key merely gets you a permission denied error: [root@andromeda ~]# keyctl print 586569904 keyctl_read_alloc: Permission denied Doing another request_key() call does get you the error, as long as it hasn't expired yet: [root@andromeda ~]# keyctl request user debug:foo request_key: Key was rejected by service Signed-off-by: David Howells Signed-off-by: James Morris commit 78b7280cce23293f7570ad52c1ffe1485c6d9669 Author: David Howells Date: Fri Mar 11 17:57:23 2011 +0000 KEYS: Improve /proc/keys Improve /proc/keys by: (1) Don't attempt to summarise the payload of a negated key. It won't have one. To this end, a helper function - key_is_instantiated() has been added that allows the caller to find out whether the key is positively instantiated (as opposed to being uninstantiated or negatively instantiated). (2) Do show keys that are negative, expired or revoked rather than hiding them. This requires an override flag (no_state_check) to be passed to search_my_process_keyrings() and keyring_search_aux() to suppress this check. Without this, keys that are possessed by the caller, but only grant permissions to the caller if possessed are skipped as the possession check fails. Keys that are visible due to user, group or other checks are visible with or without this patch. Signed-off-by: David Howells Signed-off-by: James Morris commit 5d94e81f69d4b1d1102d3ab557ce0a817c11fbbb Author: Dan Williams Date: Tue Mar 8 10:36:19 2011 -0800 x86: Introduce pci_map_biosrom() The isci driver needs to retrieve its preboot OROM image which contains necessary runtime parameters like platform specific sas addresses and phy configuration. There is no ROM BAR associated with this area, instead we will need to scan legacy expansion ROM space. 1/ Promote the probe_roms_32 implementation to x86-64 2/ Add a facility to find and map an adapter rom by pci device (according to PCI Firmware Specification Revision 3.0) Signed-off-by: Dave Jiang LKML-Reference: <20110308183226.6246.90354.stgit@localhost6.localdomain6> Signed-off-by: Dan Williams Signed-off-by: H. Peter Anvin commit 45bb1674b976ef81429c1e42de05844b49d45dea Author: Daniel Drake Date: Sun Mar 13 15:10:17 2011 +0000 x86, olpc: Use device tree for platform identification Make OLPC fully depend on device tree, and use it to identify the OLPC platform details. Some nodes are exposed as platform devices where we plan to use device tree for device probing. Signed-off-by: Daniel Drake Acked-by: Grant Likely LKML-Reference: <20110313151017.C255F9D401E@zog.reactivated.net> Signed-off-by: H. Peter Anvin commit d79647aea22732f39c81bbdc80931f96b46023f0 Author: Daniel De Graaf Date: Mon Mar 7 15:18:57 2011 -0500 xen/gntdev,gntalloc: Remove unneeded VM flags The only time when granted pages need to be treated specially is when using Xen's PTE modification for grant mappings owned by another domain (that is, only gntdev on PV guests). Otherwise, the area does not require VM_DONTCOPY and VM_PFNMAP, since it can be accessed just like any other page of RAM. Since the vm_operations_struct close operations decrement reference counts, a corresponding open function that increments them is required now that it is possible to have multiple references to a single area. We are careful in the gntdev to check if we can remove those flags. The reason that we need to be careful in gntdev on PV guests is because we are not changing the PFN/MFN mapping on PV; instead, we change the application's page tables to point to the other domain's memory. This means that the vma cannot be copied without using another grant mapping hypercall; it also requires special handling on unmap, which is the reason for gntdev's dependency on the MMU notifier. For gntalloc, this is not a concern - the pages are owned by the domain using the gntalloc device, and can be mapped and unmapped in the same manner as any other page of memory. Acked-by: Ian Campbell Signed-off-by: Daniel De Graaf Signed-off-by: Konrad Rzeszutek Wilk [v2: Added in git commit "We are.." from email correspondence] commit a1c57e0fec53defe745e64417eacdbd3618c3e66 Author: John Stultz Date: Mon Apr 26 20:20:07 2010 -0700 blackfin: convert to clocksource_register_hz This converts the blackfin clocksource to use clocksource_register_hz. CC: Mike Frysinger CC: Thomas Gleixner Signed-off-by: John Stultz commit 75c4fd8c7862f37eeae5c80f33bbe4dce97571d4 Author: John Stultz Date: Mon Apr 26 20:23:11 2010 -0700 mips: convert to clocksource_register_hz/khz This converts the mips clocksources to use clocksource_register_hz/khz CC: Ralf Baechle CC: Thomas Gleixner Signed-off-by: John Stultz commit 39280742efb00ab61ad62486c737fdd3e980c30f Author: John Stultz Date: Mon Apr 26 20:24:37 2010 -0700 sparc: convert to clocksource_register_hz/khz This converts the sparc clocksources to use clocksource_register_hz/khz CC: "David S. Miller" CC: Thomas Gleixner Signed-off-by: John Stultz commit 7861434fe9b5c9dad1bbb1f674cded95950e778e Author: John Stultz Date: Tue Oct 19 17:49:07 2010 -0700 alpha: convert to clocksource_register_hz Converts alpha to use clocksource_register_hz. CC: Richard Henderson CC: Ivan Kokshaysky CC: Matt Turner CC: Thomas Gleixner Signed-off-by: John Stultz commit b8f39f7dfe12d4c8402c493a24fbf1e21d086771 Author: John Stultz Date: Mon Apr 26 20:22:23 2010 -0700 microblaze: convert to clocksource_register_hz/khz This converts the microblaze clocksources to use clocksource_register_hz/khz CC: Michal Simek CC: Thomas Gleixner Tested-by: Michal Simek Signed-off-by: John Stultz commit d60c3041778c11f564969fb62b337df68232ee80 Author: John Stultz Date: Mon Apr 26 20:20:47 2010 -0700 ia64: convert to clocksource_register_hz/khz This converts the ia64 clocksources to use clocksource_register_hz/khz CC: Tony Luck CC: Thomas Gleixner Tested-by: Tony Luck [clocksource_itc path] Signed-off-by: John Stultz commit b01cc1b0eae0dea19257b29347116505fbedf679 Author: John Stultz Date: Mon Apr 26 19:03:05 2010 -0700 x86: Convert remaining x86 clocksources to clocksource_register_hz/khz This converts the remaining x86 clocksources to use clocksource_register_hz/khz. CC: jacob.jun.pan@intel.com CC: Glauber Costa CC: Dimitri Sivanich CC: Rusty Russell CC: Jeremy Fitzhardinge CC: Chris McDermott CC: Thomas Gleixner Tested-by: Konrad Rzeszutek Wilk [xen] Signed-off-by: John Stultz commit 36d8593ec74dc04d3bd7c1c897a7b7cfbd0b0dc6 Author: Russell King - ARM Linux Date: Sat Feb 19 15:34:50 2011 +0000 Make clocksource name const As nothing should be writing to the clocksource name string, make the clocksource name pointer const. Build-tested on ARM Versatile Express. Signed-off-by: Russell King Signed-off-by: John Stultz commit f17bfe79e6aa34aecbd579258a5c55a790807aca Author: Jiri Slaby Date: Mon Nov 22 11:39:30 2010 -0800 IDE: ide-floppy, remove unnecessary NULL check Stanse found that rq in ide_floppy_callback cannot be NULL, because it is dereferenced all around. So remove the superfluous check. This appeared after blk_* macros removal. Signed-off-by: Jiri Slaby Signed-off-by: David S. Miller commit f2ba70a22c31a179226fa0517729104497a7853f Author: Joe Perches Date: Mon Nov 22 11:38:08 2010 -0800 drivers/ide/pmac.c: Remove unnecessary casts of pci_get_drvdata Signed-off-by: Joe Perches Signed-off-by: David S. Miller commit ba5787323d38084b30261e84510d4a173fcb493a Author: Mariusz Kozlowski Date: Mon Nov 22 11:37:21 2010 -0800 ide: fix use after free in ide-acpi out_obj points to kfreed memory and we dereference that pointer in DEBPRINT/printk. Signed-off-by: Mariusz Kozlowski Signed-off-by: David S. Miller commit 559fa6e76b271b98ff641fa2a968aa2439e43c28 Author: Jesper Juhl Date: Sat Oct 30 21:56:26 2010 +0200 profile: Use vzalloc() rather than vmalloc() & memset() There's no reason to memset() manually when we have vzalloc(). Signed-off-by: Jesper Juhl Cc: Arjan van de Ven Cc: William Irwin LKML-Reference: Signed-off-by: Ingo Molnar