aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/scsi/scsi-disk.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/hw/scsi/scsi-disk.c b/hw/scsi/scsi-disk.c
index 4bd7af9d0c..f386a2f01c 100644
--- a/hw/scsi/scsi-disk.c
+++ b/hw/scsi/scsi-disk.c
@@ -2648,19 +2648,12 @@ static const SCSIReqOps *const scsi_disk_reqops_dispatch[256] = {
static void scsi_disk_new_request_dump(uint32_t lun, uint32_t tag, uint8_t *buf)
{
- int i;
int len = scsi_cdb_length(buf);
- char *line_buffer, *p;
+ g_autoptr(GString) str = NULL;
assert(len > 0 && len <= 16);
- line_buffer = g_malloc(len * 5 + 1);
-
- for (i = 0, p = line_buffer; i < len; i++) {
- p += sprintf(p, " 0x%02x", buf[i]);
- }
- trace_scsi_disk_new_request(lun, tag, line_buffer);
-
- g_free(line_buffer);
+ str = qemu_hexdump_line(NULL, buf, len, 1, 0);
+ trace_scsi_disk_new_request(lun, tag, str->str);
}
static SCSIRequest *scsi_new_request(SCSIDevice *d, uint32_t tag, uint32_t lun,