lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171017114910.GA684@ulmo>
Date:   Tue, 17 Oct 2017 13:49:10 +0200
From:   Thierry Reding <thierry.reding@...il.com>
To:     Philipp Zabel <p.zabel@...gutronix.de>
Cc:     Timo Alho <talho@...dia.com>, linux-tegra@...r.kernel.org,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/4] reset: tegra: check BPMP response return code

On Tue, Oct 17, 2017 at 12:52:17PM +0200, Philipp Zabel wrote:
> Hi Thierry,
> 
> On Tue, 2017-10-17 at 12:40 +0200, Thierry Reding wrote:
> > On Thu, Sep 07, 2017 at 12:31:03PM +0300, Timo Alho wrote:
> > > Add checks for return code in BPMP response message.
> > > 
> > > Signed-off-by: Timo Alho <talho@...dia.com>
> > > ---
> > >  drivers/reset/tegra/reset-bpmp.c | 9 ++++++++-
> > >  1 file changed, 8 insertions(+), 1 deletion(-)
> > 
> > Hi Philipp,
> > 
> > Would you provide an Acked-by on this so that I can take it into the
> > Tegra tree? There's a build dependency on patch 1/4 in the series.
> 
> Acked-by: Philipp Zabel <p.zabel@...gutronix.de>
> 
> to take this via the Tegra tree.

Thanks!

> > Quoting in full since you were not previously on Cc, unfortunately.
> > 
> > Timo, please remember to always Cc the relevant maintainers.
> > 
> > Thierry
> > 
> > > diff --git a/drivers/reset/tegra/reset-bpmp.c b/drivers/reset/tegra/reset-bpmp.c
> > > index 5daf2ee..fac2db6 100644
> > > --- a/drivers/reset/tegra/reset-bpmp.c
> > > +++ b/drivers/reset/tegra/reset-bpmp.c
> > > @@ -23,6 +23,7 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc,
> > >  	struct tegra_bpmp *bpmp = to_tegra_bpmp(rstc);
> > >  	struct mrq_reset_request request;
> > >  	struct tegra_bpmp_message msg;
> > > +	int err;
> > >  
> > >  	memset(&request, 0, sizeof(request));
> > >  	request.cmd = command;
> > > @@ -33,7 +34,13 @@ static int tegra_bpmp_reset_common(struct reset_controller_dev *rstc,
> > >  	msg.tx.data = &request;
> > >  	msg.tx.size = sizeof(request);
> > >  
> > > -	return tegra_bpmp_transfer(bpmp, &msg);
> > > +	err = tegra_bpmp_transfer(bpmp, &msg);
> > > +	if (err < 0)
> > > +		return err;
> > > +	else if (msg.rx.ret < 0)
> > > +		return -EINVAL;
> 
> I don't really understand why you complicate the call sites like this
> instead of just letting tegra_bmp_transfer return -EINVAL if msg.rx.ret
> < 0, but I haven't seen the other patches.

Timo replied to a similar question from Jon here:

	https://patchwork.ozlabs.org/patch/810934/

Essentially this boils down to that there are cases where we may want to
know the exact error because it is relevant. In this case, we don't, but
BPMP provides a number of other services where the errors may be useful.

Thierry

Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ