[LTP] [PATCH] tcindex01: fix compilation errors due to missing TCA_TCINDEX_ constants

Martin Doucha mdoucha@suse.cz
Tue Jan 16 13:38:29 CET 2024


Hi,
thanks for the fix. I agree that this doesn't need to go into LAPI 
headers since we probably won't add another test for tcindex.

Reviewed-by: Martin Doucha <mdoucha@suse.cz>

On 16. 01. 24 4:17, Li Wang wrote:
> The change addresses compilation errors encountered in the tcindex01.c
> test when compiled against kernel-6.7 and above.
> 
>    tcindex01.c:67:4: error: ‘TCA_TCINDEX_MASK’ undeclared here (not in a function);
>       did you mean ‘TCA_CODEL_MAX’?
>       {TCA_TCINDEX_MASK, &mask, sizeof(mask), NULL},
>        ^~~~~~~~~~~~~~~~
>        TCA_CODEL_MAX
>    tcindex01.c:68:4: error: ‘TCA_TCINDEX_SHIFT’ undeclared here (not in a function);
>       did you mean ‘TCA_FLOW_RSHIFT’?
>       {TCA_TCINDEX_SHIFT, &shift, sizeof(shift), NULL},
>        ^~~~~~~~~~~~~~~~~
>        TCA_FLOW_RSHIFT
>    CC testcases/cve/cve-2016-7117
>    CC utils/sctp/func_tests/test_getname_v6.o
>    tcindex01.c:69:4: error: ‘TCA_TCINDEX_CLASSID’ undeclared here (not in a function);
>       did you mean ‘TCA_FLOWER_CLASSID’?
>       {TCA_TCINDEX_CLASSID, &clsid, sizeof(clsid), NULL},
>        ^~~~~~~~~~~~~~~~~~~
>        TCA_FLOWER_CLASSID
> 
> The errors were due to the removal of certain TCA_TCINDEX_ constants
> from the kernel's user API (uapi), as indicated by the kernel commit.
> 
>    commit 82b2545ed9a (net/sched: Remove uapi support for tcindex classifier)
> 
> The reason why I didn't add this into LTP library is that the defines
> have been dropped we just need to satisfy this one case.
> ---
> 
> Notes:
>      We need to merge this patch before the new release.
> 
>   testcases/cve/tcindex01.c | 17 +++++++++++++++++
>   1 file changed, 17 insertions(+)
> 
> diff --git a/testcases/cve/tcindex01.c b/testcases/cve/tcindex01.c
> index b4f2bb01a..70e5639f1 100644
> --- a/testcases/cve/tcindex01.c
> +++ b/testcases/cve/tcindex01.c
> @@ -32,6 +32,23 @@
>   
>   #define DEVNAME "ltp_dummy1"
>   
> +#ifndef TCA_TCINDEX_MAX
> +enum {
> +       TCA_TCINDEX_UNSPEC,
> +       TCA_TCINDEX_HASH,
> +       TCA_TCINDEX_MASK,
> +       TCA_TCINDEX_SHIFT,
> +       TCA_TCINDEX_FALL_THROUGH,
> +       TCA_TCINDEX_CLASSID,
> +       TCA_TCINDEX_POLICE,
> +       TCA_TCINDEX_ACT,
> +       __TCA_TCINDEX_MAX
> +};
> +
> +#define TCA_TCINDEX_MAX     (__TCA_TCINDEX_MAX - 1)
> +#endif
> +
> +
>   static const uint32_t qd_handle = TC_H_MAKE(1 << 16, 0);
>   static const uint32_t clsid = TC_H_MAKE(1 << 16, 1);
>   static const uint32_t shift = 10;

-- 
Martin Doucha   mdoucha@suse.cz
SW Quality Engineer
SUSE LINUX, s.r.o.
CORSO IIa
Krizikova 148/34
186 00 Prague 8
Czech Republic



More information about the ltp mailing list