# "Badness in local_bh_enable" msg

## Souperman

EDIT: I upgraded to 2.6.8-gentoo-r6 and the problem is now gone.

EDIT2: I'm lying... it's still happening.

I recently switched from 56k dial-up to ISDN.  Whenever there's a lot of ISDN activity going on, I see this in my /var/log/messages:

```
Oct  3 08:59:35 desktop kernel: Badness in local_bh_enable at kernel/softirq.c:136

Oct  3 08:59:35 desktop kernel:  [local_bh_enable+133/144] local_bh_enable+0x85/0x90

Oct  3 08:59:35 desktop kernel:  [<c011cc85>] local_bh_enable+0x85/0x90

Oct  3 08:59:35 desktop kernel:  [isdn_ppp_xmit+250/1904] isdn_ppp_xmit+0xfa/0x770

Oct  3 08:59:35 desktop kernel:  [<c039fd4a>] isdn_ppp_xmit+0xfa/0x770

Oct  3 08:59:35 desktop kernel:  [isdn_net_xmit+479/560] isdn_net_xmit+0x1df/0x230

Oct  3 08:59:35 desktop kernel:  [<c0390bdf>] isdn_net_xmit+0x1df/0x230

Oct  3 08:59:35 desktop kernel:  [isdn_net_start_xmit+765/784] isdn_net_start_xmit+0x2fd/0x310

Oct  3 08:59:35 desktop kernel:  [<c039103d>] isdn_net_start_xmit+0x2fd/0x310

Oct  3 08:59:35 desktop kernel:  [qdisc_restart+99/304] qdisc_restart+0x63/0x130

Oct  3 08:59:35 desktop kernel:  [<c0421663>] qdisc_restart+0x63/0x130

Oct  3 08:59:35 desktop kernel:  [dev_queue_xmit+514/704] dev_queue_xmit+0x202/0x2c0

Oct  3 08:59:36 desktop kernel:  [<c0416c52>] dev_queue_xmit+0x202/0x2c0

Oct  3 08:59:36 desktop kernel:  [neigh_connected_output+160/240] neigh_connected_output+0xa0/0xf0

Oct  3 08:59:36 desktop kernel:  [<c041c520>] neigh_connected_output+0xa0/0xf0

Oct  3 08:59:36 desktop kernel:  [ip_finish_output2+244/480] ip_finish_output2+0xf4/0x1e0

Oct  3 08:59:36 desktop kernel:  [<c042e114>] ip_finish_output2+0xf4/0x1e0

Oct  3 08:59:36 desktop kernel:  [ip_finish_output2+0/480] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [<c042e020>] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [ip_finish_output2+0/480] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [<c042e020>] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [nf_hook_slow+228/288] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [<c0420874>] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [ip_finish_output2+0/480] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [<c042e020>] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [dst_output+0/48] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [<c042dff0>] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [ip_finish_output+531/544] ip_finish_output+0x213/0x220

Oct  3 08:59:36 desktop kernel:  [<c042bd03>] ip_finish_output+0x213/0x220

Oct  3 08:59:36 desktop kernel:  [ip_finish_output2+0/480] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [<c042e020>] ip_finish_output2+0x0/0x1e0

Oct  3 08:59:36 desktop kernel:  [dst_output+0/48] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [<c042dff0>] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [dst_output+20/48] dst_output+0x14/0x30

Oct  3 08:59:36 desktop kernel:  [<c042e004>] dst_output+0x14/0x30

Oct  3 08:59:36 desktop kernel:  [nf_hook_slow+228/288] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [<c0420874>] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [dst_output+0/48] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [<c042dff0>] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [ip_queue_xmit+1033/1296] ip_queue_xmit+0x409/0x510

Oct  3 08:59:36 desktop kernel:  [<c042c349>] ip_queue_xmit+0x409/0x510

Oct  3 08:59:36 desktop kernel:  [dst_output+0/48] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [<c042dff0>] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [dst_output+0/48] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [<c042dff0>] dst_output+0x0/0x30

Oct  3 08:59:36 desktop kernel:  [activate_task+98/128] activate_task+0x62/0x80

Oct  3 08:59:36 desktop kernel:  [<c0115402>] activate_task+0x62/0x80

Oct  3 08:59:36 desktop kernel:  [recalc_task_prio+143/400] recalc_task_prio+0x8f/0x190

Oct  3 08:59:36 desktop kernel:  [<c011529f>] recalc_task_prio+0x8f/0x190

Oct  3 08:59:36 desktop kernel:  [recalc_task_prio+143/400] recalc_task_prio+0x8f/0x190

Oct  3 08:59:36 desktop kernel:  [<c011529f>] recalc_task_prio+0x8f/0x190

Oct  3 08:59:36 desktop kernel:  [tcp_v4_send_check+84/256] tcp_v4_send_check+0x54/0x100

Oct  3 08:59:36 desktop kernel:  [<c04427b4>] tcp_v4_send_check+0x54/0x100

Oct  3 08:59:36 desktop kernel:  [tcp_transmit_skb+1051/1696] tcp_transmit_skb+0x41b/0x6a0

Oct  3 08:59:36 desktop kernel:  [<c043c56b>] tcp_transmit_skb+0x41b/0x6a0

Oct  3 08:59:36 desktop kernel:  [tcp_write_xmit+364/736] tcp_write_xmit+0x16c/0x2e0

Oct  3 08:59:36 desktop kernel:  [<c043d2ec>] tcp_write_xmit+0x16c/0x2e0

Oct  3 08:59:36 desktop kernel:  [__tcp_data_snd_check+218/240] __tcp_data_snd_check+0xda/0xf0

Oct  3 08:59:36 desktop kernel:  [<c043a56a>] __tcp_data_snd_check+0xda/0xf0

Oct  3 08:59:36 desktop kernel:  [__kfree_skb+119/240] __kfree_skb+0x77/0xf0

Oct  3 08:59:36 desktop kernel:  [<c04123f7>] __kfree_skb+0x77/0xf0

Oct  3 08:59:36 desktop kernel:  [tcp_rcv_established+583/2112] tcp_rcv_established+0x247/0x840

Oct  3 08:59:36 desktop kernel:  [<c043abc7>] tcp_rcv_established+0x247/0x840

Oct  3 08:59:36 desktop kernel:  [tcp_v4_do_rcv+276/288] tcp_v4_do_rcv+0x114/0x120

Oct  3 08:59:36 desktop kernel:  [<c0443ae4>] tcp_v4_do_rcv+0x114/0x120

Oct  3 08:59:36 desktop kernel:  [tcp_v4_rcv+1460/1968] tcp_v4_rcv+0x5b4/0x7b0

Oct  3 08:59:36 desktop kernel:  [<c04440a4>] tcp_v4_rcv+0x5b4/0x7b0

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver_finish+0/336] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [<c0428f50>] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver_finish+172/336] ip_local_deliver_finish+0xac/0x150

Oct  3 08:59:36 desktop kernel:  [<c0428ffc>] ip_local_deliver_finish+0xac/0x150

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver_finish+0/336] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [<c0428f50>] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [nf_hook_slow+228/288] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [<c0420874>] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver_finish+0/336] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [<c0428f50>] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [ip_rcv_finish+0/608] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [<c04290a0>] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver+419/464] ip_local_deliver+0x1a3/0x1d0

Oct  3 08:59:36 desktop kernel:  [<c0428ac3>] ip_local_deliver+0x1a3/0x1d0

Oct  3 08:59:36 desktop kernel:  [ip_local_deliver_finish+0/336] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [<c0428f50>] ip_local_deliver_finish+0x0/0x150

Oct  3 08:59:36 desktop kernel:  [ip_rcv_finish+462/608] ip_rcv_finish+0x1ce/0x260

Oct  3 08:59:36 desktop kernel:  [<c042926e>] ip_rcv_finish+0x1ce/0x260

Oct  3 08:59:36 desktop kernel:  [ip_rcv_finish+0/608] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [<c04290a0>] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [nf_hook_slow+228/288] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [<c0420874>] nf_hook_slow+0xe4/0x120

Oct  3 08:59:36 desktop kernel:  [ip_rcv_finish+0/608] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [<c04290a0>] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [ip_rcv+942/1120] ip_rcv+0x3ae/0x460

Oct  3 08:59:36 desktop kernel:  [<c0428e9e>] ip_rcv+0x3ae/0x460

Oct  3 08:59:36 desktop kernel:  [ip_rcv_finish+0/608] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [<c04290a0>] ip_rcv_finish+0x0/0x260

Oct  3 08:59:36 desktop kernel:  [netif_receive_skb+379/432] netif_receive_skb+0x17b/0x1b0

Oct  3 08:59:36 desktop kernel:  [<c041714b>] netif_receive_skb+0x17b/0x1b0

Oct  3 08:59:36 desktop kernel:  [process_backlog+115/256] process_backlog+0x73/0x100

Oct  3 08:59:36 desktop kernel:  [<c04171f3>] process_backlog+0x73/0x100

Oct  3 08:59:36 desktop kernel:  [net_rx_action+106/240] net_rx_action+0x6a/0xf0

Oct  3 08:59:36 desktop kernel:  [<c04172ea>] net_rx_action+0x6a/0xf0

Oct  3 08:59:36 desktop kernel:  [__do_softirq+125/128] __do_softirq+0x7d/0x80

Oct  3 08:59:36 desktop kernel:  [<c011cbfd>] __do_softirq+0x7d/0x80

Oct  3 08:59:36 desktop kernel:  [do_softirq+67/96] do_softirq+0x43/0x60

Oct  3 08:59:36 desktop kernel:  [<c01089f3>] do_softirq+0x43/0x60

Oct  3 08:59:36 desktop kernel:  =======================

Oct  3 08:59:36 desktop kernel:  [do_IRQ+331/416] do_IRQ+0x14b/0x1a0

Oct  3 08:59:36 desktop kernel:  [<c010817b>] do_IRQ+0x14b/0x1a0

Oct  3 08:59:36 desktop kernel:  [common_interrupt+24/32] common_interrupt+0x18/0x20

Oct  3 08:59:36 desktop kernel:  [<c0106474>] common_interrupt+0x18/0x20

Oct  3 08:59:36 desktop kernel:  [default_idle+35/48] default_idle+0x23/0x30

Oct  3 08:59:36 desktop kernel:  [<c0103ad3>] default_idle+0x23/0x30

Oct  3 08:59:36 desktop kernel:  [cpu_idle+44/64] cpu_idle+0x2c/0x40

Oct  3 08:59:36 desktop kernel:  [<c0103b3c>] cpu_idle+0x2c/0x40

Oct  3 08:59:36 desktop kernel:  [start_kernel+386/464] start_kernel+0x182/0x1d0

Oct  3 08:59:36 desktop kernel:  [<c0606632>] start_kernel+0x182/0x1d0

Oct  3 08:59:36 desktop kernel:  [unknown_bootoption+0/288] unknown_bootoption+0x0/0x120

Oct  3 08:59:36 desktop kernel:  [<c0606350>] unknown_bootoption+0x0/0x120

Oct  3 08:59:36 desktop kernel: 
```

Anyone have any ideas what's going on here?   :Confused: 

UPDATE: I'm also getting terrible performance from my ISDN at times, which I suspect is related to this.  Instead of getting about 15K/sec, I often only get about 3-4K/sec.

----------

## scoon

 *Souperman wrote:*   

> EDIT: I upgraded to 2.6.8-gentoo-r6 and the problem is now gone.
> 
> I recently switched from 56k dial-up to ISDN.  Whenever there's a lot of ISDN activity going on, I see this in my /var/log/messages:
> 
> ```
> ...

 

Hey there, 

I am having the same problem, but I do not have ISDN.  This is appears to be some sort of tcp or com problem.  Did you change anything in your kernel config ?

scoon

----------

## Souperman

Actually I spoke too soon.  It's still doing it.   :Sad:  It doesn't seem to be ISDN-related specifically, as you said and Google confirms.  Unfortunately Google doesn't help solve the problem.

----------

## scoon

 *Souperman wrote:*   

> Actually I spoke too soon.  It's still doing it.   It doesn't seem to be ISDN-related specifically, as you said and Google confirms.  Unfortunately Google doesn't help solve the problem.

 

Hey there, 

Well the problem for me is that there is some logic in the kernel for IRQ's that my wireless card triggers.  The problem you are having is becuase your hardware is also falling through the same logic and the kernel is spending WAY TO MUCH TIME logging it.  As a result everything slows down.  You can read one (not very good) solution unless your nic maker has a better solution. Here is the link: http://61.222.76.235/phpbb2/viewtopic.php?t=13

scoon

----------

## Souperman

Yup, I also thought about trying that workaround, when I first looked at line 136, but disabling a warning message is like chopping off your arm and then filling yourself with morphine... there's still something seriously wrong, but you can't feel it any more.  :Wink: 

Some further info is that this problem doesn't seem related to the amount of data being transferred over my ISDN connection.  I can download a few files from FTP at 15-16K/sec and the messages do not appear.  When I run BitTorrent though (i.e. lots and lots of TCP connections going), the messages come back.

----------

## scoon

 *Souperman wrote:*   

> Yup, I also thought about trying that workaround, when I first looked at line 136, but disabling a warning message is like chopping off your arm and then filling yourself with morphine... there's still something seriously wrong, but you can't feel it any more. 
> 
> Some further info is that this problem doesn't seem related to the amount of data being transferred over my ISDN connection.  I can download a few files from FTP at 15-16K/sec and the messages do not appear.  When I run BitTorrent though (i.e. lots and lots of TCP connections going), the messages come back.

 

Hey there, 

I agree with you, but with all of that logging going on, my box became almost un-usable.  Couldn't even ssh into to set wtf.  

Just thought that if it gets to bad for you there was a quick fix for a short time.

scoon

----------

## Souperman

Yeah I'll use it as a last resort.  At the moment I'm compiling OOo, xmms is playing and I'm still getting 15-16K/sec off a torrent, so I'm good for now.  My /var partition is half full though, so I'll have to keep an eye out for that.  :Wink: 

----------

## Cintra

 *Souperman wrote:*   

> Yeah I'll use it as a last resort.  At the moment I'm compiling OOo, xmms is playing and I'm still getting 15-16K/sec off a torrent, so I'm good for now.  My /var partition is half full though, so I'll have to keep an eye out for that. 

 

You may be interested to know that your Badness problem re-surfaced when I upgraded from development-sources-2.6.11-rc1 to -rc2 !

Looks to me as though they've left some sort of trace in there by mistake. Anyway, I have commented out the

```
WARN_ON(irqs_disabled());
```

 line 140 for now..

thanks for your earlier efforts  :Wink: 

regards

----------

