Re: [BUG] local_softirq_pending storm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ingo Molnar wrote:
> * Michal Piotrowski <[email protected]> wrote:
> 
>> Bad news - I hit a bug in 2.6.22-rc2-hrt3. Bug symptoms:
>> - X hangs (keyboard, mouse, sound etc.)
>> - only Magic SysRq works
> 
> please try the patch below! I think we have nailed this bug.
> 
> 	Ingo
> 
> Index: linux/kernel/sched.c
> ===================================================================
> --- linux.orig/kernel/sched.c
> +++ linux/kernel/sched.c
> @@ -4212,9 +4212,7 @@ int __sched cond_resched_softirq(void)
>  	BUG_ON(!in_softirq());
>  
>  	if (need_resched() && system_state == SYSTEM_RUNNING) {
> -		raw_local_irq_disable();
> -		_local_bh_enable();
> -		raw_local_irq_enable();
> +		local_bh_enable();
>  		__cond_resched();
>  		local_bh_disable();
>  		return 1;

We may have a problem with that:

 BUG: warning at kernel/softirq.c:138/local_bh_enable() (Not tainted)
  [<c042b2ef>] local_bh_enable+0x45/0x92
  [<c06036b7>] cond_resched_softirq+0x2c/0x42
  [<c059d5d0>] release_sock+0x54/0xa3
  [<c05c9428>] tcp_sendmsg+0x91b/0xa0c
  [<c05e1bb9>] inet_sendmsg+0x3b/0x45
  [<c059af34>] sock_aio_write+0xf9/0x105
  [<c0476035>] do_sync_write+0xc7/0x10a
  [<c0437265>] autoremove_wake_function+0x0/0x35
  [<c047688e>] vfs_write+0xbc/0x154
  [<c0476e8c>] sys_write+0x41/0x67
  [<c0404f70>] syscall_call+0x7/0xb

That's:
        WARN_ON_ONCE(irqs_disabled());


And another, tainted but probably valid:

BUG: warning at kernel/softirq.c:138/local_bh_enable() (Tainted: P      )
 [<c042b2ef>] local_bh_enable+0x45/0x92
 [<c06036b7>] cond_resched_softirq+0x2c/0x42
 [<c059d5d0>] release_sock+0x54/0xa3
 [<c05c9428>] tcp_sendmsg+0x91b/0xa0c
 [<c04e8b30>] copy_to_user+0x3c/0x50
 [<c05a1b71>] memcpy_toiovec+0x27/0x4a
 [<c059d58f>] release_sock+0x13/0xa3
 [<c0604ad5>] _spin_unlock_bh+0x5/0xd
 [<c05e1bb9>] inet_sendmsg+0x3b/0x45
 [<c059af34>] sock_aio_write+0xf9/0x105
 [<c0475f31>] do_sync_readv_writev+0xc1/0xfe
 [<c0437265>] autoremove_wake_function+0x0/0x35
 [<c04e88e0>] copy_from_user+0x3a/0x66
 [<c0475dec>] rw_copy_check_uvector+0x5c/0xb0
 [<c047667a>] do_readv_writev+0xbc/0x187
 [<c059ae3b>] sock_aio_write+0x0/0x105
 [<c0476782>] vfs_writev+0x3d/0x48
 [<c0476bee>] sys_writev+0x41/0x95
 [<c0404f70>] syscall_call+0x7/0xb


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=240982
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux