linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] [patch 3/3] change attribute for ext4: user interface
@ 2006-11-29 18:54 Jean-Noel Cordenner
  0 siblings, 0 replies; only message in thread
From: Jean-Noel Cordenner @ 2006-11-29 18:54 UTC (permalink / raw)
  To: linux-ext4

This patch adds a  ``st_change_attribute'' field in the stat
structure, and modifies the stat(2) syscall accordingly. Currently the
change is only visible on i386 and x86_64 archs.



Signed-off-by: Celine Bourde
Signed-off-by: Alexandre Ratchov
Signed-off-by: Jean Noel Cordenner <jean-noel.cordenner@bull.net>

Index: linux-2.6.19-rc2-mm2-CA/include/asm-i386/stat.h
===================================================================
--- linux-2.6.19-rc2-mm2-CA.orig/include/asm-i386/stat.h        2006-11-09 
17:21:28.000000000 +0100
+++ linux-2.6.19-rc2-mm2-CA/include/asm-i386/stat.h     2006-11-29 
16:03:30.000000000 +0100
@@ -32,7 +32,7 @@
         unsigned long  st_mtime_nsec;
         unsigned long  st_ctime;
         unsigned long  st_ctime_nsec;
-       unsigned long  __unused4;
+       unsigned long  st_change_attribute;
         unsigned long  __unused5;
  };

@@ -41,7 +41,7 @@
   */
  struct stat64 {
         unsigned long long      st_dev;
-       unsigned char   __pad0[4];
+       unsigned char   st_change_attribute;

  #define STAT64_HAS_BROKEN_ST_INO       1
         unsigned long   __st_ino;
Index: linux-2.6.19-rc2-mm2-CA/include/asm-x86_64/stat.h
===================================================================
--- linux-2.6.19-rc2-mm2-CA.orig/include/asm-x86_64/stat.h      2006-11-13 
16:49:14.000000000 +0100
+++ linux-2.6.19-rc2-mm2-CA/include/asm-x86_64/stat.h   2006-11-29 
16:04:24.000000000 +0100
@@ -23,7 +23,8 @@
         unsigned long   st_mtime_nsec;
         unsigned long   st_ctime;
         unsigned long   st_ctime_nsec;
-       long            __unused[3];
+       unsigned long   st_change_attribute;
+       long            __unused[2];
  };

  /* For 32bit emulation */
Index: linux-2.6.19-rc2-mm2-CA/include/linux/stat.h
===================================================================
--- linux-2.6.19-rc2-mm2-CA.orig/include/linux/stat.h   2006-11-09 
17:21:49.000000000 +0100
+++ linux-2.6.19-rc2-mm2-CA/include/linux/stat.h        2006-11-29 
16:06:02.000000000 +0100
@@ -68,6 +68,7 @@
         struct timespec  atime;
         struct timespec mtime;
         struct timespec ctime;
+       unsigned long   change_attribute;
         unsigned long   blksize;
         unsigned long long      blocks;
  };
Index: linux-2.6.19-rc2-mm2-CA/fs/stat.c
===================================================================
--- linux-2.6.19-rc2-mm2-CA.orig/fs/stat.c      2006-11-09 17:20:52.000000000 +0100
+++ linux-2.6.19-rc2-mm2-CA/fs/stat.c   2006-11-29 16:07:54.000000000 +0100
@@ -32,6 +32,7 @@
         stat->mtime = inode->i_mtime;
         stat->ctime = inode->i_ctime;
         stat->size = i_size_read(inode);
+       stat->change_attribute = inode->i_change_attribute;
         stat->blocks = inode->i_blocks;
         stat->blksize = (1 << inode->i_blkbits);
  }
@@ -233,6 +234,7 @@
         tmp.st_atime = stat->atime.tv_sec;
         tmp.st_mtime = stat->mtime.tv_sec;
         tmp.st_ctime = stat->ctime.tv_sec;
+       tmp.st_change_attribute = stat->change_attribute;
  #ifdef STAT_HAVE_NSEC
         tmp.st_atime_nsec = stat->atime.tv_nsec;
         tmp.st_mtime_nsec = stat->mtime.tv_nsec;
@@ -366,6 +368,7 @@
         tmp.st_mtime_nsec = stat->mtime.tv_nsec;
         tmp.st_ctime = stat->ctime.tv_sec;
         tmp.st_ctime_nsec = stat->ctime.tv_nsec;
+       tmp.st_change_attribute = stat->change_attribute;
         tmp.st_size = stat->size;
         tmp.st_blocks = stat->blocks;
         tmp.st_blksize = stat->blksize;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2006-11-29 18:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-29 18:54 [RFC] [patch 3/3] change attribute for ext4: user interface Jean-Noel Cordenner

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).