Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
kernel_messages [2018/04/09 08:20] – created beandogkernel_messages [2018/04/09 08:22] (current) beandog
Line 29: Line 29:
 Apr  9 02:19:36 tux kernel: Buffer I/O error on dev sr0, logical block 1610944, async page read Apr  9 02:19:36 tux kernel: Buffer I/O error on dev sr0, logical block 1610944, async page read
 </code> </code>
 +
 +When you put a disc in the drive, there's a [[udev]] rule that runs [[cdrom_id]] to get the device variables (which is an ingenious program, I might add).
 +
 +You can see what udev is doing at ''/lib64/udev/rules.d/60-cdrom_id.rules''
 +
 +It's tiny and mostly self-explanatory, so I'll post the whole thing here:
 +
 +<code>
 +# do not edit this file, it will be overwritten on update
 +
 +ACTION=="remove", GOTO="cdrom_end"
 +SUBSYSTEM!="block", GOTO="cdrom_end"
 +KERNEL!="sr[0-9]*|xvd*", GOTO="cdrom_end"
 +ENV{DEVTYPE}!="disk", GOTO="cdrom_end"
 +
 +# unconditionally tag device as CDROM
 +KERNEL=="sr[0-9]*", ENV{ID_CDROM}="1"
 +
 +# media eject button pressed
 +ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
 +
 +# import device and media properties and lock tray to
 +# enable the receiving of media eject button events
 +IMPORT{program}="cdrom_id --lock-media $devnode"
 +
 +# ejecting a CD does not remove the device node, so mark the systemd device
 +# unit as inactive while there is no medium; this automatically cleans up of
 +# stale mounts after ejecting
 +ENV{DISK_MEDIA_CHANGE}=="?*", ENV{ID_CDROM_MEDIA}!="?*", ENV{SYSTEMD_READY}="0"
 +
 +KERNEL=="sr0", SYMLINK+="cdrom", OPTIONS+="link_priority=-100"
 +
 +LABEL="cdrom_end"
 +</code>
 +
 +It's the ''cdrom_id'' call to lock the media that is causing it.
 +
 +The output is harmless. You can safely ignore it.

Navigation