当在 Linux 上强制删除 USB 设备时,如果设备中有未完成的写入操作,内核日志将填满
blk_update_request: I/O error, dev sdg, sector 50618368
Buffer I/O error on dev sdg, logical block 6327555, lost async page write
[...]
消息和 USB 设备重置:
usb 4-2: reset SuperSpeed USB device number 2 using xhci_hcd
我假设异步页写入指的是缓冲区缓存(回写缓存)中的脏页。看起来好像内核会再次尝试每个脏页,这需要很长时间。所有使用该设备的进程都会挂起。
有没有办法告诉内核,块设备/dev/sdg
已经消失并且不会再回来 - 请删除该块设备的所有脏页?
注意:这可能也适用于任何类型的块设备。