Hello Jeff,

Here is a patch series to support RDU in aufs1.
This is not a generic solution and some parts may be biased to your
system.

- Ubuntu Hardy kernel contains AppArmor, and aufs1 has to follow their
  changes except file->fsetattr() operation. I skipped implementing it
  since I don't think they are necessary for you.

- rdblk=0 and rdhash=0 options in aufs2 are not back-ported. In other
  words, these values are always handled as zero, and the patched aufs1
  always estimate the size of the directory internally. The estimation
  may return a larger value than ideal/appropriate one. Since your
  system has installed plenty of RAM, I don't think it harmful.

- To support LSM (Linux Security Module), it is necessary to export one
  kernel function. It means you should apply a patch (4/6) against the
  Hardy kernel. If you don't want it, then skip the patch (4/6) and
  comment out the security_file_permission() call in fs/aufs/rdu.c.

- You need to get aufs2-util GIT tree, and run
  "make libau.so install_ulib". Also you may need to specify the include
  path for your compiler.
  For instance "make CPPFLAGS=/aufs1/include libau.so install_ulib".
  I'd recommend you to cusomize ./priv_def.mk for your environment.

- You need to specify the environment variable "LD_PRELOAD=libau.so" to
  your http server.

Test it well before you install the patched aufs1.


J. R. Okajima (6):
  support AppArmor in Ubuntu Hardy 2.6.24-24-server
  aufs: backporting RDU, new functions to estimate the size of a dir
  aufs: backporting RDU, variable VDIR
  aufs: backporting RDU, export security_file_permission() for ubuntu
    hardy
  aufs: backporting RDU, make au_ino() and au_wh_ino() global
  aufs: backporting RDU, new ioctl

 fs/aufs/Makefile                     |    2 +-
 fs/aufs/cpup.c                       |   23 +-
 fs/aufs/debug.c                      |   26 +-
 fs/aufs/dir.c                        |   64 ++++-
 fs/aufs/dir.h                        |   41 ++--
 fs/aufs/i_op.c                       |    7 +
 fs/aufs/i_op_add.c                   |   31 ++-
 fs/aufs/i_op_del.c                   |   24 +-
 fs/aufs/i_op_ren.c                   |   55 +++--
 fs/aufs/inode.c                      |   53 ++++
 fs/aufs/inode.h                      |   12 +
 fs/aufs/ioctl.c                      |   42 +++
 fs/aufs/misc.c                       |    3 +
 fs/aufs/plink.c                      |   11 +-
 fs/aufs/rdu.c                        |  327 ++++++++++++++++++++++
 fs/aufs/vdir.c                       |  511 ++++++++++++++++------------------
 fs/aufs/vfsub.c                      |   63 +++--
 fs/aufs/vfsub.h                      |   66 +++--
 fs/aufs/wbr_policy.c                 |    6 +-
 fs/aufs/whout.c                      |   69 ++++--
 fs/aufs/whout.h                      |    7 +-
 include/linux/aufs_type.h            |  115 ++++++---
 patch/ubuntu-2.6.24-sec_f_perm.patch |   12 +
 priv_def.mk                          |    2 +
 24 files changed, 1081 insertions(+), 491 deletions(-)
 create mode 100644 fs/aufs/ioctl.c
 create mode 100644 fs/aufs/rdu.c
 create mode 100644 patch/ubuntu-2.6.24-sec_f_perm.patch


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july

Reply via email to