diff options
| author | Gregory CLEMENT <[email protected]> | 2016-02-04 21:09:29 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2016-02-13 11:02:19 +0000 |
| commit | 120cfa502c7763f4a3758b9601f2c13d33083d64 (patch) | |
| tree | 65698e251a6ed799f6414a32f1f172b5fabab0b2 /net/unix/af_unix.c | |
| parent | net: mvneta: The mvneta_percpu_elect function should be atomic (diff) | |
| download | kernel-120cfa502c7763f4a3758b9601f2c13d33083d64.tar.gz kernel-120cfa502c7763f4a3758b9601f2c13d33083d64.zip | |
net: mvneta: Fix race condition during stopping
When stopping the port, the CPU notifier are still there whereas the
mvneta_stop_dev function calls mvneta_percpu_disable() on each CPUs.
It was possible to have a new CPU coming at this point which could be
racy.
This patch adds a flag preventing executing the code notifier for a new
CPU when the port is stopping. It also uses the spinlock introduces
previously. To avoid the deadlock, the lock has been moved outside the
mvneta_percpu_elect function.
Signed-off-by: Gregory CLEMENT <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions
