Patch "acpi, nfit: fix extended status translations for ACPI DSMs" has been added to the 4.8-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
acpi, nfit: fix extended status translations for ACPI DSMs
to the 4.8-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
acpi-nfit-fix-extended-status-translations-for-acpi-dsms.patch
and it can be found in the queue-4.8 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
9a901f5495e26e691c7d0ea7b6057a2f3e6330edMon Sep 17 00:00:00 2001
From: Vishal Verma <[email protected]>
Date: Mon, 5 Dec 2016 17:00:37 -0700
Subject: acpi, nfit: fix extended status translations for ACPI DSMs
From: Vishal Verma <[email protected]>
commit 9a901f5495e26e691c7d0ea7b6057a2f3e6330ed upstream.
ACPI DSMs can have an 'extended' status which can be non-zero to convey additional information about the command. In the xlat_status routine, where we translate the command statuses, we were returning an error for a non-zero extended status, even if the primary status indicated success.
Return from each command's 'case' once we have verified both its status and extend status are good.
--- drivers/acpi/nfit/core.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/acpi/nfit/core.c +4 -4
@@ -113,7 +113,7 @@ static int xlat_status(void *buf, unsign flags =ND_ARS_PERSISTENT |ND_ARS_VOLATILE ;if ((status >>16 & flags) ==0 )return -ENOTTY ; -break ; +return 0 ;case ND_CMD_ARS_START :/* ARS is in progress */ if ((status &0xffff ) ==NFIT_ARS_START_BUSY )
@@ -122,7 +122,7 @@ static int xlat_status(void *buf, unsign/* Command failed */ if (status &0xffff )return -EIO ; -break ; +return 0 ;case ND_CMD_ARS_STATUS : ars_status = buf;/* Command failed */
@@ -154,7 +154,7 @@ static int xlat_status(void *buf, unsign/* Unknown status */ if (status >>16 )return -EIO ; -break ; +return 0 ;case ND_CMD_CLEAR_ERROR : clear_err = buf;if (status &0xffff )
@@ -163,7 +163,7 @@ static int xlat_status(void *buf, unsignreturn -EIO ;if (clear_err->length > clear_err->cleared)return clear_err->cleared; -break ; +return 0 ;default :break ; }
Patches currently in stable-queue which might be from [email protected] are
queue-4.8/acpi-nfit-fix-extended-status-translations-for-acpi-dsms.patch