xfs
[Top] [All Lists]

[PATCH 20/27] xfs: cleanup the defintion of struct xfs_dir2_data_entry

To: xfs@xxxxxxxxxxx
Subject: [PATCH 20/27] xfs: cleanup the defintion of struct xfs_dir2_data_entry
From: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Fri, 01 Jul 2011 05:43:41 -0400
References: <20110701094321.936534538@xxxxxxxxxxxxxxxxxxxxxx>
User-agent: quilt/0.48-1
Remove the tag member which is at a variable offset after the actual
name, and make name a real variable sized C99 array instead of the incorrect
one-sized array which confuses (not only) gcc.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>

Index: xfs/fs/xfs/xfs_dir2_data.h
===================================================================
--- xfs.orig/fs/xfs/xfs_dir2_data.h     2011-06-29 13:42:35.521563513 +0200
+++ xfs/fs/xfs/xfs_dir2_data.h  2011-06-29 13:43:03.284746440 +0200
@@ -98,14 +98,14 @@ typedef struct xfs_dir2_data_hdr {
 
 /*
  * Active entry in a data block.  Aligned to 8 bytes.
- * Tag appears as the last 2 bytes.
+ *
+ * After the variable length name field there is a 2 byte tag field, which
+ * can be accessed using xfs_dir2_data_entry_tag_p.
  */
 typedef struct xfs_dir2_data_entry {
        __be64                  inumber;        /* inode number */
        __u8                    namelen;        /* name length */
-       __u8                    name[1];        /* name bytes, no null */
-                                               /* variable offset */
-       __be16                  tag;            /* starting offset of us */
+       __u8                    name[];         /* name bytes, no null */
 } xfs_dir2_data_entry_t;
 
 /*

<Prev in Thread] Current Thread [Next in Thread>