summaryrefslogtreecommitdiff
path: root/package/fuse
diff options
context:
space:
mode:
Diffstat (limited to 'package/fuse')
-rw-r--r--package/fuse/patches/210-posix_test_lock.patch11
-rw-r--r--package/fuse/patches/220-kmem_cache.patch56
-rw-r--r--package/fuse/patches/230-kobj.patch17
3 files changed, 84 insertions, 0 deletions
diff --git a/package/fuse/patches/210-posix_test_lock.patch b/package/fuse/patches/210-posix_test_lock.patch
new file mode 100644
index 0000000000..50c6e75c8b
--- /dev/null
+++ b/package/fuse/patches/210-posix_test_lock.patch
@@ -0,0 +1,11 @@
+--- fuse.old/kernel/file.c 2007-01-28 21:25:02.000000000 +0000
++++ fuse.dev/kernel/file.c 2007-05-29 00:10:29.000000000 +0100
+@@ -782,7 +782,7 @@
+ if (cmd == F_GETLK) {
+ if (fc->no_lock) {
+ #ifdef KERNEL_2_6_17_PLUS
+- if (!posix_test_lock(file, fl, fl))
++ if (!posix_test_lock(file, fl))
+ fl->fl_type = F_UNLCK;
+ #else
+ struct file_lock *cfl = posix_test_lock(file, fl);
diff --git a/package/fuse/patches/220-kmem_cache.patch b/package/fuse/patches/220-kmem_cache.patch
new file mode 100644
index 0000000000..7fb439656d
--- /dev/null
+++ b/package/fuse/patches/220-kmem_cache.patch
@@ -0,0 +1,56 @@
+--- fuse.old/kernel/dev.c 2007-01-28 21:26:41.000000000 +0000
++++ fuse.dev/kernel/dev.c 2007-05-29 00:28:47.000000000 +0100
+@@ -21,7 +21,11 @@
+ MODULE_ALIAS_MISCDEV(FUSE_MINOR);
+ #endif
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)
++static struct kmem_cache *fuse_req_cachep;
++#else
+ static kmem_cache_t *fuse_req_cachep;
++#endif
+
+ static struct fuse_conn *fuse_get_conn(struct file *file)
+ {
+@@ -1093,9 +1093,13 @@
+ int __init fuse_dev_init(void)
+ {
+ int err = -ENOMEM;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22)
++ fuse_req_cachep = KMEM_CACHE(fuse_req, 0);
++#else
+ fuse_req_cachep = kmem_cache_create("fuse_request",
+ sizeof(struct fuse_req),
+ 0, 0, NULL, NULL);
++#endif
+ if (!fuse_req_cachep)
+ goto out;
+
+--- fuse.old/kernel/inode.c 2007-02-04 13:34:51.000000000 +0000
++++ fuse.dev/kernel/inode.c 2007-05-29 00:26:12.000000000 +0100
+@@ -24,7 +24,7 @@
+ MODULE_LICENSE("GPL");
+ #endif
+
+-static kmem_cache_t *fuse_inode_cachep;
++static struct kmem_cache *fuse_inode_cachep;
+ struct list_head fuse_conn_list;
+ DEFINE_MUTEX(fuse_mutex);
+
+@@ -804,14 +804,12 @@
+ static decl_subsys(fuse, NULL, NULL);
+ static decl_subsys(connections, NULL, NULL);
+
+-static void fuse_inode_init_once(void *foo, kmem_cache_t *cachep,
++static void fuse_inode_init_once(void *foo, struct kmem_cache *cachep,
+ unsigned long flags)
+ {
+ struct inode * inode = foo;
+
+- if ((flags & (SLAB_CTOR_VERIFY|SLAB_CTOR_CONSTRUCTOR)) ==
+- SLAB_CTOR_CONSTRUCTOR)
+- inode_init_once(inode);
++ inode_init_once(inode);
+ }
+
+ static int __init fuse_fs_init(void)
diff --git a/package/fuse/patches/230-kobj.patch b/package/fuse/patches/230-kobj.patch
new file mode 100644
index 0000000000..88f8b6c938
--- /dev/null
+++ b/package/fuse/patches/230-kobj.patch
@@ -0,0 +1,17 @@
+--- fuse.old/kernel/inode.c 2007-05-29 07:31:43.000000000 +0100
++++ fuse.dev/kernel/inode.c 2007-05-29 07:29:42.000000000 +0100
+@@ -858,12 +858,12 @@
+ if (err)
+ return err;
+ #endif
+- kset_set_kset_s(&fuse_subsys, fs_subsys);
++ kobj_set_kset_s(&fuse_subsys, fs_subsys);
+ err = subsystem_register(&fuse_subsys);
+ if (err)
+ goto out_err;
+
+- kset_set_kset_s(&connections_subsys, fuse_subsys);
++ kobj_set_kset_s(&connections_subsys, fuse_subsys);
+ err = subsystem_register(&connections_subsys);
+ if (err)
+ goto out_fuse_unregister;