Badness in softirq.c 109, possible fix

Badness in softirq.c 109, possible fix

Post by Petur Thor » Fri, 20 Jun 2003 18:20:07



Hello.

Got badness in local_bh_enable because Im still in irq_disabled.
This is caused by local_irq_save() in do_tty_hangup (drivers/char/tty_io.c)
He calls local_irq_save(flags) and then goes to flush_buffer and down
to local_bh_enable.
Do we really need local_irq_save/restore in do_tty_hangup() line 447 ?
Its not safe.
Thanks

Badness in local_bh_enable at kernel/softirq.c:109
Jun 19 13:21:01 spiderman kernel: Call Trace:
Jun 19 13:21:01 spiderman kernel:  [<c0128e63>] local_bh_enable+0x93/0xa0
Jun 19 13:21:01 spiderman kernel:  [<e08ebed1>]
ppp_async_push+0xe1/0x250 [ppp_async]
Jun 19 13:21:01 spiderman kernel:  [<c0173023>] cached_lookup+0x23/0x90
Jun 19 13:21:01 spiderman kernel:  [<e08eb712>]
ppp_asynctty_wakeup+0x32/0x70 [ppp_async]
Jun 19 13:21:01 spiderman kernel:  [<c022297a>] pty_unthrottle+0x5a/0x60
Jun 19 13:21:01 spiderman kernel:  [<c021e2bb>] check_unthrottle+0x3b/0x40
Jun 19 13:21:01 spiderman kernel:  [<c021e370>]
reset_buffer_flags+0xb0/0x100
Jun 19 13:21:01 spiderman kernel:  [<c021e3d3>] n_tty_flush_buffer+0x13/0x60
Jun 19 13:21:01 spiderman kernel:  [<c0222d46>] pty_flush_buffer+0x66/0x70
Jun 19 13:21:01 spiderman pppd[1366]: Modem hangup
Jun 19 13:21:01 spiderman kernel:  [<c021a105>] do_tty_hangup+0x4f5/0x5d0

Jun 19 13:21:01 spiderman pppd[1366]: Connection terminated.
Jun 19 13:21:01 spiderman kernel:  [<c021bbaf>] release_dev+0x6df/0x730
Jun 19 13:21:01 spiderman pppd[1366]: Connect time 9.8 minutes.
Jun 19 13:21:01 spiderman kernel:  [<c014bd8c>] release_pages+0x1dc/0x280
Jun 19 13:21:01 spiderman pppd[1366]: Sent 84 bytes, received 50 bytes.
Jun 19 13:21:01 spiderman kernel:  [<c0150dbb>] zap_pmd_range+0x4b/0x70
Jun 19 13:21:01 spiderman kernel:  [<c017dce2>] dput+0x22/0x380
Jun 19 13:21:01 spiderman kernel:  [<c021bffb>] tty_release+0x3b/0xc0
Jun 19 13:21:01 spiderman kernel:  [<c01640f8>] __fput+0x118/0x120
Jun 19 13:21:01 spiderman kernel:  [<c01624d0>] filp_close+0xd0/0x130
Jun 19 13:21:01 spiderman kernel:  [<c0125f68>] put_files_struct+0x58/0xc0
Jun 19 13:21:01 spiderman kernel:  [<c0126dfe>] do_exit+0x1fe/0x690
Jun 19 13:21:02 spiderman kernel:  [<c01624d0>] filp_close+0xd0/0x130
Jun 19 13:21:02 spiderman kernel:  [<c0127419>] do_group_exit+0xf9/0x180
Jun 19 13:21:02 spiderman kernel:  [<c01625bb>] sys_close+0x8b/0x110
Jun 19 13:21:02 spiderman kernel:  [<c010b1fb>] syscall_call+0x7/0xb

Petur Thors

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

 
 
 

1. 2.5.72 Badness in local_bh_enable at kernel/softirq.c:109

This appears to be reproducible and happened when trying to run the
PPPoE daemon on a non-existent ethernet interface.

kernel: Badness in local_bh_enable at kernel/softirq.c:109
kernel: Call Trace:
kernel:  [<c011c6cc>] local_bh_enable+0x6c/0x70
kernel:  [<e0867b71>] ppp_async_push+0x91/0x160 [ppp_async]
kernel:  [<e08674dd>] ppp_asynctty_wakeup+0x2d/0x60 [ppp_async]
kernel:  [<c01ee164>] pty_unthrottle+0x54/0x60
kernel:  [<c01eaffb>] check_unthrottle+0x3b/0x40
kernel:  [<c01eb074>] n_tty_flush_buffer+0x14/0x60
kernel:  [<c01ee4df>] pty_flush_buffer+0x5f/0x70
kernel:  [<c01e7f09>] do_tty_hangup+0x319/0x370
kernel:  [<c01e9144>] release_dev+0x5a4/0x5e0
kernel:  [<c01382fe>] zap_pmd_range+0x4e/0x70
kernel:  [<c0138361>] unmap_page_range+0x41/0x70
kernel:  [<c01e94c1>] tty_release+0x11/0x20
kernel:  [<c01466a1>] __fput+0xe1/0xf0
kernel:  [<c0144feb>] filp_close+0x4b/0x80
kernel:  [<c011a4e7>] put_files_struct+0x67/0xd0
kernel:  [<c011af39>] do_exit+0xf9/0x320
kernel:  [<c011b204>] do_group_exit+0x34/0x80
kernel:  [<c0109003>] syscall_call+0x7/0xb

--
ciao, |
Marco | [1639 pazSgKbgibZDU]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in

More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

2. What are the boot options

3. Badness in local_bh_enable at kernel/softirq.c:105

4. Q:background process finished ssignal?

5. Badness in local_bh_enable at kernel/softirq.c:117

6. How do i calculate actual throughput on a serial line?

7. Badness in local_bh_enable at kernel/softirq.c:136

8. ip aliasing

9. Badness in local_bh_enable at kernel/softirq.c:108

10. Alpha 2.1.109?

11. 2.5.66-bk5 spinlock warnings/errors - Specifically ide-io:109 spinlock notice

12. troubles installing linux 109

13. linux 109 doesn't install right.