Re: [patch 6/6] mm: fsync livelock avoidance

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 11, 2008 at 03:14:07PM -0800, Andrew Morton wrote:
> On Thu, 11 Dec 2008 23:45:14 +0100
> Nick Piggin <npiggin@xxxxxxx> wrote:
> 
> > > > For simplicity, I have removed the "don't wait for writeout if we hit -EIO"
> > > > logic from a couple of places. I don't know if this is really worth the added
> > > > complexity (EIO will still get reported, but it will just take a bit longer;
> > > > an app can't rely in specific behaviour or timeliness here).
> > > 
> > > This is ungood.  The device layer likes to twiddle thumbs for 30
> > > seconds or more when it hits an IO error.  We went and made that 30,000
> > > or more..
> > 
> > It isn't really a good solution anyway,
> 
> what isn't a good solution to what?

To the problem of long waits on IO errors.

 
> > because I think it's much
> > less likely for writepage to return -EIO directly. Usually they
> > would come back via data IO completion asynchronously.
> 
> umm, maybe.  If all the file metadata is in pagecache.  Often it is not.

I'd say, often it *is* because the buffer layer allocates/maps/reserves
blocks for the page when it gets dirtied.

Of course these checks will catch some cases for some filesystems, but
they're not a good general solution to the problem of EIO errors taking
a long time, IMO, because there are other ways it can happen.
 
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux