You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/
Conflicts: fs/nfs/inode.c fs/super.c Fix conflicts between patch 'NFS: Split fs/nfs/inode.c' and patch 'VFS: Permit filesystem to override root dentry on mount'
This commit is contained in:
+1
-3
@@ -185,9 +185,7 @@ static struct page *afs_dir_get_page(struct inode *dir, unsigned long index)
|
||||
|
||||
_enter("{%lu},%lu", dir->i_ino, index);
|
||||
|
||||
page = read_cache_page(dir->i_mapping,index,
|
||||
(filler_t *) dir->i_mapping->a_ops->readpage,
|
||||
NULL);
|
||||
page = read_mapping_page(dir->i_mapping, index, NULL);
|
||||
if (!IS_ERR(page)) {
|
||||
wait_on_page_locked(page);
|
||||
kmap(page);
|
||||
|
||||
+2
-9
@@ -63,7 +63,6 @@ unsigned long afs_mntpt_expiry_timeout = 20;
|
||||
int afs_mntpt_check_symlink(struct afs_vnode *vnode)
|
||||
{
|
||||
struct page *page;
|
||||
filler_t *filler;
|
||||
size_t size;
|
||||
char *buf;
|
||||
int ret;
|
||||
@@ -71,10 +70,7 @@ int afs_mntpt_check_symlink(struct afs_vnode *vnode)
|
||||
_enter("{%u,%u}", vnode->fid.vnode, vnode->fid.unique);
|
||||
|
||||
/* read the contents of the symlink into the pagecache */
|
||||
filler = (filler_t *) AFS_VNODE_TO_I(vnode)->i_mapping->a_ops->readpage;
|
||||
|
||||
page = read_cache_page(AFS_VNODE_TO_I(vnode)->i_mapping, 0,
|
||||
filler, NULL);
|
||||
page = read_mapping_page(AFS_VNODE_TO_I(vnode)->i_mapping, 0, NULL);
|
||||
if (IS_ERR(page)) {
|
||||
ret = PTR_ERR(page);
|
||||
goto out;
|
||||
@@ -160,7 +156,6 @@ static struct vfsmount *afs_mntpt_do_automount(struct dentry *mntpt)
|
||||
struct page *page = NULL;
|
||||
size_t size;
|
||||
char *buf, *devname = NULL, *options = NULL;
|
||||
filler_t *filler;
|
||||
int ret;
|
||||
|
||||
kenter("{%s}", mntpt->d_name.name);
|
||||
@@ -182,9 +177,7 @@ static struct vfsmount *afs_mntpt_do_automount(struct dentry *mntpt)
|
||||
goto error;
|
||||
|
||||
/* read the contents of the AFS special symlink */
|
||||
filler = (filler_t *)mntpt->d_inode->i_mapping->a_ops->readpage;
|
||||
|
||||
page = read_cache_page(mntpt->d_inode->i_mapping, 0, filler, NULL);
|
||||
page = read_mapping_page(mntpt->d_inode->i_mapping, 0, NULL);
|
||||
if (IS_ERR(page)) {
|
||||
ret = PTR_ERR(page);
|
||||
goto error;
|
||||
|
||||
+13
-11
@@ -38,9 +38,9 @@ struct afs_mount_params {
|
||||
static void afs_i_init_once(void *foo, kmem_cache_t *cachep,
|
||||
unsigned long flags);
|
||||
|
||||
static struct super_block *afs_get_sb(struct file_system_type *fs_type,
|
||||
int flags, const char *dev_name,
|
||||
void *data);
|
||||
static int afs_get_sb(struct file_system_type *fs_type,
|
||||
int flags, const char *dev_name,
|
||||
void *data, struct vfsmount *mnt);
|
||||
|
||||
static struct inode *afs_alloc_inode(struct super_block *sb);
|
||||
|
||||
@@ -294,10 +294,11 @@ static int afs_fill_super(struct super_block *sb, void *data, int silent)
|
||||
* get an AFS superblock
|
||||
* - TODO: don't use get_sb_nodev(), but rather call sget() directly
|
||||
*/
|
||||
static struct super_block *afs_get_sb(struct file_system_type *fs_type,
|
||||
int flags,
|
||||
const char *dev_name,
|
||||
void *options)
|
||||
static int afs_get_sb(struct file_system_type *fs_type,
|
||||
int flags,
|
||||
const char *dev_name,
|
||||
void *options,
|
||||
struct vfsmount *mnt)
|
||||
{
|
||||
struct afs_mount_params params;
|
||||
struct super_block *sb;
|
||||
@@ -311,7 +312,7 @@ static struct super_block *afs_get_sb(struct file_system_type *fs_type,
|
||||
ret = afscm_start();
|
||||
if (ret < 0) {
|
||||
_leave(" = %d", ret);
|
||||
return ERR_PTR(ret);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* parse the options */
|
||||
@@ -348,18 +349,19 @@ static struct super_block *afs_get_sb(struct file_system_type *fs_type,
|
||||
goto error;
|
||||
}
|
||||
sb->s_flags |= MS_ACTIVE;
|
||||
simple_set_mnt(mnt, sb);
|
||||
|
||||
afs_put_volume(params.volume);
|
||||
afs_put_cell(params.default_cell);
|
||||
_leave(" = %p", sb);
|
||||
return sb;
|
||||
_leave(" = 0 [%p]", 0, sb);
|
||||
return 0;
|
||||
|
||||
error:
|
||||
afs_put_volume(params.volume);
|
||||
afs_put_cell(params.default_cell);
|
||||
afscm_stop();
|
||||
_leave(" = %d", ret);
|
||||
return ERR_PTR(ret);
|
||||
return ret;
|
||||
} /* end afs_get_sb() */
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
Reference in New Issue
Block a user