qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

SCSI device: fix to incomplete QOMify

Signed-off-by: Cao jin <caoj.fnst@cn.fujitsu.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Message-Id: <1452073066-28319-1-git-send-email-caoj.fnst@cn.fujitsu.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

authored by

Cao jin and committed by
Paolo Bonzini
e1dc6815 1cb6d137

+9 -9
+6 -6
hw/scsi/megasas.c
··· 744 744 info.device.type = MFI_INFO_DEV_SAS3G; 745 745 info.device.port_count = 8; 746 746 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 747 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 747 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 748 748 uint16_t pd_id; 749 749 750 750 if (num_pd_disks < 8) { ··· 960 960 max_pd_disks = MFI_MAX_SYS_PDS; 961 961 } 962 962 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 963 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 963 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 964 964 uint16_t pd_id; 965 965 966 966 if (num_pd_disks >= max_pd_disks) ··· 1136 1136 max_ld_disks = MFI_MAX_LD; 1137 1137 } 1138 1138 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 1139 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 1139 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 1140 1140 1141 1141 if (num_ld_disks >= max_ld_disks) { 1142 1142 break; ··· 1187 1187 max_ld_disks = MFI_MAX_LD; 1188 1188 } 1189 1189 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 1190 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 1190 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 1191 1191 1192 1192 if (num_ld_disks >= max_ld_disks) { 1193 1193 break; ··· 1327 1327 ld_offset = array_offset + sizeof(struct mfi_array) * num_pd_disks; 1328 1328 1329 1329 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 1330 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 1330 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 1331 1331 uint16_t sdev_id = ((sdev->id & 0xFF) << 8) | (sdev->lun & 0xFF); 1332 1332 struct mfi_array *array; 1333 1333 struct mfi_ld_config *ld; ··· 2237 2237 * after the initial reset. 2238 2238 */ 2239 2239 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 2240 - SCSIDevice *sdev = DO_UPCAST(SCSIDevice, qdev, kid->child); 2240 + SCSIDevice *sdev = SCSI_DEVICE(kid->child); 2241 2241 2242 2242 sdev->unit_attention = SENSE_CODE(NO_SENSE); 2243 2243 scsi_device_unit_attention_reported(sdev);
+2 -2
hw/scsi/scsi-bus.c
··· 1861 1861 1862 1862 static char *scsibus_get_dev_path(DeviceState *dev) 1863 1863 { 1864 - SCSIDevice *d = DO_UPCAST(SCSIDevice, qdev, dev); 1864 + SCSIDevice *d = SCSI_DEVICE(dev); 1865 1865 DeviceState *hba = dev->parent_bus->parent; 1866 1866 char *id; 1867 1867 char *path; ··· 2034 2034 static void scsi_dev_instance_init(Object *obj) 2035 2035 { 2036 2036 DeviceState *dev = DEVICE(obj); 2037 - SCSIDevice *s = DO_UPCAST(SCSIDevice, qdev, dev); 2037 + SCSIDevice *s = SCSI_DEVICE(dev); 2038 2038 2039 2039 device_add_bootindex_property(obj, &s->conf.bootindex, 2040 2040 "bootindex", NULL,
+1 -1
hw/scsi/virtio-scsi.c
··· 352 352 target = req->req.tmf.lun[1]; 353 353 s->resetting++; 354 354 QTAILQ_FOREACH(kid, &s->bus.qbus.children, sibling) { 355 - d = DO_UPCAST(SCSIDevice, qdev, kid->child); 355 + d = SCSI_DEVICE(kid->child); 356 356 if (d->channel == 0 && d->id == target) { 357 357 qdev_reset_all(&d->qdev); 358 358 }