summaryrefslogtreecommitdiff
path: root/kernel/panic.c
diff options
context:
space:
mode:
authorxuejiufei <xuejiufei@huawei.com>2016-01-14 15:17:38 -0800
committerLuis Henriques <luis.henriques@canonical.com>2016-02-02 19:09:45 +0000
commitd6536cc58e9c84691537cb92610f83b82e434878 (patch)
treebd45d7b4327b13b01da2fd2d50822aeee89b8211 /kernel/panic.c
parentf0e30712412d2572b4a973005a5f36d3f657bd10 (diff)
ocfs2/dlm: ignore cleaning the migration mle that is inuse
commit bef5502de074b6f6fa647b94b73155d675694420 upstream. We have found that migration source will trigger a BUG that the refcount of mle is already zero before put when the target is down during migration. The situation is as follows: dlm_migrate_lockres dlm_add_migration_mle dlm_mark_lockres_migrating dlm_get_mle_inuse <<<<<< Now the refcount of the mle is 2. dlm_send_one_lockres and wait for the target to become the new master. <<<<<< o2hb detect the target down and clean the migration mle. Now the refcount is 1. dlm_migrate_lockres woken, and put the mle twice when found the target goes down which trigger the BUG with the following message: "ERROR: bad mle: ". Signed-off-by: Jiufei Xue <xuejiufei@huawei.com> Reviewed-by: Joseph Qi <joseph.qi@huawei.com> Cc: Mark Fasheh <mfasheh@suse.de> Cc: Joel Becker <jlbec@evilplan.org> Cc: Junxiao Bi <junxiao.bi@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
Diffstat (limited to 'kernel/panic.c')
0 files changed, 0 insertions, 0 deletions