Re: [PATCHv2 1/2] regmap: add configurable lock class key for lockdep

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Dec 22, 2014 at 03:53:10PM +0200, Antti Palosaari wrote:
> On 12/22/2014 03:31 PM, Mark Brown wrote:

> >>>Why is this configurable, how would a device know if the system it is in
> >>>needs a custom locking class and can safely use one?

> >>If RegMap instance is bus master, eg. I2C adapter, then you should define
> >>own custom key. If you don't define own key and there will be slave on that
> >>bus which uses RegMap too, there will be recursive locking from a lockdep
> >>point of view.

> >That doesn't really explain to me why this is configurable, why should
> >drivers have to worry about this?

> Did you read the lockdep documentation I pointed previous mail?

No, quite apart from the fact that you pasted a good chunk of it into
your mail I don't think it's a good idea to require people to have to
reverse engineer everything to figure out if they're supposed to use
this, or expect people reviewing code using this feature to do that in
order to figure out if it's being used correctly or not.

Suggesting that I'm not thinking hard enough isn't helping here; this
stuff needs to be clear and easy so that people naturally get it right
when they need to and don't break things as a result of confusion or
error, requiring people to directly work with infrequently used things
like lock classes with minimal explanation doesn't achieve that goal.

> One possibility is to disable lockdep checking from that driver totally,
> then drivers do not need to care it about. But I don't think it is proper
> way. One solution is to use custom regmap locking available already, but
> Mauro nor me didn't like that hack:

You don't seem to be answering any of my questions here...  for example,
you keep saying that this is something bus masters should do.  Why does
it make sense for people writing such drivers to have to figure out that
they need to do this and how to do it?  Are there some bus masters that
shouldn't be doing so?  Should anything that isn't a bus master have to
do it?

> >Please also write technical terms like regmap normally.

> Lower-case letters?

Yes, the way it's written in every place it's used in the kernel except
a few I see you've added.

Attachment: signature.asc
Description: Digital signature


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux