The late fixes (2) are pushed to my master branch.

/Jarkko

On Fri, Mar 31, 2017 at 10:57:15AM -0400, Ken Goldman wrote:
> This patch worked.  Can you merge it with Jarkko's latest?
> 
> I can report that my attestation client works unmodified with the 
> resource manager.  I just had to point it to /dev/tpmrm0.  It's a 
> Nuvoton TPM, I2C bus, POWER architecture.
> 
> It does quite a bit - transient and persistent objects, getcapability,
> reading NV indexes, policy sessions.  I did the RSA and ECC variants in 
> parallel, so there should have been a bit of swapping.
> 
> On 3/29/2017 2:40 PM, James Bottomley wrote:
> > On Tue, 2017-03-28 at 17:39 -0400, Ken Goldman wrote:
> >> I have a persistent object at 81000001.
> >>
> >> getcapability through /dev/tpm0 shows it.  The same command through
> >> /dev/tpmrm0 does not.  This causes further problems in the
> >> application.
> >>
> >> While transient objects are per connection, IMHO persistent objects
> >> should be global.
> >>
> >> ~~
> >>
> >> Warning:  I think I'm using the latest TPM device driver from
> >>
> >> git://git.infradead.org/users/jjs/linux-tpmdd.git
> >>
> >> but I'm new to both git and kernel building, so I could be wrong.  If
> >> you think the above should work, it could be my error.
> >
> > It should work.  It turns out the body mapping code is overzealous and
> > errors out when it should just pass through.  The same thing happens
> > with the PCRs as well.
> >
> > This should fix it for both.
> >
> > James
> >
> > ---
> >
> > diff --git a/drivers/char/tpm/tpm2-space.c b/drivers/char/tpm/tpm2-space.c
> > index 009934269514..e2e059d8ffec 100644
> > --- a/drivers/char/tpm/tpm2-space.c
> > +++ b/drivers/char/tpm/tpm2-space.c
> > @@ -429,15 +429,11 @@ static int tpm2_map_response_body(struct tpm_chip 
> > *chip, u32 cc, u8 *rsp,
> >                     data->handles[j] = cpu_to_be32(vhandle);
> >                     j++;
> >                     break;
> > -           case TPM2_HT_HMAC_SESSION:
> > -           case TPM2_HT_POLICY_SESSION:
> > +
> > +           default:
> >                     data->handles[j] = cpu_to_be32(phandle);
> >                     j++;
> >                     break;
> > -           default:
> > -                   dev_err(&chip->dev, "%s: unknown handle 0x%08X\n",
> > -                           __func__, phandle);
> > -                   break;
> >             }
> >
> >     }
> >
> 
> 
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> tpmdd-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/tpmdd-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
tpmdd-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tpmdd-devel

Reply via email to