commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

hurd/ext2fs inode.c ext2fs.h ialloc.c


From: Roland McGrath
Subject: hurd/ext2fs inode.c ext2fs.h ialloc.c
Date: Tue, 08 Oct 2002 19:10:09 -0400

CVSROOT:        /cvsroot/hurd
Module name:    hurd
Changes by:     Roland McGrath <address@hidden> 02/10/08 19:10:09

Modified files:
        ext2fs         : inode.c ext2fs.h ialloc.c 

Log message:
        2002-10-08  Roland McGrath  <address@hidden>
        
        * ext2fs.h (struct disknode): New member `info_i_translator'.
        * inode.c (diskfs_set_translator): Update NP->dn->info_i_translator.
        * ialloc.c (diskfs_alloc_node): Clear a nonzero translator block in
        the on-disk inode just as we do for data blocks.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/ext2fs/inode.c.diff?tr1=1.61&tr2=1.62&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/ext2fs/ext2fs.h.diff?tr1=1.69&tr2=1.70&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/hurd/hurd/ext2fs/ialloc.c.diff?tr1=1.37&tr2=1.38&r1=text&r2=text

Patches:
Index: hurd/ext2fs/ext2fs.h
diff -u hurd/ext2fs/ext2fs.h:1.69 hurd/ext2fs/ext2fs.h:1.70
--- hurd/ext2fs/ext2fs.h:1.69   Sun Oct  3 06:23:26 1999
+++ hurd/ext2fs/ext2fs.h        Tue Oct  8 19:10:09 2002
@@ -1,6 +1,6 @@
 /* Common definitions for the ext2 filesystem translator
 
-   Copyright (C) 1995, 1996, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1996, 1999, 2002 Free Software Foundation, Inc.
 
    Written by Miles Bader <address@hidden>
 
@@ -160,6 +160,7 @@
 
   /* Random extra info used by the ext2 routines.  */
   struct ext2_inode_info info;
+  uint32_t info_i_translator;  /* That struct from Linux source lacks this. */
 
   /* This file's pager.  */
   struct pager *pager;
Index: hurd/ext2fs/ialloc.c
diff -u hurd/ext2fs/ialloc.c:1.37 hurd/ext2fs/ialloc.c:1.38
--- hurd/ext2fs/ialloc.c:1.37   Tue Jun 11 17:38:01 2002
+++ hurd/ext2fs/ialloc.c        Tue Oct  8 19:10:09 2002
@@ -301,6 +301,11 @@
        np->dn->info.i_data[block] = 0;
        np->dn_set_ctime = 1;
       }
+  if (np->dn->info_i_translator != 0)
+    {
+      np->dn->info_i_translator = 0;
+      np->dn_set_ctime = 1;
+    }
   st->st_mode &= ~S_IPTRANS;
   if (np->allocsize)
     {
Index: hurd/ext2fs/inode.c
diff -u hurd/ext2fs/inode.c:1.61 hurd/ext2fs/inode.c:1.62
--- hurd/ext2fs/inode.c:1.61    Tue Jun 11 17:37:58 2002
+++ hurd/ext2fs/inode.c Tue Oct  8 19:10:09 2002
@@ -295,6 +295,7 @@
              EXT2_N_BLOCKS * sizeof info->i_data[0]);
       st->st_rdev = 0;
     }
+  dn->info_i_translator = di->i_translator;
 
   diskfs_end_catch_exception ();
 
@@ -666,6 +667,7 @@
        }
 
       di->i_translator = blkno;
+      np->dn->info_i_translator = blkno;
       record_global_poke (di);
 
       np->dn_stat.st_blocks += 1 << log2_stat_blocks_per_fs_block;
@@ -675,6 +677,7 @@
     {
       /* Clear block for translator going away. */
       di->i_translator = 0;
+      np->dn->info_i_translator = 0;
       record_global_poke (di);
       ext2_free_blocks (blkno, 1);
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]