This check is historical and no longer needed, wait_address is never NULL. These days we rely on the poll_table->_qproc check. NULL if select/poll is not going to sleep, or it already has a data to report, or all waiters have already been registered after the 1st iteration. However, poll_table *p can be NULL, see p9_fd_poll() for example, so we can't remove the "p != NULL" check.
Showing the changes to include (1 of 1 file). Show all
Unified · Split
| @@ -41,7 +41,7 @@ typedef struct poll_table_struct { · 40 unmodified lines | ||
| 41 | 41 | |
| 42 | 42 | static inline void poll_wait(struct file * filp, wait_queue_head_t * wait_address, poll_table *p) |
| 43 | 43 | { |
| 44 | − if (p && p->_qproc && wait_address) { | |
| 44 | + if (p && p->_qproc) { | |
| 45 | 45 | p->_qproc(filp, wait_address, p); |
| 46 | 46 | /* |
| 47 | 47 | * This memory barrier is paired in the wq_has_sleeper(). |