Re: [tpmdd-devel] [PATCH] tpm: fix a sparse error in tpm-sysfs.c

From: Jarkko Sakkinen
Date: Wed Feb 01 2017 - 06:17:54 EST


On Wed, Feb 01, 2017 at 10:08:39AM +0200, Jarkko Sakkinen wrote:
> On Tue, Jan 31, 2017 at 10:37:14PM +0200, Jarkko Sakkinen wrote:
> > On Tue, Jan 31, 2017 at 01:43:59PM -0500, Stefan Berger wrote:
> > > drivers/char/tpm/tpm-sysfs.c:161:25: warning: expression using sizeof bool
> > >
> > > Fixes: c659af78eb7b ("tpm: Check size of response before accessing data")
> > > Signed-off-by: Stefan Berger <stefanb@xxxxxxxxxxxxxxxxxx>
> > > ---
> > > drivers/char/tpm/tpm.h | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h
> > > index bff37be..6b4e7aa 100644
> > > --- a/drivers/char/tpm/tpm.h
> > > +++ b/drivers/char/tpm/tpm.h
> > > @@ -281,7 +281,7 @@ struct permanent_flags_t {
> > > typedef union {
> > > struct permanent_flags_t perm_flags;
> > > struct stclear_flags_t stclear_flags;
> > > - bool owned;
> > > + __u8 owned;
> > > __be32 num_pcrs;
> > > struct tpm_version_t tpm_version;
> > > struct tpm_version_1_2_t tpm_version_1_2;
> > > --
> > > 2.4.3
> >
> > A better description would be:
> >
> > The field owned has wrong sized type. This commit fixes the
> > issue.
> >
> > ?
> >
> > /Jarkko
>
> And doesn't owned print invalid results on a big endian system
> i.e. 0x1000000? The commit message needs to be rewritten to capture
> the problem.

Please ignore this, the conversion is done in tpm_getcap(). I'll
update the commit message.

/Jarkko