bpf: update printing of generic xdp mode

Follow-up to d67b9cd28c1d ("xdp: refine xdp api with regards to
generic xdp") in order to update the XDP dumping part.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
This commit is contained in:
Daniel Borkmann 2017-05-13 02:32:34 +02:00 committed by Stephen Hemminger
parent 759fa6086e
commit 077bb1803c
1 changed files with 11 additions and 8 deletions

View File

@ -79,17 +79,20 @@ int xdp_parse(int *argc, char ***argv, struct iplink_req *req, bool generic)
void xdp_dump(FILE *fp, struct rtattr *xdp)
{
struct rtattr *tb[IFLA_XDP_MAX + 1];
__u32 flags = 0;
__u8 mode;
parse_rtattr_nested(tb, IFLA_XDP_MAX, xdp);
if (!tb[IFLA_XDP_ATTACHED] ||
!rta_getattr_u8(tb[IFLA_XDP_ATTACHED]))
if (!tb[IFLA_XDP_ATTACHED])
return;
if (tb[IFLA_XDP_FLAGS])
flags = rta_getattr_u32(tb[IFLA_XDP_FLAGS]);
fprintf(fp, "xdp%s ",
flags & XDP_FLAGS_SKB_MODE ? "generic" : "");
mode = rta_getattr_u8(tb[IFLA_XDP_ATTACHED]);
if (mode == XDP_ATTACHED_NONE)
return;
else if (mode == XDP_ATTACHED_DRV)
fprintf(fp, "xdp ");
else if (mode == XDP_ATTACHED_SKB)
fprintf(fp, "xdpgeneric ");
else
fprintf(fp, "xdp[%u] ", mode);
}