From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f53.google.com (mail-wm1-f53.google.com [209.85.128.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1EE6F3081B1 for ; Tue, 2 Dec 2025 09:26:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764667585; cv=none; b=L8K4QLpb9ewR7HjHVhIozBg1+Iowva4i031LGkjSuHvQyOzOoIkgISnG56aCOY6VzOy5aZrJ9mqBPtEqWBSaPonh7j2fhqNf4XNyL+HHw9PFYQhouqPRhOO4j1pLysMO4rtECPskQuJgKbNyXe16bAxlwgbDCQcz7JUKmzq1qT8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764667585; c=relaxed/simple; bh=w+1ILYdGjvkaM1TG6974UZv9XQgEC6vJx10hNX4/UUY=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=NFs7FZ+e/21HOkI1X2CYUZFTIyDkGoQmC6UFCErkLaDXRBdN9QHyHenesfQ+rlJek0+IpsQU1qqlsxkMf1WeBKgiyOFf9VOjB8QqQxO6B0i2P6XNnFyApLLqVYrPIqbAaElZ/6PWJnZMfj5ZfABVBJyOkuHwX7i98LxAq/DTDZM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=Mx8Ffvg6; arc=none smtp.client-ip=209.85.128.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="Mx8Ffvg6" Received: by mail-wm1-f53.google.com with SMTP id 5b1f17b1804b1-4779cc419b2so53534965e9.3 for ; Tue, 02 Dec 2025 01:26:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1764667581; x=1765272381; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=zydHyiqAC3ZHYIZdC05XqLM2WAuCVhDvuFCoJaMA1lo=; b=Mx8Ffvg6uxvnyuk44VMMDUAJX1sujgy3DYKqEjHvBit3DHYfjr3gU+02h1iE7ThEIm vE1a2cBbC4bF2okQA56kZrd+ikb6B4xVB2J78myvZhWDOueAxYoqdey5pnF9hyVclHmg 2zP6Cb8pyFdh17n8pegY2T9VgIlMbhdJiobeVPuTTKMp++ZpoLBmlXV9MfOdT27kiguX MkKOounhwBGN4cNlT3u6SBnUnTgV9mPa1fcLSERY0T9vJ/mEEONPIRZkKVMR8bu62kio 9CAxhOsPnzSk3d+gzu7NnvxRfRsv768GkkxBpMhyGiGZ4kUf9TwNtEHRGnbLSy8qifYk rkaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764667581; x=1765272381; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=zydHyiqAC3ZHYIZdC05XqLM2WAuCVhDvuFCoJaMA1lo=; b=DOH719r2w8AT9d27i7HwY4N5LINnF5pYZjrlzcm+7zslMpql15PDW65tLEDT++Lfpd BVNvWntfSgLzJcw0gKEu9JGE8mZNBEA3AA+od6E8la8KocI5PtG55tdPMuPkaEosmJXz GpB72lynJUm66pDflHx+XsThp7dCBCB1xXn6HB1u0G4Pdg0MIVEnJRglXvzmymmEv/C1 Fw8nrJElVvQdWnH45U8h9qLak2xgH1uH951MBUrnBn38lgAmuFbkc6d2dfKtRs35MkUK c44SC3VN3MW32L+hFdV6/Gcc+Gf2apmKouhn7evz0jVuCGbeKFdmwMcbSz97lsTFPUEo QJuw== X-Forwarded-Encrypted: i=1; AJvYcCVFCR4ykzP708Ces6MGypcoSzt0SH1Zhkp4Raeop6lq5p/kz/+jihnyJTbVFt9vV6oeIRk4MnOUEPdiEQw=@vger.kernel.org X-Gm-Message-State: AOJu0YwFK4U9wEHA2zwfXBx7uWi65WHM1EEkY7EpNuu7jilWHV4UxbVc fgh2OwMCdCaflJcGBX/ySol3uK3bOrL8VupWFgyJdL8BvkcXtc6Ns3Hxm7KcwgPeTsE= X-Gm-Gg: ASbGnctkos7Z1t6QNde+0RoWuuAhQ4bQeK0oOSM395VZ1gptYN7cbMmo84mThcVTbgS Pu8XpFxC3FDqj+SENm0oE+qXQQ14XRctQUzTG3BlODOSVtOjMy+xro5Um/+6F3UyDPduJPnRT9Q NrW6o1pNMp1qZBTuwd50NoSgToM4p4NYw5oXhXbU/ynR3ywEDhPQnLRFWjGulCXq261ZqtNbpkl ENHJmE32xfeezxPqGozcqJA18BxAwMsdpB+jwi8b0Qo+8HF6fAYD0HYu3EnjWtaNmlBdRwaxOfQ aSno5IRy4sRRMC26KPHuX1N0Lm0Zb/WsCOjxrw69WTOf3EGMFh64K9B9D0v8Yio+2le6LymJETn bv5o41JBsJhbEyVYFIgQLMsx2TMfs3HmEKqkSKNLZYO19qz407DH+AGglPAFkiSKn1RHWocFV3A N6RY2ZQabgOofSQJ2z X-Google-Smtp-Source: AGHT+IE8k+HW7Nso1FCZIlB9mBQaNvvaXUAUAi2gwo61pv1tszj/rx1Sal4ecT4VI29+FHM/ydZiPA== X-Received: by 2002:a05:600c:4f06:b0:471:9da:5248 with SMTP id 5b1f17b1804b1-477c114ef3dmr458806355e9.26.1764667581352; Tue, 02 Dec 2025 01:26:21 -0800 (PST) Received: from [192.168.1.3] ([185.48.77.170]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42e1ca1a3f1sm32008361f8f.28.2025.12.02.01.26.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 02 Dec 2025 01:26:20 -0800 (PST) Message-ID: <3bec7ceb-61a8-4b38-a794-02ee2fc9e68c@linaro.org> Date: Tue, 2 Dec 2025 09:26:19 +0000 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3] coresight: etm3x: Fix cntr_val_show() to match cntr_val_store() behavior To: Kuan-Wei Chiu , suzuki.poulose@arm.com Cc: mike.leach@linaro.org, alexander.shishkin@linux.intel.com, gregkh@linuxfoundation.org, mathieu.poirier@linaro.org, leo.yan@arm.com, Al.Grant@arm.com, jserv@ccns.ncku.edu.tw, marscheng@google.com, ericchancf@google.com, milesjiang@google.com, nickpan@google.com, coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org References: <20251202082613.3265761-1-visitorckw@gmail.com> Content-Language: en-US From: James Clark In-Reply-To: <20251202082613.3265761-1-visitorckw@gmail.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 02/12/2025 8:26 am, Kuan-Wei Chiu wrote: > The cntr_val_show() function was intended to print the values of all > counters using a loop. However, due to a buffer overwrite issue with > sprintf(), it effectively only displayed the value of the last counter. > > The companion function, cntr_val_store(), allows users to modify a > specific counter selected by 'cntr_idx'. To maintain consistency > between read and write operations and to align with the ETM4x driver > behavior, modify cntr_val_show() to report only the value of the > currently selected counter. > > This change removes the loop and the "counter %d:" prefix, printing > only the hexadecimal value. It also adopts sysfs_emit() for standard > sysfs output formatting. > > Fixes: a939fc5a71ad ("coresight-etm: add CoreSight ETM/PTM driver") > Cc: stable@vger.kernel.org > Signed-off-by: Kuan-Wei Chiu > --- > Build test only. > > Changes in v3: > - Switch format specifier to %#x to include the 0x prefix. > - Add Cc stable > > v2: https://lore.kernel.org/lkml/20251201095228.1905489-1-visitorckw@gmail.com/ > > .../hwtracing/coresight/coresight-etm3x-sysfs.c | 15 ++++----------- > 1 file changed, 4 insertions(+), 11 deletions(-) > > diff --git a/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c b/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c > index 762109307b86..b3c67e96a82a 100644 > --- a/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c > +++ b/drivers/hwtracing/coresight/coresight-etm3x-sysfs.c > @@ -717,26 +717,19 @@ static DEVICE_ATTR_RW(cntr_rld_event); > static ssize_t cntr_val_show(struct device *dev, > struct device_attribute *attr, char *buf) > { > - int i, ret = 0; > u32 val; > struct etm_drvdata *drvdata = dev_get_drvdata(dev->parent); > struct etm_config *config = &drvdata->config; > > if (!coresight_get_mode(drvdata->csdev)) { > spin_lock(&drvdata->spinlock); > - for (i = 0; i < drvdata->nr_cntr; i++) > - ret += sprintf(buf, "counter %d: %x\n", > - i, config->cntr_val[i]); > + val = config->cntr_val[config->cntr_idx]; > spin_unlock(&drvdata->spinlock); > - return ret; > - } > - > - for (i = 0; i < drvdata->nr_cntr; i++) { > - val = etm_readl(drvdata, ETMCNTVRn(i)); > - ret += sprintf(buf, "counter %d: %x\n", i, val); > + } else { > + val = etm_readl(drvdata, ETMCNTVRn(config->cntr_idx)); > } > > - return ret; > + return sysfs_emit(buf, "%#x\n", val); > } > > static ssize_t cntr_val_store(struct device *dev, Reviewed-by: James Clark