All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@infradead.org>
To: Mark Fasheh <mfasheh@suse.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Andreas Dilger <adilger@sun.com>,
	Eric Sandeen <esandeen@redhat.com>,
	linux-ext4@vger.kernel.org
Subject: Re: [PATCH 0/3] Fiemap, an extent mapping ioctl
Date: Wed, 10 Sep 2008 09:47:27 -0400	[thread overview]
Message-ID: <20080910134727.GA17498@infradead.org> (raw)
In-Reply-To: <20080910124934.GB4563@wotan.suse.de>

On Wed, Sep 10, 2008 at 05:49:34AM -0700, Mark Fasheh wrote:
> * FIEMAP_FLAG_XATTR
> If this flag is set, the extents returned will describe the inodes
> extended attribute lookup tree, instead of it's data tree.

So does this actually make sense for any filesystem but XFS?  Still
seems like a not too useful option for a highlevel generic interface.

> 	__u32	fe_device;   /* device number for extent */

As sayd before please kill thise one.  It doesn't make any sense at all
for any merged or near mainline FS.  It'd be an utterly stupid
lustre-specific hack that still doesn't make much sense.

> * FIEMAP_EXTENT_NO_BYPASS
> Direct access to the data in this extent is illegal or will have
> undefined results.

Huh?  What is direct access?  Direct access as in bypassing the
filesystem and writing to the blockdev directly always has undefined
results.

> * FIEMAP_EXTENT_SECONDARY
> The data for this extent is in secondary storage (e.g. HSM).  If the
> data is not also in the filesystem, then FIEMAP_EXTENT_NO_BYPASS
> should also be set.

No HSM in mainline, so please drop it.  We can add it once we get HSM
support.

> * FIEMAP_EXTENT_NET
>   - This will also set FIEMAP_EXTENT_NO_BYPASS
> The data for this extent is not stored in a locally-accessible device.

Doesn't make any sense currently, please drop.

> * FIEMAP_EXTENT_DATA_COMPRESSED
>   - This will also set FIEMAP_EXTENT_NO_BYPASS
> The data in this extent has been compressed by the file system.

Add once we have users for it.

> * FIEMAP_EXTENT_DATA_ENCRYPTED
>   - This will also set FIEMAP_EXTENT_NO_BYPASS
> The data in this extent has been encrypted by the file system.
> 
> * FIEMAP_EXTENT_NOT_ALIGNED
> Extent offsets and length are not guaranteed to be block aligned.
> 
> * FIEMAP_EXTENT_DATA_INLINE
>   This will also set FIEMAP_EXTENT_NOT_ALIGNED
> Data is located within a meta data block.
> 
> * FIEMAP_EXTENT_DATA_TAIL
>   This will also set FIEMAP_EXTENT_NOT_ALIGNED
> Data is packed into a block with data from other files.
> 
> * FIEMAP_EXTENT_UNWRITTEN
> Unwritten extent - the extent is allocated but it's data has not been
> initialized.  This indicates the extent's data will be all zero if read
> through the filesystem but the contents are undefined if read directly from
> the device.
> 
> * FIEMAP_EXTENT_MERGED
> This will be set when a file does not support extents, i.e., it uses a block
> based addressing scheme.  Since returning an extent for each block back to
> userspace would be highly inefficient, the kernel will try to merge most
> adjacent blocks into 'extents'.


  reply	other threads:[~2008-09-10 13:47 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-25 20:22 FIEMAP patches Andreas Dilger
2008-08-26  6:22 ` Mark Fasheh
2008-08-26  6:57   ` Andreas Dilger
2008-09-10 12:40 ` Mark Fasheh
2008-09-10 12:49   ` [PATCH 0/3] Fiemap, an extent mapping ioctl Mark Fasheh
2008-09-10 13:47     ` Christoph Hellwig [this message]
2008-09-10 14:07       ` Theodore Tso
2008-09-10 14:11         ` Christoph Hellwig
2008-09-10 20:33           ` Andreas Dilger
2008-09-10 16:10       ` Mark Fasheh
2008-09-10 16:20         ` Christoph Hellwig
2008-09-10 18:46     ` Andrew Morton
2008-09-10 19:46       ` Andreas Dilger
2008-09-10 12:49   ` [PATCH 1/3] vfs: vfs-level fiemap interface Mark Fasheh
2008-09-10 12:50   ` [PATCH 2/3] generic block based fiemap implementation Mark Fasheh
2008-09-10 12:50   ` [PATCH 3/3] ocfs2: fiemap support Mark Fasheh
2008-09-10 12:50     ` [Ocfs2-devel] " Mark Fasheh

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=20080910134727.GA17498@infradead.org \
    --to=hch@infradead.org \
    --cc=adilger@sun.com \
    --cc=akpm@linux-foundation.org \
    --cc=esandeen@redhat.com \
    --cc=linux-ext4@vger.kernel.org \
    --cc=mfasheh@suse.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.