Module Name:    src
Committed By:   jakllsch
Date:           Wed Nov 21 20:45:36 UTC 2012

Modified Files:
        src/sys/ufs/ext2fs: ext2fs.h ext2fs_dinode.h

Log Message:
Add various newer Ext2 superblock feature bits and inode flag bits.


To generate a diff of this commit:
cvs rdiff -u -r1.31 -r1.32 src/sys/ufs/ext2fs/ext2fs.h
cvs rdiff -u -r1.24 -r1.25 src/sys/ufs/ext2fs/ext2fs_dinode.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/ufs/ext2fs/ext2fs.h
diff -u src/sys/ufs/ext2fs/ext2fs.h:1.31 src/sys/ufs/ext2fs/ext2fs.h:1.32
--- src/sys/ufs/ext2fs/ext2fs.h:1.31	Mon Nov 19 03:04:23 2012
+++ src/sys/ufs/ext2fs/ext2fs.h	Wed Nov 21 20:45:35 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ext2fs.h,v 1.31 2012/11/19 03:04:23 jakllsch Exp $	*/
+/*	$NetBSD: ext2fs.h,v 1.32 2012/11/21 20:45:35 jakllsch Exp $	*/
 
 /*
  * Copyright (c) 1982, 1986, 1993
@@ -205,7 +205,7 @@ struct m_ext2fs {
 #define EXT2F_COMPAT_DIRHASHINDEX	0x0020
 #define	EXT2F_COMPAT_BITS \
 	"\20" \
-        "\06COMPAT_DIRHASHINDEX" \
+	"\06COMPAT_DIRHASHINDEX" \
 	"\05COMPAT_RESIZE" \
 	"\04COMPAT_EXTATTR" \
 	"\03COMPAT_HASJOURNAL" \
@@ -215,8 +215,16 @@ struct m_ext2fs {
 #define EXT2F_ROCOMPAT_SPARSESUPER	0x0001
 #define EXT2F_ROCOMPAT_LARGEFILE	0x0002
 #define EXT2F_ROCOMPAT_BTREE_DIR	0x0004
+#define EXT2F_ROCOMPAT_HUGE_FILE	0x0008
+#define EXT2F_ROCOMPAT_GDT_CSUM		0x0010
+#define EXT2F_ROCOMPAT_DIR_NLINK	0x0020
+#define EXT2F_ROCOMPAT_EXTRA_ISIZE	0x0040
 #define	EXT2F_ROCOMPAT_BITS \
 	"\20" \
+	"\07ROCOMPAT_EXTRA_ISIZE" \
+	"\06ROCOMPAT_DIR_NLINK" \
+	"\05ROCOMPAT_GDT_CSUM" \
+	"\04ROCOMPAT_HUGE_FILE" \
 	"\03ROCOMPAT_BTREE_DIR" \
 	"\02ROCOMPAT_LARGEFILE" \
 	"\01ROCOMPAT_SPARSESUPER"
@@ -225,8 +233,18 @@ struct m_ext2fs {
 #define EXT2F_INCOMPAT_FTYPE		0x0002
 #define	EXT2F_INCOMPAT_REPLAY_JOURNAL	0x0004
 #define	EXT2F_INCOMPAT_USES_JOURNAL	0x0008
+#define EXT2F_INCOMPAT_META_BG		0x0010
+#define EXT2F_INCOMPAT_EXTENTS		0x0040
+#define EXT2F_INCOMPAT_64BIT		0x0080
+#define EXT2F_INCOMPAT_MMP		0x0100
+#define EXT2F_INCOMPAT_FLEX_BG		0x0200
 #define	EXT2F_INCOMPAT_BITS \
 	"\20" \
+	"\012INCOMPAT_FLEX_BG" \
+	"\011INCOMPAT_MMP" \
+	"\010INCOMPAT_64BIT" \
+	"\07INCOMPAT_EXTENTS" \
+	"\05INCOMPAT_META_BG" \
 	"\04INCOMPAT_USES_JOURNAL" \
 	"\03INCOMPAT_REPLAY_JOURNAL" \
 	"\02INCOMPAT_FTYPE" \

Index: src/sys/ufs/ext2fs/ext2fs_dinode.h
diff -u src/sys/ufs/ext2fs/ext2fs_dinode.h:1.24 src/sys/ufs/ext2fs/ext2fs_dinode.h:1.25
--- src/sys/ufs/ext2fs/ext2fs_dinode.h:1.24	Mon Nov 19 00:36:21 2012
+++ src/sys/ufs/ext2fs/ext2fs_dinode.h	Wed Nov 21 20:45:36 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ext2fs_dinode.h,v 1.24 2012/11/19 00:36:21 jakllsch Exp $	*/
+/*	$NetBSD: ext2fs_dinode.h,v 1.25 2012/11/21 20:45:36 jakllsch Exp $	*/
 
 /*
  * Copyright (c) 1982, 1989, 1993
@@ -145,13 +145,23 @@ struct ext2fs_dinode {
 #define	EXT2_IFSOCK		0140000		/* UNIX domain socket. */
 
 /* file flags */
-#define EXT2_SECRM		0x00000001	/* Secure deletion */
-#define EXT2_UNRM		0x00000002	/* Undelete */
-#define EXT2_COMPR		0x00000004	/* Compress file */
-#define EXT2_SYNC		0x00000008	/* Synchronous updates */
-#define EXT2_IMMUTABLE		0x00000010	/* Immutable file */
+#define EXT2_SECRM		0x00000001 /* Secure deletion */
+#define EXT2_UNRM		0x00000002 /* Undelete */
+#define EXT2_COMPR		0x00000004 /* Compress file */
+#define EXT2_SYNC		0x00000008 /* Synchronous updates */
+#define EXT2_IMMUTABLE		0x00000010 /* Immutable file */
 #define EXT2_APPEND		0x00000020 /* writes to file may only append */
-#define EXT2_NODUMP		0x00000040	/* do not dump file */
+#define EXT2_NODUMP		0x00000040 /* do not dump file */
+#define EXT2_NOATIME		0x00000080 /* do not update atime */
+#define EXT2_INDEX		0x00001000 /* hash-indexed directory */
+#define EXT2_IMAGIC		0x00002000 /* AFS directory */
+#define EXT2_JOURNAL_DATA	0x00004000 /* file data should be journaled */
+#define EXT2_NOTAIL		0x00008000 /* file tail should not be merged */
+#define EXT2_DIRSYNC		0x00010000 /* dirsync behaviour */
+#define EXT2_TOPDIR		0x00020000 /* Top of directory hierarchies*/
+#define EXT2_HUGE_FILE		0x00040000 /* Set to each huge file */
+#define EXT2_EXTENTS		0x00080000 /* Inode uses extents */
+#define EXT2_EOFBLOCKS		0x00400000 /* Blocks allocated beyond EOF */
 
 /* Size of on-disk inode. */
 #define EXT2_REV0_DINODE_SIZE	sizeof(struct ext2fs_dinode)

Reply via email to