]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ALSA: firewire-motu: drop EPOLLOUT from poll return values as write is not supported
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Fri, 29 Aug 2025 23:37:49 +0000 (08:37 +0900)
committerTakashi Iwai <tiwai@suse.de>
Sat, 30 Aug 2025 07:32:45 +0000 (09:32 +0200)
The ALSA HwDep character device of the firewire-motu driver incorrectly
returns EPOLLOUT in poll(2), even though the driver implements no operation
for write(2). This misleads userspace applications to believe write() is
allowed, potentially resulting in unnecessarily wakeups.

This issue dates back to the driver's initial code added by a commit
71c3797779d3 ("ALSA: firewire-motu: add hwdep interface"), and persisted
when POLLOUT was updated to EPOLLOUT by a commit a9a08845e9ac ('vfs: do
bulk POLL* -> EPOLL* replacement("").').

This commit fixes the bug.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://patch.msgid.link/20250829233749.366222-1-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/motu/motu-hwdep.c

index 1ed60618220d27a45bc81dc730b8d9e6f8be4c63..fa2685665db3af70e229a1c97d8e37370ec3aba9 100644 (file)
@@ -111,7 +111,7 @@ static __poll_t hwdep_poll(struct snd_hwdep *hwdep, struct file *file,
                events = 0;
        spin_unlock_irq(&motu->lock);
 
-       return events | EPOLLOUT;
+       return events;
 }
 
 static int hwdep_get_info(struct snd_motu *motu, void __user *arg)