> -----Original Message-----
> From: Min Hu (Connor) <humi...@huawei.com>

<snip> 

> +             ret = rte_eth_dev_get_reg_info(i, &reg_info);
> +             if (ret) {
> +                     printf("Error getting device reg info: %d\n", ret);
> +                     continue;
> +             }
> +
> +             buf_size = reg_info.length * reg_info.width;


If it is to get the regs length, you can directly call  
"rte_ethtool_get_regs_len(uint16_t port_id)" API , instead of  again writing 
the above logic.
And use the returned length in below malloc.


> +             fp_regs = fopen(file_name, "wb");
> +             if (fp_regs == NULL) {
> +                     printf("Error during opening '%s' for writing\n",
> +                                     file_name);

Better to print error string from fopen() errno on failure , to indicate the 
exact error.

> +             } else {
> +                     if ((int)fwrite(buf_data, 1, buf_size, fp_regs) !=

Better have "((int)fwrite(buf_data, 1, buf_size, fp_regs)" In separate line and 
use the returned value inside if check.

> +                                     buf_size)
> +                             printf("Error during writing %s\n",
> +                                             file_prefix);

Better to print error string from fwrite errno on failure , to indicate the 
exact error.

> +                     else
> +                             printf("dump device (%s) regs successfully, "

Reframe the sente to "Device regs dumped successfully"

Reply via email to