[PATCH] kni: fix compile error
Andrew Rybchenko
andrew.rybchenko at oktetlabs.ru
Wed Jun 1 10:47:57 CEST 2022
On 6/1/22 04:52, Min Hu (Connor) wrote:
> Hi, Andrew ,
>
> 在 2022/6/1 0:42, Andrew Rybchenko 写道:
>> On 5/21/22 10:06, Min Hu (Connor) wrote:
>>> When kernel version change into 5.18 from 5.17, 'netif_rx_ni' is
>>> discard.
>>> It is replaced by 'netif_rx' and this API is also supported in the
>>> version below 5.18.
>>>
>>> This patch fixed it.
>>>
>>> Fixes: d89a58dfe90b ("kni: support chained mbufs")
>>> Cc: stable at dpdk.org
>>>
>>> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
>>> ---
>>> kernel/linux/kni/kni_net.c | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/kernel/linux/kni/kni_net.c b/kernel/linux/kni/kni_net.c
>>> index 29e5b9e21f..e19f03285e 100644
>>> --- a/kernel/linux/kni/kni_net.c
>>> +++ b/kernel/linux/kni/kni_net.c
>>> @@ -441,7 +441,7 @@ kni_net_rx_normal(struct kni_dev *kni)
>>> skb->ip_summed = CHECKSUM_UNNECESSARY;
>>> /* Call netif interface */
>>> - netif_rx_ni(skb);
>>> + netif_rx(skb);
>>
>> I think the approach in [1] is the right one. Any comments?
>>
>> [1]
>> https://patches.dpdk.org/project/dpdk/patch/20220525102641.20982-1-jslaby@suse.cz/
>>
>>
>>> /* Update statistics */
>>> dev->stats.rx_bytes += len;
>>> @@ -779,7 +779,7 @@ kni_net_set_mac(struct net_device *netdev, void *p)
>>> return -EADDRNOTAVAIL;
>>> memcpy(req.mac_addr, addr->sa_data, netdev->addr_len);
>>> - memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);
>>> + memcpy((void *)(netdev->dev_addr), addr->sa_data,
>>> netdev->addr_len);
> When compile, it will report a warning, because it claims that the
> parameter types must be the same.
> void *memcpy(void *destin, void *source, unsigned n);
>
> so this is what I am doing.
I think it is a separate story vs netif_rx_ni(). So, it should not be in
the same patch. IMHO, it is closer to [1]
[1]
https://patches.dpdk.org/project/dpdk/patch/20220601015925.35304-1-humin29@huawei.com/
Am I missing something?
>>
>> I don't understand why the change is needed and the patch description
>> does not shed any light on it.
>>
>>> ret = kni_net_process_request(netdev, &req);
>>
>> .
More information about the dev
mailing list