[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200115133101.GA28583@lst.de>
Date: Wed, 15 Jan 2020 14:31:01 +0100
From: Christoph Hellwig <hch@....de>
To: Qu Wenruo <quwenruo.btrfs@....com>
Cc: Andreas Dilger <adilger@...ger.ca>,
David Howells <dhowells@...hat.com>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Al Viro <viro@...iv.linux.org.uk>,
Christoph Hellwig <hch@....de>,
"Theodore Y. Ts'o" <tytso@....edu>,
"Darrick J. Wong" <darrick.wong@...cle.com>,
Chris Mason <clm@...com>, Josef Bacik <josef@...icpanda.com>,
David Sterba <dsterba@...e.com>,
linux-ext4 <linux-ext4@...r.kernel.org>,
linux-xfs <linux-xfs@...r.kernel.org>,
linux-btrfs <linux-btrfs@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: Problems with determining data presence by examining extents?
On Wed, Jan 15, 2020 at 09:10:44PM +0800, Qu Wenruo wrote:
> > That allows userspace to distinguish fe_physical addresses that may be
> > on different devices. This isn't in the kernel yet, since it is mostly
> > useful only for Btrfs and nobody has implemented it there. I can give
> > you details if working on this for Btrfs is of interest to you.
>
> IMHO it's not good enough.
>
> The concern is, one extent can exist on multiple devices (mirrors for
> RAID1/RAID10/RAID1C2/RAID1C3, or stripes for RAID5/6).
> I didn't see how it can be easily implemented even with extra fields.
>
> And even we implement it, it can be too complex or bug prune to fill
> per-device info.
It's also completely bogus for the use cases to start with. fiemap
is a debug tool reporting the file system layout. Using it for anything
related to actual data storage and data integrity is a receipe for
disaster. As said the right thing for the use case would be something
like the NFS READ_PLUS operation. If we can't get that easily it can
be emulated using lseek SEEK_DATA / SEEK_HOLE assuming no other thread
could be writing to the file, or the raciness doesn't matter.
Powered by blists - more mailing lists