mmc0 Timeout waiting for hardware interrupt

Open
#2,802 16 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
arch-linux, c, linux, raspberry-pi

Research direction

No source file, test, or entry point is identified. Start by running the supplied rsync reproduction on the Raspberry Pi 3 B+ with the Samsung EVO card and reviewing the linked logs; done means the MMC timeout and rootfs-unmount failure are explained and a verified kernel fix or narrowed hardware diagnosis is available.

Written by the indexing model from the issue text.

Description

Been getting the above error randomly for a few months but haven't been able to reliably reproduce until now. Rootfs always gets unmounted when it occurs.

Interestingly this only occurs with a 64gb Samsung EVO microSD card. The card passes read-write tests and I haven't had and issues with it in other devices so I don't believe that there is anything wrong with it. I cloned the contents to another cheap 64gb microSD card and that one works perfectly with no errors.

To reproduce
I can reproduce by doing a full system backup with rsync to the same card:
rsync -aAXvH --delete --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /mnt/p3

After a few seconds the command fails due to MMC errors.

Expected behaviour
No MMC errors and rootfs stays mounted

Actual behaviour
MMC errors immediately followed by rootfs getting unmounted

System
Model: 3 B+
OS: Arch Linux ARM
Firmware: 1f3414729f43ef3b977a910a0d811a759562e1cf (clean) (release)
Kernel: Raspberry Pi
Linux rpi 4.14.87-1-ARCH #1 SMP Wed Dec 12 00:59:49 UTC 2018 armv7l GNU/Linux
Linux rpi 4.19.13-1-ARCH #1 SMP Wed Jan 9 18:02:38 DST 2019 armv7l GNU/Linux
Issue present with both of these versions

Logs
https://pastebin.com/raw/kJnyZX8P

Dominant language
C
Stars
13.2k
Forks
5.5k
Avg merge
2d 21h
Merged PRs (30d)
21

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/linux

All issues in raspberrypi/linux

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.