[dpdk-stable] [PATCH v2] doc/compress: clarify error handling on data-plane
Shally Verma
shallyv at marvell.com
Tue May 14 17:37:24 CEST 2019
HI Fiona
> -----Original Message-----
> From: Trahe, Fiona <fiona.trahe at intel.com>
> Sent: Tuesday, May 14, 2019 9:00 PM
> To: Shally Verma <shallyv at marvell.com>; dev at dpdk.org
> Cc: akhil.goyal at nxp.com; Ashish Gupta <ashishg at marvell.com>; Daly, Lee
> <lee.daly at intel.com>; Sunila Sahu <ssahu at marvell.com>; stable at dpdk.org;
> Trahe, Fiona <fiona.trahe at intel.com>
> Subject: RE: [PATCH v2] doc/compress: clarify error handling on data-plane
>
> Hi Shally,
>
> Although we're close to agreement on this, I'm reconsidering.
> I think the difficulty we've had finding the best wording highlights the confusion
> an app developer will have in figuring out how to handle errors on enqueue.
> So I'm proposing to drop this - which was intended to allow some optimisation -
> and instead propose a more robust approach, i.e. add this to the doc:
>
> Operation status after enqueue / dequeue
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Some of the above values may arise in the op after an
> ``rte_compressdev_enqueue_burst()``. If number ops enqueued < number
> ops requested then
> the app should check the op.status of nb_enqd+1. If status is
> RTE_COMP_OP_STATUS_NOT_PROCESSED, it likely indicates a full-queue
> case for a hardware device
> and a retry after dequeuing some ops is likely to be successful. If the op holds
> any other status, e.g.
> RTE_COMP_OP_STATUS_INVALID_ARGS, a retry with the same op is unlikely
> to be successful.
>
>
> I know this adds an extra fork, so is less optimal, but once there's even a small
> chance that an error may occur on the enqueue, a robust application should
> probably check anyway.
> What do you think?
> If you agree, I'll send the doc update and a perf tool update to add the status
> check on the enqueue.
[Shally] Yup This looks absolutely perfect to me. So it is acked by me.
>
> Btw - this doesn't stop PMDs from minimising those cases, just means they're
> not bound by the API to do it.
>
> Fiona
More information about the stable
mailing list