Bug 42741
Summary: | INFO: possible circular locking dependency detected in sirdev_write_complete | ||
---|---|---|---|
Product: | Drivers | Reporter: | Witold Baryluk (witold.baryluk+kernel) |
Component: | Serial | Assignee: | Alan (alan) |
Status: | ASSIGNED --- | ||
Severity: | low | CC: | adobriyan, alan, davem, witold.baryluk+kernel |
Priority: | P4 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 3.3-rc2+ | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: | Kernel config |
One more, slightly more complicated and important. [ 262.308302] irda_init() [ 262.308590] NET: Registered protocol family 23 [ 262.323425] warning: `hipd' uses 32-bit capabilities (legacy support in use) [ 262.455462] sirdev_get_instance - ttyS1 [ 262.455594] device: 'irda0': device_add [ 262.455847] PM: Adding info for No Bus:irda0 [ 262.478113] irtty_open - ttyS1: irda line discipline opened [ 263.490816] irlap_change_speed(), setting speed to 9600 [ 266.491068] [ 266.494014] ====================================================== [ 266.496980] [ INFO: possible circular locking dependency detected ] [ 266.499945] 3.3.0-rc2-t43-devel-smp-00172-g23783f8 #13 Tainted: G W [ 266.500026] ------------------------------------------------------- [ 266.500026] kworker/0:0/4 is trying to acquire lock: [ 266.500026] (&(&dev->tx_lock)->rlock){-.-...}, at: [<f86e7883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 266.500026] [ 266.500026] but task is already holding lock: [ 266.500026] (&port_lock_key){-.-...}, at: [<c13dc0f7>] serial8250_handle_irq+0x37/0xa0 [ 266.500026] [ 266.500026] which lock already depends on the new lock. [ 266.500026] [ 266.500026] [ 266.500026] the existing dependency chain (in reverse order) is: [ 266.500026] [ 266.500026] -> #1 (&port_lock_key){-.-...}: [ 266.500026] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 266.500026] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 266.500026] [<c10b3945>] __lock_acquire+0x355/0x820 [ 266.500026] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 266.500026] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 266.500026] [<c13d5f32>] uart_write_room+0x22/0x60 [ 266.500026] [<c13c1c19>] tty_write_room+0x19/0x20 [ 266.500026] [<f8646512>] irtty_do_write+0x42/0xa0 [irtty_sir] [ 266.500026] [<f86e7455>] sirdev_hard_xmit+0xc5/0x280 [sir_dev] [ 266.500026] [<c159586f>] dev_hard_start_xmit+0x22f/0x690 [ 266.500026] [<c15ba331>] sch_direct_xmit+0xa1/0x220 [ 266.500026] [<c1595e45>] dev_queue_xmit+0x175/0x770 [ 266.500026] [<f86c762a>] irlap_queue_xmit+0x9a/0xe0 [irda] [ 266.500026] [<f86c7beb>] irlap_send_discovery_xid_frame+0xdb/0x360 [irda] [ 266.500026] [<f86c5a68>] irlap_state_ndm+0x308/0x4e0 [irda] [ 266.500026] [<f86c5d7b>] irlap_do_event+0x4b/0xb0 [irda] [ 266.500026] [<f86c264a>] irlap_discovery_request+0xda/0x230 [irda] [ 266.500026] [<f86bf168>] irlmp_state_standby+0x78/0x170 [irda] [ 266.500026] [<f86bfb59>] irlmp_do_lap_event+0x39/0xe0 [irda] [ 266.500026] [<f86be46c>] irlmp_do_discovery+0xac/0x140 [irda] [ 266.500026] [<f86c0603>] irlmp_discovery_timer_expired+0x23/0x60 [irda] [ 266.500026] [<c105abad>] call_timer_fn+0x6d/0x2e0 [ 266.500026] [<c105af0a>] run_timer_softirq+0xea/0x260 [ 266.500026] [<c10524cf>] __do_softirq+0x9f/0x360 [ 266.500026] [ 266.500026] -> #0 (&(&dev->tx_lock)->rlock){-.-...}: [ 266.500026] [<c10b0e45>] check_prev_add+0x605/0x610 [ 266.500026] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 266.500026] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 266.500026] [<c10b3945>] __lock_acquire+0x355/0x820 [ 266.500026] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 266.500026] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 266.500026] [<f86e7883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 266.500026] [<f8646671>] irtty_write_wakeup+0x31/0x90 [irtty_sir] [ 266.500026] [<c13ba332>] tty_wakeup+0x62/0x70 [ 266.500026] [<c13d7686>] uart_write_wakeup+0x16/0x20 [ 266.500026] [<c13daffe>] serial8250_tx_chars+0x8e/0x110 [ 266.500026] [<c13dc157>] serial8250_handle_irq+0x97/0xa0 [ 266.500026] [<c13dc17c>] serial8250_default_handle_irq+0x1c/0x20 [ 266.500026] [<c13da1e5>] serial8250_interrupt+0x65/0xd0 [ 266.500026] [<c10deb40>] handle_irq_event_percpu+0x50/0x3a0 [ 266.500026] [<c10deeca>] handle_irq_event+0x3a/0x60 [ 266.500026] [<c10e1b16>] handle_edge_irq+0x66/0xf0 [ 266.500026] [ 266.500026] other info that might help us debug this: [ 266.500026] [ 266.500026] Possible unsafe locking scenario: [ 266.500026] [ 266.500026] CPU0 CPU1 [ 266.500026] ---- ---- [ 266.500026] lock(&port_lock_key); [ 266.500026] lock(&(&dev->tx_lock)->rlock); [ 266.500026] lock(&port_lock_key); [ 266.500026] lock(&(&dev->tx_lock)->rlock); [ 266.500026] [ 266.500026] *** DEADLOCK *** [ 266.500026] [ 266.500026] 7 locks held by kworker/0:0/4: [ 266.500026] #0: (kcryptd){++++..}, at: [<c1069f34>] process_one_work+0x104/0x5c0 [ 266.500026] #1: ((&io->work)){+.+...}, at: [<c1069f34>] process_one_work+0x104/0x5c0 [ 266.500026] #2: (&irlmp->discovery_timer){+.-...}, at: [<c105ab77>] call_timer_fn+0x37/0x2e0 [ 266.500026] #3: (rcu_read_lock_bh){.+....}, at: [<c1595cf8>] dev_queue_xmit+0x28/0x770 [ 266.500026] #4: (&(&list->lock)->rlock#5){+.-...}, at: [<c15ba2d7>] sch_direct_xmit+0x47/0x220 [ 266.500026] #5: (&(&i->lock)->rlock){-.-...}, at: [<c13da1a3>] serial8250_interrupt+0x23/0xd0 [ 266.500026] #6: (&port_lock_key){-.-...}, at: [<c13dc0f7>] serial8250_handle_irq+0x37/0xa0 [ 266.500026] [ 266.500026] stack backtrace: [ 266.500026] Pid: 4, comm: kworker/0:0 Tainted: G W 3.3.0-rc2-t43-devel-smp-00172-g23783f8 #13 [ 266.500026] Call Trace: [ 266.500026] [<c17b11a8>] ? printk+0x1d/0x1f [ 266.500026] [<c17b2506>] print_circular_bug+0xa7/0xb1 [ 266.500026] [<c10b0e45>] check_prev_add+0x605/0x610 [ 266.500026] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 266.500026] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 266.500026] [<c10b3945>] __lock_acquire+0x355/0x820 [ 266.500026] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 266.500026] [<f86e7883>] ? sirdev_write_complete+0x23/0x280 [sir_dev] [ 266.500026] [<c17c75f9>] ? _raw_spin_lock_irqsave+0x29/0xa0 [ 266.500026] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 266.500026] [<f86e7883>] ? sirdev_write_complete+0x23/0x280 [sir_dev] [ 266.500026] [<f86e7883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 266.500026] [<c10aea1b>] ? trace_hardirqs_off+0xb/0x10 [ 266.500026] [<f8646671>] irtty_write_wakeup+0x31/0x90 [irtty_sir] [ 266.500026] [<c13c2991>] ? tty_ldisc_try+0x41/0x50 [ 266.500026] [<c13c29ad>] ? tty_ldisc_ref+0xd/0x10 [ 266.500026] [<c13ba332>] tty_wakeup+0x62/0x70 [ 266.500026] [<c13d7686>] uart_write_wakeup+0x16/0x20 [ 266.500026] [<c13daffe>] serial8250_tx_chars+0x8e/0x110 [ 266.500026] [<c13dc157>] serial8250_handle_irq+0x97/0xa0 [ 266.500026] [<c13dc17c>] serial8250_default_handle_irq+0x1c/0x20 [ 266.500026] [<c13da1e5>] serial8250_interrupt+0x65/0xd0 [ 266.500026] [<c10deb40>] handle_irq_event_percpu+0x50/0x3a0 [ 266.500026] [<c10deec1>] ? handle_irq_event+0x31/0x60 [ 266.500026] [<c132c6ee>] ? do_raw_spin_unlock+0x4e/0x90 [ 266.500026] [<c10deeca>] handle_irq_event+0x3a/0x60 [ 266.500026] [<c10e1ab0>] ? handle_fasteoi_irq+0xc0/0xc0 [ 266.500026] [<c10e1b16>] handle_edge_irq+0x66/0xf0 [ 266.500026] <IRQ> [<c17cfc82>] ? do_IRQ+0x42/0xc0 [ 266.500026] [<c17cfaee>] ? common_interrupt+0x2e/0x34 [ 266.500026] [<c10b447a>] ? lock_acquire+0x9a/0x1b0 [ 266.500026] [<c15ba2d7>] ? sch_direct_xmit+0x47/0x220 [ 266.500026] [<c17c6a84>] ? _raw_spin_lock+0x44/0x80 [ 266.500026] [<c15ba2d7>] ? sch_direct_xmit+0x47/0x220 [ 266.500026] [<c15ba2d7>] ? sch_direct_xmit+0x47/0x220 [ 266.500026] [<c17c6aaa>] ? _raw_spin_lock+0x6a/0x80 [ 266.500026] [<c15ba150>] ? netif_notify_peers+0x30/0x30 [ 266.500026] [<c1595e45>] ? dev_queue_xmit+0x175/0x770 [ 266.500026] [<c1595cf8>] ? dev_queue_xmit+0x28/0x770 [ 266.500026] [<f86c762a>] ? irlap_queue_xmit+0x9a/0xe0 [irda] [ 266.500026] [<f86c7beb>] ? irlap_send_discovery_xid_frame+0xdb/0x360 [irda] [ 266.500026] [<f86c5a68>] ? irlap_state_ndm+0x308/0x4e0 [irda] [ 266.500026] [<c116418b>] ? kmem_cache_alloc_trace+0x2b/0x2b0 [ 266.500026] [<c10ae8ff>] ? trace_hardirqs_off_caller+0x1f/0x130 [ 266.500026] [<f86c5d7b>] ? irlap_do_event+0x4b/0xb0 [irda] [ 266.500026] [<f86cab2b>] ? hashbin_new+0x2b/0x70 [irda] [ 266.500026] [<f86c264a>] ? irlap_discovery_request+0xda/0x230 [irda] [ 266.500026] [<c17c7036>] ? _raw_spin_unlock_irqrestore+0x36/0x70 [ 266.500026] [<c17c7036>] ? _raw_spin_unlock_irqrestore+0x36/0x70 [ 266.500026] [<c10b1f19>] ? trace_hardirqs_on_caller+0x89/0x120 [ 266.500026] [<f86bf168>] ? irlmp_state_standby+0x78/0x170 [irda] [ 266.500026] [<f86d384c>] ? irlmp_expire_discoveries+0x18c/0x240 [irda] [ 266.500026] [<f86bfb59>] ? irlmp_do_lap_event+0x39/0xe0 [irda] [ 266.500026] [<f86be46c>] ? irlmp_do_discovery+0xac/0x140 [irda] [ 266.500026] [<f86be348>] ? irlmp_do_expiry+0x38/0xb0 [irda] [ 266.500026] [<c1088e65>] ? local_clock+0x65/0x70 [ 266.500026] [<f86c0603>] ? irlmp_discovery_timer_expired+0x23/0x60 [irda] [ 266.500026] [<c105abad>] ? call_timer_fn+0x6d/0x2e0 [ 266.500026] [<c105ab77>] ? call_timer_fn+0x37/0x2e0 [ 266.500026] [<c17c6fe7>] ? _raw_spin_unlock_irq+0x27/0x40 [ 266.500026] [<f86c05e0>] ? irlmp_state_disconnected+0x1e0/0x1e0 [irda] [ 266.500026] [<c105af0a>] ? run_timer_softirq+0xea/0x260 [ 266.500026] [<f86c05e0>] ? irlmp_state_disconnected+0x1e0/0x1e0 [irda] [ 266.500026] [<c10524cf>] ? __do_softirq+0x9f/0x360 [ 266.500026] [<c1052430>] ? __tasklet_hi_schedule_first+0x130/0x130 [ 266.500026] [<c1102d87>] ? ftrace_return_to_handler+0x27/0x60 [ 266.500026] [<c1052439>] ? __do_softirq+0x9/0x360 [ 266.500026] [<c1052430>] ? __tasklet_hi_schedule_first+0x130/0x130 [ 266.500026] <IRQ> [<c1052a36>] ? irq_exit+0x86/0xb0 [ 266.500026] [<c17cfc8b>] ? do_IRQ+0x4b/0xc0 [ 266.500026] [<c17cfaee>] ? common_interrupt+0x2e/0x34 [ 266.500026] [<c10b007b>] ? print_irq_inversion_bug.part.32+0x12b/0x1c0 [ 266.500026] [<c11637e9>] ? kmem_cache_free+0x69/0x1e0 [ 266.500026] [<c1122033>] ? mempool_free_slab+0x13/0x20 [ 266.500026] [<c1122033>] ? mempool_free_slab+0x13/0x20 [ 266.500026] [<c11220c6>] ? mempool_free+0x46/0x90 [ 266.500026] [<c14fde00>] ? crypt_dec_pending+0x50/0x90 [ 266.500026] [<c14fe8ec>] ? kcryptd_crypt_read_convert+0x7c/0xa0 [ 266.500026] [<c14feb45>] ? kcryptd_crypt+0x25/0x30 [ 266.500026] [<c1069fa8>] ? process_one_work+0x178/0x5c0 [ 266.500026] [<c1069f34>] ? process_one_work+0x104/0x5c0 [ 266.500026] [<c106a7f6>] ? worker_thread+0x1f6/0x2e0 [ 266.500026] [<c14feb20>] ? kcryptd_crypt_write_convert+0x210/0x210 [ 266.500026] [<c106a72c>] ? worker_thread+0x12c/0x2e0 [ 266.500026] [<c106a600>] ? rescuer_thread+0x1d0/0x1d0 [ 266.500026] [<c10721f2>] ? kthread+0x72/0x80 [ 266.500026] [<c1072180>] ? __init_kthread_worker+0x60/0x60 [ 266.500026] [<c17cfafa>] ? kernel_thread_helper+0x6/0x10 I also believe that a two lockups (nothing working - Xorg, keyboard, network/ssh) I experienced at few other boots, around t=+380, is due some softlockup around 260! (because 260+120 softlockup detection period = 380). I think this is really nasty bug, and needs to be fixed with high priority! Thanks, Witek |
Created attachment 72310 [details] Kernel config Hi, when booting I got this [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Linux version 3.3.0-rc2-t43-devel-smp-00172-g23783f8 (baryluk@sredniczarny) (gcc version 4.6.2 (Debian 4.6.2-12) ) #13 SMP Sun Feb 5 15:37:06 CET 2012 ... ... [ 264.760544] irda_init() [ 264.760803] NET: Registered protocol family 23 [ 264.886084] sirdev_get_instance - ttyS1 [ 264.886216] device: 'irda0': device_add [ 264.886567] PM: Adding info for No Bus:irda0 [ 264.920588] irtty_open - ttyS1: irda line discipline opened [ 265.933162] irlap_change_speed(), setting speed to 9600 [ 268.940593] [ 268.943341] ====================================================== [ 268.946103] [ INFO: possible circular locking dependency detected ] [ 268.948842] 3.3.0-rc2-t43-devel-smp-00172-g23783f8 #13 Tainted: G W [ 268.950009] ------------------------------------------------------- [ 268.950009] irq/3-serial/6853 is trying to acquire lock: [ 268.950009] (&(&dev->tx_lock)->rlock){..-...}, at: [<f878a883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 268.950009] [ 268.950009] but task is already holding lock: [ 268.950009] (&port_lock_key){..-...}, at: [<c13dc0f7>] serial8250_handle_irq+0x37/0xa0 [ 268.950009] [ 268.950009] which lock already depends on the new lock. [ 268.950009] [ 268.950009] [ 268.950009] the existing dependency chain (in reverse order) is: [ 268.950009] [ 268.950009] -> #1 (&port_lock_key){..-...}: [ 268.950009] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 268.950009] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 268.950009] [<c10b3945>] __lock_acquire+0x355/0x820 [ 268.950009] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 268.950009] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 268.950009] [<c13d5f32>] uart_write_room+0x22/0x60 [ 268.950009] [<c13c1c19>] tty_write_room+0x19/0x20 [ 268.950009] [<f8795512>] irtty_do_write+0x42/0xa0 [irtty_sir] [ 268.950009] [<f878a455>] sirdev_hard_xmit+0xc5/0x280 [sir_dev] [ 268.950009] [<c159586f>] dev_hard_start_xmit+0x22f/0x690 [ 268.950009] [<c15ba331>] sch_direct_xmit+0xa1/0x220 [ 268.950009] [<c1595e45>] dev_queue_xmit+0x175/0x770 [ 268.950009] [<f87f962a>] irlap_queue_xmit+0x9a/0xe0 [irda] [ 268.950009] [<f87f9beb>] irlap_send_discovery_xid_frame+0xdb/0x360 [irda] [ 268.950009] [<f87f7a68>] irlap_state_ndm+0x308/0x4e0 [irda] [ 268.950009] [<f87f7d7b>] irlap_do_event+0x4b/0xb0 [irda] [ 268.950009] [<f87f464a>] irlap_discovery_request+0xda/0x230 [irda] [ 268.950009] [<f87f1168>] irlmp_state_standby+0x78/0x170 [irda] [ 268.950009] [<f87f1b59>] irlmp_do_lap_event+0x39/0xe0 [irda] [ 268.950009] [<f87f046c>] irlmp_do_discovery+0xac/0x140 [irda] [ 268.950009] [<f87f2603>] irlmp_discovery_timer_expired+0x23/0x60 [irda] [ 268.950009] [<c105abad>] call_timer_fn+0x6d/0x2e0 [ 268.950009] [<c105af0a>] run_timer_softirq+0xea/0x260 [ 268.950009] [<c10524cf>] __do_softirq+0x9f/0x360 [ 268.950009] [<c1052887>] run_ksoftirqd+0xf7/0x1b0 [ 268.950009] [<c10721f2>] kthread+0x72/0x80 [ 268.950009] [<c17cfafa>] kernel_thread_helper+0x6/0x10 [ 268.950009] [ 268.950009] -> #0 (&(&dev->tx_lock)->rlock){..-...}: [ 268.950009] [<c10b0e45>] check_prev_add+0x605/0x610 [ 268.950009] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 268.950009] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 268.950009] [<c10b3945>] __lock_acquire+0x355/0x820 [ 268.950009] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 268.950009] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 268.950009] [<f878a883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 268.950009] [<f8795671>] irtty_write_wakeup+0x31/0x90 [irtty_sir] [ 268.950009] [<c13ba332>] tty_wakeup+0x62/0x70 [ 268.950009] [<c13d7686>] uart_write_wakeup+0x16/0x20 [ 268.950009] [<c13daffe>] serial8250_tx_chars+0x8e/0x110 [ 268.950009] [<c13dc157>] serial8250_handle_irq+0x97/0xa0 [ 268.950009] [<c13dc17c>] serial8250_default_handle_irq+0x1c/0x20 [ 268.950009] [<c13da1e5>] serial8250_interrupt+0x65/0xd0 [ 268.950009] [<c10dfa26>] irq_forced_thread_fn+0x26/0x50 [ 268.950009] [<c10df932>] irq_thread+0x152/0x1e0 [ 268.950009] [<c10721f2>] kthread+0x72/0x80 [ 268.950009] [<c17cfafa>] kernel_thread_helper+0x6/0x10 [ 268.950009] [ 268.950009] other info that might help us debug this: [ 268.950009] [ 268.950009] Possible unsafe locking scenario: [ 268.950009] [ 268.950009] CPU0 CPU1 [ 268.950009] ---- ---- [ 268.950009] lock(&port_lock_key); [ 268.950009] lock(&(&dev->tx_lock)->rlock); [ 268.950009] lock(&port_lock_key); [ 268.950009] lock(&port_lock_key); [ 268.950009] lock(&(&dev->tx_lock)->rlock); [ 268.950009] [ 268.950009] *** DEADLOCK *** [ 268.950009] [ 268.950009] 2 locks held by irq/3-serial/6853: [ 268.950009] #0: (&(&i->lock)->rlock){+.....}, at: [<c13da1a3>] serial8250_interrupt+0x23/0xd0 [ 268.950009] #1: (&port_lock_key){..-...}, at: [<c13dc0f7>] serial8250_handle_irq+0x37/0xa0 [ 268.950009] [ 268.950009] stack backtrace: [ 268.950009] Pid: 6853, comm: irq/3-serial Tainted: G W 3.3.0-rc2-t43-devel-smp-00172-g23783f8 #13 [ 268.950009] Call Trace: [ 268.950009] [<c17b11a8>] ? printk+0x1d/0x1f [ 268.950009] [<c17b2506>] print_circular_bug+0xa7/0xb1 [ 268.950009] [<c10b0e45>] check_prev_add+0x605/0x610 [ 268.950009] [<c10b0f1b>] check_prevs_add+0xcb/0x120 [ 268.950009] [<c10b14c7>] validate_chain.isra.34+0x557/0x6d0 [ 268.950009] [<c10b3945>] __lock_acquire+0x355/0x820 [ 268.950009] [<c10b4467>] lock_acquire+0x87/0x1b0 [ 268.950009] [<f878a883>] ? sirdev_write_complete+0x23/0x280 [sir_dev] [ 268.950009] [<c17c75f9>] ? _raw_spin_lock_irqsave+0x29/0xa0 [ 268.950009] [<c17c762e>] _raw_spin_lock_irqsave+0x5e/0xa0 [ 268.950009] [<f878a883>] ? sirdev_write_complete+0x23/0x280 [sir_dev] [ 268.950009] [<f878a883>] sirdev_write_complete+0x23/0x280 [sir_dev] [ 268.950009] [<c10aea1b>] ? trace_hardirqs_off+0xb/0x10 [ 268.950009] [<f8795671>] irtty_write_wakeup+0x31/0x90 [irtty_sir] [ 268.950009] [<c13c2991>] ? tty_ldisc_try+0x41/0x50 [ 268.950009] [<c13c29ad>] ? tty_ldisc_ref+0xd/0x10 [ 268.950009] [<c13ba332>] tty_wakeup+0x62/0x70 [ 268.950009] [<c13d7686>] uart_write_wakeup+0x16/0x20 [ 268.950009] [<c13daffe>] serial8250_tx_chars+0x8e/0x110 [ 268.950009] [<c13dc157>] serial8250_handle_irq+0x97/0xa0 [ 268.950009] [<c13dc17c>] serial8250_default_handle_irq+0x1c/0x20 [ 268.950009] [<c13da1e5>] serial8250_interrupt+0x65/0xd0 [ 268.950009] [<c108580b>] ? get_parent_ip+0xb/0x40 [ 268.950009] [<c10dfa26>] irq_forced_thread_fn+0x26/0x50 [ 268.950009] [<c10df932>] irq_thread+0x152/0x1e0 [ 268.950009] [<c10dfa00>] ? irq_thread_fn+0x40/0x40 [ 268.950009] [<c10df7e0>] ? irq_finalize_oneshot+0x20/0x20 [ 268.950009] [<c10721f2>] kthread+0x72/0x80 [ 268.950009] [<c1072180>] ? __init_kthread_worker+0x60/0x60 [ 268.950009] [<c17cfafa>] kernel_thread_helper+0x6/0x10 [ 272.535606] P-state transition latency capped at 20 uS system goes on however as whole, I do not tested serial or IR connections. Kernel compiled using gcc 4.6.2-12 on IA-32, with -march=pentium-m. Machine is IBM ThinkPad T43. Kernel config attached. I cannot say if this is regression, because I had disabled serial and IRDA devices in BIOS for long time, and only recently I switched them on.