Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Miklos Szeredi
> I'm just not going to apply weird hacks to work around a bug which > I do not understand, and I have spent way too much time trying to understand > this one. I suggest you apply patch #5 "balance dirty pages from loop device" and see for yourself the same deadlock with a simple loopback mount.

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Andrew Morton
On Thu, 01 Mar 2007 09:37:06 +0100 Miklos Szeredi <[EMAIL PROTECTED]> wrote: > > Sigh. What's this about i_mutex? That appears to be some critical > > information which _still_ isn't being communicated. > > > > This: > > ssize_t generic_file_aio_write(struct kiocb *iocb, const struct iovec

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Miklos Szeredi
> > > > This deadlock happens, when dirty pages from one filesystem are > > > > written back through another filesystem. It easiest to demonstrate > > > > with fuse although it could affect looback mounts as well (see > > > > following patches). > > > > > > > > Let's call the filesystems A(bove)

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Andrew Morton
On Thu, 01 Mar 2007 08:35:28 +0100 Miklos Szeredi <[EMAIL PROTECTED]> wrote: > > > This deadlock happens, when dirty pages from one filesystem are > > > written back through another filesystem. It easiest to demonstrate > > > with fuse although it could affect looback mounts as well (see > > >

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Andrew Morton
On Thu, 01 Mar 2007 08:35:28 +0100 Miklos Szeredi [EMAIL PROTECTED] wrote: This deadlock happens, when dirty pages from one filesystem are written back through another filesystem. It easiest to demonstrate with fuse although it could affect looback mounts as well (see following

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Miklos Szeredi
This deadlock happens, when dirty pages from one filesystem are written back through another filesystem. It easiest to demonstrate with fuse although it could affect looback mounts as well (see following patches). Let's call the filesystems A(bove) and B(elow). Process

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Andrew Morton
On Thu, 01 Mar 2007 09:37:06 +0100 Miklos Szeredi [EMAIL PROTECTED] wrote: Sigh. What's this about i_mutex? That appears to be some critical information which _still_ isn't being communicated. This: ssize_t generic_file_aio_write(struct kiocb *iocb, const struct iovec *iov,

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-03-01 Thread Miklos Szeredi
I'm just not going to apply weird hacks to work around a bug which I do not understand, and I have spent way too much time trying to understand this one. I suggest you apply patch #5 balance dirty pages from loop device and see for yourself the same deadlock with a simple loopback mount. I

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-02-28 Thread Miklos Szeredi
> > This deadlock happens, when dirty pages from one filesystem are > > written back through another filesystem. It easiest to demonstrate > > with fuse although it could affect looback mounts as well (see > > following patches). > > > > Let's call the filesystems A(bove) and B(elow). Process

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-02-28 Thread Andrew Morton
On Tue, 27 Feb 2007 23:38:12 +0100 Miklos Szeredi <[EMAIL PROTECTED]> wrote: > From: Miklos Szeredi <[EMAIL PROTECTED]> > > This deadlock happens, when dirty pages from one filesystem are > written back through another filesystem. It easiest to demonstrate > with fuse although it could affect

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-02-28 Thread Andrew Morton
On Tue, 27 Feb 2007 23:38:12 +0100 Miklos Szeredi [EMAIL PROTECTED] wrote: From: Miklos Szeredi [EMAIL PROTECTED] This deadlock happens, when dirty pages from one filesystem are written back through another filesystem. It easiest to demonstrate with fuse although it could affect looback

Re: [patch 03/22] fix deadlock in balance_dirty_pages

2007-02-28 Thread Miklos Szeredi
This deadlock happens, when dirty pages from one filesystem are written back through another filesystem. It easiest to demonstrate with fuse although it could affect looback mounts as well (see following patches). Let's call the filesystems A(bove) and B(elow). Process Pr_a is