mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-16 14:41:55 -06:00
hw/s390x: Restrict "loadparm" property to devices that can be used for booting
Commit bb185de423
("s390x: Add individual loadparm assignment to
CCW device") added a "loadparm" property to all CCW devices. This
was a little bit unfortunate, since this property is only useful
for devices that can be used for booting, but certainly it is not
useful for devices like virtio-gpu or virtio-tablet.
Thus let's restrict the property to CCW devices that we can boot from
(i.e. virtio-block, virtio-net and vfio-ccw devices).
Message-ID: <20241113114741.681096-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Jared Rossi <jrossi@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
This commit is contained in:
parent
b8c5fdc658
commit
6e7c96ae61
5 changed files with 9 additions and 3 deletions
|
@ -73,7 +73,7 @@ static void ccw_device_set_loadparm(Object *obj, Visitor *v,
|
||||||
s390_ipl_fmt_loadparm(dev->loadparm, val, errp);
|
s390_ipl_fmt_loadparm(dev->loadparm, val, errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const PropertyInfo ccw_loadparm = {
|
const PropertyInfo ccw_loadparm = {
|
||||||
.name = "ccw_loadparm",
|
.name = "ccw_loadparm",
|
||||||
.description = "Up to 8 chars in set of [A-Za-z0-9. ] to pass"
|
.description = "Up to 8 chars in set of [A-Za-z0-9. ] to pass"
|
||||||
" to the guest loader/kernel",
|
" to the guest loader/kernel",
|
||||||
|
@ -85,8 +85,6 @@ static Property ccw_device_properties[] = {
|
||||||
DEFINE_PROP_CSS_DEV_ID("devno", CcwDevice, devno),
|
DEFINE_PROP_CSS_DEV_ID("devno", CcwDevice, devno),
|
||||||
DEFINE_PROP_CSS_DEV_ID_RO("dev_id", CcwDevice, dev_id),
|
DEFINE_PROP_CSS_DEV_ID_RO("dev_id", CcwDevice, dev_id),
|
||||||
DEFINE_PROP_CSS_DEV_ID_RO("subch_id", CcwDevice, subch_id),
|
DEFINE_PROP_CSS_DEV_ID_RO("subch_id", CcwDevice, subch_id),
|
||||||
DEFINE_PROP("loadparm", CcwDevice, loadparm, ccw_loadparm,
|
|
||||||
typeof(uint8_t[8])),
|
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
DEFINE_PROP_END_OF_LIST(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -51,4 +51,9 @@ static inline CcwDevice *to_ccw_dev_fast(DeviceState *d)
|
||||||
|
|
||||||
OBJECT_DECLARE_TYPE(CcwDevice, CCWDeviceClass, CCW_DEVICE)
|
OBJECT_DECLARE_TYPE(CcwDevice, CCWDeviceClass, CCW_DEVICE)
|
||||||
|
|
||||||
|
extern const PropertyInfo ccw_loadparm;
|
||||||
|
|
||||||
|
#define DEFINE_PROP_CCW_LOADPARM(_n, _s, _f) \
|
||||||
|
DEFINE_PROP(_n, _s, _f, ccw_loadparm, typeof(uint8_t[8]))
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -48,6 +48,7 @@ static Property virtio_ccw_blk_properties[] = {
|
||||||
VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT, true),
|
VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT, true),
|
||||||
DEFINE_PROP_UINT32("max_revision", VirtioCcwDevice, max_rev,
|
DEFINE_PROP_UINT32("max_revision", VirtioCcwDevice, max_rev,
|
||||||
VIRTIO_CCW_MAX_REV),
|
VIRTIO_CCW_MAX_REV),
|
||||||
|
DEFINE_PROP_CCW_LOADPARM("loadparm", CcwDevice, loadparm),
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
DEFINE_PROP_END_OF_LIST(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -51,6 +51,7 @@ static Property virtio_ccw_net_properties[] = {
|
||||||
VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT, true),
|
VIRTIO_CCW_FLAG_USE_IOEVENTFD_BIT, true),
|
||||||
DEFINE_PROP_UINT32("max_revision", VirtioCcwDevice, max_rev,
|
DEFINE_PROP_UINT32("max_revision", VirtioCcwDevice, max_rev,
|
||||||
VIRTIO_CCW_MAX_REV),
|
VIRTIO_CCW_MAX_REV),
|
||||||
|
DEFINE_PROP_CCW_LOADPARM("loadparm", CcwDevice, loadparm),
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
DEFINE_PROP_END_OF_LIST(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -662,6 +662,7 @@ static Property vfio_ccw_properties[] = {
|
||||||
DEFINE_PROP_LINK("iommufd", VFIOCCWDevice, vdev.iommufd,
|
DEFINE_PROP_LINK("iommufd", VFIOCCWDevice, vdev.iommufd,
|
||||||
TYPE_IOMMUFD_BACKEND, IOMMUFDBackend *),
|
TYPE_IOMMUFD_BACKEND, IOMMUFDBackend *),
|
||||||
#endif
|
#endif
|
||||||
|
DEFINE_PROP_CCW_LOADPARM("loadparm", CcwDevice, loadparm),
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
DEFINE_PROP_END_OF_LIST(),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue