driver core: platform: fix race condition with driver_override
authorAdrian Salido <salidoa@google.com>
Tue, 25 Apr 2017 23:55:26 +0000 (16:55 -0700)
committerRaspbian kernel package updater <root@raspbian.org>
Sun, 23 Jul 2017 03:07:42 +0000 (03:07 +0000)
commit54c47cfd28dbf6fe11f95eec6fcec868e1a06dd0
treeda9965a147356a63432f3fc929657a352904908b
parent0a0f8c3304749881bcce6112ca2998041d600070
driver core: platform: fix race condition with driver_override

commit 6265539776a0810b7ce6398c27866ddb9c6bd154 upstream.

The driver_override implementation is susceptible to race condition when
different threads are reading vs storing a different driver override.
Add locking to avoid race condition.

Fixes: 3d713e0e382e ("driver core: platform: add device binding path 'driver_override'")
Cc: stable@vger.kernel.org
Signed-off-by: Adrian Salido <salidoa@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/platform.c