android_kernel_xiaomi_sm8350/fs/gfs2
Benjamin Marzinski 6883562588 [GFS2] Fix log entry list corruption
When glock_lo_add and rg_lo_add attempt to add an element to the log, they
check to see if has already been added before locking the log. If another
process adds that element to the log in this window between the check and
locking the log, the element will be added to the list twice. This causes
the log element list to become corrupted in such a way that the log element
can never be successfully removed from the list. This patch pulls the
list_empty() check inside the log lock, to remove this window.

Signed-off-by: Benjamin E. Marzinski <bmarzins@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2007-05-01 09:10:50 +01:00
..
locking [GFS2] Speed up lock_dlm's locking (move sprintf) 2007-05-01 09:10:47 +01:00
acl.c
acl.h
bmap.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
bmap.h
daemon.c
daemon.h
dir.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
dir.h
eaops.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
eaops.h
eattr.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
eattr.h
gfs2.h
glock.c [GFS2] Fix a bug on i386 due to evaluation order 2007-05-01 09:10:42 +01:00
glock.h [GFS2] Fix bz 224480 and cleanup glock demotion code 2007-05-01 09:10:39 +01:00
glops.c [GFS2] Fix bz 229873, alternate test: assertion "!ip->i_inode.i_mapping->nrpages" failed 2007-03-07 14:03:53 -05:00
glops.h
incore.h [GFS2] Fix bz 224480 and cleanup glock demotion code 2007-05-01 09:10:39 +01:00
inode.c [GFS2] Fix bz 229831, lookup returns wrong inode 2007-03-07 14:01:53 -05:00
inode.h
Kconfig
lm.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
lm.h
locking.c
log.c
log.h
lops.c [GFS2] Fix log entry list corruption 2007-05-01 09:10:50 +01:00
lops.h
main.c [GFS2] Fix bz 224480 and cleanup glock demotion code 2007-05-01 09:10:39 +01:00
Makefile
meta_io.c
meta_io.h
mount.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
mount.h
ondisk.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_address.c [GFS2] Fix bz 231380, unlock page before dequeing glocks in gfs2_commit_write 2007-05-01 09:10:37 +01:00
ops_address.h
ops_dentry.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_dentry.h
ops_export.c [GFS2] NFS filehandle check 2007-03-07 13:57:34 -05:00
ops_export.h
ops_file.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_file.h
ops_fstype.c [GFS2] Add gfs2_tool lockdump support to gfs2 (bz 228540) 2007-05-01 09:10:29 +01:00
ops_fstype.h
ops_inode.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_inode.h
ops_super.c [GFS2] Fix bz 224480 and cleanup glock demotion code 2007-05-01 09:10:39 +01:00
ops_super.h [PATCH] Mark struct super_operations const 2007-02-12 09:48:47 -08:00
ops_vm.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
ops_vm.h
quota.c [GFS2] fix locking mistake 2007-03-07 13:56:41 -05:00
quota.h
recovery.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
recovery.h
rgrp.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
rgrp.h
super.c [GFS2] Remove unused variable 2007-03-07 14:02:30 -05:00
super.h
sys.c
sys.h
trans.c
trans.h
util.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
util.h