From: Michael Kelley Date: Thu, 29 Jan 2026 15:51:54 +0000 (-0800) Subject: mshv: Use EPOLLIN and EPOLLHUP instead of POLLIN and POLLHUP X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8d1294d4b54464a6b826709c871878c80e3c219e;p=thirdparty%2Flinux.git mshv: Use EPOLLIN and EPOLLHUP instead of POLLIN and POLLHUP mshv code currently uses the POLLIN and POLLHUP flags. Starting with commit a9a08845e9acb ("vfs: do bulk POLL* -> EPOLL* replacement") the intent is to use the EPOLL* versions throughout the kernel. The comment at the top of mshv_eventfd.c describes it as being inspired by the KVM implementation, which was changed by the above mentioned commit in 2018 to use EPOLL*. mshv_eventfd.c is much newer than 2018 and there's no statement as to why it must use the POLL* versions. So change it to use the EPOLL* versions. This change also resolves a 'sparse' warning. No functional change, and the generated code is the same. Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202601220948.MUTO60W4-lkp@intel.com/ Signed-off-by: Michael Kelley Reviewed-by: Stanislav Kinsburskii Signed-off-by: Wei Liu --- diff --git a/drivers/hv/mshv_eventfd.c b/drivers/hv/mshv_eventfd.c index 0b75ff1edb73..dfc8b1092c02 100644 --- a/drivers/hv/mshv_eventfd.c +++ b/drivers/hv/mshv_eventfd.c @@ -295,13 +295,13 @@ static int mshv_irqfd_wakeup(wait_queue_entry_t *wait, unsigned int mode, { struct mshv_irqfd *irqfd = container_of(wait, struct mshv_irqfd, irqfd_wait); - unsigned long flags = (unsigned long)key; + __poll_t flags = key_to_poll(key); int idx; unsigned int seq; struct mshv_partition *pt = irqfd->irqfd_partn; int ret = 0; - if (flags & POLLIN) { + if (flags & EPOLLIN) { u64 cnt; eventfd_ctx_do_read(irqfd->irqfd_eventfd_ctx, &cnt); @@ -320,7 +320,7 @@ static int mshv_irqfd_wakeup(wait_queue_entry_t *wait, unsigned int mode, ret = 1; } - if (flags & POLLHUP) { + if (flags & EPOLLHUP) { /* The eventfd is closing, detach from the partition */ unsigned long flags; @@ -506,7 +506,7 @@ static int mshv_irqfd_assign(struct mshv_partition *pt, */ events = vfs_poll(fd_file(f), &irqfd->irqfd_polltbl); - if (events & POLLIN) + if (events & EPOLLIN) mshv_assert_irq_slow(irqfd); srcu_read_unlock(&pt->pt_irq_srcu, idx);