[dpdk-dev] [PATCH] net/sfc: add missing Rx descriptor status callback
Ferruh Yigit
ferruh.yigit at intel.com
Wed May 30 11:42:15 CEST 2018
On 5/30/2018 7:44 AM, Andrew Rybchenko wrote:
> Thomas, Ferruh,
>
> I've found out that the following patch is deferred in patchwork:
> https://dpdk.org/dev/patchwork/patch/40455/
>
> It is critical under certain conditions since fix application crash.
> The patch is net/sfc local and just few lines - absolutely harmless.
> The only potential DPDK-wide effect is build, but the patch is really
> trivial and it is hard to imagine how it could affect the build.
> I'd like it to be included in 18.05, if possible.
>
> I understand that 18.05 is really very-very late already and it
> could be too late even for such patch. Just would like to
> double-check it.
Hi Andrew,
I did mark it as deferred and I overlooked that this fixes a crash.
Agree that scope is local and only effect should be build, I confirmed the build
but to be sure I suggest get the patch and trigger an Intel daily build, and
include the patch into release if only that build also returns success.
>
> Thanks,
> Andrew.
>
> On 05/28/2018 09:50 AM, Andrew Rybchenko wrote:
>> Rx descriptor status callback was lost and request of the Rx
>> descriptor status crashes application if equal stride super-buffer
>> Rx mode is used.
>>
>> Fixes: 390f9b8d82c9 ("net/sfc: support equal stride super-buffer Rx mode")
>>
>> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
>> ---
>> drivers/net/sfc/sfc_ef10_essb_rx.c | 9 +++++++++
>> 1 file changed, 9 insertions(+)
>>
>> diff --git a/drivers/net/sfc/sfc_ef10_essb_rx.c b/drivers/net/sfc/sfc_ef10_essb_rx.c
>> index 289b61e52..5f5af602c 100644
>> --- a/drivers/net/sfc/sfc_ef10_essb_rx.c
>> +++ b/drivers/net/sfc/sfc_ef10_essb_rx.c
>> @@ -413,6 +413,14 @@ sfc_ef10_essb_rx_qdesc_npending(__rte_unused struct sfc_dp_rxq *dp_rxq)
>> return -ENOTSUP;
>> }
>>
>> +static sfc_dp_rx_qdesc_status_t sfc_ef10_essb_rx_qdesc_status;
>> +static int
>> +sfc_ef10_essb_rx_qdesc_status(__rte_unused struct sfc_dp_rxq *dp_rxq,
>> + __rte_unused uint16_t offset)
>> +{
>> + return -ENOTSUP;
>> +}
>> +
>> static sfc_dp_rx_get_dev_info_t sfc_ef10_essb_rx_get_dev_info;
>> static void
>> sfc_ef10_essb_rx_get_dev_info(struct rte_eth_dev_info *dev_info)
>> @@ -687,5 +695,6 @@ struct sfc_dp_rx sfc_ef10_essb_rx = {
>> .qpurge = sfc_ef10_essb_rx_qpurge,
>> .supported_ptypes_get = sfc_ef10_supported_ptypes_get,
>> .qdesc_npending = sfc_ef10_essb_rx_qdesc_npending,
>> + .qdesc_status = sfc_ef10_essb_rx_qdesc_status,
>> .pkt_burst = sfc_ef10_essb_recv_pkts,
>> };
>
More information about the dev
mailing list