[LTP] [PATCH] tcindex01: Pass if the tcindex module is blacklisted
Petr Vorel
pvorel@suse.cz
Wed May 15 12:15:11 CEST 2024
Hi Martin,
> The tcindex01 test currently fails if the tcindex module is enabled
> in kernel config but cannot be autoloaded. Some distros chose
> to blacklist the module rather than remove it completely, thus
> check for autoload failure and pass in that case.
> Signed-off-by: Martin Doucha <mdoucha@suse.cz>
> ---
> testcases/cve/tcindex01.c | 15 +++++++++++++--
> 1 file changed, 13 insertions(+), 2 deletions(-)
> diff --git a/testcases/cve/tcindex01.c b/testcases/cve/tcindex01.c
> index 70e5639f1..07239f9c0 100644
> --- a/testcases/cve/tcindex01.c
> +++ b/testcases/cve/tcindex01.c
> @@ -106,8 +106,19 @@ static void run(void)
> NETDEV_ADD_QDISC(DEVNAME, AF_UNSPEC, TC_H_ROOT, qd_handle, "htb",
> qd_config);
> NETDEV_ADD_TRAFFIC_CLASS(DEVNAME, qd_handle, clsid, "htb", cls_config);
> - NETDEV_ADD_TRAFFIC_FILTER(DEVNAME, qd_handle, 10, ETH_P_IP, 1,
> - "tcindex", f_config);
> + ret = tst_netdev_add_traffic_filter(__FILE__, __LINE__, 0, DEVNAME,
nit: we now don't use NETDEV_ADD_TRAFFIC_FILTER() macro any more. I guess it can
stay because you sooner or later will use it.
Reviewed-by: Petr Vorel <pvorel@suse.cz>
> + qd_handle, 10, ETH_P_IP, 1, "tcindex", f_config);
> + TST_ERR = tst_netlink_errno;
Out of curriosity, I suppose you save tst_netlink_errno to TST_ERR because it
would be overwritten later in other LTP netlink API functions.
> +
> + if (!ret && TST_ERR == ENOENT) {
> + tst_res(TPASS | TTERRNO,
> + "tcindex module is blacklisted or unavailable");
> + return;
> + }
Kind regards,
Petr
> +
> + if (!ret)
> + tst_brk(TBROK | TTERRNO, "Cannot add tcindex filter");
> +
> NETDEV_REMOVE_TRAFFIC_FILTER(DEVNAME, qd_handle, 10, ETH_P_IP,
> 1, "tcindex");
> ret = tst_netdev_add_traffic_filter(__FILE__, __LINE__, 0, DEVNAME,
More information about the ltp
mailing list