Addd kernel modules for NTFS (#2181)
[openwrt.git] / target / linux / generic-2.6 / patches / 209-mini_fo.patch
index f8a1a9d..35c9ec2 100644 (file)
@@ -1,9 +1,9 @@
-diff -urN linux.old/fs/Kconfig linux.dev/fs/Kconfig
---- linux.old/fs/Kconfig       2006-11-17 03:10:00.000000000 +0100
-+++ linux.dev/fs/Kconfig       2006-11-17 03:12:36.000000000 +0100
-@@ -356,6 +356,9 @@
-                 - POSIX ACLs
-                 - readpages / writepages (not user visible)
+diff -urN linux-2.6.21.1.old/fs/Kconfig linux-2.6.21.1.dev/fs/Kconfig
+--- linux-2.6.21.1.old/fs/Kconfig      2007-05-26 19:03:45.497714200 +0200
++++ linux-2.6.21.1.dev/fs/Kconfig      2007-05-26 21:01:26.154331240 +0200
+@@ -461,6 +461,9 @@
+         This option will enlarge your kernel, but it allows debugging of
+         ocfs2 filesystem issues.
  
 +config MINI_FO
 +      tristate "Mini fanout overlay filesystem"
  
 +config MINI_FO
 +      tristate "Mini fanout overlay filesystem"
@@ -11,10 +11,10 @@ diff -urN linux.old/fs/Kconfig linux.dev/fs/Kconfig
  config MINIX_FS
        tristate "Minix fs support"
        help
  config MINIX_FS
        tristate "Minix fs support"
        help
-diff -urN linux.old/fs/Makefile linux.dev/fs/Makefile
---- linux.old/fs/Makefile      2006-11-17 03:10:00.000000000 +0100
-+++ linux.dev/fs/Makefile      2006-11-17 03:13:05.000000000 +0100
-@@ -60,6 +60,7 @@
+diff -urN linux-2.6.21.1.old/fs/Makefile linux-2.6.21.1.dev/fs/Makefile
+--- linux-2.6.21.1.old/fs/Makefile     2007-05-26 19:03:45.497714200 +0200
++++ linux-2.6.21.1.dev/fs/Makefile     2007-05-26 21:01:26.160330328 +0200
+@@ -72,6 +72,7 @@
  obj-$(CONFIG_RAMFS)           += ramfs/
  obj-$(CONFIG_HUGETLBFS)               += hugetlbfs/
  obj-$(CONFIG_CODA_FS)         += coda/
  obj-$(CONFIG_RAMFS)           += ramfs/
  obj-$(CONFIG_HUGETLBFS)               += hugetlbfs/
  obj-$(CONFIG_CODA_FS)         += coda/
@@ -22,9 +22,9 @@ diff -urN linux.old/fs/Makefile linux.dev/fs/Makefile
  obj-$(CONFIG_MINIX_FS)                += minix/
  obj-$(CONFIG_FAT_FS)          += fat/
  obj-$(CONFIG_MSDOS_FS)                += msdos/
  obj-$(CONFIG_MINIX_FS)                += minix/
  obj-$(CONFIG_FAT_FS)          += fat/
  obj-$(CONFIG_MSDOS_FS)                += msdos/
-diff -urN linux.old/fs/mini_fo/aux.c linux.dev/fs/mini_fo/aux.c
---- linux.old/fs/mini_fo/aux.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/aux.c 2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/aux.c linux-2.6.21.1.dev/fs/mini_fo/aux.c
+--- linux-2.6.21.1.old/fs/mini_fo/aux.c        1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/aux.c        2007-05-26 21:01:26.160330328 +0200
 @@ -0,0 +1,580 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 @@ -0,0 +1,580 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
@@ -606,9 +606,9 @@ diff -urN linux.old/fs/mini_fo/aux.c linux.dev/fs/mini_fo/aux.c
 +
 +#endif /* unused */
 +
 +
 +#endif /* unused */
 +
-diff -urN linux.old/fs/mini_fo/ChangeLog linux.dev/fs/mini_fo/ChangeLog
---- linux.old/fs/mini_fo/ChangeLog     1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/ChangeLog     2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/ChangeLog linux-2.6.21.1.dev/fs/mini_fo/ChangeLog
+--- linux-2.6.21.1.old/fs/mini_fo/ChangeLog    1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/ChangeLog    2007-05-26 21:01:26.161330176 +0200
 @@ -0,0 +1,281 @@
 +2006-01-24  Markus Klotzbuecher  <mk@mary.denx.de>
 +
 @@ -0,0 +1,281 @@
 +2006-01-24  Markus Klotzbuecher  <mk@mary.denx.de>
 +
@@ -891,9 +891,9 @@ diff -urN linux.old/fs/mini_fo/ChangeLog linux.dev/fs/mini_fo/ChangeLog
 +      * Implementation of mini_fo_mknod and mini_fo_rename, support
 +          for device files.
 +      
 +      * Implementation of mini_fo_mknod and mini_fo_rename, support
 +          for device files.
 +      
-diff -urN linux.old/fs/mini_fo/dentry.c linux.dev/fs/mini_fo/dentry.c
---- linux.old/fs/mini_fo/dentry.c      1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/dentry.c      2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/dentry.c linux-2.6.21.1.dev/fs/mini_fo/dentry.c
+--- linux-2.6.21.1.old/fs/mini_fo/dentry.c     1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/dentry.c     2007-05-26 21:01:26.161330176 +0200
 @@ -0,0 +1,244 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 @@ -0,0 +1,244 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
@@ -1139,10 +1139,10 @@ diff -urN linux.old/fs/mini_fo/dentry.c linux.dev/fs/mini_fo/dentry.c
 +      d_delete:               mini_fo_d_delete,
 +      d_iput:         mini_fo_d_iput,
 +};
 +      d_delete:               mini_fo_d_delete,
 +      d_iput:         mini_fo_d_iput,
 +};
-diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
---- linux.old/fs/mini_fo/file.c        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/file.c        2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,717 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/file.c linux-2.6.21.1.dev/fs/mini_fo/file.c
+--- linux-2.6.21.1.old/fs/mini_fo/file.c       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/file.c       2007-05-26 21:01:26.162330024 +0200
+@@ -0,0 +1,713 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -1382,12 +1382,15 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +
 +/* mainly copied from fs/readdir.c */
 +STATIC int
 +
 +/* mainly copied from fs/readdir.c */
 +STATIC int
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++mini_fo_filldir(void * __buf, const char * name, int namlen, loff_t offset,
++                u64 ino, unsigned int d_type)
++#else
 +mini_fo_filldir(void * __buf, const char * name, int namlen, loff_t offset,
 +                ino_t ino, unsigned int d_type)
 +mini_fo_filldir(void * __buf, const char * name, int namlen, loff_t offset,
 +                ino_t ino, unsigned int d_type)
++#endif
 +{
 +{
-+      struct linux_dirent *dirent, d;
 +      struct getdents_callback * buf = (struct getdents_callback *) __buf;
 +      struct getdents_callback * buf = (struct getdents_callback *) __buf;
-+      int reclen;
 +      file_t* file = mini_fo_filldir_file;
 +
 +      /* In theses states we filter meta files in storage (WOL) */
 +      file_t* file = mini_fo_filldir_file;
 +
 +      /* In theses states we filter meta files in storage (WOL) */
@@ -1640,7 +1643,11 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +              /* If the base file has been opened, we need to close it here */
 +              if(ftohf(file)) {
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
 +              /* If the base file has been opened, we need to close it here */
 +              if(ftohf(file)) {
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++                              hidden_file->f_op->flush(hidden_file, NULL);
++#else
 +                              hidden_file->f_op->flush(hidden_file);
 +                              hidden_file->f_op->flush(hidden_file);
++#endif
 +                      dput(hidden_dentry);
 +              }
 +              goto out;
 +                      dput(hidden_dentry);
 +              }
 +              goto out;
@@ -1658,7 +1665,11 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +              /* close base file if open */
 +              if(ftohf(file)) {
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
 +              /* close base file if open */
 +              if(ftohf(file)) {
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++                              hidden_file->f_op->flush(hidden_file, NULL);
++#else
 +                              hidden_file->f_op->flush(hidden_file);
 +                              hidden_file->f_op->flush(hidden_file);
++#endif
 +                      dput(hidden_dentry);
 +              }
 +              goto out;
 +                      dput(hidden_dentry);
 +              }
 +              goto out;
@@ -1673,7 +1684,11 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +}
 +
 +STATIC int
 +}
 +
 +STATIC int
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++mini_fo_flush(file_t *file, fl_owner_t id)
++#else
 +mini_fo_flush(file_t *file)
 +mini_fo_flush(file_t *file)
++#endif
 +{
 +      int err1 = 0;           /* assume ok (see open.c:close_fp) */
 +      int err2 = 0;
 +{
 +      int err1 = 0;           /* assume ok (see open.c:close_fp) */
 +      int err2 = 0;
@@ -1688,12 +1703,20 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +              if(ftohf(file) != NULL) {
 +                      hidden_file = ftohf(file);
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
 +              if(ftohf(file) != NULL) {
 +                      hidden_file = ftohf(file);
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++                              err1 = hidden_file->f_op->flush(hidden_file, id);
++#else
 +                              err1 = hidden_file->f_op->flush(hidden_file);
 +                              err1 = hidden_file->f_op->flush(hidden_file);
++#endif
 +              }
 +              if(ftohf2(file) != NULL) {
 +                      hidden_file = ftohf2(file);
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
 +              }
 +              if(ftohf2(file) != NULL) {
 +                      hidden_file = ftohf2(file);
 +                      if (hidden_file->f_op && hidden_file->f_op->flush)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++                              err2 = hidden_file->f_op->flush(hidden_file, id);
++#else
 +                              err2 = hidden_file->f_op->flush(hidden_file);
 +                              err2 = hidden_file->f_op->flush(hidden_file);
++#endif
 +              }
 +      }
 +      return (err1 | err2);
 +              }
 +      }
 +      return (err1 | err2);
@@ -1792,33 +1815,6 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +}
 +
 +
 +}
 +
 +
-+STATIC int
-+mini_fo_lock(file_t *file, int cmd, struct file_lock *fl)
-+{
-+      int err = -EINVAL;
-+      file_t *hidden_file = NULL;
-+
-+      if(!check_mini_fo_file(file))
-+              goto out;
-+
-+      /* which file shall we lock? */
-+      if(ftohf2(file))
-+              hidden_file = ftohf2(file);
-+      else
-+              hidden_file = ftohf(file);
-+
-+      if (hidden_file->f_op->lock) {
-+              fl->fl_file = hidden_file;
-+              err = hidden_file->f_op->lock(hidden_file, F_GETLK, fl);
-+              fl->fl_file = file;
-+      } else {
-+              if(posix_test_lock(hidden_file, fl))
-+                      err = 0;
-+      }
-+ out:
-+      return err;
-+}
-+
 +
 +struct file_operations mini_fo_dir_fops =
 +      {
 +
 +struct file_operations mini_fo_dir_fops =
 +      {
@@ -1860,10 +1856,10 @@ diff -urN linux.old/fs/mini_fo/file.c linux.dev/fs/mini_fo/file.c
 +              /* not implemented: sendpage */
 +              /* not implemented: get_unmapped_area */
 +      };
 +              /* not implemented: sendpage */
 +              /* not implemented: get_unmapped_area */
 +      };
-diff -urN linux.old/fs/mini_fo/fist.h linux.dev/fs/mini_fo/fist.h
---- linux.old/fs/mini_fo/fist.h        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/fist.h        2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,248 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/fist.h linux-2.6.21.1.dev/fs/mini_fo/fist.h
+--- linux-2.6.21.1.old/fs/mini_fo/fist.h       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/fist.h       2007-05-26 21:01:26.162330024 +0200
+@@ -0,0 +1,252 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -1895,8 +1891,12 @@ diff -urN linux.old/fs/mini_fo/fist.h linux.dev/fs/mini_fo/fist.h
 + * KERNEL ONLY CODE:
 + */
 +#ifdef __KERNEL__
 + * KERNEL ONLY CODE:
 + */
 +#ifdef __KERNEL__
-+#include <linux/config.h>
 +#include <linux/version.h>
 +#include <linux/version.h>
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,19)
++#include <linux/autoconf.h>
++#else
++#include <linux/config.h>
++#endif
 +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
 +#ifdef CONFIG_MODVERSIONS
 +# define MODVERSIONS
 +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
 +#ifdef CONFIG_MODVERSIONS
 +# define MODVERSIONS
@@ -1943,7 +1943,7 @@ diff -urN linux.old/fs/mini_fo/fist.h linux.dev/fs/mini_fo/fist.h
 +#include <linux/swap.h>
 +
 +#include <asm/system.h>
 +#include <linux/swap.h>
 +
 +#include <asm/system.h>
-+#include <asm/segment.h>
++/* #include <asm/segment.h> */
 +#include <asm/mman.h>
 +#include <linux/seq_file.h>
 +
 +#include <asm/mman.h>
 +#include <linux/seq_file.h>
 +
@@ -2112,10 +2112,10 @@ diff -urN linux.old/fs/mini_fo/fist.h linux.dev/fs/mini_fo/fist.h
 +# define FIST_IOCTL_SET_DEBUG_VALUE   _IOW(0x15, 2, int)
 +
 +#endif /* not __FIST_H_ */
 +# define FIST_IOCTL_SET_DEBUG_VALUE   _IOW(0x15, 2, int)
 +
 +#endif /* not __FIST_H_ */
-diff -urN linux.old/fs/mini_fo/inode.c linux.dev/fs/mini_fo/inode.c
---- linux.old/fs/mini_fo/inode.c       1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/inode.c       2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,1573 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/inode.c linux-2.6.21.1.dev/fs/mini_fo/inode.c
+--- linux-2.6.21.1.old/fs/mini_fo/inode.c      1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/inode.c      2007-05-26 21:01:26.164329720 +0200
+@@ -0,0 +1,1564 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -2670,9 +2670,6 @@ diff -urN linux.old/fs/mini_fo/inode.c linux.dev/fs/mini_fo/inode.c
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
-+              /* avoid destroying the hidden inode if the file is in use */
-+              dget(hidden_sto_dentry);
-+
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
@@ -2763,9 +2760,6 @@ diff -urN linux.old/fs/mini_fo/inode.c linux.dev/fs/mini_fo/inode.c
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
-+              /* avoid destroying the hidden inode if the file is in use */
-+              dget(hidden_sto_dentry);
-+
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
@@ -2811,9 +2805,6 @@ diff -urN linux.old/fs/mini_fo/inode.c linux.dev/fs/mini_fo/inode.c
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
 +              down(&hidden_sto_dir_dentry->d_inode->i_sem);
 +#endif
 +
-+              /* avoid destroying the hidden inode if the file is in use */
-+              dget(hidden_sto_dentry);
-+
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
 +              /* Delete an old WOL file contained in the storage dir */
 +              meta_dentry = lookup_one_len(META_FILENAME, 
 +                                           hidden_sto_dentry, 
@@ -3689,10 +3680,10 @@ diff -urN linux.old/fs/mini_fo/inode.c linux.dev/fs/mini_fo/inode.c
 +              removexattr:    mini_fo_removexattr
 +# endif /* XATTR && LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,20) */
 +      };
 +              removexattr:    mini_fo_removexattr
 +# endif /* XATTR && LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,20) */
 +      };
-diff -urN linux.old/fs/mini_fo/main.c linux.dev/fs/mini_fo/main.c
---- linux.old/fs/mini_fo/main.c        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/main.c        2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,414 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/main.c linux-2.6.21.1.dev/fs/mini_fo/main.c
+--- linux-2.6.21.1.old/fs/mini_fo/main.c       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/main.c       2007-05-26 21:01:26.164329720 +0200
+@@ -0,0 +1,423 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -4050,12 +4041,21 @@ diff -urN linux.old/fs/mini_fo/main.c linux.dev/fs/mini_fo/main.c
 +}
 +
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
 +}
 +
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++static int mini_fo_get_sb(struct file_system_type *fs_type,
++                                        int flags, const char *dev_name,
++                                        void *raw_data, struct vfsmount *mnt) 
++{
++      return get_sb_nodev(fs_type, flags, raw_data, mini_fo_read_super, mnt);
++}
++#else
 +static struct super_block *mini_fo_get_sb(struct file_system_type *fs_type,
 +                                        int flags, const char *dev_name,
 +                                        void *raw_data) 
 +{
 +      return get_sb_nodev(fs_type, flags, raw_data, mini_fo_read_super);
 +}
 +static struct super_block *mini_fo_get_sb(struct file_system_type *fs_type,
 +                                        int flags, const char *dev_name,
 +                                        void *raw_data) 
 +{
 +      return get_sb_nodev(fs_type, flags, raw_data, mini_fo_read_super);
 +}
++#endif
 +
 +void mini_fo_kill_block_super(struct super_block *sb)
 +{
 +
 +void mini_fo_kill_block_super(struct super_block *sb)
 +{
@@ -4107,10 +4107,10 @@ diff -urN linux.old/fs/mini_fo/main.c linux.dev/fs/mini_fo/main.c
 +
 +module_init(init_mini_fo_fs)
 +module_exit(exit_mini_fo_fs)
 +
 +module_init(init_mini_fo_fs)
 +module_exit(exit_mini_fo_fs)
-diff -urN linux.old/fs/mini_fo/Makefile linux.dev/fs/mini_fo/Makefile
---- linux.old/fs/mini_fo/Makefile      1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/Makefile      2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,22 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/Makefile linux-2.6.21.1.dev/fs/mini_fo/Makefile
+--- linux-2.6.21.1.old/fs/mini_fo/Makefile     1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/Makefile     2007-05-26 21:01:26.164329720 +0200
+@@ -0,0 +1,17 @@
 +#
 +# Makefile for mini_fo 2.4 and 2.6 Linux kernels
 +#
 +#
 +# Makefile for mini_fo 2.4 and 2.6 Linux kernels
 +#
@@ -4125,17 +4125,12 @@ diff -urN linux.old/fs/mini_fo/Makefile linux.dev/fs/mini_fo/Makefile
 +obj-$(CONFIG_MINI_FO) := mini_fo.o
 +mini_fo-objs   := meta.o dentry.o file.o inode.o main.o super.o state.o aux.o
 +
 +obj-$(CONFIG_MINI_FO) := mini_fo.o
 +mini_fo-objs   := meta.o dentry.o file.o inode.o main.o super.o state.o aux.o
 +
-+O_TARGET := $(obj-$(CONFIG_MINI_FO))
-+obj-y := $(mini_fo-objs)
-+
-+-include $(TOPDIR)/Rules.make
-+
 +# dependencies
 +${mini_fo-objs}: mini_fo.h fist.h
 +
 +# dependencies
 +${mini_fo-objs}: mini_fo.h fist.h
 +
-diff -urN linux.old/fs/mini_fo/meta.c linux.dev/fs/mini_fo/meta.c
---- linux.old/fs/mini_fo/meta.c        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/meta.c        2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/meta.c linux-2.6.21.1.dev/fs/mini_fo/meta.c
+--- linux-2.6.21.1.old/fs/mini_fo/meta.c       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/meta.c       2007-05-26 21:01:26.166329416 +0200
 @@ -0,0 +1,1000 @@
 +/*
 + * Copyright (C) 2004, 2005 Markus Klotzbuecher <mk@creamnet.de>
 @@ -0,0 +1,1000 @@
 +/*
 + * Copyright (C) 2004, 2005 Markus Klotzbuecher <mk@creamnet.de>
@@ -5137,10 +5132,10 @@ diff -urN linux.old/fs/mini_fo/meta.c linux.dev/fs/mini_fo/meta.c
 +      return 0;
 +}
 +
 +      return 0;
 +}
 +
-diff -urN linux.old/fs/mini_fo/mini_fo.h linux.dev/fs/mini_fo/mini_fo.h
---- linux.old/fs/mini_fo/mini_fo.h     1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/mini_fo.h     2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,503 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/mini_fo.h linux-2.6.21.1.dev/fs/mini_fo/mini_fo.h
+--- linux-2.6.21.1.old/fs/mini_fo/mini_fo.h    1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/mini_fo.h    2007-05-26 21:01:26.167329264 +0200
+@@ -0,0 +1,510 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -5340,8 +5335,13 @@ diff -urN linux.old/fs/mini_fo/mini_fo.h linux.dev/fs/mini_fo/mini_fo.h
 +# define ftohf2(file) ((ftopd(file))->wfi_file2) 
 +
 +/* inode TO private_data */
 +# define ftohf2(file) ((ftopd(file))->wfi_file2) 
 +
 +/* inode TO private_data */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++# define itopd(ino) ((struct mini_fo_inode_info *)(ino)->i_private)
++# define __itopd(ino) ((ino)->i_private)
++#else
 +# define itopd(ino) ((struct mini_fo_inode_info *)(ino)->u.generic_ip)
 +# define __itopd(ino) ((ino)->u.generic_ip)
 +# define itopd(ino) ((struct mini_fo_inode_info *)(ino)->u.generic_ip)
 +# define __itopd(ino) ((ino)->u.generic_ip)
++#endif
 +/* inode TO hidden_inode */
 +# define itohi(ino) (itopd(ino)->wii_inode)
 +# define itohi2(ino) (itopd(ino)->wii_inode2)
 +/* inode TO hidden_inode */
 +# define itohi(ino) (itopd(ino)->wii_inode)
 +# define itohi2(ino) (itopd(ino)->wii_inode2)
@@ -5562,7 +5562,9 @@ diff -urN linux.old/fs/mini_fo/mini_fo.h linux.dev/fs/mini_fo/mini_fo.h
 +      dest->i_atime = src->i_atime;
 +      dest->i_mtime = src->i_mtime;
 +      dest->i_ctime = src->i_ctime;
 +      dest->i_atime = src->i_atime;
 +      dest->i_mtime = src->i_mtime;
 +      dest->i_ctime = src->i_ctime;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19)
 +      dest->i_blksize = src->i_blksize;
 +      dest->i_blksize = src->i_blksize;
++#endif
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,12)
 +      dest->i_blkbits = src->i_blkbits;
 +# endif /* linux 2.4.12 and newer */
 +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,4,12)
 +      dest->i_blkbits = src->i_blkbits;
 +# endif /* linux 2.4.12 and newer */
@@ -5644,9 +5646,9 @@ diff -urN linux.old/fs/mini_fo/mini_fo.h linux.dev/fs/mini_fo/mini_fo.h
 +/* ioctls */
 +
 +#endif        /* not __MINI_FO_H_ */
 +/* ioctls */
 +
 +#endif        /* not __MINI_FO_H_ */
-diff -urN linux.old/fs/mini_fo/mini_fo-merge linux.dev/fs/mini_fo/mini_fo-merge
---- linux.old/fs/mini_fo/mini_fo-merge 1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/mini_fo-merge 2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/mini_fo-merge linux-2.6.21.1.dev/fs/mini_fo/mini_fo-merge
+--- linux-2.6.21.1.old/fs/mini_fo/mini_fo-merge        1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/mini_fo-merge        2007-05-26 21:01:26.167329264 +0200
 @@ -0,0 +1,180 @@
 +#!/bin/bash
 +#
 @@ -0,0 +1,180 @@
 +#!/bin/bash
 +#
@@ -5828,9 +5830,9 @@ diff -urN linux.old/fs/mini_fo/mini_fo-merge linux.dev/fs/mini_fo/mini_fo-merge
 +#rm $TMP/$SKIP_DEL_LIST 
 +
 +echo "Done!"
 +#rm $TMP/$SKIP_DEL_LIST 
 +
 +echo "Done!"
-diff -urN linux.old/fs/mini_fo/mini_fo-overlay linux.dev/fs/mini_fo/mini_fo-overlay
---- linux.old/fs/mini_fo/mini_fo-overlay       1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/mini_fo-overlay       2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/mini_fo-overlay linux-2.6.21.1.dev/fs/mini_fo/mini_fo-overlay
+--- linux-2.6.21.1.old/fs/mini_fo/mini_fo-overlay      1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/mini_fo-overlay      2007-05-26 21:01:26.167329264 +0200
 @@ -0,0 +1,130 @@
 +#!/bin/bash
 +#
 @@ -0,0 +1,130 @@
 +#!/bin/bash
 +#
@@ -5962,9 +5964,9 @@ diff -urN linux.old/fs/mini_fo/mini_fo-overlay linux.dev/fs/mini_fo/mini_fo-over
 +if [ $? -ne 0 ]; then
 +    echo "Error, mounting failed, maybe no permisson to mount?"
 +fi
 +if [ $? -ne 0 ]; then
 +    echo "Error, mounting failed, maybe no permisson to mount?"
 +fi
-diff -urN linux.old/fs/mini_fo/mmap.c linux.dev/fs/mini_fo/mmap.c
---- linux.old/fs/mini_fo/mmap.c        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/mmap.c        2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/mmap.c linux-2.6.21.1.dev/fs/mini_fo/mmap.c
+--- linux-2.6.21.1.old/fs/mini_fo/mmap.c       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/mmap.c       2007-05-26 21:01:26.168329112 +0200
 @@ -0,0 +1,637 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 @@ -0,0 +1,637 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
@@ -6603,9 +6605,9 @@ diff -urN linux.old/fs/mini_fo/mmap.c linux.dev/fs/mini_fo/mmap.c
 +      print_exit_status(err);
 +      return err;
 +}
 +      print_exit_status(err);
 +      return err;
 +}
-diff -urN linux.old/fs/mini_fo/README linux.dev/fs/mini_fo/README
---- linux.old/fs/mini_fo/README        1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/README        2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/README linux-2.6.21.1.dev/fs/mini_fo/README
+--- linux-2.6.21.1.old/fs/mini_fo/README       1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/README       2007-05-26 21:01:26.168329112 +0200
 @@ -0,0 +1,163 @@
 +README for the mini_fo overlay file system
 +=========================================
 @@ -0,0 +1,163 @@
 +README for the mini_fo overlay file system
 +=========================================
@@ -6770,9 +6772,9 @@ diff -urN linux.old/fs/mini_fo/README linux.dev/fs/mini_fo/README
 +2 of the License, or (at your option) any later version.
 +
 +
 +2 of the License, or (at your option) any later version.
 +
 +
-diff -urN linux.old/fs/mini_fo/RELEASE_NOTES linux.dev/fs/mini_fo/RELEASE_NOTES
---- linux.old/fs/mini_fo/RELEASE_NOTES 1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/RELEASE_NOTES 2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/RELEASE_NOTES linux-2.6.21.1.dev/fs/mini_fo/RELEASE_NOTES
+--- linux-2.6.21.1.old/fs/mini_fo/RELEASE_NOTES        1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/RELEASE_NOTES        2007-05-26 21:01:26.168329112 +0200
 @@ -0,0 +1,111 @@
 +Release:      mini_fo-0.6.1 (v0-6-1)
 +Date:         21.09.2005
 @@ -0,0 +1,111 @@
 +Release:      mini_fo-0.6.1 (v0-6-1)
 +Date:         21.09.2005
@@ -6885,9 +6887,9 @@ diff -urN linux.old/fs/mini_fo/RELEASE_NOTES linux.dev/fs/mini_fo/RELEASE_NOTES
 +original state. I hope to fix this someday. Please note that this does
 +not effect the special hard links '.' and '..', that are handled
 +seperately by the lower fs.
 +original state. I hope to fix this someday. Please note that this does
 +not effect the special hard links '.' and '..', that are handled
 +seperately by the lower fs.
-diff -urN linux.old/fs/mini_fo/state.c linux.dev/fs/mini_fo/state.c
---- linux.old/fs/mini_fo/state.c       1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/state.c       2006-11-17 03:11:48.000000000 +0100
+diff -urN linux-2.6.21.1.old/fs/mini_fo/state.c linux-2.6.21.1.dev/fs/mini_fo/state.c
+--- linux-2.6.21.1.old/fs/mini_fo/state.c      1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/state.c      2007-05-26 21:01:26.169328960 +0200
 @@ -0,0 +1,620 @@
 +/*
 + * Copyright (C) 2005 Markus Klotzbuecher <mk@creamnet.de>
 @@ -0,0 +1,620 @@
 +/*
 + * Copyright (C) 2005 Markus Klotzbuecher <mk@creamnet.de>
@@ -7509,10 +7511,10 @@ diff -urN linux.old/fs/mini_fo/state.c linux.dev/fs/mini_fo/state.c
 +      return err;
 +}
 +
 +      return err;
 +}
 +
-diff -urN linux.old/fs/mini_fo/super.c linux.dev/fs/mini_fo/super.c
---- linux.old/fs/mini_fo/super.c       1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/fs/mini_fo/super.c       2006-11-17 03:11:48.000000000 +0100
-@@ -0,0 +1,259 @@
+diff -urN linux-2.6.21.1.old/fs/mini_fo/super.c linux-2.6.21.1.dev/fs/mini_fo/super.c
+--- linux-2.6.21.1.old/fs/mini_fo/super.c      1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.21.1.dev/fs/mini_fo/super.c      2007-05-26 21:01:26.169328960 +0200
+@@ -0,0 +1,281 @@
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
 +/*
 + * Copyright (c) 1997-2003 Erez Zadok
 + * Copyright (c) 2001-2003 Stony Brook University
@@ -7672,17 +7674,26 @@ diff -urN linux.old/fs/mini_fo/super.c linux.dev/fs/mini_fo/super.c
 +
 +
 +STATIC int
 +
 +
 +STATIC int
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++mini_fo_statfs(struct dentry *d, struct kstatfs *buf)
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
 +mini_fo_statfs(super_block_t *sb, struct kstatfs *buf)
 +#else
 +mini_fo_statfs(super_block_t *sb, struct statfs *buf)
 +#endif
 +{
 +      int err = 0;
 +mini_fo_statfs(super_block_t *sb, struct kstatfs *buf)
 +#else
 +mini_fo_statfs(super_block_t *sb, struct statfs *buf)
 +#endif
 +{
 +      int err = 0;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++      struct dentry *hidden_d;
++
++      hidden_d = dtohd(d);
++      err = vfs_statfs(hidden_d, buf);
++#else
 +      super_block_t *hidden_sb;
 +
 +      hidden_sb = stohs(sb);
 +      err = vfs_statfs(hidden_sb, buf);
 +      super_block_t *hidden_sb;
 +
 +      hidden_sb = stohs(sb);
 +      err = vfs_statfs(hidden_sb, buf);
++#endif
 +
 +      return err;
 +}
 +
 +      return err;
 +}
@@ -7744,6 +7755,18 @@ diff -urN linux.old/fs/mini_fo/super.c linux.dev/fs/mini_fo/super.c
 + * dies.
 + */
 +STATIC void
 + * dies.
 + */
 +STATIC void
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,18)
++mini_fo_umount_begin(struct vfsmount *mnt, int flags)
++{
++      struct vfsmount *hidden_mnt;
++
++      hidden_mnt = stopd(mnt->mnt_sb)->hidden_mnt;
++
++      if (hidden_mnt->mnt_sb->s_op->umount_begin)
++              hidden_mnt->mnt_sb->s_op->umount_begin(hidden_mnt, flags);
++
++}
++#else
 +mini_fo_umount_begin(super_block_t *sb)
 +{
 +      super_block_t *hidden_sb;
 +mini_fo_umount_begin(super_block_t *sb)
 +{
 +      super_block_t *hidden_sb;
@@ -7754,6 +7777,7 @@ diff -urN linux.old/fs/mini_fo/super.c linux.dev/fs/mini_fo/super.c
 +              hidden_sb->s_op->umount_begin(hidden_sb);
 +
 +}
 +              hidden_sb->s_op->umount_begin(hidden_sb);
 +
 +}
++#endif
 +
 +
 +struct super_operations mini_fo_sops =
 +
 +
 +struct super_operations mini_fo_sops =
This page took 0.052726 seconds and 4 git commands to generate.