aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/rfkill/core.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/rfkill/core.c b/net/rfkill/core.c
index 11b7314723df..e161ebc40a35 100644
--- a/net/rfkill/core.c
+++ b/net/rfkill/core.c
@@ -1134,7 +1134,8 @@ static int rfkill_fop_release(struct inode *inode, struct file *file)
1134 1134
1135#ifdef CONFIG_RFKILL_INPUT 1135#ifdef CONFIG_RFKILL_INPUT
1136 if (data->input_handler) 1136 if (data->input_handler)
1137 atomic_dec(&rfkill_input_disabled); 1137 if (atomic_dec_return(&rfkill_input_disabled) == 0)
1138 printk(KERN_DEBUG "rfkill: input handler enabled\n");
1138#endif 1139#endif
1139 1140
1140 kfree(data); 1141 kfree(data);
@@ -1157,7 +1158,8 @@ static long rfkill_fop_ioctl(struct file *file, unsigned int cmd,
1157 mutex_lock(&data->mtx); 1158 mutex_lock(&data->mtx);
1158 1159
1159 if (!data->input_handler) { 1160 if (!data->input_handler) {
1160 atomic_inc(&rfkill_input_disabled); 1161 if (atomic_inc_return(&rfkill_input_disabled) == 1)
1162 printk(KERN_DEBUG "rfkill: input handler disabled\n");
1161 data->input_handler = true; 1163 data->input_handler = true;
1162 } 1164 }
1163 1165