Whamcloud - gitweb
LU-118 Workaround for race causing assertion failure in clear_inode()
authorJohann Lombardi <johann@whamcloud.com>
Thu, 28 Apr 2011 18:44:59 +0000 (20:44 +0200)
committerJohann Lombardi <johann@whamcloud.com>
Fri, 6 May 2011 06:20:26 +0000 (23:20 -0700)
commit27a980a8ed357962a57ace062d697615645d6d36
tree7ca2843f08446f728b91f36343b43873bc60266c
parent3ecca7c2fec9b1485c4aa983e6481ddba026c35b
LU-118 Workaround for race causing assertion failure in clear_inode()

This patch is just a *workaround* to avoid a race found in recent
kernel causing the following assertion in clear_inode():
BUG_ON(inode->i_data.nrpages).
The race can still occur when truncate_inode_pages() & clear_inode()
are called directly by the VFS, but the problem should be harder to
reproduce.
A more complete fix is considered for 2.x.

Change-Id: If0df4b1cba00de7cf43f1b3510d54d35525c5e14
Signed-off-by: Johann Lombardi <johann@whamcloud.com>
Reviewed-on: http://review.whamcloud.com/475
Tested-by: Hudson
Reviewed-by: Jinshan Xiong <jay@whamcloud.com>
Reviewed-by: Andrew Perepechko <andrew_perepechko@xyratex.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/llite/llite_internal.h
lustre/llite/llite_lib.c
lustre/llite/super25.c