Messages in this thread | | | Date | Wed, 22 Mar 2000 13:21:56 -0800 (PST) | From | Blu3Viper <> | Subject | 2.4 TODO addition (loopback fs deadlocks) |
| |
Loopback filesystem is broken. Doing fast back to back accesses in a looped back filesystem results in a deadlock at the instruction following schedule () in wait_on_buffer. Examples, having /tmp a loopback fs: use pine, it opens /tmp/xxxxxxxx, sending large emails is very likely to trigger the deadlock, using wget from localhost and storing retrieved data in /tmp.
kupdate is the first process that deadlocks I believe and is quickly followed by any further programs.
sgi kdb print:
pid #4, 12e993, in wait_on_buffer, [kupdate]
0xcbf5ddec 0xc0114b92 schedule+0x25a( 0x3ff, 0xc13dfcc0, 0x103f, 0xcbf5c000, 0x1234567) 0xcbf5de34 0xc012e993 __wait_on_buffer+0x17b( 0xc3e58c80) 0xcbf5de60 0xc1046633 block_getblk+0x57( 0xc13dfcc0, 0xc3e58c80, 0x33, 0x103f, 0xcbf5deac) 0xcbf5df00 0xc013030f __block_prepare_write+0xeb( 0xc13dfcc0, 0xc1119060, 0x00, 0x400, 0xc0146908) 0xcbf5df24 0xc0130961 block_prepare_write+0x21( 0xc1119060, 0x0, 0x400, 0xc0146908) 0xcbf5df3c 0xc0146f59 ext2_prepare_write+0x19( 0xc1119060, 0x0, 0x400) 0xcbf5df74 0xc01a36c6 lo_send+0xaa( 0xc137a800, 0xc3e25800, 0x400, 0x103f00, 0x0) 0xcbf5dfb8 0xc01a3ba9 do_lo_request+0x2c1( 0xc0354624) 0xcbf5dfc8 0xc01a25f6 generic_unplug_device+0x1e( 0xc0354624) 0xcbf5dfd8 0xc013185e sync_old_buffers+0x62( ) 0xcbf5dfec 0xc0131a8d kupdate+0xcd( 0x0, 0x78, 0xc02b5fd0, 0x1, 0x40) 0xcbfedfa8 0xc0108c34 kernel_thread+0x28) 0xcbc5a6a4 0xcbc5a6a8 kernel_thread+0xbb51a9c) 0x0 0x0 kernel_thread kdb>
Please see previous postings for assembler dump of other processes. THe EIP of every process in D state is stuck at the instruction immediately following a schedule() call.
-d
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |