[V2,0/6] mmc: block: Fixes for CQE error recovery recovery

Message ID 20231103084720.6886-1-adrian.hunter@intel.com
Headers
Series mmc: block: Fixes for CQE error recovery recovery |

Message

Adrian Hunter Nov. 3, 2023, 8:47 a.m. UTC
  Hi

Some issues have been found with CQE error recovery.  Here are some fixes.

As of V2, the alternative implementation for the patch from Kornel Dulęba:

	https://lore.kernel.org/linux-mmc/e7c12e07-7540-47ea-8891-2cec73d58df1@intel.com/T/#u

is now included, see patch 6 "mmc: cqhci: Fix task clearing in CQE error
recovery")
	
Please also note ->post_disable() seems to be missing from
cqhci_recovery_start().  It would be good if ->post_disable()
users could check if this needs attention.


Changes in V2:

      mmc: cqhci: Fix task clearing in CQE error recovery
            New patch

      mmc: cqhci: Warn of halt or task clear failure
            Add fixes and stable tags


Adrian Hunter (6):
      mmc: block: Do not lose cache flush during CQE error recovery
      mmc: cqhci: Increase recovery halt timeout
      mmc: block: Be sure to wait while busy in CQE error recovery
      mmc: block: Retry commands in CQE error recovery
      mmc: cqhci: Warn of halt or task clear failure
      mmc: cqhci: Fix task clearing in CQE error recovery

 drivers/mmc/core/block.c      |  2 ++
 drivers/mmc/core/core.c       |  9 +++++++--
 drivers/mmc/host/cqhci-core.c | 44 +++++++++++++++++++++----------------------
 3 files changed, 31 insertions(+), 24 deletions(-)


Regards
Adrian
  

Comments

Avri Altman Nov. 3, 2023, 10:10 a.m. UTC | #1
Does the double "recovery"  in the subject intentional?

Thanks,
Avri
 
> Hi
> 
> Some issues have been found with CQE error recovery.  Here are some fixes.
> 
> As of V2, the alternative implementation for the patch from Kornel Dulęba:
> 
>         https://lore.kernel.org/linux-mmc/e7c12e07-7540-47ea-8891-
> 2cec73d58df1@intel.com/T/#u
> 
> is now included, see patch 6 "mmc: cqhci: Fix task clearing in CQE error
> recovery")
> 
> Please also note ->post_disable() seems to be missing from
> cqhci_recovery_start().  It would be good if ->post_disable() users could
> check if this needs attention.
> 
> 
> Changes in V2:
> 
>       mmc: cqhci: Fix task clearing in CQE error recovery
>             New patch
> 
>       mmc: cqhci: Warn of halt or task clear failure
>             Add fixes and stable tags
> 
> 
> Adrian Hunter (6):
>       mmc: block: Do not lose cache flush during CQE error recovery
>       mmc: cqhci: Increase recovery halt timeout
>       mmc: block: Be sure to wait while busy in CQE error recovery
>       mmc: block: Retry commands in CQE error recovery
>       mmc: cqhci: Warn of halt or task clear failure
>       mmc: cqhci: Fix task clearing in CQE error recovery
> 
>  drivers/mmc/core/block.c      |  2 ++
>  drivers/mmc/core/core.c       |  9 +++++++--
>  drivers/mmc/host/cqhci-core.c | 44 +++++++++++++++++++++-----------------
> -----
>  3 files changed, 31 insertions(+), 24 deletions(-)
> 
> 
> Regards
> Adrian
  
Adrian Hunter Nov. 6, 2023, 6:38 a.m. UTC | #2
On 3/11/23 12:10, Avri Altman wrote:
> Does the double "recovery"  in the subject intentional?

No, must be an echo in here

> 
> Thanks,
> Avri
>  
>> Hi
>>
>> Some issues have been found with CQE error recovery.  Here are some fixes.
>>
>> As of V2, the alternative implementation for the patch from Kornel Dulęba:
>>
>>         https://lore.kernel.org/linux-mmc/e7c12e07-7540-47ea-8891-
>> 2cec73d58df1@intel.com/T/#u
>>
>> is now included, see patch 6 "mmc: cqhci: Fix task clearing in CQE error
>> recovery")
>>
>> Please also note ->post_disable() seems to be missing from
>> cqhci_recovery_start().  It would be good if ->post_disable() users could
>> check if this needs attention.
>>
>>
>> Changes in V2:
>>
>>       mmc: cqhci: Fix task clearing in CQE error recovery
>>             New patch
>>
>>       mmc: cqhci: Warn of halt or task clear failure
>>             Add fixes and stable tags
>>
>>
>> Adrian Hunter (6):
>>       mmc: block: Do not lose cache flush during CQE error recovery
>>       mmc: cqhci: Increase recovery halt timeout
>>       mmc: block: Be sure to wait while busy in CQE error recovery
>>       mmc: block: Retry commands in CQE error recovery
>>       mmc: cqhci: Warn of halt or task clear failure
>>       mmc: cqhci: Fix task clearing in CQE error recovery
>>
>>  drivers/mmc/core/block.c      |  2 ++
>>  drivers/mmc/core/core.c       |  9 +++++++--
>>  drivers/mmc/host/cqhci-core.c | 44 +++++++++++++++++++++-----------------
>> -----
>>  3 files changed, 31 insertions(+), 24 deletions(-)
>>
>>
>> Regards
>> Adrian
  
Ulf Hansson Nov. 15, 2023, 3:51 p.m. UTC | #3
On Fri, 3 Nov 2023 at 09:48, Adrian Hunter <adrian.hunter@intel.com> wrote:
>
> Hi
>
> Some issues have been found with CQE error recovery.  Here are some fixes.
>
> As of V2, the alternative implementation for the patch from Kornel Dulęba:
>
>         https://lore.kernel.org/linux-mmc/e7c12e07-7540-47ea-8891-2cec73d58df1@intel.com/T/#u
>
> is now included, see patch 6 "mmc: cqhci: Fix task clearing in CQE error
> recovery")
>
> Please also note ->post_disable() seems to be missing from
> cqhci_recovery_start().  It would be good if ->post_disable()
> users could check if this needs attention.
>
>
> Changes in V2:
>
>       mmc: cqhci: Fix task clearing in CQE error recovery
>             New patch
>
>       mmc: cqhci: Warn of halt or task clear failure
>             Add fixes and stable tags
>
>
> Adrian Hunter (6):
>       mmc: block: Do not lose cache flush during CQE error recovery
>       mmc: cqhci: Increase recovery halt timeout
>       mmc: block: Be sure to wait while busy in CQE error recovery
>       mmc: block: Retry commands in CQE error recovery
>       mmc: cqhci: Warn of halt or task clear failure
>       mmc: cqhci: Fix task clearing in CQE error recovery
>
>  drivers/mmc/core/block.c      |  2 ++
>  drivers/mmc/core/core.c       |  9 +++++++--
>  drivers/mmc/host/cqhci-core.c | 44 +++++++++++++++++++++----------------------
>  3 files changed, 31 insertions(+), 24 deletions(-)
>
>

Applied for fixes, thanks!

Kind regards
Uffe