Re: loopback blockdev deadlocks (was Re: PROBLEM: ls gets stuck in D state on 2.3.99pre4-5)

From: Mike Galbraith (mikeg@weiden.de)
Date: Tue Apr 11 2000 - 23:39:21 EST


On Tue, 11 Apr 2000, Steve Dodd wrote:

> On Tue, Apr 11, 2000 at 06:19:37PM +0200, Mike Galbraith wrote:
> > On Tue, 11 Apr 2000, Mircea Damian wrote:
>
> > > I have the same behaviour with iso images mounted on loopback since some
> > > time ago. I thought it was just my problem. At first it stucked when I
> > > tried to mount it. Now it mounts fine but I can't access anything there.
> [..]
>
> > I wasted some time looking into this. If the file is in cache, it
> > seems to work ~ok. I can reproduce a lock simply by doing losetup
> > /dev/loop0 ext2image; fsck -f /dev/loop0 after fresh boot.
>
> Yes, same here. I've tried to figure it out by inspection, and not come up
> with anything, so can we try to reduce the variables? Which kernel version
> did people first see this in, and what block device is ultimately underlying
> the loopback backing store? I'm using an ide disk, with dma enabled.

Same backing store here.
(I think that this started when Al removed the block redirection
starting at patch-2.3.44.. before which there were MUCH worse problems:)

> > The kdb trace.. (screen of box about to do XXXth 20gig fsck:)
> > schedule+0x274
> > ___wait_on_page+0x183
> > lock_page+x1c
> > do_generic_file_read+0x210
> > lo_receive+0x57
> > do_lo_request+0x2e6
> > generic_unplug_device+0x28
> > block_read+0x4de
> > sys_read+0xcc
> > system_call
>
> AFAICT, the I/O to the underlying device is never happening (or if it is,
> the state isn't being propagated to the buffers / pages). I've no idea why
> not.

My favorite wild theory is that the underlying device is plugged.

What I wanted to try, but ran out of time before I could impliment, was
to do request directing as raid and ndb do. (AFAIKsmell, it's the same
stacked devices setup, so same solution might prevent deadlock here too)

        -Mike

-
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/



This archive was generated by hypermail 2b29 : Sat Apr 15 2000 - 21:00:17 EST