alistair23-linux/fs/ocfs2
Xue jiufei 750e3c6581 ocfs2: skip locks in the blocked list
A parallel umount on 4 nodes triggered a bug in
dlm_process_recovery_date().  Here's the situation:

Receiving MIG_LOCKRES message, A node processes the locks in migratable
lockres.  It copys lvb from migratable lockres when processing the first
valid lock.

If there is a lock in the blocked list with the EX level, it triggers the
BUG.  Since valid lvbs are set when locks are granted with EX or PR
levels, locks in the blocked list cannot have valid lvbs.  Therefore I
think we should skip the locks in the blocked list.

Signed-off-by: Xuejiufei <xuejiufei@huawei.com>
Signed-off-by: Joel Becker <jlbec@evilplan.org>
Cc: Mark Fasheh <mfasheh@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-11-13 12:09:01 +09:00
..
cluster ocfs2: use bitmap_weight() 2013-11-13 12:09:01 +09:00
dlm ocfs2: skip locks in the blocked list 2013-11-13 12:09:01 +09:00
dlmfs ocfs2: remove unused variable ip in dlmfs_get_root_inode() 2013-09-11 15:56:52 -07:00
acl.c ocfs2: clean up dead code in ocfs2_acl_from_xattr() 2013-09-11 15:56:39 -07:00
acl.h
alloc.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
alloc.h
aops.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
aops.h aio: don't include aio.h in sched.h 2013-05-07 20:16:25 -07:00
blockcheck.c
blockcheck.h
buffer_head_io.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
buffer_head_io.h
dcache.c ocfs2: needs ->d_lock to poke in ->d_parent->d_inode from ->d_revalidate() 2013-09-29 22:02:20 -04:00
dcache.h
dir.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
dir.h [readdir] convert ocfs2 2013-06-29 12:57:02 +04:00
dlmglue.c aio: remove retry-based AIO 2013-05-07 18:38:27 -07:00
dlmglue.h
export.c fs: encode_fh: return FILEID_INVALID if invalid fid_type 2013-02-26 02:46:10 -05:00
export.h
extent_map.c ocfs2: fix the end cluster offset of FIEMAP 2013-09-11 15:56:53 -07:00
extent_map.h
file.c fs/ocfs2/file.c: fix wrong comment 2013-11-13 12:09:00 +09:00
file.h
heartbeat.c
heartbeat.h
inode.c
inode.h aio: don't include aio.h in sched.h 2013-05-07 20:16:25 -07:00
ioctl.c ocfs2: use i_size_read() to access i_size 2013-09-11 15:56:30 -07:00
ioctl.h
journal.c ocfs2: use i_size_read() to access i_size 2013-09-11 15:56:30 -07:00
journal.h fs/ocfs2: remove unnecessary variable bits_wanted from ocfs2_calc_extend_credits 2013-11-13 12:09:00 +09:00
Kconfig
localalloc.c ocfs2: ac_bits_wanted should be local_alloc_bits when returns -ENOSPC 2013-09-11 15:56:31 -07:00
localalloc.h
locks.c
locks.h
Makefile
mmap.c kill f_vfsmnt 2013-02-26 02:46:10 -05:00
mmap.h
move_extents.c fs/ocfs2: remove unnecessary variable bits_wanted from ocfs2_calc_extend_credits 2013-11-13 12:09:00 +09:00
move_extents.h
namei.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
namei.h
ocfs1_fs_compat.h
ocfs2.h ocfs2: remove unecessary variable needs_checkpoint 2013-07-03 16:07:23 -07:00
ocfs2_fs.h
ocfs2_ioctl.h
ocfs2_lockid.h
ocfs2_lockingver.h
ocfs2_trace.h ocfs2: lighten up allocate transaction 2013-09-11 15:56:28 -07:00
quota.h
quota_global.c ocfs2: use i_size_read() to access i_size 2013-09-11 15:56:30 -07:00
quota_local.c ocfs2: use i_size_read() to access i_size 2013-09-11 15:56:30 -07:00
refcounttree.c ocfs2: add necessary check in case sb_getblk() fails 2013-11-13 12:09:00 +09:00
refcounttree.h ocfs2: fix NULL pointer dereference in ocfs2_duplicate_clusters_by_page 2013-08-13 17:57:49 -07:00
reservations.c
reservations.h
resize.c
resize.h
slot_map.c
slot_map.h
stack_o2cb.c
stack_user.c
stackglue.c
stackglue.h
suballoc.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
suballoc.h ocfs2: ac->ac_allow_chain_relink=0 won't disable group relink 2013-02-27 19:10:09 -08:00
super.c ocfs2: return ENOMEM when sb_getblk() fails 2013-11-13 12:09:00 +09:00
super.h
symlink.c ocfs2: Fix oops in ocfs2_fast_symlink_readpage() code path 2013-02-26 02:46:12 -05:00
symlink.h
sysfile.c
sysfile.h
uptodate.c
uptodate.h
ver.c
ver.h
xattr.c ocfs2: add necessary check in case sb_getblk() fails 2013-11-13 12:09:00 +09:00
xattr.h xattr: Constify ->name member of "struct xattr". 2013-07-25 19:30:03 +10:00