aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-05-19Merge branches 'stable/balloon.cleanup' and 'stable/general.cleanup' of ↵Linus Torvalds10-66/+63
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
2011-05-19Merge branches 'stable/backend.base.v3' and 'stable/gntalloc.v7' of ↵Linus Torvalds9-31/+208
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
2011-05-19Merge branch 'stable/broadcom.ibft' of ↵Linus Torvalds1-19/+32
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)
2011-05-19Merge branch 'move-drivers' of ↵Linus Torvalds29-36/+37
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/
2011-05-19irda: Fix error propagation in ircomm_lmp_connect_response()David S. Miller1-4/+1
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 <[email protected]>
2011-05-19Merge branch 'next' of ↵Linus Torvalds27-509/+331
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
2011-05-19irda: Kill set but unused variable 'bytes' in irlan_check_command_param()David S. Miller1-4/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19irda: Kill set but unused variable 'clen' in ircomm_connect_indication()David S. Miller1-6/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport()David S. Miller1-1/+2
This is identical to the case I fixed in rxrpc_get_peer() Signed-off-by: David S. Miller <[email protected]>
2011-05-19[CPUFREQ] Move x86 drivers to drivers/cpufreq/Dave Jones29-36/+37
Signed-off-by: Dave Jones <[email protected]>
2011-05-19be2net: Kill set but unused variable 'req' in lancer_fw_download()David S. Miller1-2/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19irda: Kill set but unused vars 'saddr' and 'daddr' in ↵David S. Miller1-3/+0
irlan_provider_connect_indication() Signed-off-by: David S. Miller <[email protected]>
2011-05-19atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.David S. Miller1-0/+2
Signed-off-by: David S. Miller <[email protected]>
2011-05-19rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer().David S. Miller1-1/+2
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 <[email protected]>
2011-05-19rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler()David S. Miller1-4/+1
Signed-off-by: David S. Miller <[email protected]>
2011-05-19rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection()David S. Miller1-3/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window()David S. Miller1-2/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19pkt_sched: Kill set but unused variable 'protocol' in tc_classify()David S. Miller1-2/+0
I checked the history and this has been like this since the beginning of time. Signed-off-by: David S. Miller <[email protected]>
2011-05-19isdn: capi: Use pr_debug() instead of ifdefs.David S. Miller1-83/+32
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 <[email protected]>
2011-05-19tg3: Update version to 3.119Matt Carlson1-2/+2
This patch updates the tg3 version to 3.119. Signed-off-by: Matt Carlson <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Apply rx_discards fix to 5719/5720Matt Carlson1-1/+3
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 <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Remove excessive parenthesisMatt Carlson1-18/+18
This patch removes some excessive parenthesizing. Signed-off-by: Matt Carlson <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Consolidate all netdev feature assignmentsMatt Carlson1-27/+24
This patch consolidates all the netdev feature bit assignments to one location. Signed-off-by: Matt Carlson <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Move TSO_CAPABLE assignmentMatt Carlson1-15/+16
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Fix stats for 5704 and later devicesMatt Carlson2-4/+13
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Fix TSO loopback testMatt Carlson1-1/+1
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Consolidate autoneg advertisement setup codeMatt Carlson1-118/+99
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Fix EEE interoperability workaroundMatt Carlson2-21/+22
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Fix IPv6 TCP problems for 5719Matt Carlson1-1/+1
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Fix 57765 B0 data corruptionMatt Carlson2-0/+20
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Cleanup transmit error pathMatt Carlson1-60/+38
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19tg3: Set tx bug flags for more devicesMatt Carlson1-229/+33
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 <[email protected]> Reviewed-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linusLinus Torvalds16-127/+237
* 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
2011-05-19Merge branch 'docs-move' of ↵Linus Torvalds21-11/+22
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:
2011-05-199p: Kill unused variable 'ret' in trans_rdma.c:parse_opts()David S. Miller1-2/+0
Probably just cut and pasted from the other parse_opts() implementations in the 9p sources. Signed-off-by: David S. Miller <[email protected]>
2011-05-199p: Kill set but not used variable 'ret' in parse_opts()David S. Miller1-2/+0
Signed-off-by: David S. Miller <[email protected]>
2011-05-19Revert "rcu: Decrease memory-barrier usage based on semi-formal proof"Paul E. McKenney5-73/+102
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 <[email protected]>
2011-05-19list: remove prefetching from regular list iteratorsLinus Torvalds2-18/+14
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 <linux/prefetch.h> with <linux/const.h>, because the use of LIST_POISON ends up needing it. <linux/poison.h> 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 <[email protected]> Acked-by: David S. Miller <[email protected]> Cc: [email protected] Signed-off-by: Linus Torvalds <[email protected]>
2011-05-19ipconfig wait for carrierMicha Nelissen1-13/+22
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 <[email protected]> Cc: David Miller <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19SCTP: fix race between sctp_bind_addr_free() and sctp_bind_addr_conflict()Jacek Luczak1-6/+4
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:[<ffffffffa02f3dde>] [<ffffffffa02f3dde>] sctp_bind_addr_conflict+0x64/0x82 [sctp] kernel: Call Trace: kernel: [<ffffffffa02f415f>] ? sctp_get_port_local+0x17b/0x2a3 [sctp] kernel: [<ffffffffa02f3d45>] ? sctp_bind_addr_match+0x33/0x68 [sctp] kernel: [<ffffffffa02f4416>] ? sctp_do_bind+0xd3/0x141 [sctp] kernel: [<ffffffffa02f5030>] ? sctp_bindx_add+0x4d/0x8e [sctp] kernel: [<ffffffffa02f5183>] ? sctp_setsockopt_bindx+0x112/0x4a4 [sctp] kernel: [<ffffffff81089e82>] ? generic_file_aio_write+0x7f/0x9b kernel: [<ffffffffa02f763e>] ? sctp_setsockopt+0x14f/0xfee [sctp] kernel: [<ffffffff810c11fb>] ? do_sync_write+0xab/0xeb kernel: [<ffffffff810e82ab>] ? fsnotify+0x239/0x282 kernel: [<ffffffff810c2462>] ? alloc_file+0x18/0xb1 kernel: [<ffffffff8134a0b1>] ? compat_sys_setsockopt+0x1a5/0x1d9 kernel: [<ffffffff8134aaf1>] ? compat_sys_socketcall+0x143/0x1a4 kernel: [<ffffffff810467dc>] ? sysenter_dispatch+0x7/0x32 Signed-off-by: Jacek Luczak <[email protected]> Acked-by: Vlad Yasevich <[email protected]> CC: Eric Dumazet <[email protected]> Reviewed-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19hlist: remove software prefetching in hlist iteratorsLinus Torvalds2-10/+9
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 <[email protected]> Acked-by: David S. Miller <[email protected]> Cc: [email protected] Signed-off-by: Linus Torvalds <[email protected]>
2011-05-19ipv6: reduce per device ICMP mib sizesEric Dumazet5-33/+68
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 <[email protected]> CC: Denys Fedoryshchenko <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19net: ping: fix the coding styleChangli Gao1-3/+7
The characters in a line should be no more than 80. Signed-off-by: Changli Gao <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19net: ping: make local functions staticChangli Gao1-4/+4
As these functions are only used in this file. Signed-off-by: Changli Gao <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-05-19Merge branch 'master' of ↵David S. Miller1-0/+3
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
2011-05-19Merge branch 'tip/perf/core' of ↵Ingo Molnar11-145/+1116
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core
2011-05-19Merge branch 'tip/perf/core-3' of ↵Ingo Molnar1-2/+5
git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core
2011-05-19kmemleak: Initialise kmemleak after debug_objects_mem_init()Catalin Marinas1-1/+1
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 <[email protected]> Tested-by: Tejun Heo <[email protected]> Signed-off-by: Catalin Marinas <[email protected]> Cc: <[email protected]>
2011-05-19kmemleak: Select DEBUG_FS unconditionally in DEBUG_KMEMLEAKCatalin Marinas1-1/+1
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 <[email protected]>
2011-05-19kmemleak: Do not return a pointer to an object that kmemleak did not getCatalin Marinas1-2/+5
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 <[email protected]> Reported-by: Phil Carmody <[email protected]> Acked-by: Phil Carmody <[email protected]> Cc: <[email protected]>