linux/Documentation/cdrom
Lukas Prediger 67f1e027c2 drivers/cdrom: improved ioctl for media change detection
The current implementation of the CDROM_MEDIA_CHANGED ioctl relies on
global state, meaning that only one process can detect a disc change
while the ioctl call will return 0 for other calling processes afterwards
(see bug 213267).

This introduces a new cdrom ioctl, CDROM_TIMED_MEDIA_CHANGE, that
works by maintaining a timestamp of the last detected disc change instead
of a boolean flag: Processes calling this ioctl command can provide
a timestamp of the last disc change known to them and receive
an indication whether the disc was changed since then and the updated
timestamp.

I considered fixing the buggy behavior in the original
CDROM_MEDIA_CHANGED ioctl but that would require maintaining state
for each calling process in the kernel, which seems like a worse
solution than introducing this new ioctl.

Signed-off-by: Lukas Prediger <lumip@lumip.de>
Link: https://lore.kernel.org/all/20210912191207.74449-1-lumip@lumip.de
Signed-off-by: Phillip Potter <phil@philpotter.co.uk>
Link: https://lore.kernel.org/r/20210913230942.1188-1-phil@philpotter.co.uk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2021-09-14 20:05:26 -06:00
..
cdrom-standard.rst drivers/cdrom: improved ioctl for media change detection 2021-09-14 20:05:26 -06:00
ide-cd.rst docs: ide: convert docs to ReST and rename to *.rst 2019-06-14 14:21:18 -06:00
index.rst docs: add some directories to the main documentation index 2019-07-15 11:03:03 -03:00
packet-writing.rst docs: cdrom: convert docs to ReST and rename to *.rst 2019-06-14 14:20:46 -06:00