Whamcloud - gitweb
LU-5282 mdc: fix panic at mdc_free_open() 95/17495/13
authorAlexander Boyko <alexander.boyko@seagate.com>
Thu, 3 Dec 2015 06:57:36 +0000 (09:57 +0300)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 5 Jul 2016 23:48:14 +0000 (23:48 +0000)
commit62713a8530349a75b7202c9bfc6be121409a0203
tree5ea39154ca28aeda23655b2e0d2d2e378a92f81f
parent743f742874bfdf845a2f64c3d65081ea23740138
LU-5282 mdc: fix panic at mdc_free_open()

Assertion was happened for open request when rq_replay is set
to 1.
    ASSERTION(mod->mod_open_req->rq_replay == 0)
But this situation is not fatal for client, and could happened
when mdc_close() failed.
The fix allow to free such requests. If mdc_close fail, MDS doesn`t
receive close request from client. And in a worst case client would
be evicted.

The test recreates issue when mdc_close failed and
client asserts:
   ASSERTION( mod->mod_open_req->rq_replay == 0 ) failed

Signed-off-by: Alexander Boyko <alexander.boyko@seagate.com>
Seagate-bug-id: MRP-3156
Change-Id: I5f98901f633355849fc107149eadc9cf171819af
Reviewed-on: http://review.whamcloud.com/17495
Reviewed-by: Alex Zhuravlev <alexey.zhuravlev@intel.com>
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/include/obd_support.h
lustre/mdc/mdc_request.c
lustre/tests/sanity.sh