i2c: emev2: avoid race when unregistering slave client
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Thu, 8 Aug 2019 19:54:17 +0000 (21:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 6 Sep 2019 08:21:59 +0000 (10:21 +0200)
commit1cc2ef1cfbd88c5e742f2ee483033d362f4eaa89
tree8cc0b43e9614153f41396a4a7b66c9bfcb774ed8
parent7048cd814f4e162427686c816e26511cd3e841b5
i2c: emev2: avoid race when unregistering slave client

[ Upstream commit d7437fc0d8291181debe032671a289b6bd93f46f ]

After we disabled interrupts, there might still be an active one
running. Sync before clearing the pointer to the slave device.

Fixes: c31d0a00021d ("i2c: emev2: add slave support")
Reported-by: Krzysztof Adamski <krzysztof.adamski@nokia.com>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Reviewed-by: Krzysztof Adamski <krzysztof.adamski@nokia.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/i2c/busses/i2c-emev2.c