diff options
| author | David S. Miller <davem@davemloft.net> | 2008-07-27 19:51:21 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2008-07-27 19:51:21 -0400 |
| commit | 281c7413ed914623d3245299a4761b6b27ab9fdb (patch) | |
| tree | 182b5222a7ad4b77c32f7845ea777ca665d7def2 /fs/nfs | |
| parent | 2ab61b01110aa04cd853c619a74881e3225a5e24 (diff) | |
| parent | c9272c4f9fbe2087beb3392f526dc5b19efaa56b (diff) | |
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'fs/nfs')
| -rw-r--r-- | fs/nfs/super.c | 6 | ||||
| -rw-r--r-- | fs/nfs/unlink.c | 3 |
2 files changed, 5 insertions, 4 deletions
diff --git a/fs/nfs/super.c b/fs/nfs/super.c index 1b94e3650f5c..9abcd2b329f7 100644 --- a/fs/nfs/super.c +++ b/fs/nfs/super.c | |||
| @@ -1718,9 +1718,9 @@ nfs_remount(struct super_block *sb, int *flags, char *raw_data) | |||
| 1718 | * ones were explicitly specified. Fall back to legacy behavior and | 1718 | * ones were explicitly specified. Fall back to legacy behavior and |
| 1719 | * just return success. | 1719 | * just return success. |
| 1720 | */ | 1720 | */ |
| 1721 | if ((nfsvers == 4 && options4->version == 1) || | 1721 | if ((nfsvers == 4 && (!options4 || options4->version == 1)) || |
| 1722 | (nfsvers <= 3 && options->version >= 1 && | 1722 | (nfsvers <= 3 && (!options || (options->version >= 1 && |
| 1723 | options->version <= 6)) | 1723 | options->version <= 6)))) |
| 1724 | return 0; | 1724 | return 0; |
| 1725 | 1725 | ||
| 1726 | data = kzalloc(sizeof(*data), GFP_KERNEL); | 1726 | data = kzalloc(sizeof(*data), GFP_KERNEL); |
diff --git a/fs/nfs/unlink.c b/fs/nfs/unlink.c index 3adf8b266461..f089e5839d7d 100644 --- a/fs/nfs/unlink.c +++ b/fs/nfs/unlink.c | |||
| @@ -95,10 +95,11 @@ static void nfs_async_unlink_done(struct rpc_task *task, void *calldata) | |||
| 95 | static void nfs_async_unlink_release(void *calldata) | 95 | static void nfs_async_unlink_release(void *calldata) |
| 96 | { | 96 | { |
| 97 | struct nfs_unlinkdata *data = calldata; | 97 | struct nfs_unlinkdata *data = calldata; |
| 98 | struct super_block *sb = data->dir->i_sb; | ||
| 98 | 99 | ||
| 99 | nfs_dec_sillycount(data->dir); | 100 | nfs_dec_sillycount(data->dir); |
| 100 | nfs_sb_deactive(NFS_SERVER(data->dir)); | ||
| 101 | nfs_free_unlinkdata(data); | 101 | nfs_free_unlinkdata(data); |
| 102 | nfs_sb_deactive(NFS_SB(sb)); | ||
| 102 | } | 103 | } |
| 103 | 104 | ||
| 104 | static const struct rpc_call_ops nfs_unlink_ops = { | 105 | static const struct rpc_call_ops nfs_unlink_ops = { |
