From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 47541C43603 for ; Mon, 16 Dec 2019 18:06:48 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1DE0F206EC for ; Mon, 16 Dec 2019 18:06:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1576519608; bh=i5XtLVMmI+2dJcN0KwB7A+BvEXbQvtvFuu2za7XVIY0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=XeP98EZapdXKlIWU+zhfvJLTm0o8i2vwsRtFPMjW2dC+z2G6BcllYOwYVNOFMa6Mr 9PwR2/mb9g1ti3M7rHdp3IsTC76Sh9RSO9w3Rpdm3syqryBYwypxRiG7Gi8WxK8myI Zv7KTzt2MjWzOWgL3tZLZaOqEzfFj0h1gspPjCFs= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729833AbfLPSGq (ORCPT ); Mon, 16 Dec 2019 13:06:46 -0500 Received: from mail.kernel.org ([198.145.29.99]:47156 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730020AbfLPSGo (ORCPT ); Mon, 16 Dec 2019 13:06:44 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 6687120CC7; Mon, 16 Dec 2019 18:06:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1576519603; bh=i5XtLVMmI+2dJcN0KwB7A+BvEXbQvtvFuu2za7XVIY0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hqzJ78b//Nu9812SeC5kvOPphbbir27/Jr/Je1XW5Q9PjqDIxaYc1jayY1WikvRKA +khqnOmtHcSuSiIjnWpIYrOHVhPRMsYTODx6+3zcMvS/mEwOXFZCG5B3cb67VfSt1E 48qxOhBGY9yMVOfjo2gSsTAvSS9q5+LR0d0Y7Iek= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Bjorn Andersson , Will Deacon Subject: [PATCH 4.19 132/140] firmware: qcom: scm: Ensure a0 status code is treated as signed Date: Mon, 16 Dec 2019 18:50:00 +0100 Message-Id: <20191216174828.754810295@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20191216174747.111154704@linuxfoundation.org> References: <20191216174747.111154704@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Will Deacon 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: Reviewed-by: Bjorn Andersson Signed-off-by: Will Deacon Signed-off-by: Greg Kroah-Hartman --- drivers/firmware/qcom_scm-64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/firmware/qcom_scm-64.c +++ b/drivers/firmware/qcom_scm-64.c @@ -158,7 +158,7 @@ static int qcom_scm_call(struct device * kfree(args_virt); } - if (res->a0 < 0) + if ((long)res->a0 < 0) return qcom_scm_remap_error(res->a0); return 0;