diff --git a/inode.c b/inode.c index acc2630..935c56e 100644 --- a/inode.c +++ b/inode.c @@ -246,12 +246,12 @@ int hellofs_create_inode(struct inode *dir, struct dentry *dentry, return 0; } -int hellofs_create(struct inode *dir, struct dentry *dentry, +int hellofs_create(struct user_namespace *ns, struct inode *dir, struct dentry *dentry, umode_t mode, bool excl) { return hellofs_create_inode(dir, dentry, mode); } -int hellofs_mkdir(struct inode *dir, struct dentry *dentry, +int hellofs_mkdir(struct user_namespace *ns, struct inode *dir, struct dentry *dentry, umode_t mode) { /* @Sankar: The mkdir callback does not have S_IFDIR set. Even ext2 sets it explicitly. Perhaps this is a bug */ diff --git a/khellofs.c b/khellofs.c index 51b5af2..b5d1621 100644 --- a/khellofs.c +++ b/khellofs.c @@ -23,7 +23,6 @@ const struct inode_operations hellofs_inode_ops = { const struct file_operations hellofs_dir_operations = { .owner = THIS_MODULE, - .readdir = hellofs_readdir, }; const struct file_operations hellofs_file_operations = { diff --git a/khellofs.h b/khellofs.h index 6edbd4c..ec4dcfd 100644 --- a/khellofs.h +++ b/khellofs.h @@ -33,12 +33,12 @@ void hellofs_kill_superblock(struct super_block *sb); void hellofs_destroy_inode(struct inode *inode); void hellofs_put_super(struct super_block *sb); -int hellofs_create(struct inode *dir, struct dentry *dentry, +int hellofs_create(struct user_namespace *ns, struct inode *dir, struct dentry *dentry, umode_t mode, bool excl); struct dentry *hellofs_lookup(struct inode *parent_inode, struct dentry *child_dentry, unsigned int flags); -int hellofs_mkdir(struct inode *dir, struct dentry *dentry, +int hellofs_mkdir(struct user_namespace *ns, struct inode *dir, struct dentry *dentry, umode_t mode); int hellofs_readdir(struct file *filp, void *dirent, filldir_t filldir);