mirror of
https://github.com/xcat2/xcat-dep.git
synced 2024-11-21 09:01:46 +00:00
Added user submitted patch for SLES10 AUFS support.
From Toni L. Harbaugh-Blackford (harbaugh@ncifcrf.gov): I looked at the patch 'aa-hack' that comes with opensuse 11.1's aufs source rpm, which appears to resolve this problem for opensuse. I adapted those changes and fixed another error that comes up, and then aufs *APPEARS* to work with SLES 10 SP2. The patch is attached, and assumes that aufs-standalone.patch has already been applied.
This commit is contained in:
parent
4189ba07b1
commit
faad264d8b
111
aufs/aufs-aa-hack.patch
Normal file
111
aufs/aufs-aa-hack.patch
Normal file
@ -0,0 +1,111 @@
|
||||
diff -urN aufs/f_op.c aufs.post/f_op.c
|
||||
--- aufs/f_op.c 2008-02-03 23:22:46.000000000 -0500
|
||||
+++ aufs.postf_op.c 2008-10-20 13:48:10.000000000 -0400
|
||||
@@ -25,14 +25,8 @@
|
||||
#include <linux/version.h>
|
||||
#include "aufs.h"
|
||||
|
||||
-/* common function to regular file and dir */
|
||||
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 18)
|
||||
#define FlushArgs h_file, id
|
||||
int aufs_flush(struct file *file, fl_owner_t id)
|
||||
-#else
|
||||
-#define FlushArgs h_file
|
||||
-int aufs_flush(struct file *file)
|
||||
-#endif
|
||||
{
|
||||
int err;
|
||||
struct dentry *dentry;
|
||||
diff -urN aufs/file.h aufs.post/file.h
|
||||
--- aufs/file.h 2008-10-15 17:38:40.000000000 -0400
|
||||
+++ aufs.post/file.h 2008-10-20 13:50:03.000000000 -0400
|
||||
@@ -73,11 +73,7 @@
|
||||
|
||||
/* f_op.c */
|
||||
extern struct file_operations aufs_file_fop;
|
||||
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 18)
|
||||
int aufs_flush(struct file *file, fl_owner_t id);
|
||||
-#else
|
||||
-int aufs_flush(struct file *file);
|
||||
-#endif
|
||||
|
||||
/* finfo.c */
|
||||
struct aufs_finfo *ftofi(struct file *file);
|
||||
diff -urN aufs/vfsub.c aufs.post/vfsub.c
|
||||
--- aufs/vfsub.c 2008-02-03 23:22:46.000000000 -0500
|
||||
+++ aufs.post/vfsub.c 2008-10-20 13:45:45.000000000 -0400
|
||||
@@ -1075,7 +1075,7 @@
|
||||
if (!IS_IMMUTABLE(h_inode) && !IS_APPEND(h_inode)) {
|
||||
vfsub_ignore(a->vargs);
|
||||
lockdep_off();
|
||||
- *a->errp = notify_change(a->h_dentry, a->ia);
|
||||
+ *a->errp = notify_change(a->h_dentry, NULL, a->ia);
|
||||
lockdep_on();
|
||||
if (!*a->errp)
|
||||
au_update_fuse_h_inode(NULL, a->h_dentry); /*ignore*/
|
||||
diff -urN aufs/vfsub.h aufs.post/vfsub.h
|
||||
--- aufs/vfsub.h 2008-02-03 23:22:46.000000000 -0500
|
||||
+++ aufs.post/vfsub.h 2008-10-20 13:44:50.000000000 -0400
|
||||
@@ -376,7 +376,7 @@
|
||||
dir->i_ino, AuDLNPair(dentry), symname, mode);
|
||||
IMustLock(dir);
|
||||
|
||||
- err = vfs_symlink(dir, dentry, symname, mode);
|
||||
+ err = vfs_symlink(dir, dentry, NULL, symname, mode);
|
||||
if (!err) {
|
||||
/* dir inode is locked */
|
||||
au_update_fuse_h_inode(NULL, dentry->d_parent); /*ignore*/
|
||||
@@ -394,7 +394,7 @@
|
||||
LKTRTrace("i%lu, %.*s, 0x%x\n", dir->i_ino, AuDLNPair(dentry), mode);
|
||||
IMustLock(dir);
|
||||
|
||||
- err = vfs_mknod(dir, dentry, mode, dev);
|
||||
+ err = vfs_mknod(dir, dentry, NULL, mode, dev);
|
||||
if (!err) {
|
||||
/* dir inode is locked */
|
||||
au_update_fuse_h_inode(NULL, dentry->d_parent); /*ignore*/
|
||||
@@ -414,7 +414,7 @@
|
||||
IMustLock(dir);
|
||||
|
||||
lockdep_off();
|
||||
- err = vfs_link(src_dentry, dir, dentry);
|
||||
+ err = vfs_link(src_dentry, NULL, dir, dentry, 0);
|
||||
lockdep_on();
|
||||
if (!err) {
|
||||
LKTRTrace("src_i %p, dst_i %p\n",
|
||||
@@ -441,7 +441,7 @@
|
||||
IMustLock(src_dir);
|
||||
|
||||
lockdep_off();
|
||||
- err = vfs_rename(src_dir, src_dentry, dir, dentry);
|
||||
+ err = vfs_rename(src_dir, src_dentry, NULL, dir, dentry, 0);
|
||||
lockdep_on();
|
||||
if (!err) {
|
||||
/* dir inode is locked */
|
||||
@@ -460,7 +460,7 @@
|
||||
LKTRTrace("i%lu, %.*s, 0x%x\n", dir->i_ino, AuDLNPair(dentry), mode);
|
||||
IMustLock(dir);
|
||||
|
||||
- err = vfs_mkdir(dir, dentry, mode);
|
||||
+ err = vfs_mkdir(dir, dentry, NULL, mode);
|
||||
if (!err) {
|
||||
/* dir inode is locked */
|
||||
au_update_fuse_h_inode(NULL, dentry->d_parent); /*ignore*/
|
||||
@@ -477,7 +477,7 @@
|
||||
IMustLock(dir);
|
||||
|
||||
lockdep_off();
|
||||
- err = vfs_rmdir(dir, dentry);
|
||||
+ err = vfs_rmdir(dir, dentry, 0);
|
||||
lockdep_on();
|
||||
/* dir inode is locked */
|
||||
if (!err)
|
||||
@@ -494,7 +494,7 @@
|
||||
|
||||
/* vfs_unlink() locks inode */
|
||||
lockdep_off();
|
||||
- err = vfs_unlink(dir, dentry);
|
||||
+ err = vfs_unlink(dir, dentry, 0);
|
||||
lockdep_on();
|
||||
/* dir inode is locked */
|
||||
if (!err)
|
Loading…
Reference in New Issue
Block a user