Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4491125ybb; Tue, 14 Apr 2020 08:19:02 -0700 (PDT) X-Google-Smtp-Source: APiQypLgIJc84zsbZXoBd/08kOvtoO+lGK+3553/nkFOal48k10wwepuFOdN3fmG12oOH4FgqGXV X-Received: by 2002:a17:906:11c9:: with SMTP id o9mr685804eja.64.1586877542641; Tue, 14 Apr 2020 08:19:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586877542; cv=none; d=google.com; s=arc-20160816; b=Cw0OE8ygtlwrh0am4mplrJzg+EUudbGuGW7bnLd+va30BGqhDO+GDAl9LKGq/izAfi DiVge+oTrs6k+Moy6KkwgODdx1BDOFfIrlzhOj/16D/3qgtdO1YFZjW2lF+q8WBWqO4M qocqh9AlXlK/oijKwkRMV8sXoFal9MXIJlGQQjkSEh47Dt/lq9OitDMtibOJcDxT9atB xUx6sDGpJtc9CtvnrdYBDfeA8vALSY/7f+yzTRJCSaF9BM8hBiFoA/um7eBCuRZT6eSc sEAlGIcJv5i04dUuRV0iB2U43NJN3sJyn6Z0s+qnzRMUDJYGx8+xmSdhk7LZtJ8f/qKZ 5mrw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature; bh=8Jti4D6NZqhj41nA01rPsI5rgbUMRY3Px7BniuO4J2I=; b=CMWGosuPj4AlH46Rb37npsMe9BwG8FoqyKYpCRtsW/bdzeCiEClaxbz0Sh2PGAbvF0 Y/mHyT4AiX9ORpzuY8TnQVvMPXq8E/smToFwZwQGOormdTjf0oXl0423vQMBgwSOISjs nU7haBD+hVJ7gpwFvLyS43d3vFWzsBe8XrttZW536aHWyWjndpEmyC0LSNVMFmhgpd0S kMp6pcdrTEHCKrey9bche5PUVR10NImDZU4AlWTB4ZTHpbI8FVtJS4HnTr97aKlPEED5 LTfMPfSnIS1CEP1j0tq7oqsHEyxCO+oyWk3sLBJzgIELtb2TU7UcQ0tzSZRJlmnIjAAP DKqA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2020-01-29 header.b=PPBupZ0C; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n10si1026807edw.426.2020.04.14.08.18.39; Tue, 14 Apr 2020 08:19:02 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2020-01-29 header.b=PPBupZ0C; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2438782AbgDNK5l (ORCPT + 99 others); Tue, 14 Apr 2020 06:57:41 -0400 Received: from userp2130.oracle.com ([156.151.31.86]:56804 "EHLO userp2130.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2438370AbgDNKcT (ORCPT ); Tue, 14 Apr 2020 06:32:19 -0400 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03EASvVZ068740; Tue, 14 Apr 2020 10:31:56 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references; s=corp-2020-01-29; bh=8Jti4D6NZqhj41nA01rPsI5rgbUMRY3Px7BniuO4J2I=; b=PPBupZ0C795pbHGe381My9Ebne8tHgxwlmYOS7gYDgyu6aPdQmHSBzbMSJZw6qib6P1G eIjekEBZSU4b+Fshp0qow0Jr/Lc0CogPOb/RqDT7ChcnJNAeu3y2RZxyP5AQbhyxBnRD S0txpbXUl0OZHtstZpI0vyCiQLE4u47w7/Bm4SviG9wFV45dJbC922QChdGkfyWJj+NP NEN2ATY8W+9yZ1rrq/psuCo2CaNEzjdBUusNLQ7oeEk8MsW8AjdaH5VdRZhtDL4XfYgY DoLJiMRGxoT2i8Xf/aSZr/t+P97WXeb805LYhrC2SGPqPbKZBrsXBZXsMzUmLfz7axCL TQ== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by userp2130.oracle.com with ESMTP id 30b5ar3myh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 14 Apr 2020 10:31:56 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03EAQvnL001844; Tue, 14 Apr 2020 10:31:56 GMT Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by userp3020.oracle.com with ESMTP id 30bqm1cy44-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 14 Apr 2020 10:31:56 +0000 Received: from abhmp0004.oracle.com (abhmp0004.oracle.com [141.146.116.10]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 03EAVoYG030067; Tue, 14 Apr 2020 10:31:53 GMT Received: from linux-1.home (/92.157.90.160) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 14 Apr 2020 03:31:50 -0700 From: Alexandre Chartre To: x86@kernel.org Cc: linux-kernel@vger.kernel.org, jpoimboe@redhat.com, peterz@infradead.org, jthierry@redhat.com, tglx@linutronix.de, alexandre.chartre@oracle.com Subject: [PATCH V3 1/9] objtool: is_fentry_call() crashes if call has no destination Date: Tue, 14 Apr 2020 12:36:10 +0200 Message-Id: <20200414103618.12657-2-alexandre.chartre@oracle.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20200414103618.12657-1-alexandre.chartre@oracle.com> References: <20200414103618.12657-1-alexandre.chartre@oracle.com> X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9590 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 mlxlogscore=999 adultscore=0 mlxscore=0 phishscore=0 malwarescore=0 spamscore=0 suspectscore=1 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004140086 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9590 signatures=668686 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 impostorscore=0 clxscore=1015 priorityscore=1501 malwarescore=0 phishscore=0 spamscore=0 mlxlogscore=999 suspectscore=1 adultscore=0 mlxscore=0 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004140086 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Fix is_fentry_call() so that it works if a call has no destination set (call_dest). This needs to be done in order to support intra- function calls. Signed-off-by: Alexandre Chartre --- tools/objtool/check.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/objtool/check.c b/tools/objtool/check.c index 8dd01f986fbb..bd25c3ad651a 100644 --- a/tools/objtool/check.c +++ b/tools/objtool/check.c @@ -1409,7 +1409,7 @@ static int decode_sections(struct objtool_file *file) static bool is_fentry_call(struct instruction *insn) { - if (insn->type == INSN_CALL && + if (insn->type == INSN_CALL && insn->call_dest && insn->call_dest->type == STT_NOTYPE && !strcmp(insn->call_dest->name, "__fentry__")) return true; -- 2.18.2