All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Pádraig Brady" <P@draigBrady.com>
To: Sunil Mushran <sunil.mushran@oracle.com>
Cc: Dave Chinner <david@fromorbit.com>,
	Andreas Dilger <adilger@dilger.ca>,
	Christoph Hellwig <hch@infradead.org>,
	Josef Bacik <josef@redhat.com>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-btrfs@vger.kernel.org, xfs@oss.sgi.com,
	viro@ZenIV.linux.org.uk, dchinner@redhat.com
Subject: Re: [PATCH] xfstests 255: add a seek_data/seek_hole tester
Date: Wed, 31 Aug 2011 10:05:21 +0100	[thread overview]
Message-ID: <4E5DF951.4010804@draigBrady.com> (raw)
In-Reply-To: <4E5DBBFD.5020202@oracle.com>

On 08/31/2011 05:43 AM, Sunil Mushran wrote:
> On 8/30/2011 8:29 PM, Dave Chinner wrote:
>> And that's -exactly- the ambiguous, vague definition that has raised
>> all these questions in the first place. I was in doubt about whether
>> unwritten extents can be considered a hole, and by your definition
>> that means it should be data. But Andreas seems to be in no doubt it
>> should be considered a hole.
>=20
> Fair enough. Let me rephrase.
>=20
> Data:
> A range in a file when read could return something other than nulls.
>=20
> Hole:
> A range in a file when read only returns nulls.
>=20
> Considering preallocated extents only return null, they should
> be considered holes.

I would concur with this.
Treating preallocated extents as holes will allow them to be
processed quickly by `cp` etc.

What we lose is the ability to copy the allocation from src to dst.
But that's less important in comparison, and could probably be done
on a per file rather than per extent basis anyway.
Note preallocation would be good for disk layout and timely ENOSPC.

Note fiemap gives us greater control by distinguishing
holes and empty extents, thus allowing us to both
efficiently copy and maintain allocation.  But that
interface currently requires a sync of the file on some
file systems, which we couldn't enable for performance
reasons in cp.

cheers,
P=E1draig.

WARNING: multiple messages have this Message-ID (diff)
From: "Pádraig Brady" <P@draigBrady.com>
To: Sunil Mushran <sunil.mushran@oracle.com>
Cc: Dave Chinner <david@fromorbit.com>,
	Andreas Dilger <adilger@dilger.ca>,
	Christoph Hellwig <hch@infradead.org>,
	Josef Bacik <josef@redhat.com>,
	linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-btrfs@vger.kernel.org, xfs@oss.sgi.com,
	viro@ZenIV.linux.org.uk, dchinner@redhat.com
Subject: Re: [PATCH] xfstests 255: add a seek_data/seek_hole tester
Date: Wed, 31 Aug 2011 10:05:21 +0100	[thread overview]
Message-ID: <4E5DF951.4010804@draigBrady.com> (raw)
In-Reply-To: <4E5DBBFD.5020202@oracle.com>

On 08/31/2011 05:43 AM, Sunil Mushran wrote:
> On 8/30/2011 8:29 PM, Dave Chinner wrote:
>> And that's -exactly- the ambiguous, vague definition that has raised
>> all these questions in the first place. I was in doubt about whether
>> unwritten extents can be considered a hole, and by your definition
>> that means it should be data. But Andreas seems to be in no doubt it
>> should be considered a hole.
> 
> Fair enough. Let me rephrase.
> 
> Data:
> A range in a file when read could return something other than nulls.
> 
> Hole:
> A range in a file when read only returns nulls.
> 
> Considering preallocated extents only return null, they should
> be considered holes.

I would concur with this.
Treating preallocated extents as holes will allow them to be
processed quickly by `cp` etc.

What we lose is the ability to copy the allocation from src to dst.
But that's less important in comparison, and could probably be done
on a per file rather than per extent basis anyway.
Note preallocation would be good for disk layout and timely ENOSPC.

Note fiemap gives us greater control by distinguishing
holes and empty extents, thus allowing us to both
efficiently copy and maintain allocation.  But that
interface currently requires a sync of the file on some
file systems, which we couldn't enable for performance
reasons in cp.

cheers,
Pádraig.

WARNING: multiple messages have this Message-ID (diff)
From: "Pádraig Brady" <P@draigBrady.com>
To: Sunil Mushran <sunil.mushran@oracle.com>
Cc: Andreas Dilger <adilger@dilger.ca>,
	linux-kernel@vger.kernel.org, xfs@oss.sgi.com,
	Christoph Hellwig <hch@infradead.org>,
	linux-btrfs@vger.kernel.org, dchinner@redhat.com,
	linux-fsdevel@vger.kernel.org, Josef Bacik <josef@redhat.com>,
	viro@ZenIV.linux.org.uk
Subject: Re: [PATCH] xfstests 255: add a seek_data/seek_hole tester
Date: Wed, 31 Aug 2011 10:05:21 +0100	[thread overview]
Message-ID: <4E5DF951.4010804@draigBrady.com> (raw)
In-Reply-To: <4E5DBBFD.5020202@oracle.com>

On 08/31/2011 05:43 AM, Sunil Mushran wrote:
> On 8/30/2011 8:29 PM, Dave Chinner wrote:
>> And that's -exactly- the ambiguous, vague definition that has raised
>> all these questions in the first place. I was in doubt about whether
>> unwritten extents can be considered a hole, and by your definition
>> that means it should be data. But Andreas seems to be in no doubt it
>> should be considered a hole.
> 
> Fair enough. Let me rephrase.
> 
> Data:
> A range in a file when read could return something other than nulls.
> 
> Hole:
> A range in a file when read only returns nulls.
> 
> Considering preallocated extents only return null, they should
> be considered holes.

I would concur with this.
Treating preallocated extents as holes will allow them to be
processed quickly by `cp` etc.

What we lose is the ability to copy the allocation from src to dst.
But that's less important in comparison, and could probably be done
on a per file rather than per extent basis anyway.
Note preallocation would be good for disk layout and timely ENOSPC.

Note fiemap gives us greater control by distinguishing
holes and empty extents, thus allowing us to both
efficiently copy and maintain allocation.  But that
interface currently requires a sync of the file on some
file systems, which we couldn't enable for performance
reasons in cp.

cheers,
Pádraig.

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2011-08-31  9:05 UTC|newest]

Thread overview: 106+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-28 15:33 [PATCH 1/4] fs: add SEEK_HOLE and SEEK_DATA flags Josef Bacik
2011-06-28 15:33 ` Josef Bacik
2011-06-28 15:33 ` [PATCH 2/4] Btrfs: implement our own ->llseek Josef Bacik
2011-06-28 15:33   ` Josef Bacik
2011-06-28 15:33 ` [PATCH 3/4] Ext4: handle SEEK_HOLE/SEEK_DATA generically Josef Bacik
2011-06-28 15:33   ` Josef Bacik
2011-06-28 16:29   ` Andreas Dilger
2011-06-28 17:34     ` Josef Bacik
2011-06-28 15:33 ` [PATCH 4/4] fs: handle SEEK_HOLE/SEEK_DATA properly in all fs's that define their own llseek Josef Bacik
2011-06-28 15:33   ` Josef Bacik
2011-06-28 15:33 ` [PATCH] xfstests 255: add a seek_data/seek_hole tester Josef Bacik
2011-06-28 15:33   ` Josef Bacik
2011-06-29  6:53   ` Dave Chinner
2011-06-29  6:53     ` Dave Chinner
2011-06-29  6:53     ` Dave Chinner
2011-06-29  6:53     ` Dave Chinner
2011-06-29  7:40     ` Christoph Hellwig
2011-06-29  7:40       ` Christoph Hellwig
2011-06-29 10:42       ` Pádraig Brady
2011-06-29 10:42         ` Pádraig Brady
2011-06-29 10:42         ` Pádraig Brady
2011-06-29 10:42         ` Pádraig Brady
2011-06-29 17:29         ` Sunil Mushran
2011-06-29 17:29           ` Sunil Mushran
2011-06-29 17:29           ` Sunil Mushran
2011-06-29 17:29           ` Sunil Mushran
2011-06-29 17:36           ` Christoph Hellwig
2011-06-29 17:36             ` Christoph Hellwig
2011-06-29 17:40             ` Sunil Mushran
2011-06-29 17:40               ` Sunil Mushran
2011-06-29 21:29           ` Pádraig Brady
2011-06-29 21:29             ` Pádraig Brady
2011-06-29 21:29             ` Pádraig Brady
2011-07-01  9:37         ` Christoph Hellwig
2011-07-01  9:37           ` Christoph Hellwig
2011-06-29 17:10       ` Sunil Mushran
2011-06-29 17:10         ` Sunil Mushran
2011-06-29 17:52         ` Josef Bacik
2011-06-29 17:52           ` Josef Bacik
2011-06-29 13:19     ` Josef Bacik
2011-06-29 13:19       ` Josef Bacik
2011-06-29 13:19       ` Josef Bacik
2011-08-25  6:06   ` Christoph Hellwig
2011-08-25  6:06     ` Christoph Hellwig
2011-08-25  6:40     ` Dave Chinner
2011-08-25  6:40       ` Dave Chinner
2011-08-25  6:51       ` Andreas Dilger
2011-08-25  6:51         ` Andreas Dilger
2011-08-26  1:35         ` Dave Chinner
2011-08-26  1:35           ` Dave Chinner
2011-08-26  6:24           ` Marco Stornelli
2011-08-26  6:24             ` Marco Stornelli
2011-08-26  6:24             ` Marco Stornelli
2011-08-26 14:41             ` Zach Brown
2011-08-26 14:41               ` Zach Brown
2011-08-26 14:41               ` Zach Brown
2011-08-26 14:41               ` Zach Brown
2011-08-27  8:30               ` Marco Stornelli
2011-08-27  8:30                 ` Marco Stornelli
2011-08-28 10:17                 ` Marco Stornelli
2011-08-28 10:17                   ` Marco Stornelli
2011-08-30 17:42                 ` Sunil Mushran
2011-08-30 17:42                   ` Sunil Mushran
2011-08-31  1:17           ` Sunil Mushran
2011-08-31  1:17             ` Sunil Mushran
2011-08-31  3:29             ` Dave Chinner
2011-08-31  3:29               ` Dave Chinner
2011-08-31  3:53               ` david
2011-08-31  3:53                 ` david
2011-08-31  4:43               ` Sunil Mushran
2011-08-31  4:43                 ` Sunil Mushran
2011-08-31  9:05                 ` Pádraig Brady [this message]
2011-08-31  9:05                   ` Pádraig Brady
2011-08-31  9:05                   ` Pádraig Brady
2011-08-31  4:48               ` Dan Merillat
2011-08-31  4:48                 ` Dan Merillat
2011-07-29  9:58 ` [PATCH 1/4] fs: add SEEK_HOLE and SEEK_DATA flags Marco Stornelli
2011-07-29  9:58   ` Marco Stornelli
2011-08-20  9:41 ` Marco Stornelli
2011-08-20  9:41   ` Marco Stornelli
2011-08-20 10:03   ` Marco Stornelli
2011-08-20 10:03     ` Marco Stornelli
2011-08-20 15:36     ` Sunil Mushran
2011-08-20 15:36       ` Sunil Mushran
2011-08-20 16:32       ` Marco Stornelli
2011-08-20 16:32         ` Marco Stornelli
2011-08-22  6:08         ` Sunil Mushran
2011-08-22  6:08           ` Sunil Mushran
2011-08-22 10:56           ` Marco Stornelli
2011-08-22 10:56             ` Marco Stornelli
2011-08-22 10:56             ` Marco Stornelli
2011-08-22 10:56             ` Marco Stornelli
2011-08-22 15:57             ` Sunil Mushran
2011-08-22 15:57               ` Sunil Mushran
2011-08-22 17:56               ` Marco Stornelli
2011-08-22 17:56                 ` Marco Stornelli
2011-08-22 21:22                 ` Sunil Mushran
2011-08-22 21:22                   ` Sunil Mushran
2011-08-23 17:44                   ` Marco Stornelli
2011-08-23 17:44                     ` Marco Stornelli
2011-08-31  0:35                 ` Dave Chinner
2011-08-31  0:35                   ` Dave Chinner
     [not found]   ` <CAGpXXZ+xjhadprkc_LiP3qUypLLkCxdeEmo8+K+6mOnBuNhmLg@mail.gmail.com>
2011-08-20 17:18     ` Greg Freemyer
  -- strict thread matches above, loose matches on Subject: below --
2011-06-27 18:02 Josef Bacik
2011-06-27 18:02 ` [PATCH] xfstests 255: add a seek_data/seek_hole tester Josef Bacik
2011-06-27 18:32   ` Andreas Dilger
2011-06-27 18:47     ` Josef Bacik

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=4E5DF951.4010804@draigBrady.com \
    --to=p@draigbrady.com \
    --cc=adilger@dilger.ca \
    --cc=david@fromorbit.com \
    --cc=dchinner@redhat.com \
    --cc=hch@infradead.org \
    --cc=josef@redhat.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sunil.mushran@oracle.com \
    --cc=viro@ZenIV.linux.org.uk \
    --cc=xfs@oss.sgi.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.