[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200721155925.GB3151642@magnolia>
Date: Tue, 21 Jul 2020 08:59:25 -0700
From: "Darrick J. Wong" <darrick.wong@...cle.com>
To: Christoph Hellwig <hch@....de>
Cc: Matthew Wilcox <willy@...radead.org>,
Goldwyn Rodrigues <rgoldwyn@...e.de>,
Dave Chinner <david@...morbit.com>,
Damien Le Moal <damien.lemoal@....com>,
Naohiro Aota <naohiro.aota@....com>,
Johannes Thumshirn <jth@...nel.org>,
linux-btrfs@...r.kernel.org, linux-fsdevel@...r.kernel.org,
cluster-devel@...hat.com, linux-ext4@...r.kernel.org,
linux-xfs@...r.kernel.org,
Michael Kerrisk <mtk.manpages@...il.com>,
linux-man@...r.kernel.org
Subject: Re: RFC: iomap write invalidation
On Tue, Jul 21, 2020 at 05:41:32PM +0200, Christoph Hellwig wrote:
> On Tue, Jul 21, 2020 at 08:27:54AM -0700, Darrick J. Wong wrote:
> > On Tue, Jul 21, 2020 at 05:16:16PM +0200, Christoph Hellwig wrote:
> > > On Tue, Jul 21, 2020 at 04:14:37PM +0100, Matthew Wilcox wrote:
> > > > On Tue, Jul 21, 2020 at 05:06:15PM +0200, Christoph Hellwig wrote:
> > > > > On Tue, Jul 21, 2020 at 04:04:32PM +0100, Matthew Wilcox wrote:
> > > > > > I thought you were going to respin this with EREMCHG changed to ENOTBLK?
> > > > >
> > > > > Oh, true. I'll do that ASAP.
> > > >
> > > > Michael, could we add this to manpages?
> > >
> > > Umm, no. -ENOTBLK is internal - the file systems will retry using
> > > buffered I/O and the error shall never escape to userspace (or even the
> > > VFS for that matter).
> >
> > It's worth dropping a comment somewhere that ENOTBLK is the desired
> > "fall back to buffered" errcode, seeing as Dave and I missed that in
> > XFS...
>
> Sounds like a good idea, but what would a good place be?
In the comment that precedes iomap_dio_rw() for the iomap version,
and...
...ye $deity, the old direct-io.c file is a mess of wrappers. Uh... a
new comment preceding __blockdev_direct_IO? Or blockdev_direct_IO? Or
both?
Or I guess the direct_IO documentation in vfs.rst...?
``direct_IO``
called by the generic read/write routines to perform direct_IO -
that is IO requests which bypass the page cache and transfer
data directly between the storage and the application's address
space. This function can return -ENOTBLK to signal that it is
necessary to fallback to buffered IO. Note that
blockdev_direct_IO and variants can also return -ENOTBLK.
--D
Powered by blists - more mailing lists