]> Zhao Yanbai Git Server - minix.git/commitdiff
inodes - using types with known size
authorTomas Hruby <tom@minix3.org>
Fri, 6 Nov 2009 08:55:07 +0000 (08:55 +0000)
committerTomas Hruby <tom@minix3.org>
Fri, 6 Nov 2009 08:55:07 +0000 (08:55 +0000)
- fixes a problem in inodes truct definitions. The original definitions use
  posix types. These types don't have well defined size. Therefore when
  compiling mkfs on a different system natively the inodes sizes do not match.
  This patch replaces the posix types with interger types of the same size and
  signedness as the original types in use.

servers/mfs/type.h

index 63576838dc2ae7a0bc0eb159f56fc03534f5fb16..21e482e07f0d74564cd8216042b328cd319252b0 100644 (file)
@@ -1,9 +1,9 @@
 /* Declaration of the V1 inode as it is on the disk (not in core). */
 typedef struct {               /* V1.x disk inode */
-  mode_t d1_mode;              /* file type, protection, etc. */
-  uid_t d1_uid;                        /* user id of the file's owner */
-  off_t d1_size;               /* current file size in bytes */
-  time_t d1_mtime;             /* when was file data last changed */
+  u16_t d1_mode;               /* file type, protection, etc. */
+  i16_t d1_uid;                        /* user id of the file's owner */
+  i32_t d1_size;               /* current file size in bytes */
+  i32_t d1_mtime;              /* when was file data last changed */
   u8_t d1_gid;                 /* group number */
   u8_t d1_nlinks;              /* how many links to this file */
   u16_t d1_zone[V1_NR_TZONES]; /* block nums for direct, ind, and dbl ind */
@@ -11,14 +11,14 @@ typedef struct {            /* V1.x disk inode */
 
 /* Declaration of the V2 inode as it is on the disk (not in core). */
 typedef struct {               /* V2.x disk inode */
-  mode_t d2_mode;              /* file type, protection, etc. */
+  u16_t d2_mode;               /* file type, protection, etc. */
   u16_t d2_nlinks;             /* how many links to this file. HACK! */
-  uid_t d2_uid;                        /* user id of the file's owner. */
+  i16_t d2_uid;                        /* user id of the file's owner. */
   u16_t d2_gid;                        /* group number HACK! */
-  off_t d2_size;               /* current file size in bytes */
-  time_t d2_atime;             /* when was file data last accessed */
-  time_t d2_mtime;             /* when was file data last changed */
-  time_t d2_ctime;             /* when was inode data last changed */
+  i32_t d2_size;               /* current file size in bytes */
+  i32_t d2_atime;              /* when was file data last accessed */
+  i32_t d2_mtime;              /* when was file data last changed */
+  i32_t d2_ctime;              /* when was inode data last changed */
   zone_t d2_zone[V2_NR_TZONES];        /* block nums for direct, ind, and dbl ind */
 } d2_inode;