3.18.5 kernel crashing on acl deletion:

null pointer dereference in fs/gfs2/acl.c:76

to replicate:

Prereq: gfs2 filesystem w/ acl mount option turned on.

Execute:

mkdir testdir
setfacl -m d:u::rwx,d:g::rwx,d:g:wheel:rwx,d:m::rwx,d:o::--- testdir
setfattr -x system.posix_acl_default testdir

fix we're using currently:

---
 fs/gfs2/acl.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/gfs2/acl.c b/fs/gfs2/acl.c
index 3088e2a..8339754 100644
--- a/fs/gfs2/acl.c
+++ b/fs/gfs2/acl.c
@@ -73,7 +73,7 @@ int gfs2_set_acl(struct inode *inode, struct posix_acl *acl, 
int type)
 
        BUG_ON(name == NULL);
 
-       if (acl->a_count > GFS2_ACL_MAX_ENTRIES(GFS2_SB(inode)))
+       if ((acl) && (acl->a_count > GFS2_ACL_MAX_ENTRIES(GFS2_SB(inode))))
                return -E2BIG;
 
        if (type == ACL_TYPE_ACCESS) {
-- 
1.9.2

Thanks,

Andy

-- 
Andrew W. Elble
awe...@discipline.rit.edu
Infrastructure Engineer, Communications Technical Lead
Rochester Institute of Technology
PGP: BFAD 8461 4CCF DC95 DA2C B0EB 965B 082E 863E C912

Reply via email to