linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Valerie Aurora <vaurora@redhat.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Erez Zadok <ezk@cs.sunysb.edu>,
	David Woodhouse <dwmw2@infradead.org>,
	linux-fsdevel@vger.kernel.org,
	Alexander Viro <viro@zeniv.linux.org.uk>,
	Jan Blunck <jblunck@suse.de>,
	Christoph Hellwig <hch@infradead.org>,
	Andy Whitcroft <apw@canonical.com>,
	Scott James Remnant <scott@canonical.com>,
	Sandu Popa Marius <sandupopamarius@gmail.com>,
	Jan Rekorajski <baggins@sith.mimuw.edu.pl>,
	"J. R. Okajima" <hooanon05@yahoo.co.jp>,
	Vladimir Dronnikov <dronnikov@gmail.com>,
	Felix Fietkau <nbd@openwrt.org>
Subject: Re: Fallthrus as full-length symlinks?
Date: Tue, 24 Nov 2009 21:12:15 -0500	[thread overview]
Message-ID: <20091125021215.GD21724@shell> (raw)
In-Reply-To: <200911231944.20191.arnd@arndb.de>

On Mon, Nov 23, 2009 at 07:44:19PM +0100, Arnd Bergmann wrote:
> On Monday 23 November 2009, Valerie Aurora wrote:
> > > BTW, we might try to figure out a way to use these symlinks to optimize any
> > > copyup that's not strictly necessary.  A rename() doesn't change the file's
> > > data, hence this symlink idea is suitable.  But also, there are other
> > > meta-data changes to a file which don't affect its data (chmod, chown,
> > > chgrp, etc.), for which a symlink would be suitable.  This would require
> > > that we could easily change the meta-data of the symlink itself, and return
> > > that metadata in the upper inode, while using the lower file's data for
> > > read().
> > 
> > I like this idea.  Copying up the file's data in chown(), etc. is an
> > enormous pain and hard to work into the existing code path.  It might
> > be possible to do with this with the directory entry-based approach as
> > well.
> 
> I guess we can even support strict atime updates with that, which would be
> even more painful to do with copyup because they happen more frequently
> than other inode changes. AFAIK the consensus for other union
> mount implementations was always that strictatime cannot be sanely
> done, or not done persistantly.

Okay, this seems really worthwhile to try then.

It seems like we can, as before, create a per-fs DT_FALLTHRU file type
(since we're out of bits for the VFS-level file type).  Then, instead
of reusing the file systems' "normal" directory entry code, we reuse
the symlink code.  As an example, with the current code,
ext2_fallthru_dentry() is a lot of copy-n-paste from ext2_add_link();
in the new version it would look a lot like or call ext2_symlink().

-VAL

  reply	other threads:[~2009-11-25  2:12 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-13 17:46 Fallthrus as full-length symlinks? Valerie Aurora
2009-11-13 18:46 ` Erez Zadok
2009-11-13 19:55   ` Arnd Bergmann
2009-11-17 19:06     ` Valerie Aurora
2009-11-17 19:13   ` Valerie Aurora
2009-11-17 19:18     ` David Woodhouse
2009-11-17 19:43       ` Valerie Aurora
2009-11-17 20:20         ` Erez Zadok
2009-11-23 18:26           ` Valerie Aurora
2009-11-23 18:44             ` Arnd Bergmann
2009-11-25  2:12               ` Valerie Aurora [this message]
2009-11-24 11:18             ` Miklos Szeredi
2009-11-18  5:47 ` hooanon05
2009-11-25  2:15   ` Valerie Aurora
2009-11-25  2:36     ` hooanon05
2009-11-25  9:43       ` David Woodhouse
     [not found] <62b7cf460911151915k12c57c6dne9b49399bd8ce9d5@mail.gmail.com>
2009-11-17  0:57 ` AYAN TYAGI
2009-11-17  6:44   ` Jamie Lokier
2009-11-17  8:03     ` AYAN TYAGI
2009-11-17 19:47       ` Valerie Aurora

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=20091125021215.GD21724@shell \
    --to=vaurora@redhat.com \
    --cc=apw@canonical.com \
    --cc=arnd@arndb.de \
    --cc=baggins@sith.mimuw.edu.pl \
    --cc=dronnikov@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=ezk@cs.sunysb.edu \
    --cc=hch@infradead.org \
    --cc=hooanon05@yahoo.co.jp \
    --cc=jblunck@suse.de \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=nbd@openwrt.org \
    --cc=sandupopamarius@gmail.com \
    --cc=scott@canonical.com \
    --cc=viro@zeniv.linux.org.uk \
    /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;
as well as URLs for NNTP newsgroup(s).