123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- diff -Nuar linux-4.9.orig/fs/aufs/posix_acl.c linux-4.9/fs/aufs/posix_acl.c
- --- linux-4.9.orig/fs/aufs/posix_acl.c 2017-04-09 09:33:00.155052337 +0300
- +++ linux-4.9/fs/aufs/posix_acl.c 2017-04-09 09:34:03.760053849 +0300
- @@ -1,5 +1,18 @@
- /*
- * Copyright (C) 2014-2016 Junjiro R. Okajima
- + *
- + * This program, aufs is free software; you can redistribute it and/or modify
- + * it under the terms of the GNU General Public License as published by
- + * the Free Software Foundation; either version 2 of the License, or
- + * (at your option) any later version.
- + *
- + * This program is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * You should have received a copy of the GNU General Public License
- + * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
- /*
- @@ -36,6 +49,8 @@
-
- /* always topmost only */
- acl = get_acl(h_inode, type);
- + if (!IS_ERR_OR_NULL(acl))
- + set_cached_acl(inode, type, acl);
-
- out:
- ii_read_unlock(inode);
- @@ -77,8 +92,10 @@
- ssz = au_sxattr(dentry, inode, &arg);
- dput(dentry);
- err = ssz;
- - if (ssz >= 0)
- + if (ssz >= 0) {
- err = 0;
- + set_cached_acl(inode, type, acl);
- + }
-
- out:
- return err;
- diff -Nuar linux-4.9.orig/fs/aufs/xattr.c linux-4.9/fs/aufs/xattr.c
- --- linux-4.9.orig/fs/aufs/xattr.c 2017-04-09 09:33:00.160052337 +0300
- +++ linux-4.9/fs/aufs/xattr.c 2017-04-09 09:34:08.757053967 +0300
- @@ -1,11 +1,26 @@
- /*
- * Copyright (C) 2014-2016 Junjiro R. Okajima
- + *
- + * This program, aufs is free software; you can redistribute it and/or modify
- + * it under the terms of the GNU General Public License as published by
- + * the Free Software Foundation; either version 2 of the License, or
- + * (at your option) any later version.
- + *
- + * This program is distributed in the hope that it will be useful,
- + * but WITHOUT ANY WARRANTY; without even the implied warranty of
- + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- + * GNU General Public License for more details.
- + *
- + * You should have received a copy of the GNU General Public License
- + * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
- /*
- * handling xattr functions
- */
-
- +#include <linux/fs.h>
- +#include <linux/posix_acl_xattr.h>
- #include <linux/xattr.h>
- #include "aufs.h"
-
- @@ -309,7 +324,11 @@
- };
-
- static const struct xattr_handler *au_xattr_handlers[] = {
- - &au_xattr_handler,
- +#ifdef CONFIG_FS_POSIX_ACL
- + &posix_acl_access_xattr_handler,
- + &posix_acl_default_xattr_handler,
- +#endif
- + &au_xattr_handler, /* must be last */
- NULL
- };
-
|