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
ブロックデバイスが消えて戻ってこないことをカーネルに知らせる方法はありますか?そのブロックデバイスのすべてのダーティページを削除します。
注:これはあらゆる種類のブロックデバイスにも適用できます。