> -----Original Message----- > From: Adrian Hunter [mailto:adrian.hunter@xxxxxxxxx] > Sent: Monday, September 07, 2009 2:18 AM > To: Madhusudhan > Cc: linux-mmc@xxxxxxxxxxxxxxx > Subject: Re: MMC retry mechanism > > Madhusudhan wrote: > > Hi Adrian, > > > > With respect to the below commit, It looks like currently the retry > > mechanism only handles the READ path. > > > > I wonder could a similar retry logic feasible for the WRITE path? > > > > Regards, > > Madhu > > From my point of view, writes should never fail. In theory, the MMC > should have enough reserved blocks to cover bad blocks for the > expected lifetime of the device. It should then be just copying > and remapping to avoid having to return write errors. > > Of course, a lot of cards probably don't do that right. However, > I think maybe the block layer already retries failed writes. > What if there is a DATA CRC error during a write and the low level driver reports the data.error as -EILSEQ. Will the block layer retry? I thought it is supported only for the read through your patch. Regards, Madhu > > > > > > > > commit 6a79e391df295bd7c2aa1309ea5031f361c197fd > > Author: Adrian Hunter <ext-adrian.hunter@xxxxxxxxx> > > Date: Wed Dec 31 18:21:17 2008 +0100 > > > > > > > > mmc_block: ensure all sectors that do not have errors are read > > > > If a card encounters an ECC error while reading a sector it will > > > > timeout. Instead of reporting the entire I/O request as having > > > > an error, redo the I/O one sector at a time so that all readable > > > > sectors are provided to the upper layers. > > > > > > > > Signed-off-by: Adrian Hunter <ext-adrian.hunter@xxxxxxxxx> > > > > Signed-off-by: Pierre Ossman <drzeus@xxxxxxxxx> > > > > > -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html