[Letux-kernel] mmc1 errors on Beaglebone Black since 5.17-rc3

H. Nikolaus Schaller hns at goldelico.com
Thu Feb 17 11:10:13 CET 2022


Hi,

> Am 15.02.2022 um 10:41 schrieb Jean Rene Dawin <jdawin at math.uni-bielefeld.de>:
> 
> Hi,
> 
> since kernel 5.17-rc1 I noticed slower emmc performance on Beaglebone
> Black, but didn't check the logs.
> When I tried to run 5.17.0-rc3-letux+ it booted fine, but during IO
> traffic there were messages like
> 
> [  662.529584] mmc1: error -110 doing runtime resume
> [  669.293590] mmc1: Card stuck being busy! __mmc_poll_for_busy
> 
> [  739.076072] mmc1: Timeout waiting for hardware interrupt.
> [  739.145676] mmc1: sdhci: ============ SDHCI REGISTER DUMP ===========
> [  739.231053] mmc1: sdhci: Sys addr:  0x00000000 | Version:  0x00003101
> [  739.316472] mmc1: sdhci: Blk size:  0x00000200 | Blk cnt:  0x00000400
> [  739.401937] mmc1: sdhci: Argument:  0x00342d30 | Trn mode: 0x00000023
> [  739.487439] mmc1: sdhci: Present:   0x01f70000 | Host ctl: 0x00000000
> [  739.573007] mmc1: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
> [  739.658609] mmc1: sdhci: Wake-up:   0x00000000 | Clock:    0x00003c07
> [  739.744224] mmc1: sdhci: Timeout:   0x00000007 | Int stat: 0x00000002
> [  739.829896] mmc1: sdhci: Int enab:  0x027f000b | Sig enab: 0x027f000b
> [  739.915623] mmc1: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000001
> [  740.001394] mmc1: sdhci: Caps:      0x07e10080 | Caps_1:   0x00000000
> [  740.087208] mmc1: sdhci: Cmd:       0x0000193a | Max curr: 0x00000000
> [  740.173051] mmc1: sdhci: Resp[0]:   0x00000900 | Resp[1]:  0x00000000
> [  740.258928] mmc1: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000000
> [  740.344854] mmc1: sdhci: Host ctl2: 0x00000000
> [  740.402796] mmc1: sdhci: ============================================
> 
> and finally IO errors and a corrupted filesystem.
> 
> 5.17.0-rc4-letux+ shows the same behaviour.
> 
> Has anyone seen this, too?
> 
> Regards,
> Jean Rene Dawin
> 

I just upgraded some BBB to 5.17-rc2 and yes, it seems to boot very sluggish (>90 seconds until login).
Even as I boot from an SD card. So it is not your eemc but the mmc interface.

Then I got:

root at letux:~# ./diskspeed 
+++ checking /dev/mmcblk0 +++

/dev/mmcblk0:
 Timing O_DIRECT cached reads:    42 MB in  2.05 seconds =  20.48 MB/sec
 Timing O_DIRECT disk reads:  62 MB in  3.04 seconds =  20.38 MB/sec
+++ checking /dev/mmcblk1 +++

/dev/mmcblk1:
[  121.908241] mmc1: Card stuck being busy! __mmc_poll_for_busy
[  121.914472] mmc1: error -110 doing runtime resume
[  122.294220] mmc1: Card stuck being busy! __mmc_poll_for_busy
[  122.300332] I/O error, dev mmcblk1, sector 0 op 0x0:(READ) flags 0x4000 phys_seg 21 prio class 2
[  122.624424] mmc1: Card stuck being busy! __mmc_poll_for_busy
[  122.630508] I/O error, dev mmcblk1, sector 1024 op 0x0:(READ) flags 0x4000 phys_seg 1 prio class 2
[  122.954536] mmc1: Card stuck being busy! __mmc_poll_for_busy
[  122.960611] I/O error, dev mmcblk1, sector 2048 op 0x0:(READ) flags 0x4000 phys_seg 1 prio class 2
[  123.344587] mmc1: Card stuck being busy! __mmc_poll_for_busy
[  123.350574] I/O error, dev mmcblk1, sector 3072 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 2
read() failed: Input/output error
^C
root at letux:~# 

So something is broken somewhere...

Looks as if we either have to watch out for someone reporting similar errors on LKML or posting a fix.
Or we have to run a git bisect.

It may have something to do with CONFIG_MMC_SDHCI_OMAP but I don't know if it is really used.

But: I think I have not seen this on the GTA04 (omap3 + µSD).

BR,
Nikolaus



More information about the Letux-kernel mailing list