Commit 9276009d authored by Stanislav Fomichev's avatar Stanislav Fomichev Committed by Alexei Starovoitov
Browse files

tools: ynl: Print xsk-features from the sample



In a similar fashion we do for the other bit masks.
Fix mask parsing (>= vs >) while we are it.

Signed-off-by: default avatarStanislav Fomichev <sdf@google.com>
Reviewed-by: default avatarJakub Kicinski <kuba@kernel.org>
Link: https://lore.kernel.org/r/20231127190319.1190813-4-sdf@google.com


Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent 48eb03dd
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -33,17 +33,23 @@ static void netdev_print_device(struct netdev_dev_get_rsp *d, unsigned int op)
		return;

	printf("xdp-features (%llx):", d->xdp_features);
	for (int i = 0; d->xdp_features > 1U << i; i++) {
	for (int i = 0; d->xdp_features >= 1U << i; i++) {
		if (d->xdp_features & (1U << i))
			printf(" %s", netdev_xdp_act_str(1 << i));
	}

	printf(" xdp-rx-metadata-features (%llx):", d->xdp_rx_metadata_features);
	for (int i = 0; d->xdp_rx_metadata_features > 1U << i; i++) {
	for (int i = 0; d->xdp_rx_metadata_features >= 1U << i; i++) {
		if (d->xdp_rx_metadata_features & (1U << i))
			printf(" %s", netdev_xdp_rx_metadata_str(1 << i));
	}

	printf(" xsk-features (%llx):", d->xsk_features);
	for (int i = 0; d->xsk_features >= 1U << i; i++) {
		if (d->xsk_features & (1U << i))
			printf(" %s", netdev_xsk_flags_str(1 << i));
	}

	printf(" xdp-zc-max-segs=%u", d->xdp_zc_max_segs);

	name = netdev_op_str(op);