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

Jamal Hadi Salim jhs@mojatatu.com
Wed Jan 17 16:52:38 CET 2024


On Mon, Jan 15, 2024 at 10:17 PM Li Wang <liwang@redhat.com> 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(+)
>


Pardon my ignorance - what is this tree? I dont recall seeing this
anywhere. If you pull uapi headers from the kernel on your tree you
can catch these deletions sooner..

cheers,
jamal

> 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;
> --
> 2.40.1
>


More information about the ltp mailing list