login
Login
/
Register
Search
Search this site:
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2010
»
June
»
18
Re: [PATCH] fix the racy check_hung_uninterruptible_tasks()->rcu_lock_break() logic
view
thread
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
[view in full thread]
From: Mandeep Singh Baines
Subject:
Re: [PATCH] fix the racy check_hung_uninterruptible_tasks()->rcu_lock_break() logic
Date: Friday, June 18, 2010 - 1:38 pm
Oleg Nesterov (
oleg@redhat.com
) wrote:
quoted text
> check_hung_uninterruptible_tasks()->rcu_lock_break() introduced by > "softlockup: check all tasks in hung_task" commit ce9dbe24 looks > absolutely wrong. > > - rcu_lock_break() does put_task_struct(). If the task has exited > it is not safe to even read its ->state, nothing protects this > task_struct. > > - The TASK_DEAD checks are wrong too. Contrary to the comment, we > can't use it to check if the task was unhashed. It can be unhashed > without TASK_DEAD, or it can be valid with TASK_DEAD. > > For example, an autoreaping task can do release_task(current) > long before it sets TASK_DEAD in do_exit(). > > Or, a zombie task can have ->state == TASK_DEAD but release_task() > was not called, and in this case we must not break the loop. > > Change this code to check pid_alive() instead, and do this before we > drop the reference to the task_struct. > > Signed-off-by: Oleg Nesterov <oleg@redhat.com> > ---
Acked-by: Mandeep Singh Baines <msb@google.com> --
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
Messages in current thread:
[PATCH] fix the racy check_hung_uninterruptible_tasks()->r ...
, Oleg Nesterov
, (Fri Jun 18, 12:02 pm)
while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Fri Jun 18, 12:34 pm)
Re: [PATCH] fix the racy check_hung_uninterruptible_tasks( ...
, Frederic Weisbecker
, (Fri Jun 18, 1:11 pm)
Re: [PATCH] fix the racy check_hung_uninterruptible_tasks( ...
, Mandeep Singh Baines
, (Fri Jun 18, 1:38 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Fri Jun 18, 2:08 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Fri Jun 18, 3:33 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Fri Jun 18, 3:37 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Mandeep Baines
, (Fri Jun 18, 10:00 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Frederic Weisbecker
, (Fri Jun 18, 10:35 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Mandeep Baines
, (Sat Jun 19, 8:44 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Sat Jun 19, 12:19 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Mon Jun 21, 10:09 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Mon Jun 21, 10:44 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Mon Jun 21, 11:00 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Mon Jun 21, 12:02 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Mon Jun 21, 1:06 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Mon Jun 21, 1:51 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Eric W. Biederman
, (Mon Jun 21, 2:19 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Eric W. Biederman
, (Mon Jun 21, 2:22 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Mon Jun 21, 2:38 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Tue Jun 22, 7:34 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Tue Jun 22, 2:23 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Tue Jun 22, 3:12 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Wed Jun 23, 8:24 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Thu Jun 24, 11:07 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Chris Friesen
, (Thu Jun 24, 11:50 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Thu Jun 24, 2:14 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Thu Jun 24, 2:57 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Thu Jun 24, 3:00 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Eric W. Biederman
, (Thu Jun 24, 5:08 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Thu Jun 24, 8:37 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Thu Jun 24, 8:41 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Thu Jun 24, 8:42 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Fri Jun 25, 2:55 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Fri Jun 25, 3:08 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Mon Jun 28, 4:43 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Tue Jun 29, 6:05 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Tue Jun 29, 8:34 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Oleg Nesterov
, (Tue Jun 29, 10:54 am)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Thu Jul 8, 4:59 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Thu Jul 8, 5:41 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Thu Jul 8, 5:41 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Thu Jul 8, 5:52 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Roland McGrath
, (Thu Jul 8, 6:01 pm)
Re: while_each_thread() under rcu_read_lock() is broken?
, Paul E. McKenney
, (Fri Jul 9, 9:18 am)
Navigation
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
Tony Luck
Re: Hardware Error Kernel Mini-Summit
James Bottomley
Re: [PATCH -mm 1/2] scsi: remove dma_is_consistent usage in 53c700
Andrey Borzenkov
Re: [possible regression] 2.6.22 reiserfs/libata sporadically hangs on resume from...
Linus Torvalds
Linux 2.6.26-rc6
Jeffrey V. Merkey
Re: Versioning file system
git
:
Morten Welinder
Re: [PATCH] use xrealloc in help.c
Junio C Hamano
Re: [PATCH 2/3] git-add--interactive: remove hunk coalescing
Jörg Sommer
[PATCH v2 08/13] Unify the lenght of $SHORT* and the commits in the TODO list
Boyd Lynn Gerber
Re: [VOTE] git versus mercurial
Stefan Näwe
Re: [PATCH] git-gui: use --exclude-standard to check for untracked files
linux-netdev
:
Andreas Sundstrom
Re: ~60k interrupts/sec for 1Gb/s iperf with r8169
David Miller
Re: [2.6.30-rc3] powerpc: compilation error of mace module
Denys Fedoryshchenko
Re: circular locking, mirred, 2.6.24.2
David Miller
Re: [PATCH -next] sfc: Use correct macro to set event bitfield
David Miller
Re: [PATCH] ipv6: fix display of local and remote sit endpoints
git-commits-head
:
Linux Kernel Mailing List
V4L/DVB: tm6000: add special usb request to quit i2c tuner transfer
Linux Kernel Mailing List
OMAP: DSS2: SDI driver
Linux Kernel Mailing List
PCI: introduce pci_pcie_cap()
Linux Kernel Mailing List
m68k: amiga - Mouse platform device conversion
Linux Kernel Mailing List
drivers/acpi: use kasprintf
openbsd-misc
:
frantisek holop
Re: mount ffs as msdos, system hangs
Ted Bullock
Re: Proliant DL380 G3 cannot get on network
Úlfar M. E. Johnson
installing openbsd in xen
Eric Furman
Re: Defending OpenBSD Performance
Damien Miller
Re: Patching a SSH 'Weakness'
Colocation donated by:
Syndicate