Bug 1098 - net/iavf: check_rx_vec_allow() result is ignored
Summary: net/iavf: check_rx_vec_allow() result is ignored
Status: CONFIRMED
Alias: None
Product: DPDK
Classification: Unclassified
Component: ethdev (show other bugs)
Version: 22.11
Hardware: All All
: Normal normal
Target Milestone: ---
Assignee: beilei.xing
URL:
Depends on:
Blocks:
 
Reported: 2022-10-11 15:25 CEST by Maxime Coquelin
Modified: 2023-11-07 10:45 CET (History)
4 users (show)



Attachments

Description Maxime Coquelin 2022-10-11 15:25:45 CEST
In IAVF driver, check_rx_vec_allow() ensure some conditions are met to authorize vector path usage for a given Rxq.

Its return is assigned to Rxq's (struct iavf_adapter *)->rx_vec_allowed in iavf_dev_rx_queue_setup(), but (struct iavf_adapter *)->rx_vec_allowed is never used afterwards.

Either conditions checked in check_rx_vec_allow() are useless and so it should be removed, or DP selection should take .rx_vec_allowed value into account.
Comment 1 David Marchand 2023-10-16 09:03:21 CEST
I am not sure this issue is still relevant.

This bug did not get attention from Intel maintainers, so I am assigning this bz explicitly in the hope it will get some eyes.
Thanks.
Comment 2 dengkaiwen 2023-11-01 07:27:56 CET
Hi All,

In the latest code, (struct iavf_adapter *)->rx_vec_allowed is used after being assigned.
commit id: d492ea071056a8a0de2991c42daee9d9acca8e35

If there are no further questions, I think we can close this ticket.

Thanks
Kaiwen Deng
Comment 3 David Marchand 2023-11-07 10:22:39 CET
It seems that the bug has been fixed, though the mentionned commit was not marked for backport. Cc Bruce for his opinion.
Comment 4 Bruce Richardson 2023-11-07 10:45:14 CET
Not sure that that is a proper fix. While the value is now being used in iavf_dev_rx_queue_setup(), there are other calls for setting up vector_rx in that driver, and those do not check rx_vec_allowed. For example, in iavf_set_rx_function.

Note You need to log in before you can comment on or make changes to this bug.