qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/4] net: convert NetClientState to QOM
@ 2012-07-02 10:56 Stefan Hajnoczi
  2012-07-02 10:56 ` [Qemu-devel] [PATCH 1/4] net: add public qemu_net_poll() function Stefan Hajnoczi
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Stefan Hajnoczi @ 2012-07-02 10:56 UTC (permalink / raw)
  To: qemu-devel; +Cc: Paolo Bonzini, Anthony Liguori, lersek, Stefan Hajnoczi

Note: These patches apply on top of Zhi Yong Wu's vlan-hub v6 and -netdev
socket v2 series.

This series is the first step in QOMifying the net subsystem.  These patches
make NetClientState an Object so that all -netdev and NICs use QOM.  The net
clients are not yet visible in the QOM tree and have no properties.

I wanted to send this out before I go on vacation 3 - 11 July since others are
making changes in the net subsystem and this could conflict.

Future patch series will focus on:
1. QOM lifecycle for NetClientState, including dealing with hotplug.
2. QOM properties for each -netdev type.
3. Exposing net clients in the QOM tree.
4. Replacing ad-hoc code with QOM usage.

Stefan Hajnoczi (4):
  net: add public qemu_net_poll() function
  net: add net_is_tap_client()
  net: extract notify_link_status_changed() function
  net: convert NetClientState to QOM

 hw/cadence_gem.c        |   27 +++++++---
 hw/dp8393x.c            |   41 ++++++++++----
 hw/e1000.c              |   32 +++++++----
 hw/eepro100.c           |   27 +++++++---
 hw/etraxfs_eth.c        |   27 +++++++---
 hw/lan9118.c            |   27 +++++++---
 hw/lance.c              |   18 +------
 hw/mcf_fec.c            |   32 ++++++++---
 hw/milkymist-minimac2.c |   26 ++++++---
 hw/mipsnet.c            |   25 ++++++---
 hw/musicpal.c           |   26 ++++++---
 hw/ne2000-isa.c         |   17 +-----
 hw/ne2000.c             |   23 +++++---
 hw/ne2000.h             |    2 +
 hw/opencores_eth.c      |   28 +++++++---
 hw/pcnet-pci.c          |   18 +------
 hw/pcnet.c              |   36 +++++++++++--
 hw/pcnet.h              |    3 +-
 hw/rtl8139.c            |   26 ++++++---
 hw/smc91c111.c          |   26 ++++++---
 hw/spapr_llan.c         |   24 ++++++---
 hw/stellaris_enet.c     |   26 ++++++---
 hw/usb/dev-network.c    |   25 ++++++---
 hw/vhost_net.c          |   11 ++--
 hw/virtio-net.c         |   43 ++++++++++-----
 hw/xen_nic.c            |   29 +++++++---
 hw/xgmac.c              |   26 ++++++---
 hw/xilinx_axienet.c     |   26 ++++++---
 hw/xilinx_ethlite.c     |   26 ++++++---
 net.c                   |  138 ++++++++++++++++++++++++++++++++---------------
 net.h                   |   35 ++++++++----
 net/dump.c              |   30 ++++++++---
 net/hub.c               |   51 +++++++++++-------
 net/slirp.c             |   29 +++++++---
 net/socket.c            |   80 +++++++++++++++------------
 net/tap-win32.c         |   29 ++++++++--
 net/tap.c               |   83 ++++++++++++++++------------
 net/tap.h               |    1 +
 net/vde.c               |   28 ++++++++--
 39 files changed, 841 insertions(+), 386 deletions(-)

-- 
1.7.10

^ permalink raw reply	[flat|nested] 6+ messages in thread
* [Qemu-devel] [PATCH 0/4] net: convert NetClientState to QOM
@ 2012-10-18 14:56 Stefan Hajnoczi
  2012-10-18 14:56 ` [Qemu-devel] [PATCH 3/4] net: extract notify_link_status_changed() function Stefan Hajnoczi
  0 siblings, 1 reply; 6+ messages in thread
From: Stefan Hajnoczi @ 2012-10-18 14:56 UTC (permalink / raw)
  To: qemu-devel; +Cc: Anthony Liguori, Laszlo Ersek, Stefan Hajnoczi

This series converts NetClientState from a plain C struct to QOM.  This means
emulated NICs and netdevs now derive from the NetClientState base class.  There
should be no user-visible change.

Converting the net subsystem to QOM opens the door to the following
improvements which can be built on top of this series:

1. Lifecycle cleanup to make hotplug saner and allow associating a NIC with a
   new netdev at runtime.  Really we should use the QOM lifecycle!

2. Exposing NICs and netdevs in the QOM tree so they can be configured and
   inspected at runtime.

I have tested virtio and e1000 with -netdev tap and user.  Build tested all
targets on Linux host.

Stefan Hajnoczi (4):
  net: add public qemu_net_poll() function
  net: add net_is_tap_client()
  net: extract notify_link_status_changed() function
  net: convert NetClientState to QOM

 hw/cadence_gem.c        |  27 +++++++---
 hw/dp8393x.c            |  41 ++++++++++----
 hw/e1000.c              |  32 +++++++----
 hw/eepro100.c           |  27 +++++++---
 hw/etraxfs_eth.c        |  27 +++++++---
 hw/lan9118.c            |  27 +++++++---
 hw/lance.c              |  18 +------
 hw/mcf_fec.c            |  32 ++++++++---
 hw/milkymist-minimac2.c |  26 ++++++---
 hw/mipsnet.c            |  25 ++++++---
 hw/musicpal.c           |  26 ++++++---
 hw/ne2000-isa.c         |  17 +-----
 hw/ne2000.c             |  23 +++++---
 hw/ne2000.h             |   2 +
 hw/opencores_eth.c      |  28 +++++++---
 hw/pcnet-pci.c          |  18 +------
 hw/pcnet.c              |  36 +++++++++++--
 hw/pcnet.h              |   3 +-
 hw/rtl8139.c            |  28 +++++++---
 hw/smc91c111.c          |  26 ++++++---
 hw/spapr_llan.c         |  24 ++++++---
 hw/stellaris_enet.c     |  26 ++++++---
 hw/usb/dev-network.c    |  25 ++++++---
 hw/vhost_net.c          |  11 ++--
 hw/virtio-net.c         |  43 ++++++++++-----
 hw/xen_nic.c            |  29 +++++++---
 hw/xgmac.c              |  26 ++++++---
 hw/xilinx_axienet.c     |  26 ++++++---
 hw/xilinx_ethlite.c     |  26 ++++++---
 net.c                   | 140 +++++++++++++++++++++++++++++++++---------------
 net.h                   |  35 ++++++++----
 net/dump.c              |  30 ++++++++---
 net/hub.c               |  64 +++++++++++++---------
 net/slirp.c             |  29 +++++++---
 net/socket.c            |  74 ++++++++++++++++---------
 net/tap-win32.c         |  29 ++++++++--
 net/tap.c               |  86 ++++++++++++++++-------------
 net/tap.h               |   1 +
 net/vde.c               |  28 ++++++++--
 39 files changed, 852 insertions(+), 389 deletions(-)

-- 
1.7.11.7

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-10-18 14:59 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-02 10:56 [Qemu-devel] [PATCH 0/4] net: convert NetClientState to QOM Stefan Hajnoczi
2012-07-02 10:56 ` [Qemu-devel] [PATCH 1/4] net: add public qemu_net_poll() function Stefan Hajnoczi
2012-07-02 10:56 ` [Qemu-devel] [PATCH 2/4] net: add net_is_tap_client() Stefan Hajnoczi
2012-07-02 10:56 ` [Qemu-devel] [PATCH 3/4] net: extract notify_link_status_changed() function Stefan Hajnoczi
2012-07-02 10:56 ` [Qemu-devel] [PATCH 4/4] net: convert NetClientState to QOM Stefan Hajnoczi
  -- strict thread matches above, loose matches on Subject: below --
2012-10-18 14:56 [Qemu-devel] [PATCH 0/4] " Stefan Hajnoczi
2012-10-18 14:56 ` [Qemu-devel] [PATCH 3/4] net: extract notify_link_status_changed() function Stefan Hajnoczi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).