浏览代码

Use a zero sized array for raw field in struct fid

The raw field's size can vary so we use a zero sized array since
gcc will not allow a variable sized array inside a union. This
has been tested with ext3 and gfs2 and relates to the bug
report: http://lkml.org/lkml/2007/10/24/374 and discussion
thread: http://lkml.org/lkml/2008/4/7/65

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Neil Brown <neilb@suse.de>
Cc: Adrian Bunk <bunk@kernel.org>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Steven Whitehouse 17 年之前
父节点
当前提交
9078dc0814
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      include/linux/exportfs.h

+ 1 - 1
include/linux/exportfs.h

@@ -43,7 +43,7 @@ struct fid {
 			u32 parent_ino;
 			u32 parent_ino;
 			u32 parent_gen;
 			u32 parent_gen;
 		} i32;
 		} i32;
-		__u32 raw[6];
+		__u32 raw[0];
 	};
 	};
 };
 };