1. 08 12月, 2006 1 次提交
  2. 05 11月, 2006 1 次提交
    • L
      Make sure "user->sigpending" count is in sync · 10b1fbdb
      Linus Torvalds 提交于
      The previous commit (45c18b0b, aka "Fix
      unlikely (but possible) race condition on task->user access") fixed a
      potential oops due to __sigqueue_alloc() getting its "user" pointer out
      of sync with switch_user(), and accessing a user pointer that had been
      de-allocated on another CPU.
      
      It still left another (much less serious) problem, where a concurrent
      __sigqueue_alloc and swich_user could cause sigqueue_alloc to do signal
      pending reference counting for a _different_ user than the one it then
      actually ended up using.  No oops, but we'd end up with the wrong signal
      accounting.
      
      Another case of Oleg's eagle-eyes picking up the problem.
      
      This is trivially fixed by just making sure we load whichever "user"
      structure we decide to use (it doesn't matter _which_ one we pick, we
      just need to pick one) just once.
      Acked-by: NOleg Nesterov <oleg@tv-sign.ru>
      Cc: Andrew Morton <akpm@osdl.org>
      Cc: Ingo Molnar <mingo@elte.hu>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      10b1fbdb
  3. 02 10月, 2006 2 次提交
  4. 30 9月, 2006 1 次提交
  5. 27 9月, 2006 1 次提交
  6. 03 8月, 2006 1 次提交
  7. 01 7月, 2006 2 次提交
  8. 27 6月, 2006 1 次提交
  9. 20 6月, 2006 1 次提交
  10. 14 4月, 2006 1 次提交
  11. 11 4月, 2006 1 次提交
  12. 02 4月, 2006 1 次提交
  13. 01 4月, 2006 1 次提交
  14. 29 3月, 2006 16 次提交
  15. 23 3月, 2006 2 次提交
  16. 10 2月, 2006 2 次提交
  17. 04 2月, 2006 1 次提交
  18. 19 1月, 2006 1 次提交
  19. 15 1月, 2006 1 次提交
  20. 12 1月, 2006 1 次提交
  21. 09 1月, 2006 1 次提交