From: Li Qiang <liq3ea@gmail.com>
To: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
qemu-block@nongnu.org, "Li Zhijian" <lizhijian@cn.fujitsu.com>,
qemu-trivial@nongnu.org, "Jason Wang" <jasowang@redhat.com>,
"Alistair Francis" <alistair@alistair23.me>,
"Qemu Developers" <qemu-devel@nongnu.org>,
"Zhang Chen" <chen.zhang@intel.com>,
qemu-arm@nongnu.org, qemu-ppc@nongnu.org,
"Gerd Hoffmann" <kraxel@redhat.com>,
"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
"Philippe Mathieu-Daudé" <philmd@redhat.com>,
"David Gibson" <david@gibson.dropbear.id.au>
Subject: Re: [PATCH v2 1/2] util/hexdump: Convert to take a void pointer argument
Date: Fri, 28 Aug 2020 17:56:57 +0800 [thread overview]
Message-ID: <CAKXe6SLwoUJ76QRCYkOi5pRZ+ROmAwXV6QsR7TUkZLaF7kA4Lg@mail.gmail.com> (raw)
In-Reply-To: <20200822180950.1343963-2-f4bug@amsat.org>
Philippe Mathieu-Daudé <f4bug@amsat.org> 于2020年8月23日周日 上午2:11写道:
>
> Most uses of qemu_hexdump() do not take an array of char
> as input, forcing use of cast. Since we can use this
> helper to dump any kind of buffer, use a pointer to void
> argument instead.
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Li Qiang <liq3ea@gmail.com>
> ---
> Since v1:
> - renamed argument 'bufptr' (Peter Maydell)
> ---
> include/qemu-common.h | 3 ++-
> hw/dma/xlnx_dpdma.c | 2 +-
> hw/net/fsl_etsec/etsec.c | 2 +-
> hw/sd/sd.c | 2 +-
> hw/usb/redirect.c | 2 +-
> net/colo-compare.c | 12 ++++++------
> net/net.c | 2 +-
> util/hexdump.c | 4 +++-
> 8 files changed, 16 insertions(+), 13 deletions(-)
>
> diff --git a/include/qemu-common.h b/include/qemu-common.h
> index bb9496bd80f..6834883822f 100644
> --- a/include/qemu-common.h
> +++ b/include/qemu-common.h
> @@ -138,7 +138,8 @@ int os_parse_cmd_args(int index, const char *optarg);
> * Hexdump a buffer to a file. An optional string prefix is added to every line
> */
>
> -void qemu_hexdump(const char *buf, FILE *fp, const char *prefix, size_t size);
> +void qemu_hexdump(const void *bufptr, FILE *fp,
> + const char *prefix, size_t size);
>
> /*
> * helper to parse debug environment variables
> diff --git a/hw/dma/xlnx_dpdma.c b/hw/dma/xlnx_dpdma.c
> index b40c897de2c..d75a8069426 100644
> --- a/hw/dma/xlnx_dpdma.c
> +++ b/hw/dma/xlnx_dpdma.c
> @@ -388,7 +388,7 @@ static void xlnx_dpdma_dump_descriptor(DPDMADescriptor *desc)
> {
> if (DEBUG_DPDMA) {
> qemu_log("DUMP DESCRIPTOR:\n");
> - qemu_hexdump((char *)desc, stdout, "", sizeof(DPDMADescriptor));
> + qemu_hexdump(desc, stdout, "", sizeof(DPDMADescriptor));
> }
> }
>
> diff --git a/hw/net/fsl_etsec/etsec.c b/hw/net/fsl_etsec/etsec.c
> index 7035cf4eb97..c817a28decd 100644
> --- a/hw/net/fsl_etsec/etsec.c
> +++ b/hw/net/fsl_etsec/etsec.c
> @@ -357,7 +357,7 @@ static ssize_t etsec_receive(NetClientState *nc,
>
> #if defined(HEX_DUMP)
> fprintf(stderr, "%s receive size:%zd\n", nc->name, size);
> - qemu_hexdump((void *)buf, stderr, "", size);
> + qemu_hexdump(buf, stderr, "", size);
> #endif
> /* Flush is unnecessary as are already in receiving path */
> etsec->need_flush = false;
> diff --git a/hw/sd/sd.c b/hw/sd/sd.c
> index fad9cf1ee7a..190e4cf1232 100644
> --- a/hw/sd/sd.c
> +++ b/hw/sd/sd.c
> @@ -1781,7 +1781,7 @@ send_response:
> }
>
> #ifdef DEBUG_SD
> - qemu_hexdump((const char *)response, stderr, "Response", rsplen);
> + qemu_hexdump(response, stderr, "Response", rsplen);
> #endif
>
> return rsplen;
> diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
> index 417a60a2e68..09edb0d81c0 100644
> --- a/hw/usb/redirect.c
> +++ b/hw/usb/redirect.c
> @@ -240,7 +240,7 @@ static void usbredir_log_data(USBRedirDevice *dev, const char *desc,
> if (dev->debug < usbredirparser_debug_data) {
> return;
> }
> - qemu_hexdump((char *)data, stderr, desc, len);
> + qemu_hexdump(data, stderr, desc, len);
> }
>
> /*
> diff --git a/net/colo-compare.c b/net/colo-compare.c
> index 2c20de1537d..550272b3baa 100644
> --- a/net/colo-compare.c
> +++ b/net/colo-compare.c
> @@ -494,9 +494,9 @@ sec:
> g_queue_push_head(&conn->secondary_list, spkt);
>
> if (trace_event_get_state_backends(TRACE_COLO_COMPARE_MISCOMPARE)) {
> - qemu_hexdump((char *)ppkt->data, stderr,
> + qemu_hexdump(ppkt->data, stderr,
> "colo-compare ppkt", ppkt->size);
> - qemu_hexdump((char *)spkt->data, stderr,
> + qemu_hexdump(spkt->data, stderr,
> "colo-compare spkt", spkt->size);
> }
>
> @@ -535,9 +535,9 @@ static int colo_packet_compare_udp(Packet *spkt, Packet *ppkt)
> trace_colo_compare_udp_miscompare("primary pkt size", ppkt->size);
> trace_colo_compare_udp_miscompare("Secondary pkt size", spkt->size);
> if (trace_event_get_state_backends(TRACE_COLO_COMPARE_MISCOMPARE)) {
> - qemu_hexdump((char *)ppkt->data, stderr, "colo-compare pri pkt",
> + qemu_hexdump(ppkt->data, stderr, "colo-compare pri pkt",
> ppkt->size);
> - qemu_hexdump((char *)spkt->data, stderr, "colo-compare sec pkt",
> + qemu_hexdump(spkt->data, stderr, "colo-compare sec pkt",
> spkt->size);
> }
> return -1;
> @@ -578,9 +578,9 @@ static int colo_packet_compare_icmp(Packet *spkt, Packet *ppkt)
> trace_colo_compare_icmp_miscompare("Secondary pkt size",
> spkt->size);
> if (trace_event_get_state_backends(TRACE_COLO_COMPARE_MISCOMPARE)) {
> - qemu_hexdump((char *)ppkt->data, stderr, "colo-compare pri pkt",
> + qemu_hexdump(ppkt->data, stderr, "colo-compare pri pkt",
> ppkt->size);
> - qemu_hexdump((char *)spkt->data, stderr, "colo-compare sec pkt",
> + qemu_hexdump(spkt->data, stderr, "colo-compare sec pkt",
> spkt->size);
> }
> return -1;
> diff --git a/net/net.c b/net/net.c
> index bbaedb3c7a6..f3e5d533fd7 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -636,7 +636,7 @@ static ssize_t qemu_send_packet_async_with_flags(NetClientState *sender,
>
> #ifdef DEBUG_NET
> printf("qemu_send_packet_async:\n");
> - qemu_hexdump((const char *)buf, stdout, "net", size);
> + qemu_hexdump(buf, stdout, "net", size);
> #endif
>
> if (sender->link_down || !sender->peer) {
> diff --git a/util/hexdump.c b/util/hexdump.c
> index f879ff0ad6b..053f05d4160 100644
> --- a/util/hexdump.c
> +++ b/util/hexdump.c
> @@ -16,8 +16,10 @@
> #include "qemu/osdep.h"
> #include "qemu-common.h"
>
> -void qemu_hexdump(const char *buf, FILE *fp, const char *prefix, size_t size)
> +void qemu_hexdump(const void *bufptr, FILE *fp,
> + const char *prefix, size_t size)
> {
> + const char *buf = bufptr;
> unsigned int b, len, i, c;
>
> for (b = 0; b < size; b += 16) {
> --
> 2.26.2
>
>
next prev parent reply other threads:[~2020-08-28 9:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-22 18:09 [PATCH v2 0/2] util/hexdump: Cleanup qemu_hexdump() Philippe Mathieu-Daudé
2020-08-22 18:09 ` [PATCH v2 1/2] util/hexdump: Convert to take a void pointer argument Philippe Mathieu-Daudé
2020-08-25 18:25 ` Alistair Francis
2020-08-28 9:12 ` Edgar E. Iglesias
2020-08-28 9:56 ` Li Qiang [this message]
2020-09-11 15:51 ` Laurent Vivier
2020-08-22 18:09 ` [PATCH v2 2/2] util/hexdump: Reorder qemu_hexdump() arguments Philippe Mathieu-Daudé
2020-08-28 9:13 ` Edgar E. Iglesias
2020-09-11 15:52 ` Laurent Vivier
2020-08-28 9:09 ` [PATCH v2 0/2] util/hexdump: Cleanup qemu_hexdump() Stefano Garzarella
2020-09-01 3:17 ` Jason Wang
2020-09-11 14:35 ` Philippe Mathieu-Daudé
2020-09-11 15:52 ` Laurent Vivier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAKXe6SLwoUJ76QRCYkOi5pRZ+ROmAwXV6QsR7TUkZLaF7kA4Lg@mail.gmail.com \
--to=liq3ea@gmail.com \
--cc=alistair@alistair23.me \
--cc=chen.zhang@intel.com \
--cc=david@gibson.dropbear.id.au \
--cc=edgar.iglesias@gmail.com \
--cc=f4bug@amsat.org \
--cc=jasowang@redhat.com \
--cc=kraxel@redhat.com \
--cc=lizhijian@cn.fujitsu.com \
--cc=peter.maydell@linaro.org \
--cc=philmd@redhat.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-trivial@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).