OpenCloudOS-Kernel/fs/jfs
Stefan Bader 4a19fb11a9 jfs: Fix early release of acl in jfs_get_acl
BugLink: http://bugs.launchpad.net/ubuntu/+bug/396780

Commit 073aaa1b14 "helpers for acl
caching + switch to those" introduced new helper functions for
acl handling but seems to have introduced a regression for jfs as
the acl is released before returning it to the caller, instead of
leaving this for the caller to do.
This causes the acl object to be used after freeing it, leading
to kernel panics in completely different places.

Thanks to Christophe Dumez for reporting and bisecting into this.

Reported-by: Christophe Dumez <dchris@gmail.com>
Tested-by: Christophe Dumez <dchris@gmail.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Acked-by: Andy Whitcroft <apw@canonical.com>
Signed-off-by: Dave Kleikamp <shaggy@linux.vnet.ibm.com>
2009-07-23 11:08:36 -05:00
..
Kconfig jfs: needs crc32_le 2009-02-02 13:43:28 -06:00
Makefile JFS: ext2 inode attributes for jfs 2006-02-09 09:09:16 -06:00
acl.c jfs: Fix early release of acl in jfs_get_acl 2009-07-23 11:08:36 -05:00
endian24.h JFS: Whitespace cleanup and remove some dead code 2007-06-06 15:28:35 -05:00
file.c BKL-removal: Implement a compat_ioctl handler for JFS 2008-02-07 13:45:29 -06:00
inode.c jfs: Use lowercase names of quota functions 2009-03-26 02:18:37 +01:00
ioctl.c [PATCH] r/o bind mounts: elevate write count for ioctls() 2008-04-19 00:29:24 -04:00
jfs_acl.h [PATCH] sanitize ->permission() prototype 2008-07-26 20:53:14 -04:00
jfs_btree.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_debug.c proc 2/2: remove struct proc_dir_entry::owner 2009-03-31 01:14:44 +04:00
jfs_debug.h JFS: switch to seq_files 2008-05-13 08:22:10 -05:00
jfs_dinode.h BKL-removal: Implement a compat_ioctl handler for JFS 2008-02-07 13:45:29 -06:00
jfs_dmap.c jfs: le*_add_cpu conversion 2008-02-13 15:34:20 -06:00
jfs_dmap.h jfs: replace __inline with inline 2008-03-05 14:38:22 -06:00
jfs_dtree.c jfs: Use lowercase names of quota functions 2009-03-26 02:18:37 +01:00
jfs_dtree.h jfs: remove DIRENTSIZ 2008-06-10 15:12:58 -05:00
jfs_extent.c jfs: fix regression preventing coalescing of extents 2009-06-16 13:43:22 -05:00
jfs_extent.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_filsys.h JFS: Whitespace cleanup and remove some dead code 2007-06-06 15:28:35 -05:00
jfs_imap.c jfs: Add missing mutex_unlock call to error path 2009-05-23 20:28:41 -05:00
jfs_imap.h JFS: Whitespace cleanup and remove some dead code 2007-06-06 15:28:35 -05:00
jfs_incore.h switch jfs to inode->i_acl 2009-06-24 08:17:04 -04:00
jfs_inode.c jfs: Use lowercase names of quota functions 2009-03-26 02:18:37 +01:00
jfs_inode.h constify dentry_operations: JFS 2009-03-27 14:44:02 -04:00
jfs_lock.h JFS: use __set_current_state() 2007-04-26 07:30:29 -05:00
jfs_logmgr.c [PATCH] pass fmode_t to blkdev_put() 2008-10-21 07:48:58 -04:00
jfs_logmgr.h more low-hanging fruits - kernel, fs, lib signedness 2007-10-14 12:41:52 -07:00
jfs_metapage.c jfs: Fix error handling in metapage_writepage() 2009-01-30 14:09:06 -06:00
jfs_metapage.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_mount.c JFS: Remove defconfig ptr comparison to 0 2008-01-03 13:12:10 -06:00
jfs_superblock.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_txnmgr.c JFS: switch to seq_files 2008-05-13 08:22:10 -05:00
jfs_txnmgr.h JFS: Whitespace cleanup and remove some dead code 2007-06-06 15:28:35 -05:00
jfs_types.h jfs: remove xtLookupList() 2009-01-09 15:42:04 -06:00
jfs_umount.c JFS: Make sure special inode data is written after journal is flushed 2008-01-03 13:11:37 -06:00
jfs_unicode.c JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_unicode.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_uniupr.c JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_xattr.h JFS: White space cleanup 2006-10-02 09:55:27 -05:00
jfs_xtree.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6 2009-03-30 10:02:36 -07:00
jfs_xtree.h jfs: remove xtLookupList() 2009-01-09 15:42:04 -06:00
namei.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2009-03-27 16:23:12 -07:00
resize.c JFS: use DIV_ROUND_UP where appropriate 2008-01-03 13:11:59 -06:00
super.c switch jfs to inode->i_acl 2009-06-24 08:17:04 -04:00
symlink.c [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
xattr.c helpers for acl caching + switch to those 2009-06-24 08:17:07 -04:00