mirror of https://github.com/xemu-project/xemu.git
virtio-serial: Disallow generic ports at id 0
Port 0 is reserved for virtconsole devices for backward compatibility with the old -virtioconsole (from qemu 0.12) device type. libvirt prior to commit 8e28c5d40200b4c5d483bd585d237b9d870372e5 used port 0 for generic ports. libvirt will no longer do that, but disallow instantiating generic ports at id 0 from qemu as well. Signed-off-by: Amit Shah <amit.shah@redhat.com>
This commit is contained in:
parent
6b331efb73
commit
0b8b716d6c
|
@ -11,6 +11,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "qemu-char.h"
|
#include "qemu-char.h"
|
||||||
|
#include "qemu-error.h"
|
||||||
#include "virtio-serial.h"
|
#include "virtio-serial.h"
|
||||||
|
|
||||||
typedef struct VirtConsole {
|
typedef struct VirtConsole {
|
||||||
|
@ -113,6 +114,14 @@ static int virtserialport_initfn(VirtIOSerialPort *port)
|
||||||
{
|
{
|
||||||
VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
|
VirtConsole *vcon = DO_UPCAST(VirtConsole, port, port);
|
||||||
|
|
||||||
|
if (port->id == 0) {
|
||||||
|
/*
|
||||||
|
* Disallow a generic port at id 0, that's reserved for
|
||||||
|
* console ports.
|
||||||
|
*/
|
||||||
|
error_report("Port number 0 on virtio-serial devices reserved for virtconsole devices for backward compatibility.");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
return generic_port_init(vcon, port);
|
return generic_port_init(vcon, port);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue