driver core: Read atomic counter once in driver_probe_done()
Between printing the debug message and actual check atomic counter can be altered. For better debugging experience read atomic counter value only once. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Tested-by: Ferry Toth <fntoth@gmail.com> Link: https://lore.kernel.org/r/20200324122023.9649-2-andriy.shevchenko@linux.intel.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a65cab7d7f
commit
927f82875c
@ -644,9 +644,10 @@ static int really_probe_debug(struct device *dev, struct device_driver *drv)
|
||||
*/
|
||||
int driver_probe_done(void)
|
||||
{
|
||||
pr_debug("%s: probe_count = %d\n", __func__,
|
||||
atomic_read(&probe_count));
|
||||
if (atomic_read(&probe_count))
|
||||
int local_probe_count = atomic_read(&probe_count);
|
||||
|
||||
pr_debug("%s: probe_count = %d\n", __func__, local_probe_count);
|
||||
if (local_probe_count)
|
||||
return -EBUSY;
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user