Am Sonntag 10 Januar 2010 21:05:46 schrieb Johannes Hirte:
I've observed this hanging task now several times. Not sure when this
started, but 2.6.32 is affected too, IIRC. I don't have a test pattern for
this. Dovecot imap triggers this from time to time. I've enabled
CONFIG_DETECT_HUNG_TASK now and got this two tasks which hang:
INFO: task imap:2958 blocked for more than 120 seconds.
echo 0 /proc/sys/kernel/hung_task_timeout_secs disables this message.
imap D 0 2958 2653 0x
88008caf5a28 0046 810544cf
88008caf5998 0001 88008caf5fd8 88008caf9530
de78 001d2700 001d2700 88008caf9530
Call Trace:
[810544cf] ? trace_hardirqs_off+0xd/0xf
[8105613b] ? trace_hardirqs_on_caller+0x10c/0x130
[81071262] ? sync_page+0x0/0x48
[8138b46a] io_schedule+0x38/0x4d
[810712a6] sync_page+0x44/0x48
[8138b99a] __wait_on_bit_lock+0x41/0x8a
[8107124e] __lock_page+0x61/0x68
[810475a3] ? wake_bit_function+0x0/0x2e
[810718c6] filemap_fault+0xea/0x345
[81084022] __do_fault+0x50/0x3d3
[81086077] handle_mm_fault+0x32f/0x65d
[8102039d] ? do_page_fault+0xf4/0x26f
[811cacb4] ? __down_read_trylock+0x46/0x4e
[8104b0f3] ? down_read_trylock+0x3f/0x49
[8102039d] ? do_page_fault+0xf4/0x26f
[81020500] do_page_fault+0x257/0x26f
[8138e2ff] page_fault+0x1f/0x30
[81083a13] ? might_fault+0x57/0xa7
[811746e2] ? btrfs_copy_from_user+0x4f/0x113
[81174771] ? btrfs_copy_from_user+0xde/0x113
[81174cd0] btrfs_file_write+0x439/0x6fe
[810a5c34] vfs_write+0xad/0x14e
[8105613b] ? trace_hardirqs_on_caller+0x10c/0x130
[810a5d2a] sys_pwrite64+0x55/0x74
[81001eeb] system_call_fastpath+0x16/0x1b
2 locks held by imap/2958:
#0: (sb-s_type-i_mutex_key#4){+.+.+.}, at: [81174a00]
btrfs_file_write+0x169/0x6fe
#1: (mm-mmap_sem){++}, at: [8102039d]
do_page_fault+0xf4/0x26f INFO: task flush-btrfs-2:2783 blocked for more
than 120 seconds.
echo 0 /proc/sys/kernel/hung_task_timeout_secs disables this message.
flush-btrfs-2 D 0 2783 2 0x
88010cdcf9d0 0046 810544cf
88010cdcf940 88010cdcffd8 88010cd18290
de78 001d2700 001d2700 88010cd18290
Call Trace:
[810544cf] ? trace_hardirqs_off+0xd/0xf
[8105613b] ? trace_hardirqs_on_caller+0x10c/0x130
[81071262] ? sync_page+0x0/0x48
[8138b46a] io_schedule+0x38/0x4d
[810712a6] sync_page+0x44/0x48
[8138b99a] __wait_on_bit_lock+0x41/0x8a
[81070ce1] ? find_get_pages_tag+0x0/0x130
[8107124e] __lock_page+0x61/0x68
[810475a3] ? wake_bit_function+0x0/0x2e
[811871f6] T.858+0xf1/0x2cd
[8104c4f9] ? sched_clock_cpu+0xc6/0xd4
[8104c3cd] ? sched_clock_local+0x1c/0x82
[8104c4f9] ? sched_clock_cpu+0xc6/0xd4
[810544cf] ? trace_hardirqs_off+0xd/0xf
[811874d3] extent_writepages+0x3f/0x54
[8116dbd5] ? btrfs_get_extent+0x0/0x7ee
[8116da7e] btrfs_writepages+0x22/0x24
[81077d12] do_writepages+0x1f/0x28
[810c0233] writeback_single_inode+0xf1/0x2f0
[810c0f57] writeback_inodes_wb+0x3a9/0x4b2
[810c118b] wb_writeback+0x12b/0x1af
[810c1436] wb_do_writeback+0x17f/0x195
[810c1342] ? wb_do_writeback+0x8b/0x195
[810c1477] bdi_writeback_task+0x2b/0x84
[81082a45] ? bdi_start_fn+0x0/0xcf
[81082ab6] bdi_start_fn+0x71/0xcf
[81082a45] ? bdi_start_fn+0x0/0xcf
[81047197] kthread+0x7a/0x82
[81002c94] kernel_thread_helper+0x4/0x10
[8138e0fc] ? restore_args+0x0/0x30
[8104711d] ? kthread+0x0/0x82
[81002c90] ? kernel_thread_helper+0x0/0x10
1 lock held by flush-btrfs-2/2783:
#0: (type-s_umount_key#20){..}, at: [810c0e82]
writeback_inodes_wb+0x2d4/0x4b2
regards,
Johannes
It happend again, today I found in the logs:
INFO: task imap:2590 blocked for more than 120 seconds.
echo 0 /proc/sys/kernel/hung_task_timeout_secs disables this message.
imap D 88002828ddf8 0 2590 2472 0x
88011fa53000 0086 8800282923a0
88011b7cc480 880028294c58 880117a5e000
fffdcf81 880117a5e280 00012340 00012340
Call Trace:
[81061de2] ? sync_page+0x0/0x46
[8134acaa] ? io_schedule+0x35/0x48
[81061e23] ? sync_page+0x41/0x46
[8134b185] ? __wait_on_bit_lock+0x3c/0x85
[81061dcf] ? __lock_page+0x5d/0x63
[81042877] ? wake_bit_function+0x0/0x2e