mstresourcedump Utility

The mstresourcedump tool extracts and prints data segments generated by the firmware. It is supported in 5th generation NIC devices. The dump output is used by NVIDIA for debug and troubleshooting.

Warning

Scapy and Pyverbs are no longer resourcedump dependencies. The same functionality has been changed with a C code that is based on the RDMA core included in OFED or Upstream.

Warning

mstresourcedump can be used only if Python 3.x is installed. Using lower versions will result in the tool's failure.

Warning

It is important for the user to generate a bin file for debugging and troubleshooting cases when needed by NVIDIA support team.

Warning

If the firmware version used is not supported, the tool will generate the following error message:
“Error: Failed to fetch query data with exception: Failed to send Register RESOURCE DUMP with rc: 515. Exiting...”.

Copy
Copied!
            

mstresourcedump [-h] [-v] {dump,query}

where

dump

Dump command

query

Query command

-h, --help

Show help message and exit

-v, --version

Shows tool version and exit

mstresourcedump Query Usage

Copy
Copied!
            

mstresourcedump query [-h] [--virtual-hca-id VIRTUAL_HCA_ID] --device DEVICE

where

-h, --help

Show help message and exit

-v, --virtual-hca-id

The virtual HCA (host channel adapter, NIC) ID

-d, --device

The device name

-m, --mem

Perform the dump through memory (OFED with rdma-core dependency).

Accepts: [ibv device (for example "mlx5_4")]

An example of how to run the query command:

Copy
Copied!
            

# mstresourcedump query --device 04:00.0 __________________________________________________________________   Segment Type - 0x1300 (FULL_EQC) Dump Params Applicability Special Values -------------------------------- -------------- -------------- index1 (EQN) Mandatory N/A num-of-obj1 N/A N/A index2 (N/A) N/A N/A num-of-obj2 N/A N/A __________________________________________________________________ __________________________________________________________________   Segment Type - 0x1000 (FULL_QPC) Dump Params Applicability Special Values -------------------------------- -------------- -------------- index1 (QPN) Mandatory N/A num-of-obj1 N/A N/A index2 (N/A) N/A N/A num-of-obj2 N/A N/A … … …


mstresourcedump Dump Usage

Copy
Copied!
            

mstresourcedump dump [-h] -d DEVICE -s SEGMENT [-v VIRTUAL_HCA_ID] [-i1 INDEX1] [-i2 INDEX2] [-n1 NUM_OF_OBJ1] [-n2 NUM_OF_OBJ2] [-de DEPTH] [-b BIN] [-m]

where

-h, --help

Show help message and exit

-v, --virtual-hca-id

The virtual HCA (host channel adapter, NIC) ID

-i1, --index1

The first context index to dump (if supported for this segment)

-i2, --index2

The second context index to dump (if supported for this segment)

-n1, --num-of-obj1

The number of objects to be dumped (if supported for this segment). accepts: ["all", "active", number, depends on the capabilities]

-n2, --num-of-obj2

The number of objects to be dumped (if supported for this segment). accepts: ["all", "active", number, depends on the capabilities]

-de, --depth

The depth of walking through reference segments. 0 stands for flat, 1 allows crawling of a single layer down the struct, etc. "inf" for all

-b, --bin

The output to a binary file that replaces the default print in hexadecimal, a readable format

-d, --device

The device name

-s, --segment

The segment to dump

-m, --mem

Perform the dump through memory (OFED with rdma-core dependency).

Accepts: [ibv device (for example "mlx5_4")]


Examples of how to:

  • run the dump command:

    Copy
    Copied!
                

    # mstresourcedump dump --device 04:00.0 --segment 0x1200 --index1 0x404 --depth 0 Found 10 segments: ------------------------------------------- Segment Type: 0xfffe Segment Size: 16 Bytes Segment Data: 0x0004FFFE 0x00000000 0x00000000 0x101A0111 ------------------------------------------- Segment Type: 0xfffa Segment Size: 20 Bytes Segment Data: 0x0005FFFA 0x12000000 0x00000404 0x00000000 0x00000000 -------------------------------------------

  • run the Dump command and save it in bin file:

    Copy
    Copied!
                

    # mstresourcedump dump --device 04:00.0 --segment 0x1200 --index1 0x404 --depth 0 –bin segment_1200.bin write to file: segment_1200.bin

© Copyright 2023, NVIDIA. Last updated on Feb 5, 2024.