[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200403072731.GA24176@lst.de>
Date: Fri, 3 Apr 2020 09:27:31 +0200
From: Christoph Hellwig <hch@....de>
To: Ira Weiny <ira.weiny@...el.com>
Cc: Christoph Hellwig <hch@....de>, Jan Kara <jack@...e.cz>,
"Darrick J. Wong" <darrick.wong@...cle.com>,
Dave Chinner <david@...morbit.com>,
"Theodore Y. Ts'o" <tytso@....edu>,
Dan Williams <dan.j.williams@...el.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Alexander Viro <viro@...iv.linux.org.uk>,
linux-ext4 <linux-ext4@...r.kernel.org>,
linux-xfs <linux-xfs@...r.kernel.org>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Linus Torvalds <torvalds@...ux-foundation.org>
Subject: Re: [PATCH V5 00/12] Enable per-file/per-directory DAX operations
V5
On Thu, Apr 02, 2020 at 01:55:19PM -0700, Ira Weiny wrote:
> > I'd just return an error for that case, don't play silly games like
> > evicting the inode.
>
> I think I agree with Christoph here. But I want to clarify. I was heading in
> a direction of failing the ioctl completely. But we could have the flag change
> with an appropriate error which could let the user know the change has been
> delayed.
>
> But I don't immediately see what error code is appropriate for such an
> indication. Candidates I can envision:
>
> EAGAIN
> ERESTART
> EUSERS
> EINPROGRESS
>
> None are perfect but I'm leaning toward EINPROGRESS.
I really, really dislike that idea. The whole point of not forcing
evictions is to make it clear - no this inode is "busy" you can't
do that. A reasonably smart application can try to evict itself.
But returning an error and doing a lazy change anyway is straight from
the playbook for arcane and confusing API designs.
Powered by blists - more mailing lists