Messages in this thread | | | Date | Wed, 7 Aug 2019 17:19:44 +0200 | From | Wolfram Sang <> | Subject | Re: [PATCH] i2c-axxia: support slave mode |
| |
Hi Krzysztof,
> Good point. I'll remove those verbose messages and maybe leave one or > two debug messages with just a summary of the status which will > hopefully be a good compromise. Will that be ok?
Very likely :)
> BTW, I have added this synchronize_irq() in unreg_slave callback just to > make sure it is save to set idev->slave to NULL already. Most of the > controllers do not have such a guard and I'm wondering why that wouldn't > be a problem for them. Like the i2c-rcar.c - isn't there a small race > condition if some slave interrupt triggers just before ICSIER is cleared > and somehow does not finish before priv->slave is set to NULL? This is > the situation I was afraid of and tried to solve by using this > synchronize_irq().
You have an important point there. unreg_slave is protected by the adapter lock but this won't help if another master is requesting something, thus, causing interrupts.
Phew, nearly all slave implementation need to fix this!
Thanks a lot,
Wolfram
[unhandled content-type:application/pgp-signature] | |