aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/pi433
diff options
context:
space:
mode:
authorSidong Yang <realwakka@gmail.com>2019-04-02 12:14:31 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-04-02 19:58:04 +0200
commita35342d0f8b348fad38e6250f9b646b99aa210c7 (patch)
tree6f5161d646722d99e725a34e1519ea4f2608c05c /drivers/staging/pi433
parentstaging: iio: adc: ad7816.c: Replace bit shifting with BIT macro (diff)
downloadlinux-dev-a35342d0f8b348fad38e6250f9b646b99aa210c7.tar.xz
linux-dev-a35342d0f8b348fad38e6250f9b646b99aa210c7.zip
staging: pi433: Return thread immediately when kthread_should_stop() call.
When kthread_stop() called by removing module, running thread should return immediately. Otherwise, It is very dangerous that thread may access any released data like struct pi433_device. Signed-off-by: Sidong Yang <realwakka@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/pi433')
-rw-r--r--drivers/staging/pi433/pi433_if.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/staging/pi433/pi433_if.c b/drivers/staging/pi433/pi433_if.c
index ab90d6f80931..16dc380eb176 100644
--- a/drivers/staging/pi433/pi433_if.c
+++ b/drivers/staging/pi433/pi433_if.c
@@ -736,7 +736,7 @@ pi433_tx_thread(void *data)
device->free_in_fifo == FIFO_SIZE ||
kthread_should_stop());
if (kthread_should_stop())
- dev_dbg(device->dev, "ABORT\n");
+ return 0;
/* STOP_TRANSMISSION */
dev_dbg(device->dev, "thread: Packet sent. Set mode to stby.");