From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754506AbcH0Pgo (ORCPT ); Sat, 27 Aug 2016 11:36:44 -0400 Received: from outbound1a.ore.mailhop.org ([54.213.22.21]:60915 "EHLO outbound1a.ore.mailhop.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754160AbcH0Pgl (ORCPT ); Sat, 27 Aug 2016 11:36:41 -0400 X-MHO-User: 079b3ebc-6c6c-11e6-b68f-d7e0fd28072a X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 74.99.77.15 X-Mail-Handler: DuoCircle Outbound SMTP X-DKIM: OpenDKIM Filter v2.6.8 io 8089F80071 Date: Sat, 27 Aug 2016 15:36:15 +0000 From: Jason Cooper To: LABBE Corentin Cc: mpm@selenic.com, herbert@gondor.apana.org.au, linux-crypto@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 6/8] hwrng: amd: Replace global variable with private struct Message-ID: <20160827153615.GN10637@io.lakedaemon.net> References: <1472209896-17197-1-git-send-email-clabbe.montjoie@gmail.com> <1472209896-17197-7-git-send-email-clabbe.montjoie@gmail.com> <20160827144331.GK10637@io.lakedaemon.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160827144331.GK10637@io.lakedaemon.net> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Aug 27, 2016 at 02:43:31PM +0000, Jason Cooper wrote: > Hi Corentin, > > On Fri, Aug 26, 2016 at 01:11:34PM +0200, LABBE Corentin wrote: > > Instead of having two global variable, it's better to use a > > private struct. This will permit to remove amd_pdev variable > > > > Signed-off-by: LABBE Corentin > > --- > > drivers/char/hw_random/amd-rng.c | 57 ++++++++++++++++++++++++++-------------- > > 1 file changed, 38 insertions(+), 19 deletions(-) > > > > diff --git a/drivers/char/hw_random/amd-rng.c b/drivers/char/hw_random/amd-rng.c > > index 383e197..4ef94e9 100644 > > --- a/drivers/char/hw_random/amd-rng.c > > +++ b/drivers/char/hw_random/amd-rng.c > > @@ -47,15 +47,18 @@ static const struct pci_device_id pci_tbl[] = { > > }; > > MODULE_DEVICE_TABLE(pci, pci_tbl); > > > > -static struct pci_dev *amd_pdev; > > +struct amd768_priv { > > + struct pci_dev *pcidev; > > + u32 pmbase; > > +}; > > > > static int amd_rng_data_present(struct hwrng *rng, int wait) > > { > > - u32 pmbase = (u32)rng->priv; > > + struct amd768_priv *priv = (struct amd768_priv *)rng->priv; > > Please remove unnecessary casts... Hmm, I was assuming that, like other places in the tree, that priv was declared void*. However, it's unsigned long in hw_random.h. And, it looks like all users cast it. Either to a struct, or to a void __iomem *. So ignore what I said in my previous email. You can add my reviewed-by without change. It does look like /priv/ s/unsigned long/void */ would be a great cleanup. thx, Jason.