[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 01/32] megasas: Replace trace_megasas_dcmd_dump_fram
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PATCH 01/32] megasas: Replace trace_megasas_dcmd_dump_frame() |
Date: |
Fri, 27 Jul 2012 17:02:28 +0200 |
From: Hannes Reinecke <address@hidden>
trace_megasas_dcmd_dump_frame() takes 9 arguments, which is
rather much. Plus the trace infrastructure doesn't support
it. As we can get the information via other means it's pointless
to have it in the driver, so rather use some proper trace
point here and remove the old one.
Signed-off-by: Hannes Reinecke <address@hidden>
Cc: Stefan Weil <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
hw/megasas.c | 39 ++++++++++-----------------------------
trace-events | 2 +-
2 files changed, 11 insertions(+), 30 deletions(-)
diff --git a/hw/megasas.c b/hw/megasas.c
index b99fa97..c389ddf 100644
--- a/hw/megasas.c
+++ b/hw/megasas.c
@@ -1290,35 +1290,16 @@ static int megasas_cluster_reset_ld(MegasasState *s,
MegasasCmd *cmd)
static int megasas_dcmd_set_properties(MegasasState *s, MegasasCmd *cmd)
{
- uint8_t *dummy = g_malloc(cmd->iov_size);
-
- dma_buf_write(dummy, cmd->iov_size, &cmd->qsg);
-
- trace_megasas_dcmd_dump_frame(0,
- dummy[0x00], dummy[0x01], dummy[0x02], dummy[0x03],
- dummy[0x04], dummy[0x05], dummy[0x06], dummy[0x07]);
- trace_megasas_dcmd_dump_frame(1,
- dummy[0x08], dummy[0x09], dummy[0x0a], dummy[0x0b],
- dummy[0x0c], dummy[0x0d], dummy[0x0e], dummy[0x0f]);
- trace_megasas_dcmd_dump_frame(2,
- dummy[0x10], dummy[0x11], dummy[0x12], dummy[0x13],
- dummy[0x14], dummy[0x15], dummy[0x16], dummy[0x17]);
- trace_megasas_dcmd_dump_frame(3,
- dummy[0x18], dummy[0x19], dummy[0x1a], dummy[0x1b],
- dummy[0x1c], dummy[0x1d], dummy[0x1e], dummy[0x1f]);
- trace_megasas_dcmd_dump_frame(4,
- dummy[0x20], dummy[0x21], dummy[0x22], dummy[0x23],
- dummy[0x24], dummy[0x25], dummy[0x26], dummy[0x27]);
- trace_megasas_dcmd_dump_frame(5,
- dummy[0x28], dummy[0x29], dummy[0x2a], dummy[0x2b],
- dummy[0x2c], dummy[0x2d], dummy[0x2e], dummy[0x2f]);
- trace_megasas_dcmd_dump_frame(6,
- dummy[0x30], dummy[0x31], dummy[0x32], dummy[0x33],
- dummy[0x34], dummy[0x35], dummy[0x36], dummy[0x37]);
- trace_megasas_dcmd_dump_frame(7,
- dummy[0x38], dummy[0x39], dummy[0x3a], dummy[0x3b],
- dummy[0x3c], dummy[0x3d], dummy[0x3e], dummy[0x3f]);
- g_free(dummy);
+ struct mfi_ctrl_props info;
+ size_t dcmd_size = sizeof(info);
+
+ if (cmd->iov_size < dcmd_size) {
+ trace_megasas_dcmd_invalid_xfer_len(cmd->index, cmd->iov_size,
+ dcmd_size);
+ return MFI_STAT_INVALID_PARAMETER;
+ }
+ dma_buf_write((uint8_t *)&info, cmd->iov_size, &cmd->qsg);
+ trace_megasas_dcmd_unsupported(cmd->index, cmd->iov_size);
return MFI_STAT_OK;
}
diff --git a/trace-events b/trace-events
index 2a5f074..6fb5eb5 100644
--- a/trace-events
+++ b/trace-events
@@ -595,7 +595,7 @@ megasas_dcmd_ld_get_list(int cmd, int num, int max) "scmd
%d: DCMD LD get list:
megasas_dcmd_ld_get_info(int cmd, int ld_id) "scmd %d: DCMD LD get info for
dev %d"
megasas_dcmd_pd_get_info(int cmd, int pd_id) "scmd %d: DCMD PD get info for
dev %d"
megasas_dcmd_pd_list_query(int cmd, int flags) "scmd %d: DCMD PD list query
flags %x"
-megasas_dcmd_dump_frame(int offset, char f0, char f1, char f2, char f3, char
f4, char f5, char f6, char f7) "0x%x: %02x %02x %02x %02x %02x %02x %02x %02x"
+megasas_dcmd_unsupported(int cmd, unsigned long size) "scmd %d: set properties
len %ld"
megasas_abort_frame(int cmd, int abort_cmd) "scmd %d: aborting frame %x"
megasas_abort_no_cmd(int cmd, uint64_t context) "scmd %d: no active command
for frame context %" PRIx64 ""
megasas_abort_invalid_context(int cmd, uint64_t context, int abort_cmd) "scmd
%d: invalid frame context %" PRIx64 " for abort frame %x"
--
1.7.10.4
- [Qemu-devel] [PULL 00/32] SCSI patches for 2012-08-27, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 03/32] lsi: use qdev_reset_all, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 02/32] megasas: fix misuse of scsi_req_abort, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 01/32] megasas: Replace trace_megasas_dcmd_dump_frame(),
Paolo Bonzini <=
- [Qemu-devel] [PATCH 05/32] lsi: avoid redundant tests of s->current != NULL, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 06/32] scsi-block: remove properties that are not relevant for passthrough, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 04/32] lsi: introduce lsi_request_free, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 09/32] scsi-disk: make discard asynchronous, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 07/32] cutils: add strpadcpy(), Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 10/32] scsi-disk: move all non-DMA commands to scsi_disk_emulate_command, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 11/32] scsi-disk: split scsi-disk reqops, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 13/32] scsi-disk: support emulated TO_DEV requests, Paolo Bonzini, 2012/07/27
- [Qemu-devel] [PATCH 08/32] scsi-disk: let the user customize vendor and product name, Paolo Bonzini, 2012/07/27