mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Alex Adriaanse" <alex_a@caltech.edu>
To: <linux-kernel@vger.kernel.org>
Subject: ReiserFS patch for updating ctimes of renamed files
Date: Sun, 12 Oct 2003 01:05:19 -0500	[thread overview]
Message-ID: <JIEIIHMANOCFHDAAHBHOIELODAAA.alex_a@caltech.edu> (raw)

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.

Thanks a lot.

Alex

--- fs/reiserfs/namei.c.orig    Mon Aug 25 06:44:43 2003
+++ fs/reiserfs/namei.c Sun Oct 12 00:39:05 2003
@@ -1207,6 +1207,8 @@
     journal_mark_dirty (&th, old_dir->i_sb, old_de.de_bh);
     old_dir->i_ctime = old_dir->i_mtime = CURRENT_TIME;
     new_dir->i_ctime = new_dir->i_mtime = CURRENT_TIME;
+    old_inode->i_ctime = CURRENT_TIME;
+    reiserfs_update_sd (&th, old_inode);

     if (new_dentry_inode) {
        // adjust link number of the victim


             reply	other threads:[~2003-10-12  6:05 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-12  6:05 Alex Adriaanse [this message]
2003-10-12  7:14 ` jw schultz
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=JIEIIHMANOCFHDAAHBHOIELODAAA.alex_a@caltech.edu \
    --to=alex_a@caltech.edu \
    --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

all inboxes | Powered by JetHome®