[dpdk-dev] net/tap: fix icc build
Checks
Commit Message
build error:
.../dpdk/drivers/net/tap/rte_eth_tap.c(598):
error #279: controlling expression is constant
RTE_ASSERT(!"unsupported request type: must not happen");
Although RTE_ASSERT helps debugging this issue when assert enabled,
constant expression in assert means this path can be taken during
runtime and there is no protection against it when assert is disabled.
Adding error log and error return back, replacing RTE_ASSERT.
Fixes: 7748a4b44196 ("net/tap: add debug messages")
Cc: stable@dpdk.org
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
---
drivers/net/tap/rte_eth_tap.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Comments
> -----Original Message-----
> From: stable [mailto:stable-bounces@dpdk.org] On Behalf Of Ferruh Yigit
> Sent: Monday, March 12, 2018 7:32 PM
> To: Pascal Mazon <pascal.mazon@6wind.com>
> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; stable@dpdk.org
> Subject: [dpdk-stable] [PATCH] net/tap: fix icc build
>
> build error:
> .../dpdk/drivers/net/tap/rte_eth_tap.c(598):
> error #279: controlling expression is constant
> RTE_ASSERT(!"unsupported request type: must not happen");
>
> Although RTE_ASSERT helps debugging this issue when assert enabled, constant
> expression in assert means this path can be taken during runtime and there is no
> protection against it when assert is disabled.
>
> Adding error log and error return back, replacing RTE_ASSERT.
>
> Fixes: 7748a4b44196 ("net/tap: add debug messages")
> Cc: stable@dpdk.org
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
On 4/24/2018 2:21 PM, De Lara Guarch, Pablo wrote:
>
>
>> -----Original Message-----
>> From: stable [mailto:stable-bounces@dpdk.org] On Behalf Of Ferruh Yigit
>> Sent: Monday, March 12, 2018 7:32 PM
>> To: Pascal Mazon <pascal.mazon@6wind.com>
>> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; stable@dpdk.org
>> Subject: [dpdk-stable] [PATCH] net/tap: fix icc build
>>
>> build error:
>> .../dpdk/drivers/net/tap/rte_eth_tap.c(598):
>> error #279: controlling expression is constant
>> RTE_ASSERT(!"unsupported request type: must not happen");
>>
>> Although RTE_ASSERT helps debugging this issue when assert enabled, constant
>> expression in assert means this path can be taken during runtime and there is no
>> protection against it when assert is disabled.
>>
>> Adding error log and error return back, replacing RTE_ASSERT.
>>
>> Fixes: 7748a4b44196 ("net/tap: add debug messages")
>> Cc: stable@dpdk.org
>>
>> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
>
> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Applied to dpdk-next-net/master, thanks.
@@ -593,7 +593,9 @@ tap_ioctl(struct pmd_internals *pmd, unsigned long request,
case SIOCSIFMTU:
break;
default:
- RTE_ASSERT(!"unsupported request type: must not happen");
+ RTE_LOG(WARNING, PMD, "%s: ioctl() called with wrong arg\n",
+ pmd->name);
+ return -EINVAL;
}
if (ioctl(pmd->ioctl_sock, request, ifr) < 0)
goto error;