diff --git a/hw/scsi-bus.c b/hw/scsi-bus.c index 1f38ac88e5..3cf571eea4 100644 --- a/hw/scsi-bus.c +++ b/hw/scsi-bus.c @@ -451,7 +451,7 @@ SCSIRequest *scsi_req_new(SCSIDevice *d, uint32_t tag, uint32_t lun, req = scsi_req_alloc(&reqops_target_command, d, tag, lun, hba_private); } else { - req = d->info->alloc_req(d, tag, lun, hba_private); + req = d->info->alloc_req(d, tag, lun, buf, hba_private); } } diff --git a/hw/scsi-disk.c b/hw/scsi-disk.c index 77673f251a..415f81d1db 100644 --- a/hw/scsi-disk.c +++ b/hw/scsi-disk.c @@ -1598,8 +1598,8 @@ static const SCSIReqOps scsi_disk_reqops = { .get_buf = scsi_get_buf, }; -static SCSIRequest *scsi_new_request(SCSIDevice *d, uint32_t tag, - uint32_t lun, void *hba_private) +static SCSIRequest *scsi_new_request(SCSIDevice *d, uint32_t tag, uint32_t lun, + uint8_t *buf, void *hba_private) { SCSIDiskState *s = DO_UPCAST(SCSIDiskState, qdev, d); SCSIRequest *req; diff --git a/hw/scsi-generic.c b/hw/scsi-generic.c index 32f50cda3e..2f95f2d967 100644 --- a/hw/scsi-generic.c +++ b/hw/scsi-generic.c @@ -431,7 +431,7 @@ const SCSIReqOps scsi_generic_req_ops = { }; static SCSIRequest *scsi_new_request(SCSIDevice *d, uint32_t tag, uint32_t lun, - void *hba_private) + uint8_t *buf, void *hba_private) { SCSIRequest *req; diff --git a/hw/scsi.h b/hw/scsi.h index 01c6655f60..8ea744a392 100644 --- a/hw/scsi.h +++ b/hw/scsi.h @@ -94,7 +94,7 @@ struct SCSIDeviceInfo { scsi_qdev_initfn init; void (*destroy)(SCSIDevice *s); SCSIRequest *(*alloc_req)(SCSIDevice *s, uint32_t tag, uint32_t lun, - void *hba_private); + uint8_t *buf, void *hba_private); void (*unit_attention_reported)(SCSIDevice *s); };