This patchset introduces a QMP event and a monitor command. The event is used to notify management when mac-table configuration is changed by guest. Management can use the new monitor command to query mac-table information, and sync the changes to macvtap devices.
There maybe exist an uncontrollable delay, guests normally expect rx-mode updates immediately, but it's another separate issue, we can investigate it after Libvirt work is done. Patches are based on Michael's patchset [1], you can also find patches in my github [2]. [1] [PATCH v3 00/11] qapi: add support for lists of native types [2] https://github.com/kongove/qemu/tree/01-query-mactable v2: add argument to filter mac-table info of single nic (Stefan) update the document add event notification Amos Kong (2): net: introduce MAC_TABLE_CHANGED event net: introduce command to query mac-table information QMP/qmp-events.txt | 14 +++++++++ hmp-commands.hx | 2 ++ hmp.c | 71 ++++++++++++++++++++++++++++++++++++++++++++ hmp.h | 1 + hw/net/virtio-net.c | 75 +++++++++++++++++++++++++++++++++++++++++++++++ include/monitor/monitor.h | 1 + include/net/net.h | 2 ++ monitor.c | 9 ++++++ net/net.c | 38 ++++++++++++++++++++++++ qapi-schema.json | 57 +++++++++++++++++++++++++++++++++++ qmp-commands.hx | 53 +++++++++++++++++++++++++++++++++ 11 files changed, 323 insertions(+) -- 1.8.1.4