Re: [PATCH v4] tpm: fix reference counting for struct tpm_chip

From: Jarkko Sakkinen
Date: Fri Feb 19 2021 - 02:09:06 EST


On Wed, Feb 17, 2021 at 09:27:02PM -0400, Jason Gunthorpe wrote:
> On Thu, Feb 18, 2021 at 12:14:11AM +0200, Jarkko Sakkinen wrote:
> > On Tue, Feb 16, 2021 at 04:31:26PM +0000, David Laight wrote:
> > > ...
> > > > > > + get_device(&chip->dev);
> > > > > > + chip->devs.release = tpm_devs_release;
> > > > > > + chip->devs.devt =
> > > > > > + MKDEV(MAJOR(tpm_devt), chip->dev_num + TPM_NUM_DEVICES);
> > > >
> > > > Isn't this less than 100 chars?
> > >
> > > Still best kept under 80 if 'reasonable'?
> > >
> > > Really it is just split in the wrong place:
> > > chip->devs.devt = MKDEV(MAJOR(tpm_devt),
> > > chip->dev_num + TPM_NUM_DEVICES);
> >
> >
> > Well it looks crap IMHO. Would be more reasonable to have it in a single
> > like. And it is legit too, since it is accepted by checkpatch.
> >
> > You might break the lines within 80 chars if it is somehow "logically"
> > consistent.
>
> FWIW, I've become kind of tired of the style wishywashyness I've
> mostly been happy to accept anything that clang-format spits out for
> ordinary C constructs.

A. I would not mind if it was already merged. Since it isn't, I don't
see the point not fixing it.

> It is good enough and universally usable. If devs don't have it linked
> to their editor to format single expression or format selected blocks,
> they are missing out :)
>
> The community consensus on style is quite unclear. Is 1 or 2 above the
> majority preference? Does this case fall under the new "use more than
> 80 cols if it improves readability?" I have no idea.

B. I need to maintain this, once it's merged.
C. A smaller diff for a critical bug fix. I actually allow style
compromises for fixes to be backported *when* it makes the overall
diff smaller.
D. Has more odds to make future changes smaller as the whole thing is
in a single code line.

> Frankly, for most people writing driver code, if they consistently use
> clang-format their work will be alot better than if they try to do it
> by hand. It takes a lot of experiance to reliably eyeball something
> close to the kernel style..

For me it gives a framework to review patches in multiple subsystems.
If I have to constantly think whether to allow this and that shift
from the kernel coding style, it makes the whole process for me more
fuzzy and chaotic.

As I said (A), it would not be end of the world if this had been
merged already. I also want to state that I do sometimes make mistakes
when reviewing code, and am happy to take critique from that :-)

> Jason

/Jarkko