examples/ioat: fix failure check for ioat dequeue
Checks
Commit Message
The nb_dq return value from the ioat dequeue is negative in failure
cases, however the variable was an unsigned int, causing the condition
where nb_dq <= 0 to never be true. This is now cast to a signed int,
which will successfully reflect the -1 value to be used in this
conditional check.
Coverity issue: 350342
Coverity issue: 350349
Fixes: 92c981637ffc ("examples/ioat: handle failure case for ioat dequeue")
Cc: bruce.richardson@intel.com
Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@intel.com>
---
examples/ioat/ioatfwd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On Tue, Feb 04, 2020 at 04:00:06PM +0000, Ciara Power wrote:
> The nb_dq return value from the ioat dequeue is negative in failure
> cases, however the variable was an unsigned int, causing the condition
> where nb_dq <= 0 to never be true. This is now cast to a signed int,
> which will successfully reflect the -1 value to be used in this
> conditional check.
>
> Coverity issue: 350342
> Coverity issue: 350349
> Fixes: 92c981637ffc ("examples/ioat: handle failure case for ioat dequeue")
> Cc: bruce.richardson@intel.com
> Cc: stable@dpdk.org
>
> Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
On Tue, Feb 4, 2020 at 5:10 PM Ciara Power <ciara.power@intel.com> wrote:
>
> The nb_dq return value from the ioat dequeue is negative in failure
> cases, however the variable was an unsigned int, causing the condition
> where nb_dq <= 0 to never be true. This is now cast to a signed int,
> which will successfully reflect the -1 value to be used in this
> conditional check.
>
> Coverity issue: 350342
> Coverity issue: 350349
> Fixes: 92c981637ffc ("examples/ioat: handle failure case for ioat dequeue")
> Cc: stable@dpdk.org
>
> Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Applied, thanks.
--
David Marchand
@@ -460,7 +460,7 @@ ioat_tx_port(struct rxtx_port_config *tx_config)
MAX_PKT_BURST, NULL);
}
- if (nb_dq <= 0)
+ if ((int32_t) nb_dq <= 0)
return;
if (copy_mode == COPY_MODE_IOAT_NUM)