linux-user,netlink: add IFLA_BRPORT_MRP_RING_OPEN, IFLA_BRPORT_MRP_IN_OPEN

Fix "-d unimp" trace results:

  Unknown QEMU_IFLA_BRPORT type 35
  Unknown QEMU_IFLA_BRPORT type 36

Also process IFLA_EXT_MASK to fix:

  Unknown target QEMU_IFLA type: 29

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20201117111905.843925-1-laurent@vivier.eu>
This commit is contained in:
Laurent Vivier 2020-11-17 12:19:05 +01:00
parent f536612dc1
commit 5351f4075d

View File

@ -175,6 +175,8 @@ enum {
QEMU_IFLA_BRPORT_NEIGH_SUPPRESS, QEMU_IFLA_BRPORT_NEIGH_SUPPRESS,
QEMU_IFLA_BRPORT_ISOLATED, QEMU_IFLA_BRPORT_ISOLATED,
QEMU_IFLA_BRPORT_BACKUP_PORT, QEMU_IFLA_BRPORT_BACKUP_PORT,
QEMU_IFLA_BRPORT_MRP_RING_OPEN,
QEMU_IFLA_BRPORT_MRP_IN_OPEN,
QEMU___IFLA_BRPORT_MAX QEMU___IFLA_BRPORT_MAX
}; };
@ -552,6 +554,8 @@ static abi_long host_to_target_slave_data_bridge_nlattr(struct nlattr *nlattr,
case QEMU_IFLA_BRPORT_BCAST_FLOOD: case QEMU_IFLA_BRPORT_BCAST_FLOOD:
case QEMU_IFLA_BRPORT_NEIGH_SUPPRESS: case QEMU_IFLA_BRPORT_NEIGH_SUPPRESS:
case QEMU_IFLA_BRPORT_ISOLATED: case QEMU_IFLA_BRPORT_ISOLATED:
case QEMU_IFLA_BRPORT_MRP_RING_OPEN:
case QEMU_IFLA_BRPORT_MRP_IN_OPEN:
break; break;
/* uint16_t */ /* uint16_t */
case QEMU_IFLA_BRPORT_PRIORITY: case QEMU_IFLA_BRPORT_PRIORITY:
@ -1125,7 +1129,14 @@ static abi_long target_to_host_for_each_rtattr(struct rtattr *rtattr,
static abi_long target_to_host_data_link_rtattr(struct rtattr *rtattr) static abi_long target_to_host_data_link_rtattr(struct rtattr *rtattr)
{ {
uint32_t *u32;
switch (rtattr->rta_type) { switch (rtattr->rta_type) {
/* uint32_t */
case QEMU_IFLA_EXT_MASK:
u32 = RTA_DATA(rtattr);
*u32 = tswap32(*u32);
break;
default: default:
qemu_log_mask(LOG_UNIMP, "Unknown target QEMU_IFLA type: %d\n", qemu_log_mask(LOG_UNIMP, "Unknown target QEMU_IFLA type: %d\n",
rtattr->rta_type); rtattr->rta_type);