qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] f2f6e0: virtio_serial: Don't use vser->config


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] f2f6e0: virtio_serial: Don't use vser->config.max_nr_ports...
Date: Fri, 09 Jan 2015 11:00:08 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: f2f6e00b2e27b65edaa6ce5cb01770c973cbf8fb
      
https://github.com/qemu/qemu/commit/f2f6e00b2e27b65edaa6ce5cb01770c973cbf8fb
  Author: David Gibson <address@hidden>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M hw/char/virtio-serial-bus.c

  Log Message:
  -----------
  virtio_serial: Don't use vser->config.max_nr_ports internally

A number of places in the virtio_serial driver retrieve the number of ports
from vser->config.max_nr_ports, which is guest-endian.  But for internal
users, we already have a host-endian copy of the number of ports in
vser->serial.max_virtserial_ports.  Using that instead of the config field
removes the need for easy-to-forget byteswapping.

In particular this fixes a bug on incoming migration, where we don't adjust
the endianness vser->config correctly, because it hasn't yet been loaded
from the migration stream when virtio_serial_load_device() is called.

Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Alexander Graf <address@hidden>
Signed-off-by: Amit Shah <address@hidden>


  Commit: 08f432aa3eb62d6d781eaa085e161e8628a9a538
      
https://github.com/qemu/qemu/commit/08f432aa3eb62d6d781eaa085e161e8628a9a538
  Author: David Gibson <address@hidden>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M hw/char/virtio-serial-bus.c
    M include/hw/virtio/virtio-serial.h

  Log Message:
  -----------
  virtio-serial: Don't keep a persistent copy of config space

The 'config' field in the VirtIOSerial structure keeps a copy of the virtio
console's config space as visible to the guest, that is to say, in guest
endianness.  This is fiddly to maintain, because on some targets, such as
powerpc, the "guest endianness" can change when a new guest OS boots.

In fact, there's no need to maintain such a guest view of config space -
instead we can reconstruct it from host-format data when it is accessed
with get_config.

Signed-off-by: David Gibson <address@hidden>
Reviewed-by: Alexander Graf <address@hidden>
Signed-off-by: Amit Shah <address@hidden>


  Commit: 11fe680858653e32782b1c24f939e77427f285b4
      
https://github.com/qemu/qemu/commit/11fe680858653e32782b1c24f939e77427f285b4
  Author: Peter Maydell <address@hidden>
  Date:   2015-01-09 (Fri, 09 Jan 2015)

  Changed paths:
    M hw/char/virtio-serial-bus.c
    M include/hw/virtio/virtio-serial.h

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/amit/tags/for-2.3' into staging

Migration fix for virtio-serial devices on bi-endian targets by David
Gibson.

# gpg: Signature made Mon 05 Jan 2015 07:26:07 GMT using RSA key ID 854083B6
# gpg: Good signature from "Amit Shah <address@hidden>"
# gpg:                 aka "Amit Shah <address@hidden>"
# gpg:                 aka "Amit Shah <address@hidden>"

* remotes/amit/tags/for-2.3:
  virtio-serial: Don't keep a persistent copy of config space
  virtio_serial: Don't use vser->config.max_nr_ports internally

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/a4ba200894e8...11fe68085865

reply via email to

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