Details
-
Bug
-
Resolution: Fixed
-
Minor
-
Lustre 2.6.0
-
3
-
14743
Description
In ll_close_inode_openhandle() if mdc_close() is not called or if it fails to clear mod->mod_open_req->rq_replay then we have the following LBUG:
[ 2759.567725] LustreError: 23179:0:(mdc_request.c:791:mdc_free_open()) ASSERTION( mod->m\ od_open_req->rq_replay == 0 ) failed: [ 2759.568559] LustreError: 23203:0:(mdc_request.c:791:mdc_free_open()) ASSERTION( mod->m\ od_open_req->rq_replay == 0 ) failed: [ 2759.568563] LustreError: 23203:0:(mdc_request.c:791:mdc_free_open()) LBUG [ 2759.568564] Pid: 23203, comm: ls [ 2759.568566] [ 2759.568566] Call Trace: [ 2759.568584] [<ffffffffa0ef18c5>] libcfs_debug_dumpstack+0x55/0x80 [libcfs] [ 2759.568594] [<ffffffffa0ef1ec7>] lbug_with_loc+0x47/0xb0 [libcfs] [ 2759.568601] [<ffffffffa055ce60>] mdc_clear_open_replay_data+0x0/0x240 [mdc] [ 2759.568607] [<ffffffffa055ceb8>] mdc_clear_open_replay_data+0x58/0x240 [mdc] [ 2759.568630] [<ffffffffa0523fce>] lmv_clear_open_replay_data+0x20e/0x6f0 [lmv] [ 2759.568655] [<ffffffffa0b13375>] ll_close_inode_openhandle+0x485/0xfe0 [lustre] [ 2759.568670] [<ffffffffa0b1463f>] ll_md_real_close+0x1af/0x220 [lustre] [ 2759.568685] [<ffffffffa0b14d15>] ll_file_release+0x665/0xb90 [lustre] [ 2759.568698] [<ffffffffa0afbaab>] ll_dir_release+0xdb/0xf0 [lustre] [ 2759.568703] [<ffffffff811a4318>] __fput+0x108/0x230 [ 2759.568706] [<ffffffff811a4465>] fput+0x25/0x30 [ 2759.568708] [<ffffffff8119f64d>] filp_close+0x5d/0x90
This easiest way to see it is to inject a failure to allocate op_data in ll_close_inode_openhandle(). But early returns from lmv_close() or mdc_close() will likely trigger the same assertion.
Attachments
Issue Links
- mentioned in
-
Page Loading...