[Qemu-devel] [PATCH v6 0/9] Network announce changes

Dr. David Alan Gilbert (git) posted 9 patches 5 years, 2 months ago
Test asan passed
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190227132413.13213-1-dgilbert@redhat.com
Maintainers: Juan Quintela <quintela@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, Eric Blake <eblake@redhat.com>, "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Markus Armbruster <armbru@redhat.com>, Jason Wang <jasowang@redhat.com>
hmp-commands.hx                |  16 ++++
hmp.c                          |  33 ++++++++
hmp.h                          |   1 +
hw/net/trace-events            |   6 ++
hw/net/virtio-net.c            |  69 ++++++++++++----
include/hw/virtio/virtio-net.h |   4 +-
include/migration/misc.h       |  12 +--
include/net/announce.h         |  41 ++++++++++
include/net/net.h              |   2 +
include/qemu/typedefs.h        |   1 +
include/sysemu/sysemu.h        |   2 -
migration/migration.c          | 103 +++++++++++++++++++++++-
migration/migration.h          |   4 +
migration/savevm.c             |  72 +----------------
migration/trace-events         |   1 -
net/Makefile.objs              |   1 +
net/announce.c                 | 140 +++++++++++++++++++++++++++++++++
net/trace-events               |   3 +
qapi/migration.json            |  53 ++++++++++++-
qapi/net.json                  |  43 ++++++++++
tests/Makefile.include         |   3 +
tests/test-announce-self.c     |  82 +++++++++++++++++++
tests/test-hmp.c               |   1 +
23 files changed, 590 insertions(+), 103 deletions(-)
create mode 100644 include/net/announce.h
create mode 100644 net/announce.c
create mode 100644 tests/test-announce-self.c
[Qemu-devel] [PATCH v6 0/9] Network announce changes
Posted by Dr. David Alan Gilbert (git) 5 years, 2 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

Hi,
  This is a reworking of a few sets of patches from 2017
that were put together by myself, Germano and Vlad that make
the network announce system more flexible.

  Firstly, it's parameterised, so that you can change the number
of packets and the gap between them; the number can be set to 0
to disable announce completely.

  Secondly, you can force an announce by a qmp or hmp command at
any time.  This is useful if you need the guest to do an announce
for a different reason; for example if the management layer
has just juggled some bonding configuration around.

  The packet creation and timing also moves to net/ from migration/

  The previous set was:
     https://lists.gnu.org/archive/html/qemu-devel/2017-05/msg05594.html

Dave

v6
  qmp format change (from Markus's review)
  removed gcov line from test (from Thomas's review)
  slightly expanded HMP help text (from Thomas's review)


Dr. David Alan Gilbert (9):
  net: Introduce announce timer
  migration: Add announce parameters
  virtio-net: Switch to using announce timer
  migration: Switch to using announce timer
  net: Add a network device specific self-announcement ability
  virtio-net: Allow qemu_announce_self to trigger virtio announcements
  qmp: Add announce-self command
  hmp: Add hmp_announce_self
  tests: Add a test for qemu self announcements

 hmp-commands.hx                |  16 ++++
 hmp.c                          |  33 ++++++++
 hmp.h                          |   1 +
 hw/net/trace-events            |   6 ++
 hw/net/virtio-net.c            |  69 ++++++++++++----
 include/hw/virtio/virtio-net.h |   4 +-
 include/migration/misc.h       |  12 +--
 include/net/announce.h         |  41 ++++++++++
 include/net/net.h              |   2 +
 include/qemu/typedefs.h        |   1 +
 include/sysemu/sysemu.h        |   2 -
 migration/migration.c          | 103 +++++++++++++++++++++++-
 migration/migration.h          |   4 +
 migration/savevm.c             |  72 +----------------
 migration/trace-events         |   1 -
 net/Makefile.objs              |   1 +
 net/announce.c                 | 140 +++++++++++++++++++++++++++++++++
 net/trace-events               |   3 +
 qapi/migration.json            |  53 ++++++++++++-
 qapi/net.json                  |  43 ++++++++++
 tests/Makefile.include         |   3 +
 tests/test-announce-self.c     |  82 +++++++++++++++++++
 tests/test-hmp.c               |   1 +
 23 files changed, 590 insertions(+), 103 deletions(-)
 create mode 100644 include/net/announce.h
 create mode 100644 net/announce.c
 create mode 100644 tests/test-announce-self.c

-- 
2.20.1


Re: [Qemu-devel] [PATCH v6 0/9] Network announce changes
Posted by Jason Wang 5 years, 1 month ago
On 2019/2/27 下午9:24, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
>
> Hi,
>    This is a reworking of a few sets of patches from 2017
> that were put together by myself, Germano and Vlad that make
> the network announce system more flexible.
>
>    Firstly, it's parameterised, so that you can change the number
> of packets and the gap between them; the number can be set to 0
> to disable announce completely.
>
>    Secondly, you can force an announce by a qmp or hmp command at
> any time.  This is useful if you need the guest to do an announce
> for a different reason; for example if the management layer
> has just juggled some bonding configuration around.
>
>    The packet creation and timing also moves to net/ from migration/
>
>    The previous set was:
>       https://lists.gnu.org/archive/html/qemu-devel/2017-05/msg05594.html
>
> Dave
>
> v6
>    qmp format change (from Markus's review)
>    removed gcov line from test (from Thomas's review)
>    slightly expanded HMP help text (from Thomas's review)
>
>
> Dr. David Alan Gilbert (9):
>    net: Introduce announce timer
>    migration: Add announce parameters
>    virtio-net: Switch to using announce timer
>    migration: Switch to using announce timer
>    net: Add a network device specific self-announcement ability
>    virtio-net: Allow qemu_announce_self to trigger virtio announcements
>    qmp: Add announce-self command
>    hmp: Add hmp_announce_self
>    tests: Add a test for qemu self announcements
>
>   hmp-commands.hx                |  16 ++++
>   hmp.c                          |  33 ++++++++
>   hmp.h                          |   1 +
>   hw/net/trace-events            |   6 ++
>   hw/net/virtio-net.c            |  69 ++++++++++++----
>   include/hw/virtio/virtio-net.h |   4 +-
>   include/migration/misc.h       |  12 +--
>   include/net/announce.h         |  41 ++++++++++
>   include/net/net.h              |   2 +
>   include/qemu/typedefs.h        |   1 +
>   include/sysemu/sysemu.h        |   2 -
>   migration/migration.c          | 103 +++++++++++++++++++++++-
>   migration/migration.h          |   4 +
>   migration/savevm.c             |  72 +----------------
>   migration/trace-events         |   1 -
>   net/Makefile.objs              |   1 +
>   net/announce.c                 | 140 +++++++++++++++++++++++++++++++++
>   net/trace-events               |   3 +
>   qapi/migration.json            |  53 ++++++++++++-
>   qapi/net.json                  |  43 ++++++++++
>   tests/Makefile.include         |   3 +
>   tests/test-announce-self.c     |  82 +++++++++++++++++++
>   tests/test-hmp.c               |   1 +
>   23 files changed, 590 insertions(+), 103 deletions(-)
>   create mode 100644 include/net/announce.h
>   create mode 100644 net/announce.c
>   create mode 100644 tests/test-announce-self.c


Applied.

Thanks