From: jw schultz <jw@pegasys.ws>
To: linux-kernel@vger.kernel.org
Subject: Re: ReiserFS patch for updating ctimes of renamed files
Date: Sun, 12 Oct 2003 00:14:48 -0700 [thread overview]
Message-ID: <20031012071447.GJ8724@pegasys.ws> (raw)
In-Reply-To: <JIEIIHMANOCFHDAAHBHOIELODAAA.alex_a@caltech.edu>
On Sun, Oct 12, 2003 at 01:05:19AM -0500, Alex Adriaanse wrote:
> Hi,
>
> I ran into some trouble trying to do incremental backups with GNU tar
> (using --listed-incremental) where renaming a file in between backups would
> cause the file to disappear upon restoration. When investigating the issue
> I discovered that this doesn't happen on ext2, ext3, and tmpfs filesystems
> but only on ReiserFS filesystems. I also noticed that for example ext3
> updates the affected file's ctime upon rename whereas ReiserFS doesn't, so
> I'm thinking this causes tar to believe that the file existed before the
> first backup was taking under the new name, and as a result it doesn't back
> it up during the second backup. So I believe ReiserFS needs to update
> ctimes for renamed files in order for incremental GNU tar backups to work
> reliably.
>
> I made some changes to the reiserfs_rename function that I *think* should
> fix the problem. However, I don't know much about ReiserFS's internals, and
> I haven't been able to test them out to see if things work now since I can't
> afford to deal with potential FS corruption with my current Linux box.
>
> I included a patch below against the 2.4.22 kernel with my changes. Would
> somebody mind taking a look at this to see if I did things right here (and
> perhaps wouldn't mind testing it out either)? If it works then I (and I'm
> sure others who've experienced the same problem) would like to see the
> changes applied to the next 2.4.x (and 2.6.x?) release.
Hmm. I'm conflicted.
rename(2) manpage:
Any other hard links to the file (as created using
link(2)) are unaffected.
A change to ctime would affect the other links.
stat(2) manpage:
The field st_ctime is changed by writing or by
setting inode information (i.e., owner, group, link
count, mode, etc.).
I am not aware of any field in the inode structure that must
be changed by an atomic rename. Per documentation the only
reason rename should update st_ctime is if it does a
link+unlink sequence which would alter st_nlink briefly.
On the other hand it does seem to me there ought to be some
record that something about the inode changed. st_ctime would
be the only appropriate indicator.
rename() SUSv3:
Some implementations mark for update the st_ctime
field of renamed files and some do not. Applications
which make use of the st_ctime field may behave
differently with respect to renamed files unless
they are designed to allow for either behavior.
So reiserfs is on this point definitely standards conformant
already. A change could at best be seen as an enhancement.
--
________________________________________________________________
J.W. Schultz Pegasystems Technologies
email address: jw@pegasys.ws
Remember Cernan and Schmitt
next prev parent reply other threads:[~2003-10-12 7:14 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-12 6:05 ReiserFS patch for updating ctimes of renamed files Alex Adriaanse
2003-10-12 7:14 ` jw schultz [this message]
2003-10-13 5:49 ` Hans Reiser
[not found] ` <20031013073154.GL8724@pegasys.ws>
2003-10-13 8:45 ` Hans Reiser
2003-10-14 2:37 ` Alex Adriaanse
2003-10-14 6:09 ` Hans Reiser
2003-10-14 6:49 ` jw schultz
2003-10-14 9:29 ` Jamie Lokier
2003-10-13 10:24 ` Andrew Morton
2003-10-14 6:13 ` Hans Reiser
2003-10-14 6:25 ` Andrew Morton
2003-10-14 6:30 ` Hans Reiser
2003-10-14 6:44 ` Andrew Morton
2003-10-14 7:09 ` jw schultz
2003-10-13 5:32 ` Hans Reiser
[not found] <Gr0H.1ol.5@gated-at.bofh.it>
2003-10-14 6:57 ` Anton Ertl
2003-10-14 8:40 ` Hans Reiser
2003-10-14 14:08 ` Alex Adriaanse
2003-10-25 14:42 ` Alex Adriaanse
[not found] <JIEIIHMANOCFHDAAHBHOMENJDAAA.alex_a@caltech.edu>
[not found] ` <3FBBA8A7.7090802@namesys.com>
[not found] ` <200311201746.15843.vs@namesys.com>
2003-11-23 4:22 ` Alex Adriaanse
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=20031012071447.GJ8724@pegasys.ws \
--to=jw@pegasys.ws \
--cc=linux-kernel@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