From: Dave Chinner <david@fromorbit.com>
To: Amir Goldstein <amir73il@gmail.com>
Cc: Allison Henderson <allison.henderson@oracle.com>,
linux-xfs <linux-xfs@vger.kernel.org>
Subject: Re: [PATCH 00/17] Parent Pointers V3
Date: Sat, 21 Oct 2017 09:41:57 +1100 [thread overview]
Message-ID: <20171020224157.GS3666@dastard> (raw)
In-Reply-To: <CAOQ4uxhzZT=5O6PM4Gp=uSwYPFdrO5X9D8UF54f3jEmM2LxK1Q@mail.gmail.com>
On Thu, Oct 19, 2017 at 07:11:50AM +0300, Amir Goldstein wrote:
> On Thu, Oct 19, 2017 at 1:55 AM, Allison Henderson
> <allison.henderson@oracle.com> wrote:
> > Hi all,
> >
> > This is the third version of parent pointer attributes for xfs.
> > I've integrated the suggestions made since v2, mostly moving the
> > attr buffers in the xfs_attr_log_item to pointers that point to
> > xfs_attr_item. I've also implementing the recovery routines for
> > the xfs_attr_log_format. If I missed anything please point it
> > out. As always, comments and feedback are appreciated. Thank
> > you!
> >
>
> A minor comment about the cover letter.
> All designated reviewers must know exactly what "parent pointers" are for,
> but it could be useful to add some context in the cover letter about the purpose
> of this work for the sake of other readers on the list. Useful to refer to the
> upcoming scrub support patches.
>
> BTW, not sure if this was mentioned in the previous lifetime of those
> patches, but parent pointers can be used to implement exportfs operation
> xfs_fs_fh_to_parent() for "non-connectable" file handles (FILEID_INO32_GEN)
> and to implement xfs_fs_get_name(), which would make reconnect_path()
> *much* more efficient.
However, XFS only uses FILEID_INO32_GEN for directories
because they have known parents. For them, we implement ->get_parent()
and that means reconnect_path just does ->lookup("..") to find the
parents and doesn't need anything special.
We use FILEID_INO32_GEN_PARENT for all other types of files to
encode the ino # + generation of the parent inode into the handle.
That means for any non-dir file handle, our implemention of
->fh_to_parent will get us the parent info as efficiently as
possible.
IOWs, parent pointers won't actually speed up filehandle ->
dentry reconnection on XFS at all because we already encode parent
pointers into the filehandles that need them....
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
next prev parent reply other threads:[~2017-10-20 22:42 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-18 22:55 [PATCH 00/17] Parent Pointers V3 Allison Henderson
2017-10-18 22:55 ` [PATCH 01/17] Add helper functions xfs_attr_set_args and xfs_attr_remove_args Allison Henderson
2017-10-19 20:03 ` Darrick J. Wong
2017-10-21 1:14 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 02/17] Set up infastructure for deferred attribute operations Allison Henderson
2017-10-19 19:02 ` Darrick J. Wong
2017-10-21 1:08 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 03/17] Add xfs_attr_set_defered and xfs_attr_remove_defered Allison Henderson
2017-10-19 19:13 ` Darrick J. Wong
2017-10-21 1:08 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 04/17] Remove all strlen calls in all xfs_attr_* functions for attr names Allison Henderson
2017-10-19 19:15 ` Darrick J. Wong
2017-10-21 1:10 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 05/17] xfs: get directory offset when adding directory name Allison Henderson
2017-10-18 22:55 ` [PATCH 06/17] xfs: get directory offset when removing " Allison Henderson
2017-10-19 19:17 ` Darrick J. Wong
2017-10-21 1:11 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 07/17] xfs: get directory offset when replacing a " Allison Henderson
2017-10-18 22:55 ` [PATCH 08/17] xfs: add parent pointer support to attribute code Allison Henderson
2017-10-18 22:55 ` [PATCH 09/17] xfs: define parent pointer xattr format Allison Henderson
2017-10-18 22:55 ` [PATCH 10/17] :xfs: extent transaction reservations for parent attributes Allison Henderson
2017-10-19 18:24 ` Darrick J. Wong
[not found] ` <8680e0c1-ada8-06e3-e397-61a5076030be@oracle.com>
2017-10-20 23:45 ` Darrick J. Wong
2017-10-21 0:12 ` Allison Henderson
2017-10-21 1:07 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 11/17] Add the extra space requirements for parent pointer attributes when calculating the minimum log size during mkfs Allison Henderson
2017-10-19 18:13 ` Darrick J. Wong
2017-10-21 1:07 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 12/17] xfs: parent pointer attribute creation Allison Henderson
2017-10-19 19:36 ` Darrick J. Wong
[not found] ` <9185d3e8-4b41-b2d8-294b-934f7d3409f0@oracle.com>
2017-10-21 0:03 ` Darrick J. Wong
2017-10-21 1:11 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 13/17] xfs: add parent attributes to link Allison Henderson
2017-10-19 19:40 ` Darrick J. Wong
2017-10-21 1:12 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 14/17] xfs: remove parent pointers in unlink Allison Henderson
2017-10-19 19:43 ` Darrick J. Wong
2017-10-21 1:12 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 15/17] xfs_bmap_add_attrfork(): re-add error handling from set_attrforkoff() call Allison Henderson
2017-10-19 19:43 ` Darrick J. Wong
2017-10-21 1:13 ` Allison Henderson
2017-10-18 22:55 ` [PATCH 16/17] Add parent pointers to rename Allison Henderson
2017-10-18 22:55 ` [PATCH 17/17] Add the parent pointer support to the superblock version 5 Allison Henderson
2017-10-19 3:57 ` Amir Goldstein
2017-10-19 20:06 ` Darrick J. Wong
2017-10-20 3:18 ` Amir Goldstein
2017-10-19 19:45 ` Darrick J. Wong
2017-10-21 1:13 ` Allison Henderson
2017-10-19 4:11 ` [PATCH 00/17] Parent Pointers V3 Amir Goldstein
2017-10-20 3:22 ` Amir Goldstein
2017-10-21 1:06 ` Allison Henderson
2017-10-20 22:41 ` Dave Chinner [this message]
2017-10-21 7:34 ` Amir Goldstein
2017-10-22 23:27 ` Dave Chinner
2017-10-23 4:30 ` Amir Goldstein
2017-10-23 5:32 ` Dave Chinner
2017-10-23 6:48 ` Amir Goldstein
2017-10-23 8:40 ` Dave Chinner
2017-10-23 9:06 ` Amir Goldstein
2017-10-23 17:14 ` Darrick J. Wong
2017-10-23 19:20 ` Amir Goldstein
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=20171020224157.GS3666@dastard \
--to=david@fromorbit.com \
--cc=allison.henderson@oracle.com \
--cc=amir73il@gmail.com \
--cc=linux-xfs@vger.kernel.org \
/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