]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
poll_wait: kill the obsolete wait_address check
authorOleg Nesterov <oleg@redhat.com>
Tue, 7 Jan 2025 16:27:24 +0000 (17:27 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 10 Jan 2025 10:58:59 +0000 (11:58 +0100)
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.

Link: https://lore.kernel.org/all/20250106180325.GF7233@redhat.com/
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Link: https://lore.kernel.org/r/20250107162724.GA18926@redhat.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
include/linux/poll.h

index fc641b50f1298eaf463b8c42251ee0df363a7eb3..57b6d1ccd8bf0b110cc3dec3f341566e7f72bd4a 100644 (file)
@@ -41,7 +41,7 @@ typedef struct poll_table_struct {
 
 static inline void poll_wait(struct file * filp, wait_queue_head_t * wait_address, poll_table *p)
 {
-       if (p && p->_qproc && wait_address) {
+       if (p && p->_qproc) {
                p->_qproc(filp, wait_address, p);
                /*
                 * This memory barrier is paired in the wq_has_sleeper().