| From foo@baz Wed Aug 22 09:42:09 CEST 2018 |
| From: Dave Jiang <dave.jiang@intel.com> |
| Date: Thu, 28 Jun 2018 09:56:55 -0700 |
| Subject: acpi/nfit: fix cmd_rc for acpi_nfit_ctl to always return a value |
| |
| From: Dave Jiang <dave.jiang@intel.com> |
| |
| [ Upstream commit c1985cefd844e26bd19673a6df8d8f0b1918c2db ] |
| |
| cmd_rc is passed in by reference to the acpi_nfit_ctl() function and the |
| caller expects a value returned. However, when the package is pass through |
| via the ND_CMD_CALL command, cmd_rc is not touched. Make sure cmd_rc is |
| always set. |
| |
| Fixes: aef253382266 ("libnvdimm, nfit: centralize command status translation") |
| |
| Signed-off-by: Dave Jiang <dave.jiang@intel.com> |
| Signed-off-by: Dan Williams <dan.j.williams@intel.com> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/acpi/nfit/core.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/drivers/acpi/nfit/core.c |
| +++ b/drivers/acpi/nfit/core.c |
| @@ -201,6 +201,7 @@ int acpi_nfit_ctl(struct nvdimm_bus_desc |
| const u8 *uuid; |
| int rc, i; |
| |
| + *cmd_rc = -EINVAL; |
| func = cmd; |
| if (cmd == ND_CMD_CALL) { |
| call_pkg = buf; |
| @@ -288,6 +289,7 @@ int acpi_nfit_ctl(struct nvdimm_bus_desc |
| * If we return an error (like elsewhere) then caller wouldn't |
| * be able to rely upon data returned to make calculation. |
| */ |
| + *cmd_rc = 0; |
| return 0; |
| } |
| |