From: Gonglei <arei.gong...@huawei.com> Qemu haven't provide a bootindex property for vhost-scsi device. So, we can not assign the boot order for it at present. But Some clients/users have requirements for that in some scenarios. This patch achieve the aim in Qemu side.
Because Qemu only accept an wwpn argument for vhost-scsi, we cannot assign a tpgt. That's say tpg is transparent for Qemu, Qemu doesn't know which tpg can boot, but vhost-scsi driver module doesn't know too for one assigned wwpn. At present, we assume that the first tpg can boot only, and add a boot_tpgt property that defaults to 0. Of course, people can pass a valid value by qemu command line. v2 -> v1: (Thanks to Paolo's suggestion) - change calling qdev_get_own_fw_dev_path_from_handler in get_boot_devices_list, and convert non-NULL suffixes to implementations of FWPathProvider in Patch 1. (Paolo) - add a boot_tpgt property for vhost-scsi in Patch 4. (Paolo) - remove the ioctl calling in Patch 4, because the kernel patch hasn't been accepted. kernel patch: [PATCH] vhost-scsi: introduce an ioctl to get the minimum tpgt http://news.gmane.org/gmane.comp.emulators.kvm.devel Gonglei (5): qdev: support to get a device firmware path directly vhost-scsi: add bootindex property vhost-scsi: realize the TYPE_FW_PATH_PROVIDER interface vhost-scsi: add a property for booting vhost-scsi: set the bootable value of channel/target/lun bootdevice.c | 31 +++++++++++++++++-------------- hw/core/qdev.c | 7 +++++++ hw/scsi/vhost-scsi.c | 35 +++++++++++++++++++++++++++++++++++ hw/virtio/virtio-pci.c | 2 ++ include/hw/qdev-core.h | 1 + include/hw/virtio/vhost-scsi.h | 5 +++++ include/hw/virtio/virtio-scsi.h | 1 + 7 files changed, 68 insertions(+), 14 deletions(-) -- 1.7.12.4