All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Jiri Pirko <jiri@resnulli.us>
Cc: armbru@redhat.com, afaerber@suse.de, qemu-devel@nongnu.org,
	stefanha@redhat.com, aliguori@amazon.com
Subject: Re: [Qemu-devel] [patch qemu] net: move queue number into NICPeers
Date: Mon, 26 May 2014 14:58:11 +0300	[thread overview]
Message-ID: <20140526115811.GA8543@redhat.com> (raw)
In-Reply-To: <1401098648-14717-1-git-send-email-jiri@resnulli.us>

On Mon, May 26, 2014 at 12:04:08PM +0200, Jiri Pirko wrote:
> It indicates the number of elements in ncs field and makes sense to have
> int inside NICPeers. Also in parse_netdev we do not need to access
> container and work with NICPeers only.
> 
> Signed-off-by: Jiri Pirko <jiri@resnulli.us>

Reviewed-by: Michael S. Tsirkin <mst@redhat.com>

Please note that at least for virtio these are combined
rx/tx queues. We probably should make this clear somewhere.

> ---
>  hw/core/qdev-properties-system.c | 3 +--
>  hw/net/virtio-net.c              | 2 +-
>  include/net/net.h                | 2 +-
>  net/net.c                        | 4 ++--
>  4 files changed, 5 insertions(+), 6 deletions(-)
> 
> diff --git a/hw/core/qdev-properties-system.c b/hw/core/qdev-properties-system.c
> index 404cf18..3fd592c 100644
> --- a/hw/core/qdev-properties-system.c
> +++ b/hw/core/qdev-properties-system.c
> @@ -180,7 +180,6 @@ PropertyInfo qdev_prop_chr = {
>  static int parse_netdev(DeviceState *dev, const char *str, void **ptr)
>  {
>      NICPeers *peers_ptr = (NICPeers *)ptr;
> -    NICConf *conf = container_of(peers_ptr, NICConf, peers);
>      NetClientState **ncs = peers_ptr->ncs;
>      NetClientState *peers[MAX_QUEUE_NUM];
>      int queues, i = 0;
> @@ -219,7 +218,7 @@ static int parse_netdev(DeviceState *dev, const char *str, void **ptr)
>          ncs[i]->queue_index = i;
>      }
>  
> -    conf->queues = queues;
> +    peers_ptr->queues = queues;
>  
>      return 0;
>  
> diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
> index 940a7cf..b4cb277 100644
> --- a/hw/net/virtio-net.c
> +++ b/hw/net/virtio-net.c
> @@ -1533,7 +1533,7 @@ static void virtio_net_device_realize(DeviceState *dev, Error **errp)
>  
>      virtio_init(vdev, "virtio-net", VIRTIO_ID_NET, n->config_size);
>  
> -    n->max_queues = MAX(n->nic_conf.queues, 1);
> +    n->max_queues = MAX(n->nic_conf.peers.queues, 1);
>      n->vqs = g_malloc0(sizeof(VirtIONetQueue) * n->max_queues);
>      n->vqs[0].rx_vq = virtio_add_queue(vdev, 256, virtio_net_handle_rx);
>      n->curr_queues = 1;
> diff --git a/include/net/net.h b/include/net/net.h
> index 8166345..8a1db8a 100644
> --- a/include/net/net.h
> +++ b/include/net/net.h
> @@ -24,13 +24,13 @@ struct MACAddr {
>  
>  typedef struct NICPeers {
>      NetClientState *ncs[MAX_QUEUE_NUM];
> +    int32_t queues;
>  } NICPeers;
>  
>  typedef struct NICConf {
>      MACAddr macaddr;
>      NICPeers peers;
>      int32_t bootindex;
> -    int32_t queues;
>  } NICConf;
>  
>  #define DEFINE_NIC_PROPERTIES(_state, _conf)                            \
> diff --git a/net/net.c b/net/net.c
> index 0ff2e40..0246818 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -233,7 +233,7 @@ NICState *qemu_new_nic(NetClientInfo *info,
>  {
>      NetClientState **peers = conf->peers.ncs;
>      NICState *nic;
> -    int i, queues = MAX(1, conf->queues);
> +    int i, queues = MAX(1, conf->peers.queues);
>  
>      assert(info->type == NET_CLIENT_OPTIONS_KIND_NIC);
>      assert(info->size >= sizeof(NICState));
> @@ -346,7 +346,7 @@ void qemu_del_net_client(NetClientState *nc)
>  
>  void qemu_del_nic(NICState *nic)
>  {
> -    int i, queues = MAX(nic->conf->queues, 1);
> +    int i, queues = MAX(nic->conf->peers.queues, 1);
>  
>      /* If this is a peer NIC and peer has already been deleted, free it now. */
>      if (nic->peer_deleted) {
> -- 
> 1.9.0

  parent reply	other threads:[~2014-05-26 11:59 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-26 10:04 [Qemu-devel] [patch qemu] net: move queue number into NICPeers Jiri Pirko
2014-05-26 10:24 ` Andreas Färber
2014-05-26 11:58 ` Michael S. Tsirkin [this message]
2014-06-27  9:24 ` Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140526115811.GA8543@redhat.com \
    --to=mst@redhat.com \
    --cc=afaerber@suse.de \
    --cc=aliguori@amazon.com \
    --cc=armbru@redhat.com \
    --cc=jiri@resnulli.us \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.