[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_writ
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst() |
Date: |
Tue, 25 Feb 2020 11:11:52 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
On 2/25/20 11:01 AM, Chenqun (kuhn) wrote:
-----Original Message-----
From: Philippe Mathieu-Daudé [mailto:address@hidden]
Sent: Tuesday, February 25, 2020 5:36 PM
To: Chenqun (kuhn) <address@hidden>; qemu-
address@hidden; address@hidden
Cc: address@hidden; Zhanghailiang
<address@hidden>; Alistair Francis <address@hidden>;
address@hidden
Subject: Re: [PATCH 09/13] dma/xlnx-zdma: Remove redundant statement in
zdma_write_dst()
On 2/25/20 3:09 AM, address@hidden wrote:
From: Chen Qun <address@hidden>
Clang static code analyzer show warning:
hw/dma/xlnx-zdma.c:399:13: warning: Value stored to 'dst_type' is never
read
dst_type = FIELD_EX32(s->dsc_dst.words[3],
ZDMA_CH_DST_DSCR_WORD3,
^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Reported-by: Euler Robot <address@hidden>
Signed-off-by: Chen Qun <address@hidden>
---
Cc: Alistair Francis <address@hidden>
Cc: "Edgar E. Iglesias" <address@hidden>
Cc: Peter Maydell <address@hidden>
Cc: address@hidden
---
hw/dma/xlnx-zdma.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/hw/dma/xlnx-zdma.c b/hw/dma/xlnx-zdma.c index
8fb83f5b07..45355c5d59 100644
--- a/hw/dma/xlnx-zdma.c
+++ b/hw/dma/xlnx-zdma.c
@@ -396,8 +396,6 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t
*buf, uint32_t len)
zdma_load_descriptor(s, next, &s->dsc_dst);
dst_size = FIELD_EX32(s->dsc_dst.words[2],
ZDMA_CH_DST_DSCR_WORD2,
SIZE);
- dst_type = FIELD_EX32(s->dsc_dst.words[3],
ZDMA_CH_DST_DSCR_WORD3,
- TYPE);
Maybe move dst_type to this if() statement now?
Sorry, I don't follow you. I didn't find where I could move dst_type.
Do you mean to move the first dst_type to the if().
Modify it like this:
while (len) {
dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2,
SIZE);
if (dst_size == 0 && ptype == PT_MEM) {
uint64_t next;
dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3,
TYPE);
next = zdma_update_descr_addr(s, dst_type,
R_ZDMA_CH_DST_CUR_DSCR_LSB);
zdma_load_descriptor(s, next, &s->dsc_dst);
dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2,
SIZE);
}
...
}
No, like this:
-- >8 --
@@ -373,7 +373,7 @@ static uint64_t zdma_update_descr_addr(XlnxZDMA *s,
bool type,
static void zdma_write_dst(XlnxZDMA *s, uint8_t *buf, uint32_t len)
{
uint32_t dst_size, dlen;
- bool dst_intr, dst_type;
+ bool dst_intr;
unsigned int ptype = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0,
POINT_TYPE);
unsigned int rw_mode = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_CTRL0, MODE);
unsigned int burst_type = ARRAY_FIELD_EX32(s->regs, ZDMA_CH_DATA_ATTR,
@@ -387,17 +387,17 @@ static void zdma_write_dst(XlnxZDMA *s, uint8_t
*buf, uint32_t len)
while (len) {
dst_size = FIELD_EX32(s->dsc_dst.words[2], ZDMA_CH_DST_DSCR_WORD2,
SIZE);
- dst_type = FIELD_EX32(s->dsc_dst.words[3], ZDMA_CH_DST_DSCR_WORD3,
- TYPE);
if (dst_size == 0 && ptype == PT_MEM) {
uint64_t next;
+ bool dst_type;
+
+ dst_type = FIELD_EX32(s->dsc_dst.words[3],
ZDMA_CH_DST_DSCR_WORD3,
+ TYPE);
next = zdma_update_descr_addr(s, dst_type,
R_ZDMA_CH_DST_CUR_DSCR_LSB);
zdma_load_descriptor(s, next, &s->dsc_dst);
dst_size = FIELD_EX32(s->dsc_dst.words[2],
ZDMA_CH_DST_DSCR_WORD2,
SIZE);
- dst_type = FIELD_EX32(s->dsc_dst.words[3],
ZDMA_CH_DST_DSCR_WORD3,
- TYPE);
}
---
- [PATCH 12/13] usb/hcd-ehci: Remove redundant statements, (continued)
- [PATCH 12/13] usb/hcd-ehci: Remove redundant statements, kuhn.chenqun, 2020/02/24
- [PATCH 01/13] block/stream: Remove redundant statement in stream_run(), kuhn.chenqun, 2020/02/24
- [PATCH 02/13] block/iscsi:Remove redundant statement in iscsi_open(), kuhn.chenqun, 2020/02/24
- [PATCH 07/13] display/exynos4210_fimd: Remove redundant statement in exynos4210_fimd_update(), kuhn.chenqun, 2020/02/24
- [PATCH 11/13] timer/exynos4210_mct: Remove redundant statement in exynos4210_mct_write(), kuhn.chenqun, 2020/02/24
- [PATCH 06/13] display/pxa2xx_lcd: Remove redundant statement in pxa2xx_palette_parse(), kuhn.chenqun, 2020/02/24
- [PATCH 09/13] dma/xlnx-zdma: Remove redundant statement in zdma_write_dst(), kuhn.chenqun, 2020/02/24