]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/staging/panel/panel.c
staging: panel: fix interruptible_sleep_on race
[karo-tx-linux.git] / drivers / staging / panel / panel.c
index cbc15c120981c62afd70723a994216e6af4ae784..ec4b1fd1402199563cf294d000f08e41a8ab03a8 100644 (file)
@@ -1590,8 +1590,8 @@ static ssize_t keypad_read(struct file *file,
                if (file->f_flags & O_NONBLOCK)
                        return -EAGAIN;
 
-               interruptible_sleep_on(&keypad_read_wait);
-               if (signal_pending(current))
+               if (wait_event_interruptible(keypad_read_wait,
+                                            keypad_buflen != 0))
                        return -EINTR;
        }