5.3.2.1.11. Index Node Operations
struct inode_operations {
  int (*create) (struct inode *, struct dentry *, int, struct nameidata *);
  struct dentry * (*lookup) (
    struct inode *, struct dentry *, struct nameidata *);

  int (*link) (struct dentry *,struct inode *,struct dentry *);
  int (*unlink) (struct inode *,struct dentry *);

  int (*symlink) (struct inode *,struct dentry *,const char *);

  int (*mkdir) (struct inode *,struct dentry *,int);
  int (*rmdir) (struct inode *,struct dentry *);

  int (*mknod) (struct inode *,struct dentry *,int,dev_t);
  int (*rename) (
    struct inode *, struct dentry *, struct inode *, struct dentry *);

  int (*readlink) (struct dentry *, char __user *,int);
  int (*follow_link) (struct dentry *, struct nameidata *);
  void (*put_link) (struct dentry *, struct nameidata *);

  void (*truncate) (struct inode *);

  int (*permission) (struct inode *, int, struct nameidata *);

  int (*setattr) (struct dentry *, struct iattr *);
  int (*getattr) (struct vfsmount *mnt, struct dentry *, struct kstat *);
  int (*setxattr) (struct dentry *, const char *,const void *,size_t,int);
  ssize_t (*getxattr) (struct dentry *, const char *, void *, size_t);
  ssize_t (*listxattr) (struct dentry *, char *, size_t);
  int (*removexattr) (struct dentry *, const char *);
};