OpenCloudOS-Kernel/fs/gfs2
Wendy Cheng cc7e79b168 [GFS2] Handle multiple glock demote requests
Fix a race condition where multiple glock demote requests are sent to
a node back-to-back. This patch does a check inside handle_callback()
to see whether a demote request is in progress. If true, it sets a flag
to make sure run_queue() will loop again to handle the new request,
instead of erronously setting gl_demote_state to a different state.

Signed-off-by: S. Wendy Cheng <wcheng@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2008-01-25 08:07:09 +00:00
..
locking Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 2007-10-12 15:49:37 -07:00
Kconfig [DLM/GFS2] indent help text 2007-02-05 13:38:20 -05:00
Makefile [GFS2] Fix sign problem in quota/statfs and cleanup _host structures 2007-07-09 08:23:10 +01:00
acl.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
acl.h [GFS2] Remove gfs2_check_acl() 2006-11-30 10:37:32 -05:00
bmap.c [GFS2] Fix ordering of dirty/journal for ordered buffer unstuffing 2007-10-10 08:56:05 +01:00
bmap.h [GFS2] Fix bmap to map extents properly 2006-10-20 09:13:40 -04:00
daemon.c [GFS2] Reduce number of gfs2_scand processes to one 2007-10-10 08:55:08 +01:00
daemon.h [GFS2] Reduce number of gfs2_scand processes to one 2007-10-10 08:55:08 +01:00
dir.c [GFS2] Alternate gfs2_iget to avoid looking up inodes being freed 2007-10-10 08:56:29 +01:00
dir.h [GFS2] Clean up inode number handling 2007-07-09 08:22:24 +01:00
eaops.c [GFS2] mark struct *_operations const 2007-10-10 08:55:03 +01:00
eaops.h [GFS2] mark struct *_operations const 2007-10-10 08:55:03 +01:00
eattr.c [GFS2] Add nanosecond timestamp feature 2007-07-09 08:23:12 +01:00
eattr.h [GFS2] gfs2 misc endianness annotations 2006-11-30 10:33:46 -05:00
gfs2.h [GFS2] Update copyright, tidy up incore.h 2006-09-01 11:05:15 -04:00
glock.c [GFS2] Handle multiple glock demote requests 2008-01-25 08:07:09 +00:00
glock.h [GFS2] flocks from same process trip kernel BUG at fs/gfs2/glock.c:1118! 2007-10-10 08:56:14 +01:00
glops.c [GFS2] Clean up gfs2_trans_add_revoke() 2007-10-10 08:56:12 +01:00
glops.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
incore.h [GFS2] Handle multiple glock demote requests 2008-01-25 08:07:09 +00:00
inode.c [GFS2] Alternate gfs2_iget to avoid looking up inodes being freed 2007-10-10 08:56:29 +01:00
inode.h [GFS2] Alternate gfs2_iget to avoid looking up inodes being freed 2007-10-10 08:56:29 +01:00
lm.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
lm.h [GFS2] Use void * instead of typedef for locking module interface 2006-09-08 10:17:58 -04:00
locking.c [GFS2] Export lm_interface to kernel headers 2006-09-19 08:45:18 -04:00
log.c [GFS2] Get superblock a different way 2007-10-10 08:56:34 +01:00
log.h [GFS2] Clean up journaled data writing 2007-10-10 08:56:24 +01:00
lops.c [GFS2] Clean up journaled data writing 2007-10-10 08:56:24 +01:00
lops.h [GFS2] assertion failure after writing to journaled file, umount 2007-07-09 08:23:47 +01:00
main.c Slab API: remove useless ctor parameter and reorder parameters 2007-10-17 08:42:45 -07:00
meta_io.c [GFS2] Data corruption fix 2007-10-10 08:56:26 +01:00
meta_io.h [GFS2] Clean up journaled data writing 2007-10-10 08:56:24 +01:00
mount.c [GFS2] Add NULL entry to token table 2007-10-10 08:55:34 +01:00
mount.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_address.c gfs2: convert to new aops 2007-10-16 09:42:55 -07:00
ops_address.h [GFS2] Addendum patch 2 for gfs2_grow 2007-07-09 08:22:19 +01:00
ops_dentry.c [GFS2] Clean up inode number handling 2007-07-09 08:22:24 +01:00
ops_dentry.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
ops_export.c exportfs: make struct export_operations const 2007-10-22 08:13:21 -07:00
ops_file.c fs: correct SuS compliance for open of large file without options 2007-10-17 08:43:01 -07:00
ops_file.h [GFS2] Only set inode flags when required 2006-11-30 10:34:45 -05:00
ops_fstype.c [GFS2] Alternate gfs2_iget to avoid looking up inodes being freed 2007-10-10 08:56:29 +01:00
ops_fstype.h exportfs: make struct export_operations const 2007-10-22 08:13:21 -07:00
ops_inode.c [GFS2] Clean up journaled data writing 2007-10-10 08:56:24 +01:00
ops_inode.h [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
ops_super.c [GFS2] Clean up journaled data writing 2007-10-10 08:56:24 +01:00
ops_super.h [PATCH] Mark struct super_operations const 2007-02-12 09:48:47 -08:00
ops_vm.c mm: fault feedback #2 2007-07-19 10:04:41 -07:00
ops_vm.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
quota.c [GFS2] Fix quota do_list operation hang 2007-10-10 08:55:27 +01:00
quota.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
recovery.c [GFS2] Ensure journal file cache is flushed after recovery 2007-10-10 08:55:12 +01:00
recovery.h [GFS2] split and annotate gfs2_log_head 2006-11-30 10:33:14 -05:00
rgrp.c [GFS2] Alternate gfs2_iget to avoid looking up inodes being freed 2007-10-10 08:56:29 +01:00
rgrp.h [GFS2] Addendum patch 2 for gfs2_grow 2007-07-09 08:22:19 +01:00
super.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw 2007-10-12 09:14:51 -07:00
super.h [GFS2] Fix sign problem in quota/statfs and cleanup _host structures 2007-07-09 08:23:10 +01:00
sys.c Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6 2007-10-12 15:49:37 -07:00
sys.h [GFS2] Make headers compile on their own 2006-09-05 10:39:21 -04:00
trans.c [GFS2] Clean up gfs2_trans_add_revoke() 2007-10-10 08:56:12 +01:00
trans.h [GFS2] Clean up gfs2_trans_add_revoke() 2007-10-10 08:56:12 +01:00
util.c [GFS2] Fix sign problem in quota/statfs and cleanup _host structures 2007-07-09 08:23:10 +01:00
util.h Merge master.kernel.org:/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw 2006-12-07 09:13:20 -08:00