diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-07-08 00:53:00 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-07-08 00:53:00 +0000 |
commit | b8553086288629b4efb77e97f5582e08bc50ad65 (patch) | |
tree | 0a19bd1c21e148f35c7a0f76baa4f7a056b966b0 /fs/smbfs | |
parent | 75b6d92f2dd5112b02f4e78cf9f35f9825946ef0 (diff) |
Merge with 2.4.0-test3-pre4.
Diffstat (limited to 'fs/smbfs')
-rw-r--r-- | fs/smbfs/dir.c | 3 | ||||
-rw-r--r-- | fs/smbfs/inode.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/fs/smbfs/dir.c b/fs/smbfs/dir.c index b5715b220..00fefa101 100644 --- a/fs/smbfs/dir.c +++ b/fs/smbfs/dir.c @@ -9,6 +9,7 @@ #include <linux/sched.h> #include <linux/errno.h> #include <linux/kernel.h> +#include <linux/smp_lock.h> #include <linux/smb_fs.h> #include <linux/smbno.h> @@ -202,6 +203,7 @@ dentry->d_parent->d_name.name, dentry->d_name.name, age); if (inode) { + lock_kernel(); if (is_bad_inode(inode)) { #ifdef SMBFS_PARANOIA @@ -211,6 +213,7 @@ dentry->d_parent->d_name.name, dentry->d_name.name); valid = 0; } else if (!valid) valid = (smb_revalidate_inode(dentry) == 0); + unlock_kernel(); } else { /* diff --git a/fs/smbfs/inode.c b/fs/smbfs/inode.c index 769aa7e56..89ddfb22a 100644 --- a/fs/smbfs/inode.c +++ b/fs/smbfs/inode.c @@ -18,6 +18,7 @@ #include <linux/init.h> #include <linux/file.h> #include <linux/dcache.h> +#include <linux/smp_lock.h> #include <linux/smb_fs.h> #include <linux/smbno.h> @@ -230,6 +231,7 @@ smb_revalidate_inode(struct dentry *dentry) * If this is a file opened with write permissions, * the inode will be up-to-date. */ + lock_kernel(); if (S_ISREG(inode->i_mode) && smb_is_open(inode)) { if (inode->u.smbfs_i.access != SMB_O_RDONLY) @@ -267,6 +269,7 @@ dentry->d_parent->d_name.name, dentry->d_name.name, smb_invalid_dir_cache(inode); } out: + unlock_kernel(); return error; } |