[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160811073657.GB1715@dell>
Date: Thu, 11 Aug 2016 08:36:57 +0100
From: Lee Jones <lee.jones@...aro.org>
To: Suman Anna <s-anna@...com>
Cc: Bjorn Andersson <bjorn.andersson@...aro.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"kernel@...inux.com" <kernel@...inux.com>,
"patrice.chotard@...com" <patrice.chotard@...com>,
"ohad@...ery.com" <ohad@...ery.com>,
"linux-remoteproc@...r.kernel.org" <linux-remoteproc@...r.kernel.org>,
"loic.pallardy@...com" <loic.pallardy@...com>
Subject: Re: [PATCH 1/9] remoteproc: core: Ensure error message is clear
On Wed, 10 Aug 2016, Suman Anna wrote:
> On 08/09/2016 01:12 PM, Lee Jones wrote:
> > On Tue, 09 Aug 2016, Bjorn Andersson wrote:
> >
> >> On Thu 04 Aug 02:21 PDT 2016, Lee Jones wrote:
> >>
> >>> Before this patch, the dma_alloc_coherent() failure path printed out:
> >>>
> >>> "dma_alloc_coherent err: 16760832"
> >>>
> >>> ... alluding to the Linux error code being 16760832, but seeing as
> >>> Linux error codes are all negative, this looks like a signed/unsigned
> >>> issue. In fact, the message is trying to print the length of the
> >>> requested memory region. Let's clear that up.
> >>>
> >>> While we're at it, let's standardise the way 'len' is printed. In
> >>> all other locations 'len' is in hex prefixed by a '0x' for clarity.
> >>>
> >>> Signed-off-by: Lee Jones <lee.jones@...aro.org>
> >>
> >> Acked-by: Bjorn Andersson <bjorn.andersson@...aro.org>
> >
> > Again, this can just be applied.
> >
> >>> ---
> >>> drivers/remoteproc/remoteproc_core.c | 5 +++--
> >>> 1 file changed, 3 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c
> >>> index aea29a75c..3566dc9 100644
> >>> --- a/drivers/remoteproc/remoteproc_core.c
> >>> +++ b/drivers/remoteproc/remoteproc_core.c
> >>> @@ -581,7 +581,7 @@ static int rproc_handle_carveout(struct rproc *rproc,
> >>> return -EINVAL;
> >>> }
> >>>
> >>> - dev_dbg(dev, "carveout rsc: da %x, pa %x, len %x, flags %x\n",
> >>> + dev_dbg(dev, "carveout rsc: da %x, pa %x, len 0x%x, flags %x\n",
> >>> rsc->da, rsc->pa, rsc->len, rsc->flags);
>
> If you are modifying this trace, it's better to following the leading 0x
> convention on all arguments rather than just the length.
I'd be concerned if anyone thought it a good idea to print out memory
addresses !0x. The length is the only parameter there which could
(and has) cause confusion.
However, the fix-up is trivial, so I'm happy to oblige. I'll leave
the final decision to Bjorn and fix-up if he sees it necessary.
> >>> carveout = kzalloc(sizeof(*carveout), GFP_KERNEL);
> >>> @@ -590,7 +590,8 @@ static int rproc_handle_carveout(struct rproc *rproc,
> >>>
> >>> va = dma_alloc_coherent(dev->parent, rsc->len, &dma, GFP_KERNEL);
> >>> if (!va) {
> >>> - dev_err(dev->parent, "dma_alloc_coherent err: %d\n", rsc->len);
> >>> + dev_err(dev->parent,
> >>> + "failed to allocate dma memory: len 0x%x\n", rsc->len);
> >>> ret = -ENOMEM;
> >>> goto free_carv;
> >>> }
> >
>
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
Powered by blists - more mailing lists