On Tue, Apr 21, 2020 at 11:23 AM Jason Wang <jasow...@redhat.com> wrote:

>
> On 2020/4/20 下午5:32, Cindy Lu wrote:
> > This is a small function  that can get the peer from given
> NetClientState and queue_index
>
>
> Unnecessary space  between 'function' and 'that'.
>
>
> >
> > Signed-off-by: Cindy Lu <l...@redhat.com>
>
>
> Please split this patch into two parts:
>
> 1) introduce the function
> 2) the actual user for this fucntion
>
>
> sure, I will fix this problem.

> > ---
> >   hw/net/vhost_net.c | 16 ++++++++++------
> >   include/net/net.h  |  1 +
> >   net/net.c          |  6 ++++++
> >   3 files changed, 17 insertions(+), 6 deletions(-)
> >
> > diff --git a/hw/net/vhost_net.c b/hw/net/vhost_net.c
> > index 6b82803fa7..4096d64aaf 100644
> > --- a/hw/net/vhost_net.c
> > +++ b/hw/net/vhost_net.c
> > @@ -306,7 +306,9 @@ int vhost_net_start(VirtIODevice *dev,
> NetClientState *ncs,
> >       BusState *qbus = BUS(qdev_get_parent_bus(DEVICE(dev)));
> >       VirtioBusState *vbus = VIRTIO_BUS(qbus);
> >       VirtioBusClass *k = VIRTIO_BUS_GET_CLASS(vbus);
> > +    struct vhost_net *net;
> >       int r, e, i;
> > +    NetClientState *peer;
> >
> >       if (!k->set_guest_notifiers) {
> >           error_report("binding does not support guest notifiers");
> > @@ -314,9 +316,9 @@ int vhost_net_start(VirtIODevice *dev,
> NetClientState *ncs,
> >       }
> >
> >       for (i = 0; i < total_queues; i++) {
> > -        struct vhost_net *net;
> >
> > -        net = get_vhost_net(ncs[i].peer);
> > +        peer = qemu_get_peer(ncs, i);
> > +        net = get_vhost_net(peer);
> >           vhost_net_set_vq_index(net, i * 2);
> >
> >           /* Suppress the masking guest notifiers on vhost user
> > @@ -335,15 +337,16 @@ int vhost_net_start(VirtIODevice *dev,
> NetClientState *ncs,
> >       }
> >
> >       for (i = 0; i < total_queues; i++) {
> > -        r = vhost_net_start_one(get_vhost_net(ncs[i].peer), dev);
> > +        peer = qemu_get_peer(ncs, i);
> > +        r = vhost_net_start_one(get_vhost_net(peer), dev);
> >
> >           if (r < 0) {
> >               goto err_start;
> >           }
> >
> > -        if (ncs[i].peer->vring_enable) {
> > +        if (peer->vring_enable) {
> >               /* restore vring enable state */
> > -            r = vhost_set_vring_enable(ncs[i].peer,
> ncs[i].peer->vring_enable);
> > +            r = vhost_set_vring_enable(peer, peer->vring_enable);
> >
> >               if (r < 0) {
> >                   goto err_start;
> > @@ -355,7 +358,8 @@ int vhost_net_start(VirtIODevice *dev,
> NetClientState *ncs,
> >
> >   err_start:
> >       while (--i >= 0) {
> > -        vhost_net_stop_one(get_vhost_net(ncs[i].peer), dev);
> > +        peer = qemu_get_peer(ncs , i);
> > +        vhost_net_stop_one(get_vhost_net(peer), dev);
> >       }
> >       e = k->set_guest_notifiers(qbus->parent, total_queues * 2, false);
> >       if (e < 0) {
> > diff --git a/include/net/net.h b/include/net/net.h
> > index e175ba9677..0a74324ccd 100644
> > --- a/include/net/net.h
> > +++ b/include/net/net.h
> > @@ -175,6 +175,7 @@ void hmp_info_network(Monitor *mon, const QDict
> *qdict);
> >   void net_socket_rs_init(SocketReadState *rs,
> >                           SocketReadStateFinalize *finalize,
> >                           bool vnet_hdr);
> > +NetClientState *qemu_get_peer(NetClientState *nc, int queue_index);
> >
> >   /* NIC info */
> >
> > diff --git a/net/net.c b/net/net.c
> > index 84aa6d8d00..ac5080dda1 100644
> > --- a/net/net.c
> > +++ b/net/net.c
> > @@ -324,6 +324,12 @@ void *qemu_get_nic_opaque(NetClientState *nc)
> >
> >       return nic->opaque;
> >   }
> > +NetClientState *qemu_get_peer(NetClientState *nc, int queue_index)
> > +{
> > +    NetClientState *ncs  =  nc + queue_index;
>
>
> Unnecessary space around '='.
>
> Thanks
>
>
> Will correct this

> +    assert(ncs != NULL);
> > +    return ncs->peer;
> > +}
> >
> >   static void qemu_cleanup_net_client(NetClientState *nc)
> >   {
>
>

Reply via email to