From: Eric Sandeen <sandeen@sandeen.net>
To: Yongqiang Yang <xiaoqiangnk@gmail.com>
Cc: "Andreas Dilger" <adilger@dilger.ca>,
"Theodore Tso" <tytso@mit.edu>, xfs-oss <xfs@oss.sgi.com>,
"coreutils@gnu.org" <coreutils@gnu.org>,
"linux-ext4@vger.kernel.org" <linux-ext4@vger.kernel.org>,
"Pádraig Brady" <P@draigbrady.com>,
"Markus Trippelsdorf" <markus@trippelsdorf.de>
Subject: Re: Files full of zeros with coreutils-8.11 and xfs (FIEMAP related?)
Date: Tue, 19 Apr 2011 09:05:24 -0500 [thread overview]
Message-ID: <4DAD96A4.40008@sandeen.net> (raw)
In-Reply-To: <BANLkTinozFL1Q5BmWr=7=Pua+0g_BciVvA@mail.gmail.com>
On 4/19/11 3:11 AM, Yongqiang Yang wrote:
> On Tue, Apr 19, 2011 at 3:45 PM, Dave Chinner <david@fromorbit.com> wrote:
>> On Tue, Apr 19, 2011 at 02:53:20PM +0800, Yongqiang Yang wrote:
...
>>> I think there are 2 ways to provide a definite definition for FIEMAP
>>> for all filesystems:
>>>
>>> 1. FIEMAP returns extent state on disk.
>>> 2. FIEMAP returns extent both in memory and on disk.
>>
>> You are *not listening*. There is no #2. FIEMAP returns the extent
>> state _on disk_ at the time of the call. If you want it to reflect
>> the in-memory state at the time of the call (for data or metadata),
>> you *must* use the the SYNC flag to convert that in-memory state to
>> on-disk state, which FIEMAP then reports just fine.
>
> Sorry for being dense.
>
> I think delayed extent is an exception. because it is not on the disk.
>
> Yongqiang.
I don't think you're being dense, I think that the interface specification is just messed up.
By including flags for both unwritten and delalloc in the interface, we have hopelessly intertwined on-disk and in-memory state.
If you preallocate 1M and then do a buffered IO to that same range without a sync, and then a fiemap, what on earth should the interface return?
Writing the first part of that testcase is simple but I have no idea what the correct behavior is.
(FIEMAP_EXTENT_UNWRITTEN|FIEMAP_EXTENT_DELALLOC) ? that makes no sense. But no other combination of flags makes sense to me either, unless we get into tortured redefinitions of what "delalloc" means.
And if we can't say what it -should- return.... well, too bad for coreutils. :(
-Eric
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
next prev parent reply other threads:[~2011-04-19 14:01 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-14 10:26 Files full of zeros with coreutils-8.11 and xfs (FIEMAP related?) Markus Trippelsdorf
2011-04-14 12:06 ` Markus Trippelsdorf
2011-04-14 14:02 ` Markus Trippelsdorf
2011-04-14 14:59 ` Pádraig Brady
2011-04-14 15:50 ` Eric Sandeen
2011-04-14 15:52 ` Pádraig Brady
2011-04-14 15:56 ` Eric Sandeen
2011-04-14 16:03 ` Markus Trippelsdorf
2011-04-14 16:14 ` Eric Sandeen
2011-04-14 16:21 ` Yongqiang Yang
2011-04-14 16:28 ` Markus Trippelsdorf
2011-04-14 16:31 ` Eric Sandeen
2011-04-14 16:48 ` Markus Trippelsdorf
2011-04-14 16:49 ` Eric Sandeen
2011-04-14 16:04 ` Yongqiang Yang
2011-04-14 16:10 ` Yongqiang Yang
2011-05-05 11:29 ` Pádraig Brady
2011-05-05 11:47 ` Yongqiang Yang
2011-04-14 17:27 ` Jim Meyering
2011-04-14 19:13 ` Pádraig Brady
2011-04-14 19:39 ` Jim Meyering
2011-04-14 22:59 ` Dave Chinner
2011-04-14 23:29 ` Pádraig Brady
2011-04-15 0:09 ` Dave Chinner
2011-04-15 5:01 ` Andreas Dilger
2011-04-16 0:50 ` Dave Chinner
2011-04-16 5:11 ` Andreas Dilger
2011-04-16 12:21 ` Theodore Tso
2011-04-18 0:40 ` Dave Chinner
2011-04-18 2:45 ` Andreas Dilger
2011-04-19 1:58 ` Yongqiang Yang
2011-04-19 2:59 ` Ted Ts'o
2011-04-19 3:05 ` Eric Sandeen
2011-04-21 20:12 ` Jim Meyering
2011-04-19 3:30 ` Yongqiang Yang
2011-04-19 4:14 ` Dave Chinner
2011-04-19 5:27 ` Christoph Hellwig
2011-04-19 3:44 ` Dave Chinner
2011-04-19 6:53 ` Yongqiang Yang
2011-04-19 7:45 ` Dave Chinner
2011-04-19 8:11 ` Yongqiang Yang
2011-04-19 14:05 ` Eric Sandeen [this message]
2011-04-19 14:09 ` Ted Ts'o
2011-04-19 14:13 ` Eric Sandeen
2011-04-19 16:01 ` Ted Ts'o
2011-04-20 1:53 ` Yongqiang Yang
2011-04-20 15:21 ` Christoph Hellwig
2011-04-20 17:21 ` Ted Ts'o
2011-04-19 21:08 ` Dave Chinner
2011-04-20 15:29 ` Christoph Hellwig
2011-04-16 6:05 ` Yongqiang Yang
2011-04-18 0:35 ` Dave Chinner
2011-04-15 8:53 ` Jim Meyering
2011-04-15 17:16 ` Christoph Hellwig
2011-04-15 17:24 ` Eric Blake
2011-04-15 17:26 ` Christoph Hellwig
2011-04-15 22:28 ` Andreas Dilger
2011-04-16 0:25 ` Dave Chinner
2011-04-14 14:39 ` Eric Sandeen
2011-04-20 14:39 ` Jim Meyering
2011-04-21 20:01 ` Jim Meyering
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4DAD96A4.40008@sandeen.net \
--to=sandeen@sandeen.net \
--cc=P@draigbrady.com \
--cc=adilger@dilger.ca \
--cc=coreutils@gnu.org \
--cc=linux-ext4@vger.kernel.org \
--cc=markus@trippelsdorf.de \
--cc=tytso@mit.edu \
--cc=xfs@oss.sgi.com \
--cc=xiaoqiangnk@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox