From: vinod.koul@intel.com (Vinod Koul)
To: linux-arm-kernel@lists.infradead.org
Subject: drivers/dma/dw_dmac.c:1278:48: sparse: incorrect type in argument 1 (different base types)
Date: Mon, 4 Mar 2013 10:22:57 +0530 [thread overview]
Message-ID: <20130304045257.GC22513@intel.com> (raw)
In-Reply-To: <201303032051.28444.arnd@arndb.de>
On Sun, Mar 03, 2013 at 08:51:28PM +0000, Arnd Bergmann wrote:
> On Sunday 03 March 2013, kbuild test robot wrote:
> > >> drivers/dma/dw_dmac.c:1278:48: sparse: incorrect type in argument 1 (different base types)
> > drivers/dma/dw_dmac.c:1278:48: expected restricted __be32 const [usertype] *p
> > drivers/dma/dw_dmac.c:1278:48: got unsigned int *
> > >> drivers/dma/dw_dmac.c:1279:48: sparse: incorrect type in argument 1 (different base types)
> > drivers/dma/dw_dmac.c:1279:48: expected restricted __be32 const [usertype] *p
> > drivers/dma/dw_dmac.c:1279:48: got unsigned int *
> > >> drivers/dma/dw_dmac.c:1280:48: sparse: incorrect type in argument 1 (different base types)
> > drivers/dma/dw_dmac.c:1280:48: expected restricted __be32 const [usertype] *p
> > drivers/dma/dw_dmac.c:1280:48: got unsigned int *
> >
>
> Cool, thanks for the notification! That is a real bug, the variables
> are already endian swapped at this point.
>
> Fortunately, nothing is using that code at this moment, so we can fix
> this with no hurry.
>
> Vinod, could you apply this patch?
Done, applied to fixes. Will send to Linus before I leave for vacation on Thu.
Updated change log with reported-by & typo fix
>
> Arnd
>
> 8<-------
> Subject: [PATCH] dmaengine: dw_dma: fix endianess for DT xlate function
>
> As reported by Wu Fengguang's build robot tracking sparse warnings, the
> dma_spec arguments in the dw_dma_xlate are already byte swapped on
> littl-endian platforms and must not get swapped again. This code is
> currently not used anywhere, but will be used in Linux 3.10 when the
> ARM SPEAr platform starts using the generic DMA DT binding.
>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>
> diff --git a/drivers/dma/dw_dmac.c b/drivers/dma/dw_dmac.c
> index c599558..eb81ec9 100644
> --- a/drivers/dma/dw_dmac.c
> +++ b/drivers/dma/dw_dmac.c
> @@ -1276,9 +1276,9 @@ static struct dma_chan *dw_dma_xlate(struct of_phandle_args *dma_spec,
> if (dma_spec->args_count != 3)
> return NULL;
>
> - fargs.req = be32_to_cpup(dma_spec->args+0);
> - fargs.src = be32_to_cpup(dma_spec->args+1);
> - fargs.dst = be32_to_cpup(dma_spec->args+2);
> + fargs.req = dma_spec->args[0];
> + fargs.src = dma_spec->args[1];
> + fargs.dst = dma_spec->args[2];
>
> if (WARN_ON(fargs.req >= DW_DMA_MAX_NR_REQUESTS ||
> fargs.src >= dw->nr_masters ||
prev parent reply other threads:[~2013-03-04 4:52 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <5133ae8b.eQXjkB7tQEqiUMck%fengguang.wu@intel.com>
2013-03-03 20:51 ` drivers/dma/dw_dmac.c:1278:48: sparse: incorrect type in argument 1 (different base types) Arnd Bergmann
2013-03-04 4:37 ` Viresh Kumar
2013-03-04 4:52 ` Vinod Koul [this message]
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=20130304045257.GC22513@intel.com \
--to=vinod.koul@intel.com \
--cc=linux-arm-kernel@lists.infradead.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).