diff options
Diffstat (limited to 'fs/ncpfs/file.c')
| -rw-r--r-- | fs/ncpfs/file.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/fs/ncpfs/file.c b/fs/ncpfs/file.c index 2b145de45b39..6a7d901f1936 100644 --- a/fs/ncpfs/file.c +++ b/fs/ncpfs/file.c | |||
| @@ -18,6 +18,7 @@ | |||
| 18 | #include <linux/slab.h> | 18 | #include <linux/slab.h> |
| 19 | #include <linux/vmalloc.h> | 19 | #include <linux/vmalloc.h> |
| 20 | #include <linux/sched.h> | 20 | #include <linux/sched.h> |
| 21 | #include <linux/smp_lock.h> | ||
| 21 | 22 | ||
| 22 | #include <linux/ncp_fs.h> | 23 | #include <linux/ncp_fs.h> |
| 23 | #include "ncplib_kernel.h" | 24 | #include "ncplib_kernel.h" |
| @@ -281,9 +282,18 @@ static int ncp_release(struct inode *inode, struct file *file) { | |||
| 281 | return 0; | 282 | return 0; |
| 282 | } | 283 | } |
| 283 | 284 | ||
| 285 | static loff_t ncp_remote_llseek(struct file *file, loff_t offset, int origin) | ||
| 286 | { | ||
| 287 | loff_t ret; | ||
| 288 | lock_kernel(); | ||
| 289 | ret = generic_file_llseek_unlocked(file, offset, origin); | ||
| 290 | unlock_kernel(); | ||
| 291 | return ret; | ||
| 292 | } | ||
| 293 | |||
| 284 | const struct file_operations ncp_file_operations = | 294 | const struct file_operations ncp_file_operations = |
| 285 | { | 295 | { |
| 286 | .llseek = remote_llseek, | 296 | .llseek = ncp_remote_llseek, |
| 287 | .read = ncp_file_read, | 297 | .read = ncp_file_read, |
| 288 | .write = ncp_file_write, | 298 | .write = ncp_file_write, |
| 289 | .ioctl = ncp_ioctl, | 299 | .ioctl = ncp_ioctl, |
