Whamcloud - gitweb
LU-8399 osp: direct reference object to be invalidate 30/21330/6
authorFan Yong <fan.yong@intel.com>
Fri, 3 Jun 2016 08:33:58 +0000 (16:33 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Sat, 6 Aug 2016 06:23:57 +0000 (06:23 +0000)
commit63ef1b3bb8a0598ea2b2c70b5ad0550680723ab8
tree599249f8e11868bce86946808fc7e379042b6f58
parent0f9fa5180fb015af656b8eea06f04b02abc02232
LU-8399 osp: direct reference object to be invalidate

If the cross-MDTs update failed, the OSP transcation callback
will invalidate related object(s) cache. Originally, it uses
lu_object_find() to locate the object by FID. But it may be
blocked if related object is marked as dying (for some reason,
such as purged when umount).

To avoid such trouble, we make the "osp_update_request" to
reference related object(s) directly, then when needs to
invalidate, we can access the object(s) directly without
locating again.

Test-Parameters: alwaysuploadlogs mdsfilesystemtype=ldiskfs mdtfilesystemtype=ldiskfs ostfilesystemtype=ldiskfs mdscount=2 mdtcount=4 testlist=sanity-scrub,sanity-scrub,sanity-scrub
Signed-off-by: Fan Yong <fan.yong@intel.com>
Change-Id: I043182b349b38153cce4e20b2675556ead94c6c1
Reviewed-on: http://review.whamcloud.com/21330
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/osp/osp_dev.c
lustre/osp/osp_internal.h
lustre/osp/osp_md_object.c
lustre/osp/osp_object.c
lustre/osp/osp_trans.c