linux-stable/fs/jfs
Oleg Kanatov a60dca73a1 jfs: makes diUnmount/diMount in jfs_mount_rw atomic
jfs_mount_rw can call diUnmount and then diMount. These calls change the
imap pointer. Between these two calls there may be calls of function
jfs_lookup(). The jfs_lookup() function calls jfs_iget(), which, in turn
calls diRead(). The latter references the imap pointer. That may cause
diRead() to refer to a pointer freed in diUnmount().  This commit makes
the calls to diUnmount()/diMount() atomic so that nothing will read the
imap pointer until the whole remount is completed.

Signed-off-by: Oleg Kanatov <okanatov@gmail.com>
Signed-off-by: Dave Kleikamp <dave.kleikamp@oracle.com>
2022-11-10 15:22:23 -06:00
..
acl.c vfs: add rcu argument to ->get_acl() callback 2021-08-18 22:08:24 +02:00
file.c attr: port attribute changes to new types 2022-06-26 18:18:56 +02:00
inode.c jfs: stop using the nobh helper 2022-08-02 12:34:04 -04:00
ioctl.c block: add a bdev_discard_granularity helper 2022-04-17 19:49:59 -06:00
jfs_acl.h vfs: add rcu argument to ->get_acl() callback 2021-08-18 22:08:24 +02:00
jfs_btree.h
jfs_debug.c
jfs_debug.h
jfs_dinode.h jfs: Avoid field-overflowing memcpy() 2021-06-23 09:21:52 -05:00
jfs_discard.c
jfs_discard.h
jfs_dmap.c fs: jfs: fix shift-out-of-bounds in dbDiscardAG 2022-10-27 17:34:21 -05:00
jfs_dmap.h
jfs_dtree.c fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
jfs_dtree.h
jfs_extent.c fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
jfs_extent.h jfs: remove unused declarations for jfs 2022-10-18 08:50:26 -05:00
jfs_filsys.h
jfs_imap.c jfs: makes diUnmount/diMount in jfs_mount_rw atomic 2022-11-10 15:22:23 -06:00
jfs_imap.h
jfs_incore.h jfs: Avoid field-overflowing memcpy() 2021-06-23 09:21:52 -05:00
jfs_inode.c
jfs_inode.h jfs: convert to fileattr 2021-04-12 15:04:29 +02:00
jfs_lock.h
jfs_logmgr.c fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
jfs_logmgr.h
jfs_metapage.c jfs: Remove check for PageUptodate 2022-06-29 08:51:07 -04:00
jfs_metapage.h
jfs_mount.c jfs: makes diUnmount/diMount in jfs_mount_rw atomic 2022-11-10 15:22:23 -06:00
jfs_superblock.h
jfs_txnmgr.c fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
jfs_txnmgr.h
jfs_types.h
jfs_umount.c jfs: Fix a typo in function jfs_umount 2022-11-10 15:08:00 -06:00
jfs_unicode.c
jfs_unicode.h
jfs_uniupr.c
jfs_xattr.h fs/jfs/jfs_xattr.h: Fix spelling typo in comment 2022-10-18 08:50:26 -05:00
jfs_xtree.c fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
jfs_xtree.h jfs: remove unused declarations for jfs 2022-10-18 08:50:26 -05:00
Kconfig
Makefile fs/jfs: Remove dead code 2022-04-25 14:00:33 -05:00
namei.c jfs: Fix fortify moan in symlink 2022-10-27 17:16:00 -05:00
resize.c jfs: use sb_bdev_nr_blocks 2021-10-18 14:43:23 -06:00
super.c fs/jfs: replace ternary operator with min_t() 2022-10-18 08:50:26 -05:00
symlink.c
xattr.c acl: handle idmapped mounts 2021-01-24 14:27:17 +01:00