[dpdk-dev] [PATCH] igb_uio: kernel version check for using kstrtoul or strict_strtoul

Qiu, Michael michael.qiu at intel.com
Wed Dec 10 04:37:41 CET 2014


On 12/10/2014 11:02 AM, Zhang, Helin wrote:
> Hi Jincheng
>
> Did you attach anything? I can see the text only.
> Could you forward your patch mail to me directly? Thanks a lot!

Hi Helin,

I indeed ever saw one patch that was similar this one :) but not sure if
it is post by Jincheng.

You can go through patchwork to have a look.

Thanks,
Michael
> Regards,
> Helin
>
>> -----Original Message-----
>> From: Jincheng Miao [mailto:jmiao at redhat.com]
>> Sent: Wednesday, December 10, 2014 10:55 AM
>> To: Zhang, Helin; dev at dpdk.org
>> Subject: Re: [dpdk-dev] [PATCH] igb_uio: kernel version check for using kstrtoul
>> or strict_strtoul
>>
>> Here is my patch for it, and it also resolves issue of pci_num_vf() definition.
>>
>> And I will send V3 for a while.
>>
>>
>> On 12/10/2014 10:38 AM, Helin Zhang wrote:
>>> strict_strtoul() was just a redefinition of kstrtoul() for a long
>>> time. From kernel version of 3.18, strict_strtoul() will not be
>>> defined at all. A compile time kernel version check is needed to
>>> decide which function or macro can be used for a specific version of
>>> kernel.
>>>
>>> Signed-off-by: Helin Zhang <helin.zhang at intel.com>
>>> ---
>>>   lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 4 ++++
>>>   1 file changed, 4 insertions(+)
>>>
>>> diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
>>> b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
>>> index d1ca26e..2fcc5f4 100644
>>> --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
>>> +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
>>> @@ -83,7 +83,11 @@ store_max_vfs(struct device *dev, struct
>> device_attribute *attr,
>>>   	unsigned long max_vfs;
>>>   	struct pci_dev *pdev = container_of(dev, struct pci_dev, dev);
>>>
>>> +#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
>>>   	if (0 != strict_strtoul(buf, 0, &max_vfs))
>>> +#else
>>> +	if (0 != kstrtoul(buf, 0, &max_vfs)) #endif
>>>   		return -EINVAL;
>>>
>>>   	if (0 == max_vfs)
>



More information about the dev mailing list