[Bug 677] New: I/O errors on heavy microSD writes

bugzilla-daemon at bugzilla.openmoko.org bugzilla-daemon at bugzilla.openmoko.org
Wed Aug 1 22:34:41 CEST 2007


http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=677

           Summary: I/O errors on heavy microSD writes
           Product: OpenMoko
           Version: unspecified
          Platform: Neo1973
        OS/Version: Linux
            Status: NEW
          Severity: critical
          Priority: P2
         Component: kernel
        AssignedTo: laforge at openmoko.org
        ReportedBy: mjr at iki.fi
                CC: buglog at lists.openmoko.org


Writing heavily to the microSD will cause intermittent I/O errors. Case in
point; I tried to scp a bunch of music to the Sandisk microSD provided with the
Neo, and I got I/O errors at some point. Experimenting with transfer speeds
revealed that scp -l 500 (that is, 500 kilobits per second) still was vulnerable
to the error, but -l 100 managed to transfer the ~250 megabytes without errors.

I couldn't reproduce later with local dd if=/dev/zero of=foo, experimenting with
different block sizes. Maybe luck, or maybe the scp CPU consumption and/or write
patterns helps triggering. I _was_ able to reproduce with scping some more with
no speed limit. Here's some dmesg from the Neo from this reproduction:

<3>s3c2410-sdi s3c2410-sdi: unfinished write - pio_count:[1024] pio_words:[0]
<3>mmcblk0: error 4 transferring data
<3>s3c2410-sdi s3c2410-sdi: unfinished write - pio_count:[1024] pio_words:[0]
<3>mmcblk0: error 4 transferring data
<4>adc_read: entering (pcf=c07dac00, channel=0, data2=00000000)
<4>pcf50606_irq: entering(irq=53, pcf=c07dac00): scheduling work
<4>pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x01:SECOND ADCRDY 
<4>adc_read: returning 713 0
<4>adc_read: entering (pcf=c07dac00, channel=0, data2=00000000)
<4>pcf50606_irq: entering(irq=53, pcf=c07dac00): scheduling work
<4>pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x01:SECOND ADCRDY 
<4>adc_read: returning 711 0
<4>adc_read: entering (pcf=c07dac00, channel=0, data2=00000000)
<4>pcf50606_irq: entering(irq=53, pcf=c07dac00): scheduling work
<4>pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x01:SECOND ADCRDY 
<4>adc_read: returning 716 0
<3>s3c2410-sdi s3c2410-sdi: unfinished write - pio_count:[1024] pio_words:[0]
<3>mmcblk0: error 4 transferring data
<4>end_request: I/O error, dev mmcblk0, sector 708600
<4>adc_read: entering (pcf=c07dac00, channel=0, data2=00000000)
<4>pcf50606_irq: entering(irq=53, pcf=c07dac00): scheduling work
<4>pcf50606_work: INT1=0x40 INT2=0x00 INT3=0x01:SECOND ADCRDY 
<4>adc_read: returning 713 0

Haven't seen problems yet on reading.

I'm using these kernel and root images:
uImage-2.6.21.6-moko10-r1_0_0_2388_0-fic-gta01.bin
openmoko-devel-image-fic-gta01-20070728081358.rootfs.jffs2



------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




More information about the buglog mailing list