Messages in this thread Patch in this message |  | | From | Michal Suchanek <> | Subject | [PATCH 1/6] delay: add poll_event_interruptible | Date | Thu, 14 Dec 2017 16:13:50 +0100 |
| |
Add convenience macro for polling an event that does not have a waitqueue.
Signed-off-by: Michal Suchanek <msuchanek@suse.de> --- include/linux/delay.h | 12 ++++++++++++ 1 file changed, 12 insertions(+)
diff --git a/include/linux/delay.h b/include/linux/delay.h index b78bab4395d8..3ae9fa395628 100644 --- a/include/linux/delay.h +++ b/include/linux/delay.h @@ -64,4 +64,16 @@ static inline void ssleep(unsigned int seconds) msleep(seconds * 1000); } +#define poll_event_interruptible(event, interval) ({ \ + int ret = 0; \ + while (!(event)) { \ + if (signal_pending(current)) { \ + ret = -ERESTARTSYS; \ + break; \ + } \ + msleep_interruptible(interval); \ + } \ + ret; \ +}) + #endif /* defined(_LINUX_DELAY_H) */ -- 2.13.6
|  |