From patchwork Thu Mar 18 09:42:42 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [PATCHv2,2/5] virtio-net: remove layout assumptions Date: Wed, 17 Mar 2010 23:42:42 -0000 From: "Michael S. Tsirkin" X-Patchwork-Id: 48015 Message-Id: To: quintela@redhat.com, qemu-devel@nongnu.org Cc: Use container_of so we do not depend on vdev being first member. Signed-off-by: Michael S. Tsirkin --- hw/virtio-net.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/virtio-net.c b/hw/virtio-net.c index d962a75..ca843f8 100644 --- a/hw/virtio-net.c +++ b/hw/virtio-net.c @@ -64,7 +64,7 @@ typedef struct VirtIONet static VirtIONet *to_virtio_net(VirtIODevice *vdev) { - return (VirtIONet *)vdev; + return container_of(vdev, VirtIONet, vdev); } static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config) @@ -873,7 +873,7 @@ VirtIODevice *virtio_net_init(DeviceState *dev, NICConf *conf) void virtio_net_exit(VirtIODevice *vdev) { - VirtIONet *n = DO_UPCAST(VirtIONet, vdev, vdev); + VirtIONet *n = to_virtio_net(vdev); qemu_purge_queued_packets(&n->nic->nc);