Age | Commit message (Collapse) | Author | Files | Lines |
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
|
|
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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
|
|
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]>
|
|
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]>
|
|
Both r100/r600 had this wrong, use the macro to extract the register
to relocate.
Signed-off-by: Dave Airlie <[email protected]>
|
|
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]>
|
|
This is just a cleanup of the list macro usage.
Signed-off-by: Dave Airlie <[email protected]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
The lock_depth and preempt_count numbers in the latency format is
transposed.
Signed-off-by: Steven Rostedt <[email protected]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
Signed-off-by: John W. Linville <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
|
|
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]>
|
|
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]>
|
|
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]>
|
|
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]>
|