[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 02/13] cuda: reject unknown commands
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH 02/13] cuda: reject unknown commands |
Date: |
Mon, 25 Jan 2016 10:12:03 +1100 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Sat, Jan 23, 2016 at 09:39:59PM +0100, Hervé Poussineau wrote:
> Signed-off-by: Hervé Poussineau <address@hidden>
> ---
> hw/misc/macio/cuda.c | 25 ++++++++++++++++---------
> 1 file changed, 16 insertions(+), 9 deletions(-)
>
> diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
> index 69f69c2..f27dd19 100644
> --- a/hw/misc/macio/cuda.c
> +++ b/hw/misc/macio/cuda.c
> @@ -589,15 +589,15 @@ static void cuda_receive_packet(CUDAState *s,
> }
> }
> cuda_send_packet_to_host(s, obuf, 3);
> - break;
> + return;
> case CUDA_GET_6805_ADDR:
> cuda_send_packet_to_host(s, obuf, 3);
> - break;
> + return;
> case CUDA_SET_TIME:
> ti = (((uint32_t)data[1]) << 24) + (((uint32_t)data[2]) << 16) +
> (((uint32_t)data[3]) << 8) + data[4];
> s->tick_offset = ti - (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) /
> get_ticks_per_sec());
> cuda_send_packet_to_host(s, obuf, 3);
> - break;
> + return;
> case CUDA_GET_TIME:
> ti = s->tick_offset + (qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) /
> get_ticks_per_sec());
> obuf[3] = ti >> 24;
> @@ -605,28 +605,28 @@ static void cuda_receive_packet(CUDAState *s,
> obuf[5] = ti >> 8;
> obuf[6] = ti;
> cuda_send_packet_to_host(s, obuf, 7);
> - break;
> + return;
> case CUDA_FILE_SERVER_FLAG:
> case CUDA_SET_DEVICE_LIST:
> case CUDA_SET_AUTO_RATE:
> case CUDA_SET_POWER_MESSAGES:
> cuda_send_packet_to_host(s, obuf, 3);
> - break;
> + return;
> case CUDA_POWERDOWN:
> cuda_send_packet_to_host(s, obuf, 3);
> qemu_system_shutdown_request();
> - break;
> + return;
> case CUDA_RESET_SYSTEM:
> cuda_send_packet_to_host(s, obuf, 3);
> qemu_system_reset_request();
> - break;
> + return;
> case CUDA_COMBINED_FORMAT_IIC:
> obuf[0] = ERROR_PACKET;
> obuf[1] = 0x5;
> obuf[2] = CUDA_PACKET;
> obuf[3] = data[0];
> cuda_send_packet_to_host(s, obuf, 4);
> - break;
> + return;
> case CUDA_GET_SET_IIC:
> if (len == 4) {
> cuda_send_packet_to_host(s, obuf, 3);
> @@ -637,10 +637,17 @@ static void cuda_receive_packet(CUDAState *s,
> obuf[3] = data[0];
> cuda_send_packet_to_host(s, obuf, 4);
> }
> - break;
> + return;
> default:
> break;
> }
> +
> + qemu_log_mask(LOG_GUEST_ERROR, "CUDA: unknown command 0x%02x\n",
> data[0]);
AFAICT qemu_log isn't much used these days, and it's not already used
in this file. I think you'd be better off with either CUDA_DPRINTF()
or a tracepoint.
> + obuf[0] = ERROR_PACKET;
> + obuf[1] = 0x2; /* unknown command */
> + obuf[2] = CUDA_PACKET;
> + obuf[3] = data[0];
> + cuda_send_packet_to_host(s, obuf, 4);
> }
>
> static void cuda_receive_packet_from_host(CUDAState *s,
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature
- [Qemu-ppc] [PATCH 04/13] cuda: port SET_AUTO_RATE command to new framework, (continued)
- [Qemu-ppc] [PATCH 04/13] cuda: port SET_AUTO_RATE command to new framework, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 05/13] cuda: port SET_DEVICE_LIST command to new framework, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 07/13] cuda: port RESET_SYSTEM command to new framework, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 01/13] cuda: add a framework to handle commands, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 02/13] cuda: reject unknown commands, Hervé Poussineau, 2016/01/23
- Re: [Qemu-ppc] [PATCH 02/13] cuda: reject unknown commands,
David Gibson <=
- [Qemu-ppc] [PATCH 03/13] cuda: port AUTOPOLL command to new framework, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 12/13] cuda: remove GET_6805_ADDR command, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 08/13] cuda: port FILE_SERVER_FLAG command to new framework, Hervé Poussineau, 2016/01/23
- [Qemu-ppc] [PATCH 09/13] cuda: port SET_POWER_MESSAGES command to new framework, Hervé Poussineau, 2016/01/23