Whamcloud - gitweb
LU-9857 lmv: stripe dir page may be released mistakenly 48/28548/2
authorLai Siyao <lai.siyao@intel.com>
Tue, 15 Aug 2017 03:13:30 +0000 (11:13 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 28 Aug 2017 06:27:13 +0000 (06:27 +0000)
commitbeadbad429aeffa66898bd62cc99e76290644ca8
treea2030d474541626d0168b66f3c9225c58dd3e7c3
parenta9d3c9ba5360f46b2eaa5732a98c0ee836a927df
LU-9857 lmv: stripe dir page may be released mistakenly

stripe_dirent_next() may put_stripe_dirent() while its dirent
is still in use, e.g. lmv_dirent_next() popped stripe last
dirent, when it can't point sd_ent to next, but it shouldn't
release stripe dir page.

stripe_dirent->sd_ent should be set NULL when its dir page
is released, which can avoid misuse.

Signed-off-by: Lai Siyao <lai.siyao@intel.com>
Change-Id: I6d0e119d598e468d6a080b2072514a6bf1d4f786
Reviewed-on: https://review.whamcloud.com/28548
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/lmv/lmv_obd.c