Willy Tarreau 233087ca06 floppy: disable FDRAWCMD by default
Minh Yuan reported a concurrency use-after-free issue in the floppy code
between raw_cmd_ioctl and seek_interrupt.

[ It turns out this has been around, and that others have reported the
  KASAN splats over the years, but Minh Yuan had a reproducer for it and
  so gets primary credit for reporting it for this fix   - Linus ]

The problem is, this driver tends to break very easily and nowadays,
nobody is expected to use FDRAWCMD anyway since it was used to
manipulate non-standard formats.  The risk of breaking the driver is
higher than the risk presented by this race, and accessing the device
requires privileges anyway.

Let's just add a config option to completely disable this ioctl and
leave it disabled by default.  Distros shouldn't use it, and only those
running on antique hardware might need to enable it.

Link: https://lore.kernel.org/all/000000000000b71cdd05d703f6bf@google.com/
Link: https://lore.kernel.org/lkml/CAKcFiNC=MfYVW-Jt9A3=FPJpTwCD2PL_ULNCpsCVE5s8ZeBQgQ@mail.gmail.com
Link: https://lore.kernel.org/all/CAEAjamu1FRhz6StCe_55XY5s389ZP_xmCF69k987En+1z53=eg@mail.gmail.com
Reported-by: Minh Yuan <yuanmingbuaa@gmail.com>
Reported-by: syzbot+8e8958586909d62b6840@syzkaller.appspotmail.com
Reported-by: cruise k <cruise4k@gmail.com>
Reported-by: Kyungtae Kim <kt0755@gmail.com>
Suggested-by: Linus Torvalds <torvalds@linuxfoundation.org>
Tested-by: Denis Efremov <efremov@linux.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2022-04-27 09:41:54 -07:00
..
2022-03-04 12:29:20 -07:00
2022-04-06 13:07:53 -06:00
2022-03-21 16:48:55 -07:00
2022-03-24 19:37:53 -07:00
2022-04-01 16:26:57 -07:00
2022-01-17 07:19:40 -07:00
2022-04-27 09:41:54 -07:00
2022-04-27 09:41:54 -07:00
2022-04-01 16:26:57 -07:00
2021-12-16 10:57:04 -07:00
2022-03-24 19:37:53 -07:00
2021-11-29 06:38:35 -07:00
2022-02-02 07:49:59 -07:00
2021-11-29 06:38:35 -07:00
2021-11-29 06:38:35 -07:00
2022-03-21 17:16:01 -07:00
2022-04-01 16:26:57 -07:00
2021-11-29 06:38:35 -07:00