[Trac #253] Read failures soon after new card inserted.

Zarro Boogs per Child bugtracker at laptop.org
Tue Oct 31 04:53:26 EST 2006


#253: Read failures soon after new card inserted.
----------------------+-----------------------------------------------------
 Reporter:  dwmw2     |        Owner:  mfoster
     Type:  defect    |       Status:  new    
 Priority:  normal    |    Milestone:  BTest-1
Component:  hardware  |   Resolution:         
 Keywords:            |  
----------------------+-----------------------------------------------------
Old description:

> As soon as a new card is inserted, we read it to look for a partition
> table. One of the first few blocks to be read will fail -- not always the
> same block.
>
> On the read that fails, we always seem to see a report "Ending data
> transfer (3584 bytes)" when in fact we asked it for 4096 bytes...
>
> mmc0: starting CMD18 arg 00000000 flags 00000035
> sdhci [sdhci_send_command()]: Sending cmd (12)
> sdhci [sdhci_prepare_data()]: blksz 0200 blks 0008 flags 00000a00
> sdhci [sdhci_prepare_data()]: tsac 100 ms nsac 0 clk
> sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00000001
> sdhci [sdhci_finish_command()]: Ending cmd (12)
> sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00108000
> sdhci [sdhci_finish_data()]: Ending data transfer (3584 bytes)
> sdhci [sdhci_send_command()]: Sending cmd (c)
> sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00000001
> sdhci [sdhci_finish_command()]: Ending cmd (c)
> sdhci [sdhci_tasklet_finish()]: Ending request, cmd (12)
> mmc0: req done (CMD18): 0/1/0: 00000900 00000000 00000000 00000000
> mmcblk0: error 1 transferring data
> end_request: I/O error, dev mmcblk0, sector 0
> printk: 27 messages suppressed.
> Buffer I/O error on device mmcblk0, logical block 0
>
> Full log attached.

New description:

 As soon as a new card is inserted, we read it to look for a partition
 table. One of the first few blocks to be read will fail -- not always the
 same block.

 On the read that fails, we always seem to see a report "Ending data
 transfer (3584 bytes)" when in fact we asked it for 4096 bytes...

 {{{
 mmc0: starting CMD18 arg 00000000 flags 00000035
 sdhci [sdhci_send_command()]: Sending cmd (12)
 sdhci [sdhci_prepare_data()]: blksz 0200 blks 0008 flags 00000a00
 sdhci [sdhci_prepare_data()]: tsac 100 ms nsac 0 clk
 sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00000001
 sdhci [sdhci_finish_command()]: Ending cmd (12)
 sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00108000
 sdhci [sdhci_finish_data()]: Ending data transfer (3584 bytes)
 sdhci [sdhci_send_command()]: Sending cmd (c)
 sdhci [sdhci_irq()]: *** sdhci:slot0 got interrupt: 0x00000001
 sdhci [sdhci_finish_command()]: Ending cmd (c)
 sdhci [sdhci_tasklet_finish()]: Ending request, cmd (12)
 mmc0: req done (CMD18): 0/1/0: 00000900 00000000 00000000 00000000
 mmcblk0: error 1 transferring data
 end_request: I/O error, dev mmcblk0, sector 0
 printk: 27 messages suppressed.
 Buffer I/O error on device mmcblk0, logical block 0
 }}}

 Full log attached.

-- 
Ticket URL: <http://dev.laptop.org/ticket/253#comment:1>
One Laptop Per Child <http://laptop.org/>



More information about the Bugs mailing list