Skip to content
  1. Jun 09, 2011
  2. Jun 08, 2011
  3. Jun 07, 2011
  4. Jun 04, 2011
  5. Jun 03, 2011
  6. Jun 01, 2011
  7. May 31, 2011
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · e12ca23d
      Linus Torvalds authored
      * 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
      e12ca23d
    • Linus Torvalds's avatar
      850761b2
    • Tony Luck's avatar
      [IA64] wire up sendmmsg() syscall for Itanium · 83caba84
      Tony Luck authored
      
      
      Add entries in unistd.h and entry.S to make this new syscall visible.
      
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      83caba84
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of... · af0d6a0a
      Linus Torvalds authored
      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
      af0d6a0a
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of... · 07ef3c3b
      Linus Torvalds authored
      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
      07ef3c3b
    • Robert Richter's avatar
      oprofile, dcookies: Fix possible circular locking dependency · fe47ae7f
      Robert Richter authored
      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: [<ffffffff810b444b>] might_fault+0x53/0xa3
      
      but task is already holding lock:
       (dcookie_mutex){+.+.+.}, at: [<ffffffff81124d28>] sys_lookup_dcookie+0x45/0x149
      
      which lock already depends on the new lock.
      
      the existing dependency chain (in reverse order) is:
      
      -> #1 (dcookie_mutex){+.+.+.}:
             [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
             [<ffffffff814634f0>] mutex_lock_nested+0x63/0x309
             [<ffffffff81124e5c>] get_dcookie+0x30/0x144
             [<ffffffffa0000fba>] sync_buffer+0x196/0x3ec [oprofile]
             [<ffffffffa0001226>] task_exit_notify+0x16/0x1a [oprofile]
             [<ffffffff81467b96>] notifier_call_chain+0x37/0x63
             [<ffffffff8105803d>] __blocking_notifier_call_chain+0x50/0x67
             [<ffffffff81058068>] blocking_notifier_call_chain+0x14/0x16
             [<ffffffff8105a718>] profile_task_exit+0x1a/0x1c
             [<ffffffff81039e8f>] do_exit+0x2a/0x6fc
             [<ffffffff8103a5e4>] do_group_exit+0x83/0xae
             [<ffffffff8103a626>] sys_exit_group+0x17/0x1b
             [<ffffffff8146ad4b>] system_call_fastpath+0x16/0x1b
      
      -> #0 (&mm->mmap_sem){++++++}:
             [<ffffffff81064dfb>] __lock_acquire+0x1085/0x1711
             [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
             [<ffffffff810b4478>] might_fault+0x80/0xa3
             [<ffffffff81124de7>] sys_lookup_dcookie+0x104/0x149
             [<ffffffff8146ad4b>] system_call_fastpath+0x16/0x1b
      
      other info that might help us debug this:
      
      1 lock held by oprofiled/4432:
       #0:  (dcookie_mutex){+.+.+.}, at: [<ffffffff81124d28>] sys_lookup_dcookie+0x45/0x149
      
      stack backtrace:
      Pid: 4432, comm: oprofiled Not tainted 2.6.39-00008-ge5a450d #9
      Call Trace:
       [<ffffffff81063193>] print_circular_bug+0xae/0xbc
       [<ffffffff81064dfb>] __lock_acquire+0x1085/0x1711
       [<ffffffff8102ef13>] ? get_parent_ip+0x11/0x42
       [<ffffffff810b444b>] ? might_fault+0x53/0xa3
       [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
       [<ffffffff810b444b>] ? might_fault+0x53/0xa3
       [<ffffffff810d7d54>] ? path_put+0x22/0x27
       [<ffffffff810b4478>] might_fault+0x80/0xa3
       [<ffffffff810b444b>] ? might_fault+0x53/0xa3
       [<ffffffff81124de7>] sys_lookup_dcookie+0x104/0x149
       [<ffffffff8146ad4b>] system_call_fastpath+0x16/0x1b
      
      References: https://bugzilla.kernel.org/show_bug.cgi?id=13809
      
      
      Cc: <stable@kernel.org> # .27+
      Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
      fe47ae7f
    • Robert Richter's avatar
      oprofile: Fix locking dependency in sync_start() · 130c5ce7
      Robert Richter authored
      
      
      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:
      
       750d857c 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: [<ffffffffa0000e55>] sync_buffer+0x31/0x3ec [oprofile]
      
      but task is already holding lock:
       ((task_exit_notifier).rwsem){++++..}, at: [<ffffffff81058026>] __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){++++..}:
             [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
             [<ffffffff81463a2b>] down_write+0x44/0x67
             [<ffffffff810581c0>] blocking_notifier_chain_register+0x52/0x8b
             [<ffffffff8105a6ac>] profile_event_register+0x2d/0x2f
             [<ffffffffa00013c1>] sync_start+0x47/0xc6 [oprofile]
             [<ffffffffa00001bb>] oprofile_setup+0x60/0xa5 [oprofile]
             [<ffffffffa00014e3>] event_buffer_open+0x59/0x8c [oprofile]
             [<ffffffff810cd3b9>] __dentry_open+0x1eb/0x308
             [<ffffffff810cd59d>] nameidata_to_filp+0x60/0x67
             [<ffffffff810daad6>] do_last+0x5be/0x6b2
             [<ffffffff810dbc33>] path_openat+0xc7/0x360
             [<ffffffff810dbfc5>] do_filp_open+0x3d/0x8c
             [<ffffffff810ccfd2>] do_sys_open+0x110/0x1a9
             [<ffffffff810cd09e>] sys_open+0x20/0x22
             [<ffffffff8146ad4b>] system_call_fastpath+0x16/0x1b
      
      -> #0 (buffer_mutex){+.+...}:
             [<ffffffff81064dfb>] __lock_acquire+0x1085/0x1711
             [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
             [<ffffffff814634f0>] mutex_lock_nested+0x63/0x309
             [<ffffffffa0000e55>] sync_buffer+0x31/0x3ec [oprofile]
             [<ffffffffa0001226>] task_exit_notify+0x16/0x1a [oprofile]
             [<ffffffff81467b96>] notifier_call_chain+0x37/0x63
             [<ffffffff8105803d>] __blocking_notifier_call_chain+0x50/0x67
             [<ffffffff81058068>] blocking_notifier_call_chain+0x14/0x16
             [<ffffffff8105a718>] profile_task_exit+0x1a/0x1c
             [<ffffffff81039e8f>] do_exit+0x2a/0x6fc
             [<ffffffff8103a5e4>] do_group_exit+0x83/0xae
             [<ffffffff8103a626>] sys_exit_group+0x17/0x1b
             [<ffffffff8146ad4b>] 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: [<ffffffff81058026>] __blocking_notifier_call_chain+0x39/0x67
      
      stack backtrace:
      Pid: 4447, comm: oprofiled Not tainted 2.6.39-00007-gcf4d8d4 #10
      Call Trace:
       [<ffffffff81063193>] print_circular_bug+0xae/0xbc
       [<ffffffff81064dfb>] __lock_acquire+0x1085/0x1711
       [<ffffffffa0000e55>] ? sync_buffer+0x31/0x3ec [oprofile]
       [<ffffffff8106557f>] lock_acquire+0xf8/0x11e
       [<ffffffffa0000e55>] ? sync_buffer+0x31/0x3ec [oprofile]
       [<ffffffff81062627>] ? mark_lock+0x42f/0x552
       [<ffffffffa0000e55>] ? sync_buffer+0x31/0x3ec [oprofile]
       [<ffffffff814634f0>] mutex_lock_nested+0x63/0x309
       [<ffffffffa0000e55>] ? sync_buffer+0x31/0x3ec [oprofile]
       [<ffffffffa0000e55>] sync_buffer+0x31/0x3ec [oprofile]
       [<ffffffff81058026>] ? __blocking_notifier_call_chain+0x39/0x67
       [<ffffffff81058026>] ? __blocking_notifier_call_chain+0x39/0x67
       [<ffffffffa0001226>] task_exit_notify+0x16/0x1a [oprofile]
       [<ffffffff81467b96>] notifier_call_chain+0x37/0x63
       [<ffffffff8105803d>] __blocking_notifier_call_chain+0x50/0x67
       [<ffffffff81058068>] blocking_notifier_call_chain+0x14/0x16
       [<ffffffff8105a718>] profile_task_exit+0x1a/0x1c
       [<ffffffff81039e8f>] do_exit+0x2a/0x6fc
       [<ffffffff81465031>] ? retint_swapgs+0xe/0x13
       [<ffffffff8103a5e4>] do_group_exit+0x83/0xae
       [<ffffffff8103a626>] sys_exit_group+0x17/0x1b
       [<ffffffff8146ad4b>] system_call_fastpath+0x16/0x1b
      
      Reported-by: default avatarMarcin Slusarz <marcin.slusarz@gmail.com>
      Cc: Carl Love <carll@us.ibm.com>
      Cc: <stable@kernel.org> # .36+
      Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
      130c5ce7
    • Robert Richter's avatar
      oprofile: Free potentially owned tasks in case of errors · 6ac6519b
      Robert Richter authored
      
      
      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: <stable@kernel.org> # .36+
      Signed-off-by: default avatarRobert Richter <robert.richter@amd.com>
      6ac6519b
    • Peter Zijlstra's avatar
      perf, cgroups: Fix up for new API · 74c355fb
      Peter Zijlstra authored
      
      
      Ben changed the cgroup API in commit f780bdb7 (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: default avatarBen Blum <bblum@andrew.cmu.edu>
      Cc: Stephane Eranian <eranian@google.com>
      Signed-off-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/1306767651.1200.2990.camel@twins
      
      
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      74c355fb
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of... · 643d2d79
      Linus Torvalds authored
      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
      643d2d79
Loading