-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Running "lfs fid2path" command always returns NULL on clients. confirm command works properly when run on server.
Running on client with lustre 2.11 and 2.12.3 always return NULL, eg:
[client]$ mount -t lustre 10.0.0.12@o2ib:10.0.1.12@o2ib:/lustre/home /home lustre rw,localflock,lazystatfs 0 0 [client]$ lfs path2fid /home/gsmith/lustre/test_file [0x2400467ef:0x1da68:0x0] [client]$ lfs fid2path /home [0x2400467ef:0x1da68:0x0] /home//
Capturing the debug log from client while running command
client, eg:
000002:00000001:2.0:1593202672.215576:0:153435:0:(mdc_request.c:1964:mdc_iocontrol()) Process entered 00000002:00000010:2.0:1593202672.215577:0:153435:0:(mdc_request.c:1549:mdc_ioc_fid2path()) kmalloced 'key': 64 at ffff880b3f16a6c0. 00000002:00000080:2.0:1593202672.215579:0:153435:0:(mdc_request.c:1557:mdc_ioc_fid2path()) path get [0x2400467ef:0x1bb4d:0x0] from 18446744073709551615 #0 00000002:00000001:2.0:1593202672.215583:0:153435:0:(obd_class.h:501:obd_get_info()) Process entered 00000002:00000001:2.0:1593202672.215584:0:153435:0:(obd_class.h:488:exp_check_ops()) Process leaving (rc=0 : 0 : 0) 00000002:00000001:2.0:1593202672.215586:0:153435:0:(mdc_request.c:2085:mdc_get_info_rpc()) Process entered -- 00000100:00000001:4.0:1593202672.216681:0:153435:0:(client.c:2525:__ptlrpc_req_finished()) Process leaving (rc=1 : 1 : 1) 00000002:00000001:4.0:1593202672.216683:0:153435:0:(mdc_request.c:2124:mdc_get_info_rpc()) Process leaving (rc=56 : 56 : 38) 00000002:00000001:4.0:1593202672.216685:0:153435:0:(mdc_request.c:2349:mdc_get_info()) Process leaving (rc=56 : 56 : 38) 00000002:00000001:4.0:1593202672.216687:0:153435:0:(obd_class.h:515:obd_get_info()) Process leaving (rc=56 : 56 : 38) 00000002:00000001:4.0:1593202672.216688:0:153435:0:(mdc_request.c:1567:mdc_ioc_fid2path()) Process leaving via out (rc=56 : 56 : 0x38) 00000002:00000010:4.0:1593202672.216691:0:153435:0:(mdc_request.c:1581:mdc_ioc_fid2path()) kfreed 'key': 64 at ffff880b3f16a6c0. 00000002:00000001:4.0:1593202672.216693:0:153435:0:(mdc_request.c:1974:mdc_iocontrol()) Process leaving via out (rc=56 : 56 : 0x38) 00800000:00000001:4.0:1593202672.216695:0:153435:0:(obd_class.h:1240:obd_iocontrol()) Process leaving (rc=56 : 56 : 38) 00800000:00000001:4.0:1593202672.216697:0:153435:0:(lmv_obd.c:674:lmv_fid2path()) Process leaving via out_fid2path (rc=56 : 56 : 0x38) 00800000:00000001:4.0:1593202672.216700:0:153435:0:(lmv_obd.c:737:lmv_fid2path()) Process leaving (rc=56 : 56 : 38) 00800000:00000001:4.0:1593202672.216701:0:153435:0:(lmv_obd.c:1152:lmv_iocontrol()) Process leaving (rc=56 : 56 : 38) 00000080:00000001:4.0:1593202672.216703:0:153435:0:(obd_class.h:1240:obd_iocontrol()) Process leaving (rc=56 : 56 : 38) 00000080:00000001:4.0:1593202672.216705:0:153435:0:(file.c:2276:ll_fid2path()) Process leaving via gf_free (rc=56 : 56 : 0x38) 00000080:00000010:4.0:1593202672.216707:0:153435:0:(file.c:2282:ll_fid2path()) kfreed 'gfout': 4128 at ffff88100c452000. 00000080:00000001:4.0:1593202672.216709:0:153435:0:(file.c:2283:ll_fid2path()) Process leaving (rc=56 : 56 : 38) 00000080:00000001:4.0:1593202672.216711:0:153435:0:(dir.c:1585:ll_dir_ioctl()) Process leaving (rc=56 : 56 : 38)
Always return 0 if no error is found in mdt_path_current(), otherwise the non-zero value will be treated as an error and fid2path will return NULL.