floppy: reintroduce O_NDELAY fix
This issue was originally fixed in 09954bad ("floppy: refactor open() flags handling"). The fix as a side-effect, however, introduce issue for open(O_ACCMODE) that is being used for ioctl-only open. I wrote a fix for that, but instead of it being merged, full revert of 09954bad was performed, re-introducing the O_NDELAY / O_NONBLOCK issue, and it strikes again. This is a forward-port of the original fix to current codebase; the original submission had the changelog below: ==== Commit 09954bad ("floppy: refactor open() flags handling"), as a side-effect, causes open(/dev/fdX, O_ACCMODE) to fail. It turns out that this is being used setfdprm userspace for ioctl-only open(). Reintroduce back the original behavior wrt !(FMODE_READ|FMODE_WRITE) modes, while still keeping the original O_NDELAY bug fixed. Link: https://lore.kernel.org/r/nycvar.YFH.7.76.2101221209060.5622@cbobk.fhfr.pm Cc: stable@vger.kernel.org Reported-by: Wim Osterholt <wim@djo.tudelft.nl> Tested-by: Wim Osterholt <wim@djo.tudelft.nl> Reported-and-tested-by: Kurt Garloff <kurt@garloff.de> Fixes: 09954bad ("floppy: refactor open() flags handling") Fixes: f2791e7e ("Revert "floppy: refactor open() flags handling"") Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Denis Efremov <efremov@linux.com>
parent
0d738971
-
mentioned in commit 3dea5636
-
mentioned in commit f502ef68
-
mentioned in commit 161f2b9e
-
mentioned in commit cc744d02
-
mentioned in commit d4a7d6c0
-
mentioned in commit 4ac05376
-
mentioned in commit 61b224e2
-
mentioned in commit d25b48d4
-
mentioned in commit 05f67ba7
-
mentioned in commit 17982c66
-
mentioned in commit ebf67b94
-
mentioned in commit ba173637
-
mentioned in commit 67871ada
Please register or sign in to comment