summaryrefslogtreecommitdiffstats
path: root/fs/freevxfs/vxfs_inode.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2016-06-01 08:44:45 +0200
committerChristoph Hellwig <hch@lst.de>2016-06-01 09:23:24 +0200
commit2f137e31e07118bead0d17ccc89b0e71aec74732 (patch)
treef7ac2621f116e5290730730b5f58db991acb65fc /fs/freevxfs/vxfs_inode.h
parentfreevxfs: avoid the need for forward declaring the super operations (diff)
downloadlinux-2f137e31e07118bead0d17ccc89b0e71aec74732.tar.xz
linux-2f137e31e07118bead0d17ccc89b0e71aec74732.zip
freevxfs: implement ->alloc_inode and ->destroy_inode
This driver predates those methods and was trying to be clever allocating it's own private data. Switch to the generic scheme used by other file systems. Based on an earlier patch from Krzysztof Błaszkowski <kb@sysmikro.com.pl>. Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/freevxfs/vxfs_inode.h')
-rw-r--r--fs/freevxfs/vxfs_inode.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/freevxfs/vxfs_inode.h b/fs/freevxfs/vxfs_inode.h
index 93d01148e5db..ad6b77c0ebcc 100644
--- a/fs/freevxfs/vxfs_inode.h
+++ b/fs/freevxfs/vxfs_inode.h
@@ -151,6 +151,8 @@ struct vxfs_dinode {
* The inode as represented in the main memory.
*/
struct vxfs_inode_info {
+ struct inode vfs_inode;
+
__u32 vii_mode;
__u32 vii_nlink; /* Link count */
__u32 vii_uid; /* UID */
@@ -183,4 +185,9 @@ struct vxfs_inode_info {
#define vii_ext4 vii_org.ext4
#define vii_typed vii_org.typed
+static inline struct vxfs_inode_info *VXFS_INO(struct inode *inode)
+{
+ return container_of(inode, struct vxfs_inode_info, vfs_inode);
+}
+
#endif /* _VXFS_INODE_H_ */