--- /var/tmp/portage/sys-fs/fuse-2.6.4-r1/work/fuse-2.6.4/kernel/file.c 2007-05-19 19:54:45.000000000 +0930 +++ /var/tmp/portage/sys-fs/fuse-2.6.4-r1/work/fuse-2.6.4/kernel/file.c 2007-05-19 19:58:40.000000000 +0930 @@ -781,7 +781,8 @@ if (cmd == F_GETLK) { if (fc->no_lock) { -#ifdef KERNEL_2_6_17_PLUS +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 17) && \ + LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 22) if (!posix_test_lock(file, fl, fl)) fl->fl_type = F_UNLCK; #else --- /var/tmp/portage/sys-fs/fuse-2.6.4-r1/work/fuse-2.6.4/kernel/inode.c 2007-05-20 09:13:34.000000000 +0930 +++ /var/tmp/portage/sys-fs/fuse-2.6.4-r1/work/fuse-2.6.4/kernel/inode.c 2007-05-20 09:18:33.000000000 +0930 @@ -809,9 +809,13 @@ { struct inode * inode = foo; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22) + inode_init_once(inode); +#else if ((flags & (SLAB_CTOR_VERIFY|SLAB_CTOR_CONSTRUCTOR)) == SLAB_CTOR_CONSTRUCTOR) inode_init_once(inode); +#endif } static int __init fuse_fs_init(void) @@ -860,12 +864,20 @@ if (err) return err; #endif +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22) + kobj_set_kset_s(&fuse_subsys, fs_subsys); +#else kset_set_kset_s(&fuse_subsys, fs_subsys); +#endif err = subsystem_register(&fuse_subsys); if (err) goto out_err; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22) + kobj_set_kset_s(&connections_subsys, fuse_subsys); +#else kset_set_kset_s(&connections_subsys, fuse_subsys); +#endif err = subsystem_register(&connections_subsys); if (err) goto out_fuse_unregister;