- 27 Jul, 2009 3 commits
-
-
Ingo Molnar authored
Instead of playing with non-preemption, introduce explicit startup serialization. This is more robust and cleaner as well. Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Thomas Gleixner authored
In -rt where the timer softirq is forced threaded the schedule_timeout_uninterruptible() might never return when the timer softirq has not been started yet. Use schedule_hrtimeout() instead Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Thomas Gleixner authored
To avoid allocation allow rt tasks to cache on sigqueue struct. Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 24 Jul, 2009 2 commits
-
-
Thomas Gleixner authored
Developers use preempt_enable_no_resched() in places where the code calls schedule() immediately which is correct. But there are places where preempt_enable_no_resched() is not followed by schedule(). Add debug infrastructre to find the offending code. The identified correct users are converted to use __preempt_enable_no_resched(). For the ever repeating "preempt_enable_no_resched(); schedule();" sequences a onvenience macro preempt_enable_and_schedule() is introduced. Based on a previous patch from Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Ingo Molnar authored
Signed-off-by:
Ingo Molnar <mingo@elte.hu>
-
- 21 Jul, 2009 1 commit
-
-
Thomas Gleixner authored
migration_init() returns the return value of the hotplug notifier. In the success case this is NOTIFY_OK which is 1. initcall_debug evaluates that as an error code because init calls are expected to return 0 on success. Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 20 Jul, 2009 6 commits
-
-
Thomas Gleixner authored
No users outside of kernel/softirq.c Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Peter Zijlstra authored
Wake ups of futex waiters happen with hb->lock held. This can lead to unneccesary lock contention. Wake them when dropping hb->lock. Signed-off-by:
Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Thomas Gleixner authored
Signals which are delivered by current to current can do without waking up current :) Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Ingo Molnar authored
style cleanups. Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Thomas Gleixner authored
Posix timers should not send broadcast signals and kernel only signals. Prevent it. Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
Peter Zijlstra authored
In RT we have multiple non-mutex users of this function. Rename it. Signed-off-by:
Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by:
Ingo Molnar <mingo@elte.hu> Signed-off-by:
Thomas Gleixner <tglx@linutronix.de>
-
- 18 Jul, 2009 1 commit
-
-
git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6Linus Torvalds authored
* 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: drm: Move a dereference below a NULL test fb/intelfb: conflict with DRM_I915 and hide by default drm/ttm: fix misplaced parentheses drm/via: Fix vblank IRQ on VIA hardware. drm: drm_gem, check kzalloc retval drm: drm_debugfs, check kmalloc retval drm/radeon: add some missing pci ids
-
- 17 Jul, 2009 17 commits
-
-
git://git.kernel.org/pub/scm/linux/kernel/git/fyu/linux-2.6Linus Torvalds authored
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/fyu/linux-2.6: Revert "Neither asm/types.h nor linux/types.h is required for arch/ia64/include/asm/fpu.h" Add dma_debug_init() for ia64 Fix ia64 compilation IS_ERR and PTE_ERR errors.
-
git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6Linus Torvalds authored
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: x86/pci: insert ioapic resource before assigning unassigned resources
-
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6Linus Torvalds authored
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: riptide - proper handling of pci_register_driver for joystick sound: usb-audio: add workaround for Blue Microphones devices ALSA: hda_intel: more strict alc880_parse_auto_config dig_nid checking ASoC: Fix NULL pointer dereference in __pxa2xx_pcm_hw_free
-
git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linusLinus Torvalds authored
* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus: virtio_net: Sync header with qemu virtio-pci: correctly unregister root device on error virtio_blk: ioctl return value fix virtio_blk: don't bounce highmem requests lguest: restrict CPUID to avoid perf counter wrmsr lguest: remove unnecessary forward struct declaration lguest: fix journey
-
Linus Torvalds authored
Merge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: tracing/function: Fix the return value of ftrace_trace_onoff_callback()
-
Alan Cox authored
Whoops.. fortunately not many people use this yet. Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Aurelien Jarno authored
asm/fpu.h uses the __IA64_UL macro which is declared in asm/types.h, so this include is really required. Without it, GNU libc fails to build. This reverts commit 2678c07b. Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net> Acked-by:
Fenghua Yu <fenghua.yu@intel.com>
-
fujita authored
The commit 99162195 was supposed to add CONFIG_DMA_API_DEBUG support to IA64 however I forgot to add dma_debug_init(). Signed-off-by:
fujita <fujita@tulip.osrg.net> Acked-by:
Fenghua Yu <fenghua.yu@intel.com>
-
Fenghua Yu authored
When building ia64 kernel with CONFIG_XEN_SYS_HYPERVISOR, compiler reports errors: drivers/xen/sys-hypervisor.c: In function ‘uuid_show’: drivers/xen/sys-hypervisor.c:125: error: implicit declaration of function ‘IS_ERR’ drivers/xen/sys-hypervisor.c:126: error: implicit declaration of function ‘PTR_ERR’ This patch fixes the errors. Signed-off-by:
Fenghua Yu <fenghua.yu@intel.com> Acked-by:
Isaku Yamahata <yamahata@valinux.co.jp>
-
Alex Williamson authored
Qemu added support for a few extra RX modes that Linux doesn't currently make use of. Sync the headers to maintain consistency. Signed-off-by:
Alex Williamson <alex.williamson@hp.com> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Mark McLoughlin authored
If pci_register_driver() fails we're incorrectly unregistering the root device with device_unregister() rather than root_device_unregister(). Reported-by:
Don Zickus <dzickus@redhat.com> Signed-off-by:
Mark McLoughlin <markmc@redhat.com> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Christoph Hellwig authored
Block driver ioctl methods must return ENOTTY and not -ENOIOCTLCMD if they expect the block layer to handle generic ioctls. This triggered a BLKROSET failure in xfsqa #200. Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Christoph Hellwig authored
By default a block driver bounces highmem requests, but virtio-blk is perfectly fine with any request that fit into it's 64 bit addressing scheme, mapped in the kernel virtual space or not. Besides improving performance on highmem systems this also makes the reproducible oops in __bounce_end_io go away (but hiding the real cause). Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Rusty Russell authored
Avoid the following: [ 0.012093] WARNING: at arch/x86/kernel/apic/apic.c:249 native_apic_write_dummy+0x2f/0x40() Rather than chase each new cpuid-detected feature, just lie about the highest valid CPUID so this code is never run. Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Davide Libenzi authored
While fixing lg.h to drop the fwd declaration, I noticed there's another one ;) Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Matias Zabaljauregui authored
fix: "make Guest" was complaining about duplicated G:032 Signed-off-by:
Matias Zabaljauregui <zabaljauregui@gmail.com> Signed-off-by:
Rusty Russell <rusty@rustcorp.com.au>
-
Xiao Guangrong authored
ftrace_trace_onoff_callback() will return an error even if we do the right operation, for example: # echo _spin_*:traceon:10 > set_ftrace_filter -bash: echo: write error: Invalid argument # cat set_ftrace_filter #### all functions enabled #### _spin_trylock_bh:traceon:count=10 _spin_unlock_irq:traceon:count=10 _spin_unlock_bh:traceon:count=10 _spin_lock_irq:traceon:count=10 _spin_unlock:traceon:count=10 _spin_trylock:traceon:count=10 _spin_unlock_irqrestore:traceon:count=10 _spin_lock_irqsave:traceon:count=10 _spin_lock_bh:traceon:count=10 _spin_lock:traceon:count=10 We want to set _spin_*:traceon:10 to set_ftrace_filter, it complains with "Invalid argument", but the operation is successful. This is because ftrace_process_regex() returns the number of functions that matched the pattern. If the number is not 0, this value is returned by ftrace_regex_write() whereas we want to return the number of bytes virtually written. Also the file offset pointer is not updated in this case. If the number of matched functions is lower than the number of bytes written by the user, this results to a reprocessing of the string given by the user with a lower size, leading to a malformed ftrace regex and then a -EINVAL returned. So, this patch fixes it by returning 0 if no error occured. The fix also applies on 2.6.30 Signed-off-by:
Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> Reviewed-by:
Li Zefan <lizf@cn.fujitsu.com> Cc: stable@kernel.org Signed-off-by:
Frederic Weisbecker <fweisbec@gmail.com>
-
- 16 Jul, 2009 10 commits
-
-
Linus Torvalds authored
Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-sched * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-sched: sched: Fix bug in SCHED_IDLE interaction with group scheduling sched: Fix rt_rq->pushable_tasks initialization in init_rt_rq() sched: Reset sched stats on fork() sched_rt: Fix overload bug on rt group scheduling sched: Documentation/sched-rt-group: Fix style issues & bump version
-
Linus Torvalds authored
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: timer stats: fix quick check optimization
-
git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpcLinus Torvalds authored
* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc: Fix another bug in move of altivec code to vector.S powerpc: Fix booke user_disable_single_step()
-
Alan Cox authored
If a tty in N_TTY mode with echo enabled manages to get itself into a state where - echo characters are pending - FASYNC is enabled - tty_write_wakeup is called from either - a device write path (pty) - an IRQ (serial) then it either deadlocks or explodes taking a mutex in the IRQ path. On the serial side it is almost impossible to reproduce because you have to go from a full serial port to a near empty one with echo characters pending. The pty case happens to have become possible to trigger using emacs and ptys, the pty changes having created a scenario which shows up this bug. The code path is n_tty:process_echoes() (takes mutex) tty_io:tty_put_char() pty:pty_write (or serial paths) tty_wakeup (from pty_write or serial IRQ) n_tty_write_wakeup() process_echoes() *KABOOM* Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Jiri Slaby authored
Don't forget to drop a tty refererence on fail paths in receive_data(). Signed-off-by:
Jiri Slaby <jirislaby@gmail.com> Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Johannes Weiner authored
Bootmem is not used for the vt screen buffer anymore as slab is now available at the time the console is initialized. Get rid of the now superfluous distinction between slab and bootmem, it's always slab. This also fixes a kmalloc leak which Catalin described thusly: Commit a5f4f52e ("vt: use kzalloc() instead of the bootmem allocator") replaced the alloc_bootmem() with kzalloc() but didn't set vc_kmalloced to 1 and the memory block is later leaked. The corresponding kmemleak trace: unreferenced object 0xdf828000 (size 8192): comm "swapper", pid 0, jiffies 4294937296 backtrace: [<c006d473>] __save_stack_trace+0x17/0x1c [<c000d869>] log_early+0x55/0x84 [<c01cfa4b>] kmemleak_alloc+0x33/0x3c [<c006c013>] __kmalloc+0xd7/0xe4 [<c00108c7>] con_init+0xbf/0x1b8 [<c0010149>] console_init+0x11/0x20 [<c0008797>] start_kernel+0x137/0x1e4 Signed-off-by:
Johannes Weiner <hannes@cmpxchg.org> Reviewed-by:
Pekka Enberg <penberg@cs.helsinki.fi> Tested-by:
Catalin Marinas <catalin.marinas@arm.com> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Andrew Morton authored
dcb314@hotmail.com notes that this memset has its args reversed. It's unneeded anyway, so remove it. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=13587Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Uwe Kleine-König authored
msm_serial_driver is registered using platform_driver_probe which takes care for the probe function itself. So don't pass it in the driver struct, too. Signed-off-by:
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Alan Cox authored
We can get a situation where a hangup occurs during or after a close. In that case the ldisc gets disposed of by the close and the hangup then explodes. Signed-off-by:
Alan Cox <alan@linux.intel.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-
Eugene Teo authored
Turning on this flag could prevent the compiler from optimising away some "useless" checks for null pointers. Such bugs can sometimes become exploitable at compile time because of the -O2 optimisation. See http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Optimize-Options.html An example that clearly shows this 'problem' is commit 6bf67672. static void __devexit agnx_pci_remove(struct pci_dev *pdev) { struct ieee80211_hw *dev = pci_get_drvdata(pdev); - struct agnx_priv *priv = dev->priv; + struct agnx_priv *priv; AGNX_TRACE; if (!dev) return; + priv = dev->priv; By reverting this patch, and compile it with and without -fno-delete-null-pointer-checks flag, we can see that the check for dev is compiled away. call printk # - testq %r12, %r12 # dev - je .L94 #, movq %r12, %rdi # dev, Clearly the 'fix' is to stop using dev before it is tested, but building with -fno-delete-null-pointer-checks flag at least makes it harder to abuse. Signed-off-by:
Eugene Teo <eugeneteo@kernel.sg> Acked-by:
Eric Paris <eparis@redhat.com> Acked-by:
Wang Cong <amwang@redhat.com> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
-