1 diff -Naur fusd/include/kfusd.h fusd.new/include/kfusd.h
2 --- fusd/include/kfusd.h 2008-06-10 20:32:22.000000000 -0400
3 +++ fusd.new/include/kfusd.h 2008-06-10 20:33:25.000000000 -0400
5 #define MAX_FILEARRAY_SIZE 1024 /* maximum it can grow to */
7 /* maximum read/write size we're willing to service */
8 -#define MAX_RW_SIZE (1024*128)
9 +#define MAX_RW_SIZE (1024*1280*4)
12 /********************** Structure Definitions *******************************/
13 diff -Naur fusd/kfusd/kfusd.c fusd.new/kfusd/kfusd.c
14 --- fusd/kfusd/kfusd.c 2008-06-10 20:32:23.000000000 -0400
15 +++ fusd.new/kfusd/kfusd.c 2008-06-10 20:32:58.000000000 -0400
20 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,21)
21 +/* moved to private kernel header in 2.6.21 */
22 +struct sysfs_dirent {
24 + struct list_head s_sibling;
25 + struct list_head s_children;
30 + struct dentry * s_dentry;
31 + struct iattr * s_iattr;
36 static inline struct kobject * to_kobj(struct dentry * dentry)
38 struct sysfs_dirent * sd = dentry->d_fsdata;
43 -#define to_class(obj) container_of(obj, struct class, subsys.kset.kobj)
44 +#define to_class(obj) container_of(obj, struct class, subsys.kobj)
46 /**************************************************************************/
48 @@ -2399,17 +2415,17 @@
52 -STATIC ssize_t fusd_writev(struct file *file,
53 - const struct iovec *iov,
54 - unsigned long count,
56 +STATIC ssize_t fusd_aio_write(struct kiocb *iocb,
57 + const struct iovec *iov,
58 + unsigned long count,
62 RDEBUG(2, "fusd_writev: got illegal iov count of %ld", count);
66 - return fusd_process_write(file,
67 + return fusd_process_write(iocb->ki_filp,
68 iov[0].iov_base, iov[0].iov_len,
69 iov[1].iov_base, iov[1].iov_len);
71 @@ -2596,13 +2612,13 @@
74 STATIC struct file_operations fusd_fops = {
79 - writev: fusd_writev,
80 - release: fusd_release,
86 + aio_write: fusd_aio_write,
87 + release: fusd_release,