[SSI-devel] [ ssic-linux-Bugs-686748 ] Filesystem stacking deadlock
Brought to you by:
brucewalker,
rogertsang
From: SourceForge.net <no...@so...> - 2008-04-20 22:29:45
|
Bugs item #686748, was opened at 2003-02-14 15:10 Message generated for change (Settings changed) made by rogertsang You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=405834&aid=686748&group_id=32541 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Filesystem >Group: v1.2.0 Status: Open Resolution: None Priority: 3 Private: No Submitted By: David Zafman (dzafman) Assigned to: John Byrne (jlbyrne) Summary: Filesystem stacking deadlock Initial Comment: This has only been seen once. There are other processes wedged processes, which based on their stacks, are also blocked on the same inodes i_sem. This stack trace below shows that if the same processes recursively calls generic_file_write() twice, it will, of course, deadlock, leaving the i_sem locked on the inode. We might look into the Non-stop Clusters code, to see how we dealt with this issue before, although it might be somewhat OS specific. Stack traceback for pid 8 EBP EIP Function (args) 0xc11f7aa0 0xc011a9c8 schedule+0x478 (0x1, 0xc11f6000, 0xc30cfbe8, 0xc1ff5c08, 0xc3cd94ec) kernel .text 0xc0100000 0xc011a550 0xc011aa80 0xc11f7ac0 0xc0106199 __down+0x69 (0xc3cd94ec, 0xc11f7b78, 0xc0c5c3a0) kernel .text 0xc0100000 0xc0106130 0xc0106200 0xc11f7ad4 0xc010634b __down_failed+0xb (0xc11f7b58, 0xffffffff, 0xc3f96000, 0xc11f7b04, 0xc4859a04) kernel .text 0xc0100000 0xc0106340 0xc0106354 0xc0135868 _text_lock_filemap+0x27b kernel .text 0xc0100000 0xc01355ed 0xc0135880 0xc11f7ae8 0xc0135561 generic_file_write+0x21 (0xc11f7b58, 0xc3f96000, 0x1000, 0xc11f7b78, 0xc11f6000) kernel .text 0xc0100000 0xc0135540 0xc0135590 0xc11f7b04 0xc4859a04 [ext3]ext3_file_write+0x44 (0xc11f7b58, 0xc3f96000, 0x1000, 0xc11f7b78, 0xc11f7b58) ext3 .text 0xc4858060 0xc48599c0 0xc4859a10 0xc11f7bd4 0xc01e3859 cfsd_write+0xb9 (0xc2345360, 0x8a000, 0x0, 0xc3f96000, 0x1000) kernel .text 0xc0100000 0xc01e37a0 0xc01e38d0 0xc11f7c40 0xc01e012c cfs_proc_write+0x8c (0xc0e8bba0, 0x8a000, 0x0, 0x1000, 0xc3f96000) kernel .text 0xc0100000 0xc01e00a0 0xc01e0220 0xc11f7c70 0xc01ddf97 cfs_writepage_sync+0x57 (0x0, 0xc0e8bba0, 0xc111e238, 0x0, 0x1000) kernel .text 0xc0100000 0xc01ddf40 0xc01de020 0xc11f7c9c 0xc01de0be cfs_writepage+0x9e (0xc111e238, 0xc3c1bd90, 0xc11f6000, 0x3b, 0x256) kernel .text 0xc0100000 0xc01de020 0xc01de100 [1]more> 0xc11f7ccc 0xc0139c96 shrink_cache+0x1f6 (0x6, 0x3, 0x20, 0xc03c4908, 0x6) kernel .text 0xc0100000 0xc0139aa0 0xc0139e40 0xc11f7cf0 0xc0139f83 shrink_caches+0x53 (0x20, 0xc11f6000, 0x1d2, 0xc03c4908) kernel .text 0xc0100000 0xc0139f30 0xc0139fb0 0xc11f7d08 0xc0139fe3 try_to_free_pages+0x33 (0x0, 0x0, 0x0, 0xc03c4a84, 0x81) kernel .text 0xc0100000 0xc0139fb0 0xc013a010 0xc11f7d28 0xc013aa98 balance_classzone+0x68 (0xc11f7d40, 0xc03c4908, 0xc03c4a78, 0x1d2, 0xab) kernel .text 0xc0100000 0xc013aa30 0xc013ac00 0xc11f7d50 0xc013ad0a __alloc_pages+0x10a (0xc11f7da4) kernel .text 0xc0100000 0xc013ac00 0xc013ad70 0xc11f7d58 0xc013aa26 _alloc_pages+0x16 (0xc11f7d88, 0x0, 0x1000, 0xfffffff4, 0x0) kernel .text 0xc0100000 0xc013aa10 0xc013aa30 0xc0135259 __generic_file_write+0x419 (0xc11f7e38, 0xc2436000, 0x1000, 0xc11f7e58, 0xc11f7e38) kernel .text 0xc0100000 0xc0134e40 0xc0135540 0xc11f7dc8 0xc0135570 generic_file_write+0x30 (0xc11f7e38, 0xc2436000, 0x1000, 0xc11f7e58, 0xc11f6000) kernel .text 0xc0100000 0xc0135540 0xc0135590 0xc11f7de4 0xc4859a04 [ext3]ext3_file_write+0x44 (0xc11f7e38, 0xc2436000, 0x1000, 0xc11f7e58, 0xc11f7e38) ext3 .text 0xc4858060 0xc48599c0 0xc4859a10 0xc11f7eb4 0xc01e3859 cfsd_write+0xb9 (0x202, 0x202, 0xc11dd780, 0x0, 0x0) kernel .text 0xc0100000 0xc01e37a0 0xc01e38d0 0xc11f7e3c 0xc48090c8 [scsi_mod]scsi_queue_next_request+0x48 (0xc044aee0) scsi_mod .text 0xc4802060 0xc4809080 0xc48091a0 0xc11f7ef4 0xc0123aac bh_action+0x4c (0x8, 0x0, 0x1, 0xc041d500, 0xfffffffe) [1]more> kernel .text 0xc0100000 0xc0123a60 0xc0123af0 0xc11f7f10 0xc0123951 tasklet_hi_action+0x61 (0xc0e8bba0, 0xab000, 0x0, 0x1000, 0xc2436000) kernel .text 0xc0100000 0xc01238f0 0xc01239a0 0xc11f7f50 0xc01ddf97 cfs_writepage_sync+0x57 (0x0, 0xc0e8bba0, 0xc10a2f38, 0x0, 0x1000) kernel .text 0xc0100000 0xc01ddf40 0xc01de020 0xc11f7f7c 0xc01de0be cfs_writepage+0x9e (0xc10a2f38, 0xc0e8bc64, 0xc01de020, 0x0, 0x4) kernel .text 0xc0100000 0xc01de020 0xc01de100 0xc11f7fa0 0xc01324b8 filemap_fdatasync+0x88 (0xc0e8bc54, 0x0, 0xc326e464, 0xc326e400, 0xc11f6000) kernel .text 0xc0100000 0xc0132430 0xc0132510 0xc11f7fc4 0xc015623a sync_unlocked_inodes+0xaa (0xc11f6000) kernel .text 0xc0100000 0xc0156190 0xc01564d0 0xc11f7fd0 0xc0144938 sync_old_buffers+0x28 (0x30f00, 0xc11f6000, 0x30f00, 0xc115bf9c, 0xc0105000) kernel .text 0xc0100000 0xc0144910 0xc01449a0 0xc11f7fec 0xc0144cec kupdate+0x13c kernel .text 0xc0100000 0xc0144bb0 0xc0144d00 0xc0105ab6 kernel_thread+0x26 kernel .text 0xc0100000 0xc0105a90 0xc0105ad0 ---------------------------------------------------------------------- Comment By: Roger Tsang (rogertsang) Date: 2005-09-29 01:19 Message: Logged In: YES user_id=1246761 Is this a loopback filesystem? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=405834&aid=686748&group_id=32541 |