Thanks for your reply. The patch you submitted is better. Thanks for your 
improvement.

My legal name is “Nick Zhang”. So,

Signed-off-by: Nick Zhang <n...@opencloud.tech>


Thanks.
Nick

> On Jan 6, 2017, at 12:26 AM, Stephen Hemminger <step...@networkplumber.org> 
> wrote:
> 
> It is good to see more checking for valid values.  I suspect that other 
> systems
> may have the same problem.  My preference would to have the code comment 
> generic
> and to have the precise details of about where this was observed in the commit
> log. 
> 
> The following would do same thing but be simpler:
> 
> diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c 
> b/lib/librte_eal/linuxapp/eal/eal_pci.c
> index 43501342..9f09cd98 100644
> --- a/lib/librte_eal/linuxapp/eal/eal_pci.c
> +++ b/lib/librte_eal/linuxapp/eal/eal_pci.c
> @@ -306,19 +306,12 @@ pci_scan_one(const char *dirname, uint16_t domain, 
> uint8_t bus,
>                       dev->max_vfs = (uint16_t)tmp;
>       }
> 
> -     /* get numa node */
> +     /* get numa node, default to 0 if not present */
>       snprintf(filename, sizeof(filename), "%s/numa_node",
>                dirname);
> -     if (access(filename, R_OK) != 0) {
> -             /* if no NUMA support, set default to 0 */
> -             dev->device.numa_node = 0;
> -     } else {
> -             if (eal_parse_sysfs_value(filename, &tmp) < 0) {
> -                     free(dev);
> -                     return -1;
> -             }
> +     if (eal_parse_sysfs_value(filename, &tmp) == 0 &&
> +         tmp < RTE_MAX_NUMA_NODES)
>               dev->device.numa_node = tmp;
> -     }
> 
>       /* parse resources */
>       snprintf(filename, sizeof(filename), "%s/resource", dirname);

Reply via email to