Re: [PATCH v6] scsi: ufs: Change the error check sequence for auto hibern8
From: Bean Huo
Date: Tue Oct 27 2026 - 14:13:12 EST
On Tue, 2026-10-27 at 20:03 +0900, HOYOUNG SEO wrote:
> Auto-hibern8 enter and exit are performed by the host controller without
> a UIC command, and the auto-hibern8 idle timer only runs while no UIC
> command is outstanding. An auto-hibern8 error (IS.UHES or IS.UHXS) is
> therefore usually reported while hba->active_uic_cmd is NULL.
>
> Since commit fcd8b0450a9a ("scsi: ufs: core: Make ufshcd_uic_cmd_compl()
> easier to analyze"), ufshcd_uic_cmd_compl() returns early when
> hba->active_uic_cmd is NULL, before ufshcd_is_auto_hibern8_error() is
> called. Such auto-hibern8 errors are no longer recorded in hba->errors,
> so ufshcd_check_errors() is not called for them and the error handler is
> not scheduled.
>
> Check for auto-hibern8 errors before checking for an active UIC command,
> as was done before that commit, but keep returning early when there is
> no active UIC command so that a NULL cmd is never dereferenced. Only
> report the missing UIC command if no auto-hibern8 error was found.
>
> Fixes: fcd8b0450a9a ("scsi: ufs: core: Make ufshcd_uic_cmd_compl() easier to
> analyze")
> Cc: stable@xxxxxxxxxxxxxxx # v6.13+
> Signed-off-by: HOYOUNG SEO <hy50.seo@xxxxxxxxxxx>
> Reviewed-by: Stanley Jhu <stanleyjhu@xxxxxxxxxx>
Reviewed-by: Bean Huo <beanhuo@xxxxxxxxxx>