diff options
author | Felix Fietkau <nbd@nbd.name> | 2018-03-12 09:50:33 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2018-03-12 12:50:46 +0100 |
commit | ed3860c3e3ebe484c00cf603c29e68af28eb0839 (patch) | |
tree | 8ba46807ae91d72badb369e834bf067c5f45d437 | |
parent | b8d9a064f08614ac6f6b0ec26eab1450cf8b7544 (diff) | |
download | upstream-ed3860c3e3ebe484c00cf603c29e68af28eb0839.tar.gz upstream-ed3860c3e3ebe484c00cf603c29e68af28eb0839.tar.bz2 upstream-ed3860c3e3ebe484c00cf603c29e68af28eb0839.zip |
swconfig: convert swdevs_lock from spinlock to mutex
Should fix some sleep-while-atomic issues
Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r-- | target/linux/generic/files/drivers/net/phy/swconfig.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/target/linux/generic/files/drivers/net/phy/swconfig.c b/target/linux/generic/files/drivers/net/phy/swconfig.c index 78569a9302..e8a684742c 100644 --- a/target/linux/generic/files/drivers/net/phy/swconfig.c +++ b/target/linux/generic/files/drivers/net/phy/swconfig.c @@ -36,7 +36,7 @@ MODULE_LICENSE("GPL"); static int swdev_id; static struct list_head swdevs; -static DEFINE_SPINLOCK(swdevs_lock); +static DEFINE_MUTEX(swdevs_lock); struct swconfig_callback; struct swconfig_callback { @@ -296,13 +296,13 @@ static struct nla_policy link_policy[SWITCH_LINK_ATTR_MAX] = { static inline void swconfig_lock(void) { - spin_lock(&swdevs_lock); + mutex_lock(&swdevs_lock); } static inline void swconfig_unlock(void) { - spin_unlock(&swdevs_lock); + mutex_unlock(&swdevs_lock); } static struct switch_dev * |