[LU-7524] sanity-hsm_404 test failed: >LustreError: 7253:0:(client.c:771:__ptlrpc_request_alloc()) ASSERTION( (unsigned long)imp > 0x1000 ) failed: (null) Created: 07/Dec/15 Updated: 19/Sep/16 Resolved: 14/Mar/16 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.8.0 |
| Fix Version/s: | Lustre 2.9.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | parinay v kondekar (Inactive) | Assignee: | WC Triage |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | patch | ||
| Environment: |
Configuration : 4 node dne_singlemds . 1 MDS / 1 OSS / 2 Clients |
||
| Attachments: |
|
||||
| Issue Links: |
|
||||
| Severity: | 3 | ||||
| Rank (Obsolete): | 9223372036854775807 | ||||
| Description |
|
| Comments |
| Comment by Gerrit Updater [ 21/Dec/15 ] |
|
Noopur Maheshwari (noopur.maheshwari@seagate.com) uploaded a new patch: http://review.whamcloud.com/17683 |
| Comment by Noopur Maheshwari (Inactive) [ 18/Jan/16 ] |
|
With 2 MDTs (MDT0000 AND MDT0001), test_404/sanity-hsm deactivates the last MDT(MDT0001) in the list of export targets(&target->ft_chain). target = list_entry(target->ft_chain.next, struct lu_fld_target,ft_chain); &(target->ft_chain) is the last entry in the list, and the next of the last entry(target->ft_chain.next) is the head of the list. The fix is: While fld_client_lookup retries for another target,if the next entry in the export target list is the head of the list(&fld->lcf_targets), move to the next entry after |
| Comment by Noopur Maheshwari (Inactive) [ 29/Jan/16 ] |
|
This is regarding the "lu_env *env" code in lmv_fld_lookup() and fld_client_lookup() The function lmv_fld_lookup() calls fld_client_lookup() by passing NULL for lu_env. fld_client_lookup(&lmv->lmv_fld, fid_seq(fid), mds,
LU_SEQ_RANGE_MDT, NULL);
And in fld_client_lookup(), it checks for env != NULL which will always be false. #ifdef HAVE_SERVER_SUPPORT if (target->ft_srv != NULL) { LASSERT(env != NULL); rc = fld_server_lookup(env, target->ft_srv, seq, &res); } #endif /* HAVE_SERVER_SUPPORT */ Is the env initialisation missed here? In the old code (please see d2d56f38da01001c92a09afc6b52b5acbd9bc13c), fld_client_lookup was called from lmv_fld_lookup and from cmm_fld_lookup. Is it required to change the prototype of fld_client_lookup - delete "lu_env *env" and clean all code connected with "env" in fld_client_lookup? Our use case: The server build is installed on lustre client. We need to have possibility to start server lustre on clients. Hence, the HAVE_SERVER_SUPPORT part of the code needs to be executed on client. |
| Comment by Gerrit Updater [ 14/Mar/16 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/17683/ |