qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: [PATCH 1/5][RFC] virtio-net: Allow setting the MAC addr


From: Mark McLoughlin
Subject: [Qemu-devel] Re: [PATCH 1/5][RFC] virtio-net: Allow setting the MAC address via set_config
Date: Fri, 09 Jan 2009 11:38:09 +0000

On Wed, 2009-01-07 at 10:37 -0700, Alex Williamson wrote:
> virtio-net: Allow setting the MAC address via set_config

This will basically never happen with QEMU, right?

We always set the MAC address - even if not supplied on the command line
- and the guest will never override that.

> Rename get_config for simplicity
> 
> Signed-off-by: Alex Williamson <address@hidden>
> ---
> 
>  hw/virtio-net.c |   21 +++++++++++++++++++--
>  1 files changed, 19 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/virtio-net.c b/hw/virtio-net.c
> index 2c41b3e..bfb7510 100644
> --- a/hw/virtio-net.c
> +++ b/hw/virtio-net.c
> @@ -38,7 +38,7 @@ static VirtIONet *to_virtio_net(VirtIODevice *vdev)
>      return (VirtIONet *)vdev;
>  }
>  
> -static void virtio_net_update_config(VirtIODevice *vdev, uint8_t
> *config)
> +static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config)

Yay :-)

>  {
>      VirtIONet *n = to_virtio_net(vdev);
>      struct virtio_net_config netcfg;
> @@ -48,6 +48,22 @@ static void virtio_net_update_config(VirtIODevice
> *vdev, uint8_t *config)
>      memcpy(config, &netcfg, sizeof(netcfg));
>  }
>  
> +static void virtio_net_set_config(VirtIODevice *vdev, const uint8_t
> *config)
> +{
> +    VirtIONet *n = to_virtio_net(vdev);
> +    struct virtio_net_config netcfg;
> +
> +    memcpy(&netcfg, config, sizeof(netcfg));
> +
> +    if (memcmp(netcfg.mac, n->mac, 6)) {
> +        memcpy(n->mac, netcfg.mac, 6);
> +        snprintf(n->vc->info_str, sizeof(n->vc->info_str),
> +                 "virtio macaddr=%02x:%02x:%02x:%02x:%02x:%02x",
> +                 n->mac[0], n->mac[1], n->mac[2],
> +                 n->mac[3], n->mac[4], n->mac[5]);

There's qemu_format_nic_info_str() now.

Cheers,
Mark.





reply via email to

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