fs: cleanup slight list_entry abuse
authorRasmus Villemoes <linux@rasmusvillemoes.dk>
Thu, 19 Mar 2015 11:28:04 +0000 (12:28 +0100)
committerAl Viro <viro@zeniv.linux.org.uk>
Tue, 23 Jun 2015 22:01:59 +0000 (18:01 -0400)
list_entry is just a wrapper for container_of, but it is arguably
wrong (and slightly confusing) to use it when the pointed-to struct
member is not a struct list_head. Use container_of directly instead.

Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
13 files changed:
fs/affs/affs.h
fs/befs/befs.h
fs/coda/coda_linux.h
fs/hfs/hfs_fs.h
fs/hfsplus/hfsplus_fs.h
fs/hpfs/hpfs_fn.h
fs/jffs2/os-linux.h
fs/jfs/jfs_incore.h
fs/minix/minix.h
fs/ntfs/inode.h
fs/squashfs/squashfs_fs_i.h
fs/sysv/sysv.h
fs/udf/udf_i.h

index cffe8370fb444c692b79f787155d08d163be0914..c69a87eaf57d147bfae947335e95fa5ae2be4452 100644 (file)
@@ -64,7 +64,7 @@ struct affs_inode_info {
 /* short cut to get to the affs specific inode data */
 static inline struct affs_inode_info *AFFS_I(struct inode *inode)
 {
-       return list_entry(inode, struct affs_inode_info, vfs_inode);
+       return container_of(inode, struct affs_inode_info, vfs_inode);
 }
 
 /*
index 1fead8d56a98b751b74456f423fa5bacf6a3c6ba..35d19e8731e35b8aabfe9cdaaf32d11b9b17b326 100644 (file)
@@ -112,7 +112,7 @@ BEFS_SB(const struct super_block *super)
 static inline struct befs_inode_info *
 BEFS_I(const struct inode *inode)
 {
-       return list_entry(inode, struct befs_inode_info, vfs_inode);
+       return container_of(inode, struct befs_inode_info, vfs_inode);
 }
 
 static inline befs_blocknr_t
index d6f7a76a1f5b06c3aeab8f07bb841e5c1629a32a..f829fe963f5bab9e1de4b81ec9195de90e5da77d 100644 (file)
@@ -79,7 +79,7 @@ void coda_sysctl_clean(void);
 
 static inline struct coda_inode_info *ITOC(struct inode *inode)
 {
-       return list_entry(inode, struct coda_inode_info, vfs_inode);
+       return container_of(inode, struct coda_inode_info, vfs_inode);
 }
 
 static __inline__ struct CodaFid *coda_i2f(struct inode *inode)
index 95d255219b1eb89c68db91d85037a19af20cf1a6..1f1c7dcbcc2ff4066fef329828af148f7c058662 100644 (file)
@@ -252,7 +252,7 @@ extern void hfs_mark_mdb_dirty(struct super_block *sb);
 #define __hfs_u_to_mtime(sec)  cpu_to_be32(sec + 2082844800U - sys_tz.tz_minuteswest * 60)
 #define __hfs_m_to_utime(sec)  (be32_to_cpu(sec) - 2082844800U  + sys_tz.tz_minuteswest * 60)
 
-#define HFS_I(inode)   (list_entry(inode, struct hfs_inode_info, vfs_inode))
+#define HFS_I(inode)   (container_of(inode, struct hfs_inode_info, vfs_inode))
 #define HFS_SB(sb)     ((struct hfs_sb_info *)(sb)->s_fs_info)
 
 #define hfs_m_to_utime(time)   (struct timespec){ .tv_sec = __hfs_m_to_utime(time) }
index b0441d65fa54ec405520e62207d724f71cc61411..f91a1faf819e9f06ae31b74f157e2c5627f4ebea 100644 (file)
@@ -263,7 +263,7 @@ struct hfsplus_inode_info {
 
 static inline struct hfsplus_inode_info *HFSPLUS_I(struct inode *inode)
 {
-       return list_entry(inode, struct hfsplus_inode_info, vfs_inode);
+       return container_of(inode, struct hfsplus_inode_info, vfs_inode);
 }
 
 /*
index b63b75fa00e7f1e26dcedf6884fb33f760ee6253..bb04b58d1d698486ec31c4fd3e91dab567dbb517 100644 (file)
@@ -304,7 +304,7 @@ extern const struct address_space_operations hpfs_symlink_aops;
 
 static inline struct hpfs_inode_info *hpfs_i(struct inode *inode)
 {
-       return list_entry(inode, struct hpfs_inode_info, vfs_inode);
+       return container_of(inode, struct hpfs_inode_info, vfs_inode);
 }
 
 static inline struct hpfs_sb_info *hpfs_sb(struct super_block *sb)
index d200a9b8fd5efc86e71113bcb8090d0c87674a90..824e61ede465fd6ec4c433785dcdfb2da96dc848 100644 (file)
@@ -19,7 +19,7 @@
 struct kstatfs;
 struct kvec;
 
-#define JFFS2_INODE_INFO(i) (list_entry(i, struct jffs2_inode_info, vfs_inode))
+#define JFFS2_INODE_INFO(i) (container_of(i, struct jffs2_inode_info, vfs_inode))
 #define OFNI_EDONI_2SFFJ(f)  (&(f)->vfs_inode)
 #define JFFS2_SB_INFO(sb) (sb->s_fs_info)
 #define OFNI_BS_2SFFJ(c)  ((struct super_block *)c->os_priv)
index fa7e795bd8aec0a421656a82c22e2a2ccfe18ea4..1f26d1910409afb8d3de7ba4455b7b195ed5c4bd 100644 (file)
@@ -206,7 +206,7 @@ struct jfs_sb_info {
 
 static inline struct jfs_inode_info *JFS_IP(struct inode *inode)
 {
-       return list_entry(inode, struct jfs_inode_info, vfs_inode);
+       return container_of(inode, struct jfs_inode_info, vfs_inode);
 }
 
 static inline int jfs_dirtable_inline(struct inode *inode)
index 1ebd11854622946e91633726b919aacfee0198ae..01ad81dcacc5a45e1f15bbce6cc61508380e4c27 100644 (file)
@@ -84,7 +84,7 @@ static inline struct minix_sb_info *minix_sb(struct super_block *sb)
 
 static inline struct minix_inode_info *minix_i(struct inode *inode)
 {
-       return list_entry(inode, struct minix_inode_info, vfs_inode);
+       return container_of(inode, struct minix_inode_info, vfs_inode);
 }
 
 static inline unsigned minix_blocks_needed(unsigned bits, unsigned blocksize)
index 76b6cfb579d73944fff234df3999a19a9e002e51..b3c3469de6cb050f3422d70fe0fc0867003a408c 100644 (file)
@@ -239,7 +239,7 @@ typedef struct {
  */
 static inline ntfs_inode *NTFS_I(struct inode *inode)
 {
-       return (ntfs_inode *)list_entry(inode, big_ntfs_inode, vfs_inode);
+       return (ntfs_inode *)container_of(inode, big_ntfs_inode, vfs_inode);
 }
 
 static inline struct inode *VFS_I(ntfs_inode *ni)
index 73588e7700ed8a38aa98b5765d0d331df9c83193..d09fcd6fb85d0d0ebb8c270ea1e85574e64b2f9b 100644 (file)
@@ -49,6 +49,6 @@ struct squashfs_inode_info {
 
 static inline struct squashfs_inode_info *squashfs_i(struct inode *inode)
 {
-       return list_entry(inode, struct squashfs_inode_info, vfs_inode);
+       return container_of(inode, struct squashfs_inode_info, vfs_inode);
 }
 #endif
index 2c13525131cd8146dd19d6a07086a70afc97b25a..6c212288adcb095391e9557f246c927daa2d0663 100644 (file)
@@ -73,7 +73,7 @@ struct sysv_inode_info {
 
 static inline struct sysv_inode_info *SYSV_I(struct inode *inode)
 {
-       return list_entry(inode, struct sysv_inode_info, vfs_inode);
+       return container_of(inode, struct sysv_inode_info, vfs_inode);
 }
 
 static inline struct sysv_sb_info *SYSV_SB(struct super_block *sb)
index b5cd8ed2aa12ff3e27a8b3681886152943bf3af4..b1b9a63d8cf3e603754fa21e0037854ea5c8b630 100644 (file)
@@ -56,7 +56,7 @@ struct udf_inode_info {
 
 static inline struct udf_inode_info *UDF_I(struct inode *inode)
 {
-       return list_entry(inode, struct udf_inode_info, vfs_inode);
+       return container_of(inode, struct udf_inode_info, vfs_inode);
 }
 
 #endif /* _UDF_I_H) */