diff options
author | Miklos Szeredi <miklos@szeredi.hu> | 2006-10-13 09:54:24 +0000 |
---|---|---|
committer | Miklos Szeredi <miklos@szeredi.hu> | 2006-10-13 09:54:24 +0000 |
commit | d6f8db71b84a139c1d74d6d0c654659951219c38 (patch) | |
tree | 58b30d5e92983a13bd4f294aaf6a0965733b7554 /kernel/dev.c | |
parent | 856e5cb2e11d39e5051d1bcf0bd872aadfb777ae (diff) | |
download | libfuse-d6f8db71b84a139c1d74d6d0c654659951219c38.tar.gz |
kernel: Fix compilation on patched 2.6.18 (fc6) and 2.6.9
Diffstat (limited to 'kernel/dev.c')
-rw-r--r-- | kernel/dev.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/kernel/dev.c b/kernel/dev.c index d7e5e55..c96d0cc 100644 --- a/kernel/dev.c +++ b/kernel/dev.c @@ -772,6 +772,7 @@ static ssize_t fuse_dev_readv(struct file *file, const struct iovec *iov, return err; } +#ifndef KERNEL_2_6_19_PLUS static ssize_t fuse_dev_read(struct file *file, char __user *buf, size_t nbytes, loff_t *off) { @@ -780,6 +781,13 @@ static ssize_t fuse_dev_read(struct file *file, char __user *buf, iov.iov_base = buf; return fuse_dev_readv(file, &iov, 1, off); } +#else +static ssize_t fuse_dev_read(struct kiocb *iocb, const struct iovec *iov, + unsigned long nr_segs, loff_t pos) +{ + return fuse_dev_readv(iocb->ki_filp, iov, nr_segs, &pos); +} +#endif /* Look up request on processing list by unique ID */ static struct fuse_req *request_find(struct fuse_conn *fc, u64 unique) @@ -909,6 +917,7 @@ static ssize_t fuse_dev_writev(struct file *file, const struct iovec *iov, return err; } +#ifndef KERNEL_2_6_19_PLUS static ssize_t fuse_dev_write(struct file *file, const char __user *buf, size_t nbytes, loff_t *off) { @@ -917,6 +926,13 @@ static ssize_t fuse_dev_write(struct file *file, const char __user *buf, iov.iov_base = (char __user *) buf; return fuse_dev_writev(file, &iov, 1, off); } +#else +static ssize_t fuse_dev_write(struct kiocb *iocb, const struct iovec *iov, + unsigned long nr_segs, loff_t pos) +{ + return fuse_dev_writev(iocb->ki_filp, iov, nr_segs, &pos); +} +#endif static unsigned fuse_dev_poll(struct file *file, poll_table *wait) { @@ -1052,10 +1068,17 @@ static int fuse_dev_fasync(int fd, struct file *file, int on) struct file_operations fuse_dev_operations = { .owner = THIS_MODULE, .llseek = no_llseek, +#ifndef KERNEL_2_6_19_PLUS .read = fuse_dev_read, .readv = fuse_dev_readv, .write = fuse_dev_write, .writev = fuse_dev_writev, +#else + .read = do_sync_read, + .aio_read = fuse_dev_read, + .write = do_sync_write, + .aio_write = fuse_dev_write, +#endif .poll = fuse_dev_poll, .release = fuse_dev_release, .fasync = fuse_dev_fasync, |