Whamcloud - gitweb
LU-7896: do not call lu_site_purge() for single object exceed 82/19082/9
authorAlex Zhuravlev <bzzz@whamcloud.com>
Fri, 11 Mar 2016 15:26:47 +0000 (18:26 +0300)
committerOleg Drokin <oleg.drokin@intel.com>
Wed, 22 Jun 2016 02:55:08 +0000 (02:55 +0000)
commitf3d42a7000884149d3be408b9d5f170a355dd9e6
tree135b4ffef6d403697eab6f55c7d6159b1e55086d
parenta7d8aa2c3bac1ac0662b40ff018cc588e946cee4
LU-7896: do not call lu_site_purge() for single object exceed

first of all, this is expensive procedure including a global
mutex and per-bucket spinlocks. also, all the threads observed
exceed will be calling lu_site_purge() and essentially serialized
on that. instead we can let other threads to skip the whole
procedure.

Change-Id: Ib5d213c70b5a2f259153ab24d7c3f5a3e97239df
Signed-off-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Reviewed-on: http://review.whamcloud.com/19082
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/include/lu_object.h
lustre/obdclass/lu_object.c