On Tue, Jun 20, 2017 at 12:38:40AM +0200, Jarkko Sakkinen wrote: > On Tue, Jun 20, 2017 at 12:21:22AM +0200, Jarkko Sakkinen wrote: > > On Tue, Jun 20, 2017 at 12:12:20AM +0200, Jarkko Sakkinen wrote: > > > On Mon, Jun 19, 2017 at 09:51:22AM -0600, Jason Gunthorpe wrote: > > > > On Mon, Jun 19, 2017 at 01:26:47AM +0200, Jarkko Sakkinen wrote: > > > > > > > > > Feels weird that you have to call framework functions like that in the > > > > > driver. You must have brilliant reason to do so and that should be > > > > > very > > > > > well documented in the code. This is terrible... > > > > > > > > This was all discussed on the list. It the way these callbacks work, > > > > the higher levels in the callback stack call the lower levels, this > > > > allows each level the place the next level's callback properly, eg do > > > > things before/after as necessary. > > > > > > > > Jason > > > > > > I tried to look up for discussion from the patchwork. These had appeared > > > in v6. I guess I have to backtrack the discussions from my maidir > > > because I honestly don't understand why class shutdown would have to > > > call bus callback explicitly. There's nothing in the commit message > > > about this nor is there any comment in the code. > > > > > > This must be fairly recent development that I've missed? > > > > > > /Jarkko > > > > Found it: > > > > "Looking at this closer, now you definately have to change the TPM > > patch to call through to the other shutdown methods. We can say > > current TPM drivers have no driver->shutdown, but we cannot be sure > > about the bus->shutdown, so may as well call both from tpm's > > class->shutdown. > > > > I would say this should be done after the tpm2_shutdown completes as > > lower level shutdowns could remove register access. > > > > Jason" > > > > And makes sense. > > > > This patch is a NAK for two reasons: > > > > 1. No comment explaining this. > > 2. Patches are broken and they are in wrong order and cover letter is > > missing > > > > /Jarkko > > I *tried* to apply them myself after sending this in order to be helpful > but they have compilation errors: > > drivers/char/tpm/tpm-chip.c: In function ‘tpm_shutdown’: > drivers/char/tpm/tpm-chip.c:162:23: error: ‘TPM_SU_CLEAR’ undeclared (first > use in this function) > tpm2_shutdown(chip, TPM_SU_CLEAR); > ^~~~~~~~~~~~ > drivers/char/tpm/tpm-chip.c:162:23: note: each undeclared identifier is > reported only once for each function it appears in > drivers/char/tpm/tpm-chip.c: In function ‘tpm_chip_alloc’: > drivers/char/tpm/tpm-chip.c:214:17: error: ‘chip->dev.class’ is a pointer; > did you mean to use ‘->’? > chip->dev.class.shutdown = tpm_shutdown; > > /Jarkko
There's one more thing that I noticed. Before I can Cc these to the stable these commits require the Fixes tag. /Jarkko ------------------------------------------------------------------------------ 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 tpmdd-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tpmdd-devel