qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 19/61] virtio-net : cleanup : use QOM cast.


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH 19/61] virtio-net : cleanup : use QOM cast.
Date: Mon, 7 Jan 2013 23:16:11 +0200

On Mon, Jan 07, 2013 at 07:40:32PM +0100, address@hidden wrote:
> @@ -130,7 +124,9 @@ static void virtio_net_set_status(struct VirtIODevice 
> *vdev, uint8_t status)
>  
>  static void virtio_net_set_link_status(NetClientState *nc)
>  {
> -    VirtIONet *n = DO_UPCAST(NICState, nc, nc)->opaque;
> +    void *opaque = DO_UPCAST(NICState, nc, nc)->opaque;
> +    VirtIONet *n = VIRTIO_NET(opaque);
> +    VirtIODevice *vdev = VIRTIO_DEVICE(n);
>      uint16_t old_status = n->status;
>  
>      if (nc->link_down)

I note this adds more pointer chasing due to runtime casts on data path
operations.  Can well be trivial but this really needs to be verified
with a performance test. Was this done? Same comment applies to block.
An alternative is to add _fast casts without runtime checks.

-- 
MST



reply via email to

[Prev in Thread] Current Thread [Next in Thread]