Re: Question about mmc_blk_issue_flush() failure and recovery in Linux kernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On 13/05/24 05:47, Liming Sun wrote:

Please cc linux-mmc mailing list.  Others may be able to help
or have similar issues.

> I saw that Linux emmc/block has recovery mechanism, but somehow a path like below doesn’t seem to trigger it.
> [  285.858838] mmc0: cache flush error -110

Cache flush error means any data in the cache will be lost.

Generally, this is already unacceptable i.e. recovery from
here is not a priority because we shouldn't get here.

Also the file system may be corrupt, and there doesn't seem
to be anything the mmc subsystem can do about that.

> [  285.862776] blk_update_request: I/O error, dev mmcblk0, sector 42002577 op 0x1:(WRITE) flags 0x29800 phys_seg 1 prio class 0
> [  285.874006] XFS (mmcblk0p3): log I/O error -5
> [  285.878369] XFS (mmcblk0p3): Log I/O Error Detected. Shutting down filesystem
> [  285.885489] XFS (mmcblk0p3): Please unmount the filesystem and rectify the problem(s)

To recovery from here probably means
	unmount the file system
	fix it
	unbind and rebind the eMMC host controller

> From the code, it might be called from mmc_blk_mq_issue_rq() à MMC_ISSUE_SYNC/REQ_OP_FLUSH à mmc_blk_issue_flush() which fails.
> Would it make sense to trigger emmc recovery for this path or any suggestion how to do it?

Generally the priority would be preventing the cache
flush error.  To start with, identify what is causing

[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux