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=-8.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,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 AED88C43613 for ; Thu, 20 Jun 2019 13:46:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 846AD2083B for ; Thu, 20 Jun 2019 13:46:27 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="h/Nq2nE3"; dkim=fail reason="key not found in DNS" (0-bit key) header.d=codeaurora.org header.i=@codeaurora.org header.b="a+3C9YAY" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731942AbfFTNq0 (ORCPT ); Thu, 20 Jun 2019 09:46:26 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:60990 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726391AbfFTNqZ (ORCPT ); Thu, 20 Jun 2019 09:46:25 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 9A53A60FEB; Thu, 20 Jun 2019 13:46:21 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1561038384; bh=CDu98sBkLBz6RzBo8RnhLJXtzsjr6rfol3vSoWIvAOM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=h/Nq2nE34CxveyWMc821sqTTr59d8kQ8Ik12B71gUOkbEduPw//Eta6SvUoB+l/NI kbd8MyObbKTHWEbiT2DCc/Ob8HvN5EjnyY2SzVGH6XjjkJyp96b0p5E6GOqXatdPXy RjvB8Q6BNsIOx/3SsUGejS/ZtTkizUyb3E/UQzdg= Received: from blr-ubuntu-253.qualcomm.com (blr-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.18.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: saiprakash.ranjan@codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id B739060FE9; Thu, 20 Jun 2019 13:46:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1561038379; bh=CDu98sBkLBz6RzBo8RnhLJXtzsjr6rfol3vSoWIvAOM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=a+3C9YAYBQQ87X/jMfFOhcFPXwOCiKUOKjbcyl50POoQX9htMAh5ZpfQUh00wyIgp atux3As4Mw5nEkfVbcZk+rvFZOcKUZ1tDSwDc+5g+aBdqilWBK2z4Jl9EUoNgXnH5r FPS6ImPocqjGFFt3vxZEzCqPFVgHdM+9UUvT6Rk0= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org B739060FE9 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=saiprakash.ranjan@codeaurora.org From: Sai Prakash Ranjan To: Mathieu Poirier , Suzuki K Poulose , Leo Yan , Alexander Shishkin , Andy Gross , David Brown , Mark Rutland Cc: Rajendra Nayak , Vivek Gautam , Sibi Sankar , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Sai Prakash Ranjan Subject: [PATCH 2/2] coresight: Abort probe for missing CPU phandle Date: Thu, 20 Jun 2019 19:15:47 +0530 Message-Id: X-Mailer: git-send-email 2.22.0 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Currently the coresight etm and cpu-debug drivers assume the affinity to CPU0 returned by coresight platform and continue the probe in case of missing CPU phandle. This is not true and leads to crash in some cases, so abort the probe in case of missing CPU phandle. Signed-off-by: Sai Prakash Ranjan --- drivers/hwtracing/coresight/coresight-cpu-debug.c | 3 +++ drivers/hwtracing/coresight/coresight-etm3x.c | 3 +++ drivers/hwtracing/coresight/coresight-etm4x.c | 3 +++ 3 files changed, 9 insertions(+) diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c index 07a1367c733f..43f32fa71ff9 100644 --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c @@ -579,6 +579,9 @@ static int debug_probe(struct amba_device *adev, const struct amba_id *id) return -ENOMEM; drvdata->cpu = coresight_get_cpu(dev); + if (drvdata->cpu == -ENODEV) + return -ENODEV; + if (per_cpu(debug_drvdata, drvdata->cpu)) { dev_err(dev, "CPU%d drvdata has already been initialized\n", drvdata->cpu); diff --git a/drivers/hwtracing/coresight/coresight-etm3x.c b/drivers/hwtracing/coresight/coresight-etm3x.c index 225c2982e4fe..882e2751746c 100644 --- a/drivers/hwtracing/coresight/coresight-etm3x.c +++ b/drivers/hwtracing/coresight/coresight-etm3x.c @@ -816,6 +816,9 @@ static int etm_probe(struct amba_device *adev, const struct amba_id *id) } drvdata->cpu = coresight_get_cpu(dev); + if (drvdata->cpu == -ENODEV) + return -ENODEV; + desc.name = devm_kasprintf(dev, GFP_KERNEL, "etm%d", drvdata->cpu); if (!desc.name) return -ENOMEM; diff --git a/drivers/hwtracing/coresight/coresight-etm4x.c b/drivers/hwtracing/coresight/coresight-etm4x.c index 7fe266194ab5..97d71dbbeb19 100644 --- a/drivers/hwtracing/coresight/coresight-etm4x.c +++ b/drivers/hwtracing/coresight/coresight-etm4x.c @@ -1101,6 +1101,9 @@ static int etm4_probe(struct amba_device *adev, const struct amba_id *id) spin_lock_init(&drvdata->spinlock); drvdata->cpu = coresight_get_cpu(dev); + if (drvdata->cpu == -ENODEV) + return -ENODEV; + desc.name = devm_kasprintf(dev, GFP_KERNEL, "etm%d", drvdata->cpu); if (!desc.name) return -ENOMEM; -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation