[dpdk-dev] [PATCH v1] ethdev: fix flow API item/action name conversion
Adrien Mazarguil
adrien.mazarguil at 6wind.com
Tue Oct 9 15:54:06 CEST 2018
Hi,
Jumping in although I cannot spend much time on rte_flow at the moment,
please see below.
On Tue, Oct 09, 2018 at 02:21:23PM +0100, Ferruh Yigit wrote:
> On 10/7/2018 5:31 PM, Ori Kam wrote:
> >
> >
> >> -----Original Message-----
> >> From: dev <dev-bounces at dpdk.org> On Behalf Of Mordechay Haimovsky
> >> Sent: Sunday, October 7, 2018 7:22 PM
> >> To: Adrien Mazarguil <adrien.mazarguil at 6wind.com>; Shahaf Shuler
> >> <shahafs at mellanox.com>; orika at contextream.com
> >> Cc: dev at dpdk.org; Mordechay Haimovsky <motih at mellanox.com>
> >> Subject: [dpdk-dev] [PATCH v1] ethdev: fix flow API item/action name
> >> conversion
> >>
> >> This patch fixes a typecast bug found in rte_flow_conv_name routine
> >> used in rte_flow item/action name conversion.
> >>
> >> Fixes: 0c2640cbfa7a ("ethdev: add flow API item/action name conversion")
> >>
> >> Signed-off-by: Moti Haimovsky <motih at mellanox.com>
> <...>
> > Acked-by: Ori Kam <orika at mellanox.com>
>
> Series applied to dpdk-next-net/master, thanks.
>
> (please confirm latest next-net head)
Please revert, it breaks something that didn't need to be fixed. I don't
think this patch was validated properly.
As documented in RTE_FLOW_CONV_OP_ITEM_NAME, RTE_FLOW_CONV_OP_ACTION_NAME,
RTE_FLOW_CONV_OP_ITEM_NAME_PTR and RTE_FLOW_CONV_OP_ACTION_NAME_PTR:
@p src type:
@code (const void *)enum rte_flow_item_type @endcode
With the following reminder in rte_flow_conv_name()'s Doxygen documentation:
@param[in] src
Depending on @p is_action, source pattern item or action type cast as a
pointer.
Hence the original conversion results in the expected behavior while this
one is almost guaranteed to trigger a segfault:
- unsigned int type = (uintptr_t)src;
+ unsigned int type = *(const unsigned int *)src;
This can be validated with testpmd. See what happens with "flow list".
--
Adrien Mazarguil
6WIND
More information about the dev
mailing list