aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-10-08video: includecheck fix: da8xx-fb.cJaswinder Singh Rajput1-1/+0
fix the following 'make includecheck' warning: drivers/video/da8xx-fb.c: linux/device.h is included more than once. Signed-off-by: Jaswinder Singh Rajput <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2009-10-08video: includecheck fix: msm, mddi.cJaswinder Singh Rajput1-2/+0
fix the following 'make includecheck' warning: drivers/video/msm/mddi.c: linux/delay.h is included more than once. Signed-off-by: Jaswinder Singh Rajput <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2009-10-08fs: includecheck fix: proc, kcore.cJaswinder Singh Rajput1-1/+0
fix the following 'make includecheck' warning: fs/proc/kcore.c: linux/mm.h is included more than once. Signed-off-by: Jaswinder Singh Rajput <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2009-10-08mm: includecheck fix: vmalloc.cJaswinder Singh Rajput1-1/+0
fix the following 'make includecheck' warning: mm/vmalloc.c: linux/highmem.h is included more than once. Signed-off-by: Jaswinder Singh Rajput <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2009-10-08ksm: more on default valuesHugh Dickins3-13/+14
Adjust the max_kernel_pages default to a quarter of totalram_pages, instead of nr_free_buffer_pages() / 4: the KSM pages themselves come from highmem, and even on a 16GB PAE machine, 4GB of KSM pages would only be pinning 32MB of lowmem with their rmap_items, so no need for the more obscure calculation (nor for its own special init function). There is no way for the user to switch KSM on if CONFIG_SYSFS is not enabled, so in that case default run to KSM_RUN_MERGE. Update KSM Documentation and Kconfig to reflect the new defaults. Signed-off-by: Hugh Dickins <[email protected]> Cc: Izik Eidus <[email protected]> Cc: Andrea Arcangeli <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2009-10-08Merge branch 'fix/misc' into for-linusTakashi Iwai4-21/+42
2009-10-08Merge branch 'fix/hda' into for-linusTakashi Iwai1-22/+67
2009-10-08ALSA: ice1724: increase SPDIF and independent stereo buffer sizesRobert Hancock1-2/+2
Increase the default and maximum PCM buffer prellocation size for ice1724's SPDIF and independent stereo pair outputs to 256K, which is the hardware's maximum supported size. This allows a reduction in interrupt rate and potentially power usage when an application is not latency-critical. Signed-off-by: Robert Hancock <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2009-10-08ALSA: opl3: circular locking in the snd_opl3_note_on() and snd_opl3_note_off()Krzysztof Helt1-8/+20
Fix following circular locking in the opl3 driver. ======================================================= [ INFO: possible circular locking dependency detected ] 2.6.32-rc3 #87 ------------------------------------------------------- swapper/0 is trying to acquire lock: (&opl3->voice_lock){..-...}, at: [<cca748fe>] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth] but task is already holding lock: (&opl3->sys_timer_lock){..-...}, at: [<cca75169>] snd_opl3_timer_func+0x19/0xc0 [snd_opl3_synth] which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&opl3->sys_timer_lock){..-...}: [<c02461d5>] validate_chain+0xa25/0x1040 [<c0246aca>] __lock_acquire+0x2da/0xab0 [<c024731a>] lock_acquire+0x7a/0xa0 [<c044c300>] _spin_lock_irqsave+0x40/0x60 [<cca75046>] snd_opl3_note_on+0x686/0x790 [snd_opl3_synth] [<cca68912>] snd_midi_process_event+0x322/0x590 [snd_seq_midi_emul] [<cca74245>] snd_opl3_synth_event_input+0x15/0x20 [snd_opl3_synth] [<cca4dcc0>] snd_seq_deliver_single_event+0x100/0x200 [snd_seq] [<cca4de07>] snd_seq_deliver_event+0x47/0x1f0 [snd_seq] [<cca4e50b>] snd_seq_dispatch_event+0x3b/0x140 [snd_seq] [<cca5008c>] snd_seq_check_queue+0x10c/0x120 [snd_seq] [<cca5037b>] snd_seq_enqueue_event+0x6b/0xe0 [snd_seq] [<cca4e0fd>] snd_seq_client_enqueue_event+0xdd/0x100 [snd_seq] [<cca4eb7a>] snd_seq_write+0xea/0x190 [snd_seq] [<c02827b6>] vfs_write+0x96/0x160 [<c0282c9d>] sys_write+0x3d/0x70 [<c0202c45>] syscall_call+0x7/0xb -> #0 (&opl3->voice_lock){..-...}: [<c02467e6>] validate_chain+0x1036/0x1040 [<c0246aca>] __lock_acquire+0x2da/0xab0 [<c024731a>] lock_acquire+0x7a/0xa0 [<c044c300>] _spin_lock_irqsave+0x40/0x60 [<cca748fe>] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth] [<cca751f0>] snd_opl3_timer_func+0xa0/0xc0 [snd_opl3_synth] [<c022ac46>] run_timer_softirq+0x166/0x1e0 [<c02269e8>] __do_softirq+0x78/0x110 [<c0226ac6>] do_softirq+0x46/0x50 [<c0226e26>] irq_exit+0x36/0x40 [<c0204bd2>] do_IRQ+0x42/0xb0 [<c020328e>] common_interrupt+0x2e/0x40 [<c021092f>] apm_cpu_idle+0x10f/0x290 [<c0201b11>] cpu_idle+0x21/0x40 [<c04443cd>] rest_init+0x4d/0x60 [<c055c835>] start_kernel+0x235/0x280 [<c055c066>] i386_start_kernel+0x66/0x70 other info that might help us debug this: 2 locks held by swapper/0: #0: (&opl3->tlist){+.-...}, at: [<c022abd0>] run_timer_softirq+0xf0/0x1e0 #1: (&opl3->sys_timer_lock){..-...}, at: [<cca75169>] snd_opl3_timer_func+0x19/0xc0 [snd_opl3_synth] stack backtrace: Pid: 0, comm: swapper Not tainted 2.6.32-rc3 #87 Call Trace: [<c0245188>] print_circular_bug+0xc8/0xd0 [<c02467e6>] validate_chain+0x1036/0x1040 [<c0247f14>] ? check_usage_forwards+0x54/0xd0 [<c0246aca>] __lock_acquire+0x2da/0xab0 [<c024731a>] lock_acquire+0x7a/0xa0 [<cca748fe>] ? snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth] [<c044c300>] _spin_lock_irqsave+0x40/0x60 [<cca748fe>] ? snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth] [<cca748fe>] snd_opl3_note_off+0x1e/0xe0 [snd_opl3_synth] [<c044c307>] ? _spin_lock_irqsave+0x47/0x60 [<cca751f0>] snd_opl3_timer_func+0xa0/0xc0 [snd_opl3_synth] [<c022ac46>] run_timer_softirq+0x166/0x1e0 [<c022abd0>] ? run_timer_softirq+0xf0/0x1e0 [<cca75150>] ? snd_opl3_timer_func+0x0/0xc0 [snd_opl3_synth] [<c02269e8>] __do_softirq+0x78/0x110 [<c044c0fd>] ? _spin_unlock+0x1d/0x20 [<c025915f>] ? handle_level_irq+0xaf/0xe0 [<c0226ac6>] do_softirq+0x46/0x50 [<c0226e26>] irq_exit+0x36/0x40 [<c0204bd2>] do_IRQ+0x42/0xb0 [<c024463c>] ? trace_hardirqs_on_caller+0x12c/0x180 [<c020328e>] common_interrupt+0x2e/0x40 [<c0208d88>] ? default_idle+0x38/0x50 [<c021092f>] apm_cpu_idle+0x10f/0x290 [<c0201b11>] cpu_idle+0x21/0x40 [<c04443cd>] rest_init+0x4d/0x60 [<c055c835>] start_kernel+0x235/0x280 [<c055c210>] ? unknown_bootoption+0x0/0x210 [<c055c066>] i386_start_kernel+0x66/0x70 Signed-off-by: Krzysztof Helt <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2009-10-08ALSA: ICE1712/24 - Change the Multi Track Peak control (level meters) from ↵Pavel Hofman2-2/+2
MIXER to PCM type * PLEASE NOTE - this change requires the corresponding update of envy24control for ice1712 - kind of an ABI change. * The "Multi Track Peak" control is read-only level meters indicator. * The control is VERY confusing to most users since it is currently displayed in regular mixers. E.g. alsamixer ignores its read-only status and allows changing the levels with keys which makes no sense. Signed-off-by: Pavel Hofman <[email protected]> Acked-by: Jaroslav Kysela <[email protected]> Signed-off-by: Takashi Iwai <[email protected]>
2009-10-08Merge branch 'drm-next' of ../drm-next into drm-linusDave Airlie49-1610/+3337
conflict in radeon since new init path merged with vga arb code. Conflicts: drivers/gpu/drm/radeon/radeon.h drivers/gpu/drm/radeon/radeon_asic.h drivers/gpu/drm/radeon/radeon_device.c
2009-10-07tracing: user local buffer variable for trace branch tracerSteven Rostedt1-3/+5
Just using the tr->buffer for the API to trace_buffer_lock_reserve is not good enough. This is because the tr->buffer may change, and we do not want to commit with a different buffer that we reserved from. This patch uses a local variable to hold the buffer that was used to reserve and commit with. Signed-off-by: Steven Rostedt <[email protected]>
2009-10-07tracing: fix warning on kernel/trace/trace_branch.c andtrace_hw_branches.cZhenwen Xu2-4/+6
fix warnings that caused the API change of trace_buffer_lock_reserve() change files: kernel/trace/trace_hw_branch.c kernel/trace/trace_branch.c Signed-off-by: Zhenwen Xu <[email protected]> LKML-Reference: <20091008012146.GA4170@helight> Signed-off-by: Steven Rostedt <[email protected]>
2009-10-08drm/radeon/kms: fix vline register for second head.Dave Airlie2-2/+2
Both r100/r600 had this wrong, use the macro to extract the register to relocate. Signed-off-by: Dave Airlie <[email protected]>
2009-10-08drm/r600: avoid assigning vb twice in blit codeRobert Noland2-8/+5
There is no need to assign vb before you know that space is available. [agd5f: adapted for kernel tree.] Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2009-10-08drm/radeon: use list_for_each_entry instead of list_for_eachDave Airlie1-13/+4
This is just a cleanup of the list macro usage. Signed-off-by: Dave Airlie <[email protected]>
2009-10-08drm/radeon/kms: Fix AGP support for R600/RV770 family (v2)Jerome Glisse4-41/+157
For AGP to work unmapped access must cover VRAM & AGP as AGP is treated like VRAM by the GPU (ie physical address). This patch properly setup the virtual memory system aperture to cover AGP if AGP is enabled. It seems that there is memory corruption after resume when using AGP (RV770 seems unaffected thought). Version 2 just fix merge issue with updated AGP fallback patch. Signed-off-by: Jerome Glisse <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2009-10-08drm/radeon/kms: Fallback to non AGP when acceleration fails to initialize (v2)Jerome Glisse3-53/+34
When GPU acceleration is not working with AGP try to fallback to non AGP GART (either PCI or PCIE GART). This should make KMS failure on AGP less painfull. We still need to find out what is wrong when AGP fails but at least user have a lot of more chances to get a working configuration with acceleration. This patch also cleanup R600/RV770 fallback path so they use same code as others asics. Version 2 factorize agp disabling logic to avoid code duplication and bugs. Signed-off-by: Jerome Glisse <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2009-10-08drm/radeon/kms: Fix RS600/RV515/R520/RS690 IRQJerome Glisse2-4/+68
Bad generated header file leaded to use wrong register to check IRQ status and acknowledge them. Fix the header and use proper registers. Signed-off-by: Jerome Glisse <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
2009-10-07ftrace: check for failure for all conversionsSteven Rostedt1-8/+3
Due to legacy code from back when the dynamic tracer used a daemon, only core kernel code was checking for failures. This is no longer the case. We must check for failures any time we perform text modifications. Cc: [email protected] Signed-off-by: Steven Rostedt <[email protected]>
2009-10-07tracing: correct module boundaries for ftrace_release[email protected]2-9/+5
When the module is about the unload we release its call records. The ftrace_release function was given wrong values representing the module core boundaries, thus not releasing its call records. Plus making ftrace_release function module specific. Signed-off-by: Jiri Olsa <[email protected]> LKML-Reference: <[email protected]> Cc: [email protected] Signed-off-by: Steven Rostedt <[email protected]>
2009-10-07futex: fix requeue_pi key imbalanceDarren Hart1-1/+0
If futex_wait_requeue_pi() wakes prior to requeue, we drop the reference to the source futex_key twice, once in handle_early_requeue_pi_wakeup() and once on our way out. Remove the drop from the handle_early_requeue_pi_wakeup() and keep the get/drops together in futex_wait_requeue_pi(). Reported-by: Helge Bahmann <[email protected]> Signed-off-by: Darren Hart <[email protected]> Cc: Helge Bahmann <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Eric Dumazet <[email protected]> Cc: Dinakar Guniguntala <[email protected]> Cc: John Stultz <[email protected]> Cc: stable-2.6.31 <[email protected]> LKML-Reference: <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
2009-10-07tracing: fix transposed numbers of lock_depth and preempt_countSteven Rostedt1-6/+8
The lock_depth and preempt_count numbers in the latency format is transposed. Signed-off-by: Steven Rostedt <[email protected]>
2009-10-07amd64_edac: beef up DRAM error injectionBorislav Petkov2-10/+45
When injecting DRAM ECC errors (F3xBC_x8), EccVector[15:0] is a bitmask of which bits should be error injected when written to and holds the payload of 16-bit DRAM word when read, respectively. Add /sysfs members to show the DRAM ECC section/word/vector. Fail wrong injection values entered over /sysfs instead of truncating them. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix DRAM base and limit extractionBorislav Petkov1-5/+5
On Fam10h and above, F1x[1, 0][7C:40] are DRAM Base/Limit registers which specify the destination node of a DRAM address. Those address boundaries are being extracted into ->dram_base[] and ->dram_limit[]. Correct the extraction masks to match the respective address bits. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix chip select handlingBorislav Petkov2-40/+32
Different processor families support a different number of chip selects. Handle this in a family-dependent way with the proper values assigned at init time (see amd64_set_dct_base_and_mask). Remove _DCSM_COUNT defines since they're used at one place and originate from public documentation. CC: Keith Mannthey <[email protected]> Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: simple fix to allow reporting of CECC errorsKeith Mannthey1-1/+1
This allows the errors to be further decoded and mapped to csrows. Tested with ECC debug dimms and an Rev F cpu based system. Signed-off-by: Keith Mannthey <[email protected]> Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix K8 intlv_sel checkBorislav Petkov1-11/+8
The check when DRAM interleaving is enabled should be done against the pvt->dram_IntlvSel field and not against the ->dram_limit. Simplify first loop and fixup printk formatting while at it. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix interleave enable testsBorislav Petkov1-4/+4
The pvt->dram_IntlvEn saves the 3 "Interleave Enable" bits already right-shifted by 8 so the check in find_mc_by_sys_addr() by shifting the values to the left 8 bits is wrong. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix DRAM base and limit address extractionBorislav Petkov1-2/+2
K8 DRAM base and limit addresses from F1x40 +8*i and F1x44 + 8*i, where i in (0..7) are both bits 39-24 and therefore the shifting should be done by 24 and not by 8. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07amd64_edac: fix driver instance lookup table allocationBorislav Petkov2-2/+4
Allocate memory statically for 8-node machines max for simplicity instead of relying on MAX_NUMNODES which is 0 on !CONFIG_NUMA builds. Spotted by Jan Beulich. Signed-off-by: Borislav Petkov <[email protected]>
2009-10-07ALSA: hda - Fix yet another auto-mic bug in ALC268Takashi Iwai1-1/+3
Since patch_alc268() doesn't call set_capture_mixer() (due to its h/w design different from other siblings), it needs to call fixup_automic_adc() explicitly to set up the auto-mic routing. Otherwise the indices for int/ext mics aren't set properly. Reference: Novell bnc#544899 http://bugzilla.novell.com/show_bug.cgi?id=544899 Signed-off-by: Takashi Iwai <[email protected]>
2009-10-07Revert "Revert "ide: try to use PIO Mode 0 during probe if possible""Bartlomiej Zolnierkiewicz1-0/+9
This reverts commit 24df31acaff8465d797f0006437b45ad0f2a5cb1. The root cause of reported system hangs was (now fixed) sis5513 bug and not "ide: try to use PIO Mode 0 during probe if possible" change (commit 6029336426a2b43e4bc6f4a84be8789a047d139e) so the revert was incorrect (it simply replaced one regression with the other one). Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07sis5513: fix PIO setup for ATAPI devicesBartlomiej Zolnierkiewicz1-4/+6
Clear prefetch setting before potentially (re-)enabling it in config_drive_art_rwp() so the transition of the device type on the port from ATA to ATAPI (i.e. during warm-plug operation) is handled correctly. This is a really old bug (it probably goes back to very early days of the driver) but it was only affecting warm-plug operation until the recent "ide: try to use PIO Mode 0 during probe if possible" change (commit 6029336426a2b43e4bc6f4a84be8789a047d139e). Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]> Tested-by: David Fries <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07NOHZ: update idle state also when NOHZ is inactiveEero Nurkkala1-2/+7
Commit f2e21c9610991e95621a81407cdbab881226419b had unfortunate side effects with cpufreq governors on some systems. If the system did not switch into NOHZ mode ts->inidle is not set when tick_nohz_stop_sched_tick() is called from the idle routine. Therefor all subsequent calls from irq_exit() to tick_nohz_stop_sched_tick() fail to call tick_nohz_start_idle(). This results in bogus idle accounting information which is passed to cpufreq governors. Set the inidle flag unconditionally of the NOHZ active state to keep the idle time accounting correct in any case. [ tglx: Added comment and tweaked the changelog ] Reported-by: Steven Noonan <[email protected]> Signed-off-by: Eero Nurkkala <[email protected]> Cc: Rik van Riel <[email protected]> Cc: Venkatesh Pallipadi <[email protected]> Cc: Greg KH <[email protected]> Cc: Steven Noonan <[email protected]> Cc: [email protected] LKML-Reference: <1254907901.30157.93.camel@eenurkka-desktop> Signed-off-by: Thomas Gleixner <[email protected]>
2009-10-07ethoc: limit the number of buffers to 128Thomas Chou1-2/+2
Only 128 buffer descriptors are supported in the core. Limit the number in case we have more memory. Signed-off-by: Thomas Chou <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07ethoc: use system memory as bufferThomas Chou1-20/+44
This patch enabled the ethoc to allocate system memory as buffer when there is no dedicated buffer memory. Some hardware designs may not have dedicated buffer memory such as on chip or off chip SRAM. In this case, only one memory resource is supplied in the platform data instead of two. Then a DMA buffer can be allocated from system memory and used for the transfer. Signed-off-by: Thomas Chou <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07ethoc: align received packet to make IP header at word boundaryThomas Chou1-0/+4
The packet buffer is allocated at 4 bytes boundary, but the IP header length and version bits is located at byte 14. These bit fields access as 32 bits word and caused exception on processors that do not support unaligned access. The patch adds 2 bytes offset to make the bit fields word aligned. Signed-off-by: Thomas Chou <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07ethoc: fix buffer address mappingThomas Chou1-4/+3
The pointer address in buffer descriptors is physical address. The pointer that processor used to access packet is virtual address. Though the higher bits of pointer address used by the MAC may be truncated to zero in special case, it is not always true in larger designs. Signed-off-by: Thomas Chou <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07ethoc: fix typo to compute number of tx descriptorsThomas Chou1-1/+1
It should be max() instead of min(). Use 1/4 of available descriptors for tx, and there should be at least 2 tx descriptors. Signed-off-by: Thomas Chou <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07au1000_eth: Duplicate test of RX_OVERLEN bit in update_rx_stats()roel kluin1-3/+1
in update_rx_stats() the RX_OVERLEN bit is set twice, replace it by RX_RUNT. in au1000_rx() the RX_MISSED_FRAME bit was tested a few lines earlier already Signed-off-by: Roel Kluin <[email protected]> Acked-by: Manuel Lauss <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07netxen: Fix Unlikely(x) > yRoel Kluin1-1/+1
The closing parenthesis was not on the right location. Signed-off-by: Roel Kluin <[email protected]> Acked-by: Dhananjay Phadke <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07pasemi_mac: ethtool get settings fixValentine Barshak1-0/+3
Not all pasemi mac interfaces can have a phy attached. For example, XAUI has no phy and phydev is NULL for it. In this case ethtool get settings causes kernel crash. Fix it by returning -EOPNOTSUPP if there's no PHY attached. Signed-off-by: Valentine Barshak <[email protected]> Acked-by: Olof Johansson <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07add maintainer for network drop monitor kernel serviceNeil Horman1-0/+7
I was getting ribbed about this earlier, so I figured I'd make it official. Add myself as the maintainer of the drop monitor bits, so people don't just gripe at Dave when it breaks (I'm sure it will never break, but just in case :) ). Signed-off-by: Neil Horman <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07tg3: Fix phylib locking strategyMatt Carlson2-28/+14
Felix Radensky noted that chip resets were generating stack trace dumps. This is because the driver is attempting to acquire the mdio bus mutex while holding the tp->lock spinlock. The fix is to change the code such that every phy access takes the tp->lock spinlock instead. Signed-off-by: Matt Carlson <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07rndis_host: support ETHTOOL_GPERMADDRJohn W. Linville1-0/+1
Signed-off-by: John W. Linville <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07futex: Fix typo in FUTEX_WAIT/WAKE_BITSET_PRIVATE definitionsAnton Blanchard1-2/+2
Looks like a typo, FUTEX_WAKE_BITS should be FUTEX_WAIT_BITSET. Signed-off-by: Anton Blanchard <[email protected]> LKML-Reference: <20091007001358.GE16073@kryten> Signed-off-by: Thomas Gleixner <[email protected]>
2009-10-07ipv4: arp_notify address list bugStephen Hemminger1-6/+10
This fixes a bug with arp_notify. If arp_notify is enabled, kernel will crash if address is changed and no IP address is assigned. http://bugzilla.kernel.org/show_bug.cgi?id=14330 Reported-by: Hannes Frederic Sowa <[email protected]> Signed-off-by: Stephen Hemminger <[email protected]> Signed-off-by: Eric Dumazet <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2009-10-07rcu: Place root rcu_node structure in separate lockdep classPaul E. McKenney1-1/+3
Before this patch, all of the rcu_node structures were in the same lockdep class, so that lockdep would complain when rcu_preempt_offline_tasks() acquired the root rcu_node structure's lock while holding one of the leaf rcu_nodes' locks. This patch changes rcu_init_one() to use a separate spin_lock_init() for the root rcu_node structure's lock than is used for that of all of the rest of the rcu_node structures, which puts the root rcu_node structure's lock in its own lockdep class. Suggested-by: Peter Zijlstra <[email protected]> Signed-off-by: Paul E. McKenney <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] LKML-Reference: <12548908983277-git-send-email-> Signed-off-by: Ingo Molnar <[email protected]>
2009-10-07rcu: Make hot-unplugged CPU relinquish its own RCU callbacksPaul E. McKenney4-75/+125
The current interaction between RCU and CPU hotplug requires that RCU block in CPU notifiers waiting for callbacks to drain. This can be greatly simplified by having each CPU relinquish its own callbacks, and for both _rcu_barrier() and CPU_DEAD notifiers to adopt all callbacks that were previously relinquished. This change also eliminates the possibility of certain types of hangs due to the previous practice of waiting for callbacks to be invoked from within CPU notifiers. If you don't every wait, you cannot hang. Signed-off-by: Paul E. McKenney <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] LKML-Reference: <1254890898456-git-send-email-> Signed-off-by: Ingo Molnar <[email protected]>