Re: Approaches to making io_submit not block

From: Jeremy Allison
Date: Thu Sep 01 2011 - 12:15:35 EST


On Thu, Sep 01, 2011 at 12:04:36PM -0400, Christoph Hellwig wrote:
> On Thu, Sep 01, 2011 at 08:58:45AM -0700, Jeremy Allison wrote:
> > Yes I did consider that of course. Problem is that leads you to the
> > nightmare that is losing all fcntl locks on the file when any of the
> > descriptors are closed. Of course we already have internal work arounds
> > for that - but they're not scalable in this case. We'd have to dup on
> > every read/write, and because of the fcntl lock problem we have to keep
> > all fd's around until the final close of the file. Don't tell us to
> > implement our own locking instead because (a) we already do in the case
> > where we don't need locking consistency with NFS and (b) most vendors insist on
> > locking consistency with NFS - not good if locks on one protocol aren't
> > seen by another.
>
> We could easily give you an fcntl / dup3 flag to only release posix
> locks on the final close of a struct file if that helps you.

That would help us enormously - it'd be Linux only of course but
we could easily add support for that.

Can you propose the design here so we can run it past some of the
Solaris/FreeBSD folks (it'd be nice if we could get broader adoption) ?

Jeremy.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/