提交 75422b0d 编写于 作者: A Amit Shah 提交者: Anthony Liguori

qdev: Add a DEV_NVECTORS_UNSPECIFIED enum for unspecified nr of MSI vectors

net.c used a constant to signify no MSI vectors were specified. Extend
that to all qdev devices.
Signed-off-by: NAmit Shah <amit.shah@redhat.com>
Reported-by: N"Michael S. Tsirkin" <mst@redhat.com>
Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
上级 1a8e2aaa
......@@ -387,7 +387,7 @@ void qdev_set_nic_properties(DeviceState *dev, NICInfo *nd)
qdev_prop_set_vlan(dev, "vlan", nd->vlan);
if (nd->netdev)
qdev_prop_set_netdev(dev, "netdev", nd->netdev);
if (nd->nvectors != NIC_NVECTORS_UNSPECIFIED &&
if (nd->nvectors != DEV_NVECTORS_UNSPECIFIED &&
qdev_prop_exists(dev, "vectors")) {
qdev_prop_set_uint32(dev, "vectors", nd->nvectors);
}
......
......@@ -24,6 +24,10 @@ enum DevState {
DEV_STATE_INITIALIZED,
};
enum {
DEV_NVECTORS_UNSPECIFIED = -1,
};
/* This structure should not be accessed directly. We declare it here
so that it can be embedded in individual device state structures. */
struct DeviceState {
......
......@@ -35,6 +35,7 @@
#include "sysemu.h"
#include "qemu-common.h"
#include "qemu_socket.h"
#include "hw/qdev.h"
static QTAILQ_HEAD(, VLANState) vlans;
static QTAILQ_HEAD(, VLANClientState) non_vlan_clients;
......@@ -804,8 +805,9 @@ static int net_init_nic(QemuOpts *opts,
return -1;
}
nd->nvectors = qemu_opt_get_number(opts, "vectors", NIC_NVECTORS_UNSPECIFIED);
if (nd->nvectors != NIC_NVECTORS_UNSPECIFIED &&
nd->nvectors = qemu_opt_get_number(opts, "vectors",
DEV_NVECTORS_UNSPECIFIED);
if (nd->nvectors != DEV_NVECTORS_UNSPECIFIED &&
(nd->nvectors < 0 || nd->nvectors > 0x7ffffff)) {
qemu_error("invalid # of vectors: %d\n", nd->nvectors);
return -1;
......
......@@ -123,9 +123,6 @@ void do_set_link(Monitor *mon, const QDict *qdict);
/* NIC info */
#define MAX_NICS 8
enum {
NIC_NVECTORS_UNSPECIFIED = -1
};
struct NICInfo {
uint8_t macaddr[6];
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册