Re: Weird MMC errors: 2 of 2 - inconsistent state after data crc error
Alex Dubov wrote: > Problem 2: After a data crc error all subsequent commands fail. May it be > caused by stop command > leaving card in some bad state (something clearable by SEND_STATUS)? On the > other hand, is there a > real need to issue a stop command in case main command failed? > It might be, depending on what the problem is. E.g. timeout might still mean the card processed the command and will start sending data. Anyway, CRC errors should be extremely rare so I'd guess that either the card or the controller has gotten confused. In many cases the card will shut down when it gets annoyed, so that might be what you're seeing here. Other than that, I'm not sure I can help that much. The stop commands should never wedge the card, so that isn't the issue (unless the card is buggy). Rgds -- -- Pierre Ossman Linux kernel, MMC maintainerhttp://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: Weird MMC errors: 2 of 2 - inconsistent state after data crc error
Alex Dubov wrote: Problem 2: After a data crc error all subsequent commands fail. May it be caused by stop command leaving card in some bad state (something clearable by SEND_STATUS)? On the other hand, is there a real need to issue a stop command in case main command failed? It might be, depending on what the problem is. E.g. timeout might still mean the card processed the command and will start sending data. Anyway, CRC errors should be extremely rare so I'd guess that either the card or the controller has gotten confused. In many cases the card will shut down when it gets annoyed, so that might be what you're seeing here. Other than that, I'm not sure I can help that much. The stop commands should never wedge the card, so that isn't the issue (unless the card is buggy). Rgds -- -- Pierre Ossman Linux kernel, MMC maintainerhttp://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: Weird MMC errors: 2 of 2 - inconsistent state after data crc error
Problem 2: After a data crc error all subsequent commands fail. May it be caused by stop command leaving card in some bad state (something clearable by SEND_STATUS)? On the other hand, is there a real need to issue a stop command in case main command failed? Example: Mar 14 09:25:13 Tirion kernel: mmcblk0:<7>mmc0: starting CMD18 arg flags 0035 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: setting dma for 8 blocks Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0x12, arg: 0x0, mask: 0xb100 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 1, flags 0 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 40, flags 1 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0xc, arg: 0x0, mask: 0x2900 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 9 Mar 14 09:25:13 Tirion kernel: mmc0: req done (CMD18): 0/2/1: 0900 Mar 14 09:25:13 Tirion kernel: mmcblk0: error 2 transferring data Mar 14 09:25:13 Tirion kernel: end_request: I/O error, dev mmcblk0, sector 0 Mar 14 09:25:13 Tirion kernel: printk: 342 messages suppressed. Mar 14 09:25:13 Tirion kernel: Buffer I/O error on device mmcblk0, logical block 0 Mar 14 09:25:13 Tirion kernel: mmc0: starting CMD18 arg flags 0035 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: setting dma for 8 blocks Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0x12, arg: 0x0, mask: 0xb100 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 0 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0xc, arg: 0x0, mask: 0x2900 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 8 Mar 14 09:25:13 Tirion kernel: mmc0: req done (CMD18): 1/0/1: Sucker-punch spam with award-winning protection. Try the free Yahoo! Mail Beta. http://advision.webevents.yahoo.com/mailbeta/features_spam.html - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: Weird MMC errors: 2 of 2 - inconsistent state after data crc error
Problem 2: After a data crc error all subsequent commands fail. May it be caused by stop command leaving card in some bad state (something clearable by SEND_STATUS)? On the other hand, is there a real need to issue a stop command in case main command failed? Example: Mar 14 09:25:13 Tirion kernel: mmcblk0:7mmc0: starting CMD18 arg flags 0035 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: setting dma for 8 blocks Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0x12, arg: 0x0, mask: 0xb100 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 1, flags 0 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 40, flags 1 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0xc, arg: 0x0, mask: 0x2900 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 9 Mar 14 09:25:13 Tirion kernel: mmc0: req done (CMD18): 0/2/1: 0900 Mar 14 09:25:13 Tirion kernel: mmcblk0: error 2 transferring data Mar 14 09:25:13 Tirion kernel: end_request: I/O error, dev mmcblk0, sector 0 Mar 14 09:25:13 Tirion kernel: printk: 342 messages suppressed. Mar 14 09:25:13 Tirion kernel: Buffer I/O error on device mmcblk0, logical block 0 Mar 14 09:25:13 Tirion kernel: mmc0: starting CMD18 arg flags 0035 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: setting dma for 8 blocks Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0x12, arg: 0x0, mask: 0xb100 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 0 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: executing opcode 0xc, arg: 0x0, mask: 0x2900 Mar 14 09:25:13 Tirion kernel: tifm_sd tifm_sd0:1: host event: host_status 80, flags 8 Mar 14 09:25:13 Tirion kernel: mmc0: req done (CMD18): 1/0/1: Sucker-punch spam with award-winning protection. Try the free Yahoo! Mail Beta. http://advision.webevents.yahoo.com/mailbeta/features_spam.html - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/