{
struct xfs_mount_args *args;
- args = kmem_zalloc(sizeof(struct xfs_mount_args), KM_SLEEP);
+ args = kzalloc(sizeof(struct xfs_mount_args), GFP_KERNEL);
+ if (!args)
+ return NULL;
+
args->logbufs = args->logbufsize = -1;
strncpy(args->fsname, sb->s_id, MAXNAMELEN);
char *options)
{
struct xfs_mount *mp = XFS_M(sb);
- struct xfs_mount_args *args = xfs_args_allocate(sb, 0);
+ struct xfs_mount_args *args;
int error;
+ args = xfs_args_allocate(sb, 0);
+ if (!args)
+ return -ENOMEM;
+
error = xfs_parseargs(mp, options, args, 1);
if (error)
goto out_free_args;
}
out_free_args:
- kmem_free(args);
+ kfree(args);
return -error;
}
{
struct inode *root;
struct xfs_mount *mp = NULL;
- struct xfs_mount_args *args = xfs_args_allocate(sb, silent);
+ struct xfs_mount_args *args;
int flags = 0, error;
+ args = xfs_args_allocate(sb, silent);
+ if (!args)
+ return -ENOMEM;
+
mp = xfs_mount_init();
INIT_LIST_HEAD(&mp->m_sync_list);
xfs_itrace_exit(XFS_I(sb->s_root->d_inode));
- kmem_free(args);
+ kfree(args);
return 0;
error2:
kmem_free(mp);
fail_vfsop:
- kmem_free(args);
+ kfree(args);
return -error;
}