]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commit
firmware: qcom: scm: Ensure 'a0' status code is treated as signed
authorWill Deacon <will@kernel.org>
Mon, 4 Nov 2019 15:58:15 +0000 (15:58 +0000)
committerSeth Forshee <seth.forshee@canonical.com>
Mon, 6 Jan 2020 13:39:21 +0000 (07:39 -0600)
commit4707efb7c3fd90340002e4a609d3a1595263a220
tree7e718430b8f8d1ed971029e19d14ed18d23183de
parent92cdc054b7414d572d7c05f644cf95a4816af72f
firmware: qcom: scm: Ensure 'a0' status code is treated as signed

BugLink: https://bugs.launchpad.net/bugs/1858424
commit ff34f3cce278a0982a7b66b1afaed6295141b1fc upstream.

The 'a0' member of 'struct arm_smccc_res' is declared as 'unsigned long',
however the Qualcomm SCM firmware interface driver expects to receive
negative error codes via this field, so ensure that it's cast to 'long'
before comparing to see if it is less than 0.

Cc: <stable@vger.kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/firmware/qcom_scm-64.c