Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] fs/*: use BUILD_BUG_ON

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: David Howells <dhowells@redhat.com>
Cc: Mark Fasheh <mark.fasheh@oracle.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by

Alexey Dobriyan and committed by
Linus Torvalds
2ecd05ae fbab41cc

+16 -25
+4 -4
fs/afs/dir.c
··· 211 211 { 212 212 _enter("{%lu}", inode->i_ino); 213 213 214 - BUG_ON(sizeof(union afs_dir_block) != 2048); 215 - BUG_ON(sizeof(union afs_dirent) != 32); 214 + BUILD_BUG_ON(sizeof(union afs_dir_block) != 2048); 215 + BUILD_BUG_ON(sizeof(union afs_dirent) != 32); 216 216 217 217 if (AFS_FS_I(inode)->flags & AFS_VNODE_DELETED) 218 218 return -ENOENT; ··· 446 446 _enter("{%lu},%p{%s}", dir->i_ino, dentry, dentry->d_name.name); 447 447 448 448 /* insanity checks first */ 449 - BUG_ON(sizeof(union afs_dir_block) != 2048); 450 - BUG_ON(sizeof(union afs_dirent) != 32); 449 + BUILD_BUG_ON(sizeof(union afs_dir_block) != 2048); 450 + BUILD_BUG_ON(sizeof(union afs_dirent) != 32); 451 451 452 452 if (dentry->d_name.len > 255) { 453 453 _leave(" = -ENAMETOOLONG");
+4 -4
fs/jffs2/super.c
··· 334 334 which means just 'no padding', without the alignment 335 335 thing. But GCC doesn't have that -- we have to just 336 336 hope the structs are the right sizes, instead. */ 337 - BUG_ON(sizeof(struct jffs2_unknown_node) != 12); 338 - BUG_ON(sizeof(struct jffs2_raw_dirent) != 40); 339 - BUG_ON(sizeof(struct jffs2_raw_inode) != 68); 340 - BUG_ON(sizeof(struct jffs2_raw_summary) != 32); 337 + BUILD_BUG_ON(sizeof(struct jffs2_unknown_node) != 12); 338 + BUILD_BUG_ON(sizeof(struct jffs2_raw_dirent) != 40); 339 + BUILD_BUG_ON(sizeof(struct jffs2_raw_inode) != 68); 340 + BUILD_BUG_ON(sizeof(struct jffs2_raw_summary) != 32); 341 341 342 342 printk(KERN_INFO "JFFS2 version 2.2." 343 343 #ifdef CONFIG_JFFS2_FS_WRITEBUFFER
+2 -6
fs/minix/inode.c
··· 149 149 return -ENOMEM; 150 150 s->s_fs_info = sbi; 151 151 152 - /* N.B. These should be compile-time tests. 153 - Unfortunately that is impossible. */ 154 - if (32 != sizeof (struct minix_inode)) 155 - panic("bad V1 i-node size"); 156 - if (64 != sizeof(struct minix2_inode)) 157 - panic("bad V2 i-node size"); 152 + BUILD_BUG_ON(32 != sizeof (struct minix_inode)); 153 + BUILD_BUG_ON(64 != sizeof(struct minix2_inode)); 158 154 159 155 if (!sb_set_blocksize(s, BLOCK_SIZE)) 160 156 goto out_bad_hblock;
+1 -1
fs/ocfs2/super.c
··· 339 339 340 340 #if BITS_PER_LONG == 32 341 341 # if defined(CONFIG_LBD) 342 - BUG_ON(sizeof(sector_t) != 8); 342 + BUILD_BUG_ON(sizeof(sector_t) != 8); 343 343 pagefactor = PAGE_CACHE_SIZE; 344 344 bitshift = BITS_PER_LONG; 345 345 # else
+5 -10
fs/sysv/super.c
··· 358 358 unsigned long blocknr; 359 359 int size = 0, i; 360 360 361 - if (1024 != sizeof (struct xenix_super_block)) 362 - panic("Xenix FS: bad superblock size"); 363 - if (512 != sizeof (struct sysv4_super_block)) 364 - panic("SystemV FS: bad superblock size"); 365 - if (512 != sizeof (struct sysv2_super_block)) 366 - panic("SystemV FS: bad superblock size"); 367 - if (500 != sizeof (struct coh_super_block)) 368 - panic("Coherent FS: bad superblock size"); 369 - if (64 != sizeof (struct sysv_inode)) 370 - panic("sysv fs: bad inode size"); 361 + BUILD_BUG_ON(1024 != sizeof (struct xenix_super_block)); 362 + BUILD_BUG_ON(512 != sizeof (struct sysv4_super_block)); 363 + BUILD_BUG_ON(512 != sizeof (struct sysv2_super_block)); 364 + BUILD_BUG_ON(500 != sizeof (struct coh_super_block)); 365 + BUILD_BUG_ON(64 != sizeof (struct sysv_inode)); 371 366 372 367 sbi = kzalloc(sizeof(struct sysv_sb_info), GFP_KERNEL); 373 368 if (!sbi)