Whamcloud - gitweb
LU-6996 osd-ldiskfs: handle stale OI mapping cache 57/16157/8
authorFan Yong <fan.yong@intel.com>
Mon, 21 Sep 2015 00:56:52 +0000 (08:56 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 6 Oct 2015 01:56:30 +0000 (01:56 +0000)
commit7aaa680b7f22e7dfaac8af38b78d89164a94e842
treea8f80282fd886226a174861844c461a03fef0bcc
parent28638e84cde481d0216ffc1d170e272bc2cccc76
LU-6996 osd-ldiskfs: handle stale OI mapping cache

On server side, the RPC service thread may cache one OI mapping
on its stack, such OI mapping will become invalid if some other
removed the object by race. If the RPC service thread uses the
cached OI mapping and finds the inode that has been unlinked
and reused by other object with no LMA generated yet, then
the osd_check_lma() should NOT skip such case to avoid the
caller mis-using the inode by wrong.

Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I46348a06327bcf944aff9af7914230573e2cef89
Reviewed-on: http://review.whamcloud.com/16157
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: James Simmons <uja.ornl@yahoo.com>
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/osd-ldiskfs/osd_handler.c