Hello,
I have a Pandaboard and two Sandisk class 2 2GB SD cards. I compiled,
built the latest AOSP and wrote it to a card using fastboot (as
documented in AOSP's device/ti/panda/README). System booted up,
everything seemed ok, but then lots of errors like:
[ 353.007873] end_request: I/O error, dev mmcblk0, sector 1870336
[ 353.014556] end_request: I/O error, dev mmcblk0, sector 1870344
[ 353.021057] end_request: I/O error, dev mmcblk0, sector 1870352
[ 353.027740] end_request: I/O error, dev mmcblk0, sector 1870360
[ 353.036926] EXT4-fs error (device mmcblk0p7):
__ext4_get_inode_loc:4801: inode #8278: block 32808: comm installk
[ 354.095703] request_suspend_state: wakeup (3->0) at 354090545658
(1970-01-02 00:05:32.226043702 UTC)
[ 354.117980] init: untracked pid 92 exited
[ 354.132873] init: untracked pid 98 exited
[ 362.276672] mmcblk0: error -110 transferring data, sector 1870120,
nr 8, cmd response 0x900, card status 0x80b00
[ 362.289306] mmcblk0: retrying using single block read
[ 362.469726] mmcblk0: error -110 transferring data, sector 1870120,
nr 8, cmd response 0x900, card status 0x0
[ 362.481811] end_request: I/O error, dev mmcblk0, sector 1870120
On reboot, the Pandaboard won't start, again the SD card errors. So I
put the card in to a PC card reader and try to dd copy the whole
image, and it reports errors. I try to zero the card, and read it all
again, and the errors are still present. The SD card is broken.
So I take my second SD card, dd read the entire 2GB on to my PC to
verify that it is fine - and it is, zero errors - and then repeat the
same procedure. Exactly the same thing happens - memory card errors,
broken SD card, except this time it is not reporting read errors but
"dd: opening `/dev/sde': No medium found". Another broken card.
What is going on? I have a Transcend class 10 4GB card running Ubuntu
and have not seen these issues there. I also had a Linaro Android
build on one of the 2GB cards for a while and did not see this issue.
Is the AOSP kernel using some particularly aggressive SD timings which
can break cards? Or is there something else particular to these SD
cards that caused this?
I did find a similar bug report
https://bugs.launchpad.net/linaro-android/+bug/988181 which suggests
that "SD cards can have trouble erasing blocks and later mark it as
bad. That can happen when you depowered the card while it was
privately erasing blocks and later try to use that block." Can cutting
power at the write time kill the SD card?